Rozhovor s vývojárom Drahomír Hanákom
Na dnešnej rozhovor nám kývol mladý vývojár v oblasti moderných webových technológií, Drahomír Hanák.
Ahoj Drahoš, som veľmi rád, že si si urobil čas na tento rozhovor. Mohol by si sa nám najprv predstaviť a prezradiť nám odkiaľ si, ako si starý a kde študuješ, prípadne pracuješ?
Ahoj, volám sa Drahomír Hanák a je mi 16 rokov. Študujem strednú priemyselnú školu v Kladne na odbore IT.
Viem, že sa orientuješ hlavne na webové technológie. Bolo tomu tak od začiatku alebo si začínal na desktope a na webové aplikácie si sa preorientoval? Prípadne čo ťa k tomu viedlo?
Asi v 12 rokoch som začal chodiť na kurzy programovania v céčka. Tak som sa dostal k programovaniu. Céčko som moc nechápal, a tak som sa dostal k HTML. To sa mi páčilo, pretože bolo jednoduché a tak som za chvíľu dokázal vytvoriť stránku, z čoho som bol nadšený Časom mi prestalo klasické HTML stačiť, tak som sa dostal k PHP a JavaScriptu.
Čo hovoríš na nové technológie v oblasti HTML a CSS, je niečo, čo nejako výrazne zmenilo tvoju prácu?
Som nadšený z HTML5 a CSS3. CSS3 prináša veľa užitočných vlastností, ktoré zjednodušujú prácu. Už nemusím kresliť zaoblené rohy blokov, robiť polopriehľadné pixely alebo prechody na pozadí. Môžem použiť akýkoľvek font bez toho aby som sa musel báť, že sa celá stránka zobrazí zle. Bez týchto vylepšení si už nedokážem predstaviť prácu. Síce si musím dávať väčší pozor na podporu u starších prehliadačov, ale prácu mi to výrazne zjednodušilo. Keď som začal postupne objavovať technológie HTML5, neveril som tomu, čo to všetko dokáže. Vie kresliť 3D a 2D (i vektorovú grafiku), prehrávať zvuky a videá, WebSockets a veľa ďalších vecí. Bohužiaľ tieto vylepšenia nie sú zatiaľ moc podporované a tak mi nijako výrazne prácu nezmenili. Čo ale používam často sú nové HTML5 tagy. Som za všetky tieto vylepšenia rád a dúfam, že postupom času dostaví lepšia podpora aj v ďalších prehliadačoch ako je IE, ktorý sa od verzie 9 zdá ako dobrý prehliadač.
Čo si myslíš o mobilných zariadeniach a webu. Majú dôležitú pozíciu?
Dnes má skoro každý chytrý telefón alebo tablet, v ktorom sa dajú prezerať webové stránky. Preto si myslím, že optimalizácia pre nich má dôležitú úlohu a preto treba dbať na prístupnosť stránky aj pre mobilné zariadenia. Našťastie sú tu CSS media-queries, ktoré výrazne zjednodušujú túto optimalizáciu.
Kam myslíš, že bude trend webových aplikácií smerovať, bude tu v budúcnosti miesto aj pre hrubé klientov?
Vďaka novým technológiám by sa mohli niektoré naozaj veľké desktopové aplikácie presunúť aj do prehliadača. Záleží na tom, ako veľmi budú vývojári schopní tieto aplikácie optimalizovať. Niektoré aplikácie sa zase naopak prenesú z webu na desktopy a mobilné zariadenia, čo je dnes už možné.
Ktoré aplikácie máš na mysli?
Mám na mysli napríklad grafické aplikácie, ako je potrebné Photoshop a 3dsmax alebo webové IDE, ktoré už existujú. Myslím, že v budúcnosti by sme ich mohli nájsť aj na internete.
A ktoré sa presunú na desktopy?
Určite e-mailových klientov (napr. GMail) a aplikácie, ktoré potrebujeme mať po ruke.
Programuješ veľa v JavaScriptu, ktorý je tak trochu iný, než ostatné jazyky. Mám na mysli hlavne funkcionálne prístup a trochu ťažšie debugovania. Aké vidíš v JS výhody?
Výhoda JS je to, že sa spracováva na strane klienta. Dajú sa tak robiť vysoko interaktívne webové aplikácie. Je to celkom jednoduchý jazyk a existuje veľa tutoriálov a skvelých knižníc, ktoré v ňom zjednodušujú prácu. Tiež vie pracovať priamo s DOM. Naviac technológia HTML5 s JavaScriptom počítajú, takže nemáte na výber. JavaScript tiež nepotrebuje žiadnu ďalšiu aplikáciu, ktorá by ho spracovávala. To zariadi prehliadač, čo je na jednu stranu i nevýhoda. Debugging v JavaScripte mne osobne príde vcelku dobrý vďaka Chrome konzolu, kde nemusím zakaždým upravovať samotný kód len aby som si niečo vypísal.
A jeho funkcionálne návrh? Pociťuješ nejakú zmenu napr. Programátorského myslenia oproti klasickému OOP?
V JS všetko predstavuje nejaký objekt. OOP v JavaScriptu je trošku iné, než napríklad v C# alebo Jave. Vo zmes je to ale rovnaké, len si na to zvyknúť. Komu by tento spôsob vadil, môže použiť CoffeeScript alebo skúsiť Dart.
Svoje projekty máš veľmi dobre riešené aj po stránke dizajnu a grafiky, venuješ veľký čas ich návrhu alebo ti to ide tak dobre samo?
ako kedy Niekedy to ide samo a grafický návrh aplikácie mám hotový za chvíľu. Niekedy nad tým strávim hodiny, aby som niečo vymyslel.
Na serveri používaš svoj PHP framework Saixon, čo konkrétne vie a akú má licenciu?
Urobil som si jednoduchý ale celkom účinný HTML template systém, na ktorom som framework postavil. Jedná sa o MVC framework, v ktorom som zlúčil svoje triedy v PHP pre manipuláciu s databázou, súbory, grafikou atď. Snažím sa, aby kód v tomto frameworku bol intuitívny. Vyvinul som ho pre vlastné použitie a nemám v pláne ho zatiaľ zverejniť.
Si členom Nouvelle Communauté, môžeš nám o tomto projekte povedať niečo viac?
Nouvelle Communauté (alebo len Nuvel) je študentská komunita vývojárov, grafikov a všetkých, čo niečo vie. Robíme webové stránky a dizajn, vyvíjame aplikácie atď. Za všetkými prácami stojí sami študenti, ktorí sú za ňu tiež odmenení. Nerobíme to však len pre peniaze. Na projekte členovia môžu získať bohaté skúsenosti, ktoré potom uplatnia v budúcom zamestnaní. Robíme to, pretože nás to baví. Človek v Nuvelu nikdy nepracuje sám. Vždy má k dispozícii celú komunitu, ktorá mu môže kedykoľvek poradiť alebo pomôcť de facto s čímkoľvek.
Okrem webových aplikácií si robil is libGDX, herné knižnicou pre Javu. Ako sa ti s ňou pracovalo, prípadne vzniklo niečo zaujímavé?
libGDX ma nadchla svojou jednoduchosťou. Možno v nej vytvoriť hru pre viac platforiem pridaním len 10 ďalších riadkov ako starter pre danú platformu. Bohužiaľ som zatiaľ nemal čas v nej urobiť nejakú väčšiu hru, ale určite sa k tomu ešte niekedy dostanem.
Aké sú tvoje ďalšie životné plány?
Momentálne mám v hlave jeden projekt, ktorý by som chcel uskutočniť a ak sa podarí, tak v ňom aj pokračovať. Inak určite budem naďalej písať články a svoje názory na ITnetwork
Počítam, že je to projekt väčšieho rázu, budeme tí držať palce Ešte nám povedz, aké máš koníčky okrem programovania, ako relaxuješ?
Rád jazdím na bicykli, čítam knihy, chodím do divadla alebo len tak s priateľmi. Mám veľmi rád dobrú hudbu a hrám na gitaru.