Všetky príspevky Tomáš Hromník

Programovanie pre neprogramátorov – 3. lekcia

Tento článok je súčasťou môjho online kurzu programovania v JavaScripte. Každý sa ho môže zúčastniť, kurz je zdarma. Kto sa ešte nezaregistroval, môže tak spraviť tu: http://eepurl.com/UzefH. Kurz obsahuje teoretickú časť (články na tomto blogu) a praktickú čast (domáce úlohy zadávané emailom).

Máme za sebou prvú lekciu o premenných, druhú lekciu o podmienkach a dnes nás čakajú cykly (loops).

Cykly slúžia vykonanie určitého kódu viackrát a na prechádzanie prvkov v poli. Máme viacero druhov cyklov:

For:

[js]
for (var i = 1; i <= 10; i++) {
  console.log(i); //vypíše do konzoly čísla od 1 po 10
}
[/js]

Poďme si rozobrať jednotlivé časti for cyklu. „var i = 1;“ definuje premennú „i“ s hodnotou 1. Podmienka „i <= 10;“ znamená, že cyklus bude bežať dovtedy, kým táto podmienka platí. Tj. kým „i“ je menšie, alebo rovné 10. „i++“ znamená, že „i“ sa po každej iterácii cyklu zväčší o 1. V cykloch je zvykom pomenovávať iteračnú premennú písmenom „i“.

Využitie cyklu for pre prechádzanie prvkov v poli:

[js]
var fruits = [‚apple‘, ‚pear‘, ‚citron‘];
for (var i = 0; i < fruits.length; i++) {
  console.log(fruits[i] + ‚ ‚); //vypíše ‚apple pear citron ‚
}
[/js]

Máme definované pole fruits. Definujeme „var i = 0;“ pretože polia sú indexované od 0. Cyklus prebieha dovtedy, kým „i“ je menšie ako počet prvkov v poli, v tomto prípade 3. Tj. hodnota „i“ je v prvej iterácii 0, v druhej 1, v tretej 2 a keď „i“ je 3, tak cyklus končí, pretože 3 nie je menšie ako 3 (počet prvkov v poli).

While:

[js]
var i = 0;
while (i <= 10) {
  console.log(i); //vypíše čísla od 0 po 10
  i++;
}
[/js]

Cyklus while môžeme použiť podobne ako cyklus for. Môžete si všimnúť, že tento príklad je podobný ako prvý príklad pre for. Načo je teda cyklus while, keď máme for? Cyklus while sa používa ak vopred nevieme koľkokrát cyklus prebehne.

[js]
//cyklus while pobeží dovtedy, kým nezadáte číslo 7 do promptu
while (prompt(‚3 + 4 = ‚) != 7) {
  console.log(‚zle‘);
}

console.log(‚ok‘);
[/js]

Príklad vyššie si môžete vyskúšať na http://jsfiddle.net/elfoslav/m7x4z3o9/

Do…While

„Do“ znamená „rob“, „while“ znamená „kým“. V preklade to znamená „rob niečo, kým…“

[js]
var i = 0;

do {
  console.log(i); //Vypíše raz „0“
  i++;
} while (i > 5); //cyklus tu končí, pretože 0 nie je väčšia ako 5
[/js]

Zhrnutie

Najpoužívanejší cyklus je for. Mali by ste si s ním vystačiť v 98% prípadoch. Je dobré vedieť, že existuje while a do…while a kedy ich použiť.

While použijete ak vopred neviete kedy cyklus skončí.

Do…while použijete ak potrebujete aby cyklus aspoň raz prebehol a potom už závisí na podmienke while či cyklus prebehne 2 a viackrát.

Cvičenie

http://jsfiddle.net/elfoslav/0chmvb2d/

Ako odovzdávať cvičenia? Keď sa ti zobrazí stránka s cvičením, klikni v hornom menu na “Fork”. To vytvorí tvoju kópiu cvičenia. Keď budeš chcieť spustiť kód, klikni v hornom menu na “Run”. Keď budeš mať cvičenie hotové, klikni na “Update”, to uloží tvoje cvičenie. Potom už len skopíruješ link cvičenia a odošleš mi ho do mailu. Ja ti cvičenie skontrolujem a oznámkujem.

Alebo jednoduchšie: Zaregistruj sa na http://www.codermania.com a prejdi si cvičenia tam. Cvičenia sa vyhodnocujú automaticky. Ak si nebudeš dať vedieť rady, je tam tlačidlo „Ask for help“. Ak nevieš po anglicky, môžeš použiť Google translator. Veľa šťastia.

Prihlásiť sa k odberu noviniek o programovaní

* povinné pole



Chcem dostávať novinky o:


 

Workshop – základy programovania

Úvod

Nedávno som dostal nápad – čo tak naučiť pár ľudí programovať? A začal som robiť online kurz programovania. Ako sa však ukázalo, drvivá väčšina ľudí, ktorí sa zapojili do tohto kurzu boli ľudia, ktorí už majú s programovaním skúsenosti. Domáce úlohy boli pre nich hračka. A tí, čo majú tajnú túžbu naučiť sa programovať si samozrejme nenájdu čas, alebo chuť robiť domáce úlohy, pretože sa im to asi zdá byť ťažké.

Jeden večer som sa nachádzal v mojom obľúbenom bare a prišiel za mnou kamarát so slovami „Nauč ma programovať“. Chcel som mu poslať svôj online kurz, ale uvedomil som si, že takíto ľudia sa nedonútia niečo sami naučiť. Bombardovať ľudí e-mailami prečo nerobia domáce úlohy ma nebaví. Na druhý deň ráno v mojej hlave vznikla myšlienka „Čo takto usporiadať workshop programovania?“.

Čo to je?

Za cca 2-4 hodiny sa naučíte základy programovania, zistíte či vás to baví a či sa chcete programovaniu ďalej venovať.

Pre koho to je?

Pre všetkých, ktorí chcú preniknúť do tajov programovania. Som toho názoru, že programovať sa naučí každý. No možno sa v tomto workshope presvedčím, že to nie je pravda 🙂

Pre koho to nie je?

Pre tých, ktorí majú s programovaním už skúsenosti. Na Workshope sa budú preberať naozaj iba základy.

Koľko to stojí?

Čo sa týka peňazí, tak nič. Investujete do toho „iba“ čas (2-4 hodiny). Workshop je naozaj zdarma.

Prečo robím tento workshop?

Veľa ľudí nevie, čo si má pod pojmom „programovanie“ predstaviť. Veľa ľudí vraví „programovanie nie je pre mňa“ aj keď programovať nikdy neskúsili. Mojim cieľom je odhaliť mystériu programovania bežným smrteľníkom a prebudiť v nich lásku alebo nenávisť k programovaniu.

Programátorov je na celom svete nedostatok. Ľudia žijú z biednej výplaty, no keby sa naučili programovať, môžu zarábať oveľa viac. Takisto je to skvelá možnosť pre nezamestnaných. Viete ako som sa ja dostal k programovaniu? Bol som nezamestnaný a pretože som nechcel robiť za minimálnu mzdu, začal som sa učiť programovať.

Čo budeš potrebovať?

Hlavu s mozgom na rozmýšľanie, notebook na programovanie.

Kedy a kde to vypukne?

Termíny kurzu a prihlasovanie nájdete na stránke mojich kurzov: http://kurzy.hromnik.com/zaklady-programovania

Workshopu sa môže zúčastniť 8 – 10 ľudí.

Je možné, že pre veľký záujem bude workshopov viac. Ak máš záujem o workshop, prihlás sa do newslettera „Budúci programátori“ a pošlem ti bližšie info hneď ako bude dostupné. Prihlásiť sa môžeš na tejdo adrese: http://hromnik.us8.list-manage.com/subscribe?u=278d7ef7b31184a530eaff0b2&id=a2cae41622

Prípadné otázky posielajte cez správy na Facebooku alebo na mail tomas@hromnik.com

Prihlásiť sa k odberu noviniek o programovaní

* povinné pole



Chcem dostávať novinky o:


 

Prečo JavaScript? Aneb JavaScript nie je Java

Koncom roku 2008 sa JavaScriptu smiali, že „Java and Javascript are similar like Car and Carpet are similar.“ (Java a JavaScript sú podobné ako auto a koberec). Teda Java mala byť auto a JavaScript koberec. V roku 2008 to aj tak bolo. Java bola vyspelejšia, JavaScript bol iba skriptovací jazyk, v ktorom sa dali robiť rózne fígle pre webové stránky v prehliadačoch. JavaScript bolo možné použiť iba vo webovom prehliadači. Javu bolo a je možné použiť pre desktopové aplikácie, webové aplikácie (na strane servera) a Android aplikácie.

V roku 2009 vznikla platforma Node.js, ktorá umožnila použitie JavaScriptu na strane webového servera. Webová stránka má 2 časti – serverovú a klientskú (prehliadač) časť. Zrazu vďaka Node.js bolo možné použiť JavaScript v oboch častiach, čo prináša nesmiernu výhodu pre programátorov – nemusia rozmýšľať vo viacerých serverových jazykoch ako PHP, Java, Python, Ruby,… ale stačí im JavaScript na strane servera aj na strane klienta. Osobne som programoval weby v PHP na serveri a potom som mal niečo spraviť na klientovi v JavaScripte. Keďže PHP a JavaScript majú trochu odlišnú syntax, zrazu som bol z JavaScriptu debil. Nevedel som takmer napísať ani čiarku JavaScriptu bez googlenia. A potom som objavil server-side Javascirpt – Node.js. Nádhera. Bol som milo prekvapený, že také niečo existuje a nebol som sám. Mnoho ľudí prešlo z klasických server-side jazykov na Node.js možno aj práve kvoli tomu, že bolo možné písať server a klienta v jednom jazyku ale hlavne preto, že Node.js je výkonnejšie.

Mobilné aplikáce v JavaScripte

Áno, v JavaScripte, HTML a CSS sa dajú spraviť aj mobilné aplikácie napríklad pomocou Phonegap a Ionic. Obrovskou výhodou je, že robíte klasickú webovú aplikáciu v JavaScripte, HTML a CSS, ktorú potom môžete rovno preportovať pre rôzne mobilné operačné systémy ako iOS, Android, Windows7, Blackberry alebo FirefoxOS. Keby ste pre mobilné aplikácie nepoužili JavaScript, museli by ste pre Android programovať v Jave, pre iOS v Objective C, pre Windows7 v C#,… pre každú platformu zvlášť a znova to isté v inom jazyku. Strach a hrôza!!!

Aby som JavaScript iba nechválil, mobilné aplikácie napísané v JavaScripte môžu byť o niečo pomalšie ako natívne aplikácie. Stojí ale za rozmyslenie, či obetujem výkon za čas programovania pre ďalšie platformy… Navyše minimálne Android plánuje lepšiu podporu HTML5 + JavaScript aplikácií.

Môžte si pozrieť moje Android aplikácie Drink counter, Math homework. A takisto mám Drink counter a Math homework pre FirefoxOS. Jeden kód – viac platforiem. Nemám žiaľ  iOS ani Windows7 telefóny a tak nemám na čom testovať aplikácie pre tieto platformy. Pred vypustením aplikácie do sveta je dobré otestovať aplikáciu na reálnom zariadení, môžu (a nemusia) nastať rôzne odchylky vo funkčnosti 🙂

V skratke

JavaScript je univerzálny programovací jazyk. Naprogramujete v ňom webové (klient, server), mobilné (Phonegap) aj desktopové aplikácie. Stačí tak málo – vedieť JavaScript.

Záver

Osobne si myslím, že JavaScript, HTML5 a CSS je budúcnosť akýchkoľvek aplikácii, či už mobilných, desktopových, alebo webových. Samozrejme JavaScript nie je dokonalý jazyk, existujú oveľa krajšie a lepšie jazyky. Ale JavaScript je univerzálny. A tá univerzálnosť ma láka viac, než čokoľvek iné.

 

Programovanie pre neprogramátorov – 2. lekcia

Tento článok je súčasťou môjho online kurzu programovania v JavaScripte. Každý sa ho môže zúčastniť, kurz je zdarma. Kto sa ešte nezaregistroval, môže tak spraviť tu: http://eepurl.com/UzefH. Kurz obsahuje teoretickú časť (články na tomto blogu) a praktickú čast (domáce úlohy zadávané emailom).

V prvej lekcii som vysvetľoval prvé základné stavebné kamene každého programu/aplikácie. Dnes si ukážeme ďalšie stavebné kamene a to podmienky.

Podmienky určujú, ktorá časť kódu sa vykoná. Z prvej lekcie budeme potrebovať vedieť čo sú boolean premenné (true, false).

[js]
var isRaining = true;
if (isRaining) {
  //prší, vykoná sa táto časť kódu
}
[/js]

Ak by sme definovali „isRaining“ false, blok kódu obalený if-om by sa nevykonal. Keďže je „isRaining“ true, „prší“ sa vykoná.

[js]
var isRaining = false;
if (isRaining) {
  //prší, vykoná sa táto časť kódu
} else {
  //neprší, vykoná sa táto časť kódu
}
[/js]

V ukážke vyššie definujeme boolean premennú „isRaining“ s hodnotou false (nepravda). Ktorá časť kódu sa vykoná? Vykoná sa „neprší“ (vetva else), pretože „isRaining“ je nepravda. Ak by sme definovali „isRaining“ ako true, vykoná sa „prší“. Všimnite si medzeru za „if“ a medzeru pred a za „else“. Takisto odsadenie 2 medzerami alebo tabulátorom vo vnútri „if“. Je to „coding standard„, ktorý by mali dodržiavať všetci programátori.

Skoro by som zabudol na „else if“:

[js]
var age = 18;
if (age === 18) {
  //si dospelý, už môžeš piť alkohol legálne
} else if (age < 18) {
  //si ešte dieťa, môžeš piť nelegálne alkohol
} else {
  //máš viac ako 18 rokov. Si už stará raketa.
}
[/js]

„else if“ použijeme ak chceme overiť viacero podmienok. „else if“ môže byť za sebou ľubovoľne veľakrát. Po „else if“ môže a nemusí nasledovať „else“.

Ešte je tu pár vecí, ktoré by sme mali vedieť pri podmienkach a boolean hodnotách. A to:

Operátory a vyhodnocovanie podmienok:

Operátor is equal ==

[js]
var name = ‚Josh‘;
//operátor is equal (==) porovná 2 hodnoty a vyhodnotí podmienku na true (ak sa rovnajú) alebo false (ak sa nerovnajú)
var isJosh = (name == ‚Josh‘); //isJosh sa vyhodnotí na true. Zátvorky sú ľubovoľné, slúžia pre prehľadnosť kódu
var isPeter = (name == ‚Peter‘); //isPeter sa vyhodnotí na false pretože ‚Josh‘ != ‚Peter‘

if (name == ‚Josh‘) {
  //som Josh
}
[/js]

Existuje aj operátor „===“, ktorý porovnáva rovnosť hodnôt ako aj „==“ ale líšia sa tým, že operátor „===“ porovnáva aj rovnosť typov premenných:

[js]
var zero = 0;

if (zero == „0“) {
  //podmienka sa vyhodnotí na true. V JavaScripte môžeme porovnávať čísla so stringami s operátorom ==
}

if (zero === „0“) {
  //podmienka sa vyhodnotí na false, pretože zero je typ Number a „0“ je String
}
[/js]

Operátor nerovná sa (is not equal) !=

[js]
var zero = 0;

if (zero != „0“) {
  //tento blok sa nevykoná, vyhodnotenie podmienky je false
}

//operátor !== porovnáva hodnotu aj typ premenných
if (1 !== „1“) {
  //true, 1 je typ Number, „1“ je typ string.
}
[/js]

Porovnávajúce operátory <, >, <=, >=

[js]
if (3 > 4) {
  //3 nie je väčšie ako 4…
}

if (5 <= 5) {
  //5 je menšie, alebo rovné 5
}
[/js]

Operátor && (and) a || (or)

[js]
var isRaining = true;
var isStorm = false;
var isRainingAndStorm = isRaining && isStorm; //operátor && je logický AND (a zároveň). Porovnáva 2 hodnoty. Ak sú obe hodnoty true, podmienku vyhodnotí na true. Ak je jedna, alebo obe hodnoty false, podmienku vyhodnotí na false

isRainingAndStorm = isRaining || isStorm //operátor || je logický OR (alebo). Stačí ak je jedna hodnota true a celý výraz sa vyhodnotí na true

[/js]

Viac o porovnávacích operátoroch sa dozviete tu.

Zhrnutie

Mali by ste chápať načo slúžia podmienky „if“, „else if“, „else“
Mali by ste chápať operátorom „&&“, „||“, „==“, „===“, „!=“, „!==“, „<„, „>“, „<=“, „>=“

Cvičenie/Domáca úloha

http://jsfiddle.net/elfoslav/fyC3L

Ako odovzdávať cvičenia? Keď sa ti zobrazí stránka s cvičením, klikni v hornom menu na “Fork”. To vytvorí tvoju kópiu cvičenia. Keď budeš chcieť spustiť kód, klikni v hornom menu na “Run”. Keď budeš mať cvičenie hotové, klikni na “Update”, to uloží tvoje cvičenie. Potom už len skopíruješ link cvičenia a odošleš mi ho do mailu. Ja ti cvičenie skontrolujem a oznámkujem.

Alebo jednoduchšie: Zaregistruj sa na http://www.codermania.com a prejdi si cvičenia tam. Cvičenia sa vyhodnocujú automaticky. Ak si nebudeš dať vedieť rady, je tam tlačidlo „Ask for help“. Ak nevieš po anglicky, môžeš použiť Google translator. Veľa šťastia.

Prihlásiť sa k odberu noviniek o programovaní

* povinné pole



Chcem dostávať novinky o:


 

Hare Krišna

Hare Krišna je pôvodom indická filozofia prameniaca z Védskej tradície podobne ako hinduizmus. A. C. Bhaktivédánta Svámí Prabhupáda rozšíril filozofiu Hare Krišna v Amerike a neskôr sa dostala aj do Európy. Krišna je najvyššia osobnosť božstva.

V Brne stretávam „Krišňákov“ dosť často. Predávajú knihy (väčšinou za 100,-Kč) a niekedy Krišnodvorské kokosky. Vždy, keď na niekoho z nich narazím, pozrie sa na mňa a osloví ma. Ja sa zastavím, pokecáme a skoro vždy si kúpim dáku knižku alebo výborné kokosky z ich BIO farmy. Asi 2 týždne dozadu som sa dozvedel, že každú nedeľu o 14:00 robia program pre verejnosť. Tak som si povedal, že keď budem cez víkend v Brne, tak tam zájdem. Rád skúšam nové veci a spoznávam nových ľudí.

Prišiel som na Durďákovu 34 a čo ma hneď zaujalo, bola žena (asi Indka), v indickom oblečení, ktorá sa prechádzala v záhrade. Ja som vošiel do otvoreného domu a ostal som na chodbe, lebo som nevedel či ísť ďalej bez opýtania. Medzitým mladá Indka prešla okolo mňa s pozdravom „Hare Krišna“, automaticky som odpovedal „Hare Krišna“ aj keď trochu zaskočený. Takto sa tu zdravia? „Hare Krišna“? Zaujimavé… Čakal som na chodbe až kým niekto neprišiel a nepovedal mi, že môžem ísť dovnútra. Tak som sa vyzul a vošiel do miestnosti, kde sa mal odohrať program. Tam bolo pár ľudí v civile a zbytok „Krišňáci“. Jeden muž v civile sa ma spýtal či som tu prvý krát. Povedal som, že hej. Tak mi povedal ako to tu chodí: hodinu sa spieva Hare Krišna, hodinu sa prednáša a potom sa ide jesť. Zase som zostal zaskočený… hodinu sa spieva? hodinu?? Dúfal som, že sa bude spievať aspoň viacero pesničiek. No nie. Naozaj sa hodinu spievalo a hralo:

Vraj aby navodili meditačný stav. Našťastie to nebolo stále to isté, menil sa rytmus, melódia a dynamika. Nebolo to také hrozné ako som čakal a ku koncu sa mi to aj zapáčilo 🙂

Po spievaní prišiel prednášajúci. Bol som milo prekvapený, že bol Slovák. Podľa prízvuku Blavák. Prednášal úryvok z Bhagavad Gíty o tom, že Boh je osoba a nie nejaká neurčitá hmota. Vzťah môžeme mať len k osobe…  A ako bonus rozprával o tom, že sme duše uväznené v ľudskom tele. Sme otrokmi svojich tiel a svojich pudov. Prahneme po úspechu, uznaní a bohatstve, ktoré nám bude na smrtelnej posteli k ničomu.

Každý týždeň prednáša niekto iný.

Po prednáške nasledoval ešte krátky, asi 15 minutový tanec a spev. Tentokrát spievali aj dáke iné piesne a ku koncu zase Hare Krišna.

No a potom bola konečne hostina. A keď vravím hostina, tak naozaj hostina. Ešte ma kolega, ktorý sedel vedľa mňa, upozornil aby som si prvé kolo nenaložil veľa, že bude viacero chodov. A tak aj bolo. Ryža, strukovinová omáčka, zeleninová zmes, jogurt, škoricové guličky… jedlo po obrade sa nazýva prasádam. A bolo vynikajúce. Najedol som sa do prasknutia.

Na hostine ma zaujalo, že muži jedli v jednej polovici miestnosti a ženy v druhej. Jedli sme na zemi v miestnosti, kde bol aj obrad.

Pokecal som s pár ľuďmi, kúpil som si ďalšiu knihu „Vědecké poznání duše“ a s dobrým pocitom a plným žalúdkom šiel domov. Keď budem môcť, zavítam aj nabudúce. Tí ľudia nie sú žiadna sekta, ale naozajstní Krišnovi oddaní.

No a na záver, Hare Krišna!

IMAG0031

 

Programovanie pre neprogramátorov – 1. lekcia

Tento článok je súčasťou môjho online kurzu programovania v JavaScripte. Každý sa ho môže zúčastniť, kurz je zdarma. Kto sa ešte nezaregistroval, môže tak spraviť tu: http://eepurl.com/UzefH. Kurz obsahuje teoretickú časť (články na tomto blogu) a praktickú čast (domáce úlohy zadávané emailom).

V úvodnom článku o programovaní som sľúbil, že v ďalšom článku si ukážeme kusy kódu.

Tak poďme na to. Dnes sa naučíme pojmy ako

  • variable (čítaj veriebl)
  • array (čítaj erej)
  • string (čitaj ako vidíš)
  • integer (čítaj intidžer)
  • float (čítaj flout)
  • boolean (čítaj búlín)

Tieto pojmy využijete takmer vo všetkých programovacích jazykoch.

Premenné (variables)

Premenné si môžete predstaviť ako úložisko dát. Do premennej môžeme uložiť text (dátový typ string), čislo (dátové typy integer, float, double), zoznam položiek (pole), funkcie, objekty a ďalšie. Premenné sa píšu anglickým názvom. Vlastne všetky programy sa píšu anglicky, aby im rozumeli programátori z celého sveta. V JavaScripte začína definícia premennej kľúčovým slovom „var“ (skratka variable).

Ukážka premennej dátového typu string s názvom „name“ a hodnotou ‚Peter‘:

[js]
var name = ‚Peter‘;
[/js]

Ukážka premenných s názvom „carName“ a „pigName“:

[js]
//string môže začínať a končiť jednoduchými uvodzovkami ‚ ‚
var carName = ‚Škoda‘;
//alebo dvojitými uvodzovkami “ “
var pigName = „Miško“;
[/js]

Všimnite si ako sú názvy napísané. Viacslovné názvy začínajú malým písmenom, nové slovo začína veľkým. Toto sa nazýva CamelCase a je to programátorský štandard vo väčšine programovacích jazykoch. Všimnime si tiež, že deklarácia premennej končí znakom „;“ nazývaný stredník (semicolon). Stredník slúži k ukončeniu príkazu.

Premenné typu string môžeme spájať s operátorom +:

[js]
var firstname = ‚Peter‘;
var lastname = ‚Pan‘;
var fullName = firstname + ‚ ‚ + lastname; //medzi firstname a lastname musíme pridať medzeru. fullName má hodnotu ‚Peter Pan‘
[/js]

Premenné typu integer/float:

[js]
//integer je celé číslo
var a = 6;
var b = 2;
var c = a + b; //8
var d = a / b; //3
var e = a * b; //12
var f = a – b; //4
[/js]

[js]
//float je desatinné číslo
var x = 1.5;
var y = 2.23;
var z = x + y; //3.73
[/js]

Desatinné čísla sa píšu s bodkou, nie čiarkou ako sme zvyknutí.

Premenné typu boolean:

[js]
var isDay = true; //je deň
var isNight = false; //nie je noc
var hasDog = false; //nemá psíka
[/js]

Premenné typu boolean majú len 2 hodnoty – „true“ a „false“. Používajú sa na zistenie či je niečo pravda alebo nepravda. Všimnite si prefixu „is/has“. Je zvykom tento prefix mať v názve premennej typu boolean.

Viac o premenných sa dočítate tu.

Komentáre (comments)

V programoch sa píšu komentáre pre objasnenie, čo daný kus kódu robí. Programátor naprogramuje niečo zložité, nenapíše si k tomu komentár, lebo v danej chvíli je mu jasné čo daný kód robí. Keď sa však po pol roku k tomu kódu vráti, bude márne rozmýšľať čo tým kusom kódu pred pol rokom myslel. Preto dobrí programátori píšu komentáre. Komentáre sa tiež píšu po anglicky, len v tomto článku ich budem písať po slovensky.

Ukážka komentárov:

[js]
//toto je jednoriadkový komentár
//každý riadok musí začínať s dvoma lomítkami

/** toto je viacriadkový komentár
začína lomítkom a dvoma hviezdičkami
končí jednou hviezdičkou a jedným lomítkom
*/

//môžeme zakomentovať aj kusy kódu. Zakomentovaný kód bude program ignorovať.
//var a = ‚blabla‘;
[/js]

Kľúčové slová (keywords)

Každý programovací jazyk má kľúčové slová. V JavaScripte je to napr „var“, „break“, „delete“,…  Kľúčové slová nemôžu byť použité ako názvy premenných pretože majú definovaný svôj speciálny význam. Všetky kľúčové slová nájdete tu.

Polia (arrays)

Ak ste si predstavili pole ako rolu, tak to nie je ono. Polia slúžia v programoch na uloženie zoznamu dát. Pole je vlastne typ premennej, tak ako sme si predstavili typy string, integer, float a boolean.

Ukážka poľa v JavaScripte:

[js]
/** pole people obsahuje mená ľudí. K položkám v poli pristupujeme pomocou indexu. Polia sa indexujú od 0. */
var people = [‚Jully‘, ‚John‘, ‚Josh‘, ‚Marry‘];

var jully = people[0]; //people[0] vráti položku s indexom 0, teda ‚Jully‘
var josh = people[2]; //people[2] vráti ‚Josh‘

//položku v poli môžeme zmeniť
people[1] = ‚Joe‘; //John zmeníme na Joe

//prázdne pole
var people2 = [];

people2[0] //vráti undefined, pretože v poli na indexe 0 nič nie je.

//položky do poľa pridáme pomocou funkcie push
people2.push(jully, ‚Julian‘, people[3]); // [‚Jully‘, ‚Julian‘, ‚Marry‘]

//počet položiek v poli zistíme pomocou length
var peopleCount = people.length; //4
[/js]

S poľami sa toho dá robiť veľa. Viac sa dočítate na w3schools. Polia si precvičíme v cvičení, na konci článku.

Zaujímavosti

[js]
var name = ‚Peter‘; //definujeme premennú kľúčovým slovom var
name = ‚Jay‘; //hodnotu premennej môžeme zmeniť. Premenná už existuje, píšeme ju bez var.
name = []; //hodnotu premennej môžeme predefinovať
[/js]

Všetky prebrané veci v tomto článku sú základné stavebné kamene každého programu.

Pôvodne som chcel prebrať viac, ale zdá sa, že už je toho v tejto lekcii dosť. V druhej lekcii si predstavíme cykly a nejaké tie ify – ďalšie základné stavebné kamene každého programu. Ak ste sa ešte nezaregistrovali do kurzu a chcete sa naučiť základy programovania, môžte sa ešte stále zaregistrovať.

Komu by nestačil tento článok, tu je pár zdrojov o JavaScripte:

Cvičenia

1. úloha: http://jsfiddle.net/elfoslav/9G3xa/
2. úloha: http://jsfiddle.net/elfoslav/He9z4/

Ako odovzdávať cvičenia? Keď sa ti zobrazí stránka s cvičením, klikni v hornom menu na “Fork”. To vytvorí tvoju kópiu cvičenia. Keď budeš chcieť spustiť kód, klikni v hornom menu na “Run”. Keď budeš mať cvičenie hotové, klikni na “Update”, to uloží tvoje cvičenie. Potom už len skopíruješ link cvičenia a odošleš mi ho do mailu. Ja ti cvičenie skontrolujem a oznámkujem.

Alebo jednoduchšie: Zaregistruj sa na http://www.codermania.com a prejdi si cvičenia tam. Cvičenia sa vyhodnocujú automaticky. Ak si nebudeš dať vedieť rady, je tam tlačidlo „Ask for help“. Ak nevieš po anglicky, môžeš použiť Google translator. Veľa šťastia.

Prihlásiť sa k odberu noviniek o programovaní

* povinné pole



Chcem dostávať novinky o:


 

Moja cesta životom

Nebudem tu písať celú svoju cestu životom od narodenia až po teraz. Napíšem len tú podstatnú časť, ktorá ma najviac ovplyvnila – 19-26 rokov svojho života.

Keď som skončil stredné odborné učilište (s maturitou) v roku 2008, nevedel som čo chcem robiť ďalej. Tak som robil 2 mesiace brigádnika v sklade jedného supermarketu. Celá práca spočívala v naložení palety a odvezení palety na bránu, kde si ju už kamionista naložil. Bavilo ma to. Naozaj ma bavilo nakladať paletu tak, aby sa nerozpadla. A voziť sa po celom sklade na vozíku. Po čase som si ale položil otázku: „Chcem toto robiť celý život? Uživím seba a rodinu z tých peňazí, čo tu zarobím?“ Zarobil som si dosť na to, aby som mohol vypadnúť do zahraničia. Mal som už aj podpísanú zmluvu v agentúre, že v januári 2009 odlietam do Anglicka. Prišla kríza. Agentúra skončila svoju činnosť. Ľudia z Anglicka sa vracali domov, nebolo dosť práce pre všetkých. Rozmýšľal som, čo ďalej. Odmalička ma bavila práca s počítačom. Hral som sa počítačové hry ale zistil som, že na počítači sa dá robiť viac ako len sa hrať. Začal som sa učiť programovať. Keď som napísal svoj prvý program v jazyku C, ktorý sa ma spýtal na meno, vek a vypísal „Ahoj Tomáš, máš 20 rokov“ bol som nadšený. Podal som si prihlášku na VŠ informatiku do Žiliny a do Brna (MUNI). Kvôli prijímačkám som musel chodiť na doučovanie z matematiky asi 2 mesiace. Doučovanie mi vybavil a platil otec, za čo som mu vďačný.

Spravil som prijímačky na obe školy. Voľba bola jasná – Brno. Vedel som, že v Brne na informatike je ťažká angličtina, a keďže som sa na strednej naučil iba pár slovíčok, prítomný, budúci a trochu aj minulý čas, začal som venovať všetok svoj voľný čas angličtine. Našiel som stránku http://www.helpforenglish.cz/, z ktorej som sa toho naučil najviac. Začal som čítať články po anglicky, z ktorých som zo začiatku rozumel veľké prd, ale časom, keď som sa naučil viac slovíčok, bolo to lepšie a lepšie.

V septembri 2009 som nastúpil do prvého ročníka, spravil som dokonca vstupný test z angličtiny 😉 a bol som nadšený. Prvý ročník som sa naozaj snažil a makal, aby som sa naučil čo najviac. Najťažšia bola matematika. Väčšina spolužiakov bola z gymnázia, kde sa učili aspoň základy derivácií a integrálov, o ktorých som ja z učilišťa nemal ani potuchy. Tak som sa znova niečo nové a užitočné naučil. Doteraz som derivácie ani integrály v praxi nepoužil 🙂

V druhom ročníku som sa toho naučil asi najviac (Java, Automaty a gramatiky, C#, Analýza a návrh systémů – ANANAS,…)

V treťom ročníku som sa naučil nenávidieť Javu. Zároveň som zistil, že sa chcem venovať webovým technológiám, ktoré sa v tom čase na škole moc neučili. Opakoval som matematiku 4 (áno, až 4 matematiky sme mali!) a vedel som, že ju nedám aj keď sa budem akokoľvek snažiť. Bolo to už nad moje chápanie. Mal som písať bakalárku, aj som napísal pár strán (možno 2 :D). Po prvej semestrálke z matiky som pochopil, že akákoľvek snaha o spravenie titulu bude márna. Keď som si predstavil, že mám zabiť  4 mesiace učením sa zbytočnej matiky, písania zbytočnej bakalárky a učenie sa na zbytočné štátnice… začal som sa učiť veci, ktoré v živote naozaj využijem a chcem sa im venovať. Začal som robiť webové stránky a aplikácie v PHP. Vďaka facebookovej aplikácií „Share a ride“, ktorú som spravil namiesto písania bakalárky ma oslovil kamarát a začal som pracovať v jeho firme. Nechcel po mne titul, chcel vedomosti. Na školu som sa jednoducho v poslednom semestri bakalárskeho štúdia vykašľal. Niekto to môže nazvať zbabelosť, niekto dokonca šialenosť. Ja to nazývam najlepšie rozhodnutie v mojom živote. Ak by som dorobil nasilu bakalársky titul, zošedivel by som a ani z ďaleka by som nebol tam, kde som bol bez titulu.

Zamyslite sa aký má pre vás titul prínos. Vážne ho potrebujete, aby ste mohli robiť to, čo vás baví a živí? Alebo si s ním môžete akurát vytreť zadok?

Dnes sú to 2 roky, čo som sa na školu vykašlal a 2 roky robím, čo ma baví. Živí ma to a najbližšiu dobu živiť bude. Aj keď už nechodím do školy, stále sa učím nové veci. Učím sa ich sám od seba. Nikto ma do ničoho nenúti.

A čo vy? Aj vy sa učíte? Alebo len prídete zo školy/práce domov, zapnete telku a vypínate mozog?

 

Si pripravený pre startup?

Predtým, než začneš startup, by si si mal rozmyslieť do čoho to vlastne ideš a či to budeš zvládať psychicky i finančne. Startup nie je krátky šprint, je to beh na dlhú trať.

Predtým, než začneš, musíš mať našetrených dosť peňazí aby si z nich vyžil aspoň pol roka. Alebo cucať peniaze od rodičov 🙂 Po pol roku startup možno začne niečo zarábať, ale pravdepodobne to nebude dostatok na to, aby uživil celý tím. Budeš nútený sa zamestnať (ak ťa neživia rodičia) aspoň na part time. Popritom budeš makať na svojom startupe a modliť sa, že raz začne zarábať dostatok na to, aby ťa uživil. Tým šťastnejším a šikovnejším sa to pravdepodobne podarí. Tí menej šťastní a možno menej šikovní začnú nový startup, alebo budú pracovať na fulltime šťastne až do dôchodku.

Robíš startup sám? Nerob to! Zožeň si aspoň jedného parťáka, s ktorým sa budete navzájom dopĺňať – si frontendista? Zožeň si niekoho na backend. Si grafik? Zožeň si kodéra/programátora… neskôr budete potrebovať viac ľudí – marketéra, človeka na biznis,… ja ako programátor nedokážem robiť grafiku, ani marketing, ani biznis.

Tak nech sa darí, startupisti.

Odsudzovanie podľa výzoru

Výzor je to, čo si na človeku ako prvé všimneme. Výzor ale môže veľakrát klamať. Napríklad mám kamaráta, ktorý má dlhé vlasy a nie je metalista. Spoznal som slušných a pracujúcich Rómov. Poznám ženu, ktorá vyzerá ako barbie a nemá v hlave nasrané. Nechávame sa klamať výzorom. Myslíme si, že tamten je chudák, pretože má oblečené dotrhané veci a pritom to môže byť milionár.

Tiež som mal tendenciu odsudzovať ľudí podľa výzoru. No zistil som, že je to blbosť. Prečo sa nechať klamať výzorom? O danom človeku si spravím predstavu až keď s ním prehodím pár slov. Či už je to dôchodca, bezdomovec alebo nácek.

Ak máte aj vy tendenciu odsudzovať ľudí na prvý pohľad, skúste si predstaviť, že ten človek je rovnako skvelý a úžasný ako vy sami. Ak nie úžasnejší. Mne táto predstava pomáha a snažím sa vidieť všetkých ľudí rovnako.

Predstav si, že si Róm. Žiješ v rómskej osade, ale nie si ako ostatní. Chceš dosiahnuť viac ako len žiť v špine a zo sociálnych dávok. Chceš sa vzdelávať a nájsť si prácu. Tu s veľkou pravdepodobnosťou narazíš na problém. Vzdelanie možno ako tak dosiahneš, ak preukážeš snahu a výsledky. No aj tak narazíš na čudácke pohľady a názory „Veď on je cigán, ako sa môže tak dobre učiť?„. Skutočný problém nastane keď si začneš hľadať prácu. V drvivej väčšine pohovorov neuspeješ. Prečo? Pretože stále veľa ľudí na Slovensku má obmedzené myslenie a zaužívané stereotypy. Veď predsa všetci cigáni sú nevychovaní, nezvdelaní, násilnícki, zlodeji… Akonáhle prídeš na pohovor, automaticky si ťa zaradia medzi ostatných. Máš jednoducho smolu. Aj keď sa budeš snažiť preukázať svoje schopnosti, ľudia môžu mať voči tebe stále predsudky a tvoje schopnosti si nebudú všímať. Život v spoločnosti plnej predsudkov je ťažký. Snáď sa dočkáme doby, kedy budú ľudia posudzovať a odsudzovať menej na základe výzoru a viac na základe schopností jednotlivcov.

Programovanie pre neprogramátorov (úvod)

Programátorov je v dnešnej dobe málo. Takmer každá IT firma stále hľadá programátora. Je čas naučiť sa programovať.

Ja som sa začal učiť programovať po strednej škole (2008). Zistil som, že manuálnou prácou sa neuživím. Jednak finančne, druhak mám obe ruky ľavé. A to som ľavák.

Kto chce, naučí sa programovať aj sám (s pomocou Google). Kto má peniaze, môže si zaplatiť programátorské kurzy. Kto má peniaze a čas, môže ísť na výšku, ale tam je viac matiky ako programovania. Na začiatku je dobré, keď má človek učiteľa, alebo človeka, ktorý programovaniu rozumie.

Programovanie musí človeka baviť. Keď som spravil svôj prvý program, povedal som si „wow, to je úžasné“. Ten program spočítal 2 čísla, ktoré som mu zadal.

V čom je dobré začať programovať? Programovacích jazykov je veľa. Keď už sa človek jeden jazyk naučí, ostatné jazyky sa naučí pomerne rýchlo. Ja som začínal s Pascalom, C, C++. V škole som sa naučil v Jave objektovo programovať a využil som to aj v PHP. Teraz je môj jediný univerzálny jazyk JavaScript.

V dnešnej dobe sa oplatí robiť hlavne webové a mobilné aplikácie. Máte nápad na nejakú aplikáciu ale neviete ju spraviť? Naučte sa to! Nečakajte, že vám ju niekto naprogramuje. Programátorov je málo a sú zaneprázdnení svojou prácou.

Toľko k úvodu. V ďalšom článku v kategórii programovanie si ukážeme a vysvetlíme kusy kódu aby ste mali predstavu ako to funguje.

Tu si môžete pozrieť upútavku:

https://www.facebook.com/photo.php?v=701206783246409&set=vb.100000712815612