Heading

Perex Html

Websockety vo Flasku
Tipy a triky
15.08.2018
Miroslav Beka

Websockety vo Flasku

Websockety vo Flasku Ak si sa niekedy stretol s výrazom websocket a chcel by si sa dozvedieť, čo to vlastne je a ako sa to používa v Python aplikácii, tak tento článok je práve pre teba. Štandardne tvoj prehliadač komunikuje na webe pomocou http protokolu. Klasický http protokol ponúka jednoduchú komunikáciu. Pošle sa request a ako odpoveď dostanem response. Tento klasický komunikačný spôsob nebol dostatočný pre dnešné moderné aplikácie. Bola potreba pre komunikačný kanál, ktorý bude slúžiť na obojsmernú komunikáciu. HTTP by mal byť viac-menej bezstavový a klient a server medzi sebou komunikujú iba keď treba, inak je spojenie medzi nimi uzavreté. Navyše, prehliadač (klient) musí požiadať server o komunikáciu a server môže na túto žiadosť odpovedať. Tá žiadosť, to je ten http request. Inak server nevie kontaktovať klienta len tak sám od seba. Pri websocketoch je to inak. Ide o komunikačný kanál, ktorý sa otvorí raz, na začiatku a potom sa používa na komunikáciu klienta a servera v oboch stranách. To znamená, že server môže posielať dáta zároveň čo klient posiela dáta na server. Toto sa odborne volá full-duplex. Web socket má menší overheat prenosu dát, vie byť real-time a hlavne, server môže posielať dáta na klienta bez toho, aby si ich klient musel explicitne vyžiadať requestom. Toto je užitočné napríklad pri aplikáciách, ktoré zobrazujú real time dáta a server posiela tieto dáta klientovi. Takže ak nastane nejaká zmena dát, server ich proste pošle na klienta. Toto predtým nebolo možné spraviť iba pomocou http protokolu. Minimálny príkladNajlepšie je vyskúšať si tieto koncepty v praxi. Dnes budeme pracovať s Flaskom, knižnicou SocketIO a javascript knižnicami socket.io a jQuery. Budem predpokladať, že Flask aplikácie aspoň trochu poznáš. Začneme tým, že si vytvoríme nové virtuálne prostredie: $ mkdir websockets_primer $ cd websockets_primer $ virtualenv venv $ . venv/bin/activate (venv) $Nainštalujeme závislosti, ktoré budeme potrebovať: (venv)$ pip install flask, flask-socketioV čase písania tohto článku som používal verzie Flask==1.0.2 a Flask-SocketIO=3.0.1. Keď už máme pripravené prostredie a nainštalované závislosti, spravíme nový súbor server.py from flask import Flask from flask import render_template from flask_socketio import SocketIO app = Flask(__name__) app.config["SECRET_KEY"] = "secret" socketio = SocketIO(app) @app.route("/") def index(): return render_template("index.jinja") @socketio.on("event") def handle_event(data): print(data) if __name__ == '__main__': socketio.run(app, debug=True)Na začiatku máme importy ako pre každú inú Flask aplikáciu, avšak pribudlo nám tam from flask_socketio import SocketIO. Tento naimportovaný modul je v podstate to isté ako iné Flask rozšírenia. Inicializáciu websocketov vo Flask aplikácií spravíme pomocou riadku socketio = SocketIO(app). Pomocou tohto objektu socketio budeme príjmať a odosielať správy. Minimálna aplikácia by mala mať aspoň jednu stránku. V našom prípade to bude index.jinja. Toto je treba pretože musíme poskytnúť aj klientskú časť našej aplikácie. Tam bude javascript knižnica socketio a nejaké ďalšie funkcie. Websockety vedia prijímať a posielať správy. Spravíme zatiaľ len prijímanie správ. Pomocou riadku socketio.on("event")definujem handler pre udalosť event. V tomto prípade jednoducho vypíšem dáta na konzolu. @socketio.on("event") def handle_event(data): print(data)Posielanie a prijímanie dát na oboch stranách (klient a server) prebieha ako event. Toto je dôležitý fakt, pretože architektúra aplikácie založenej na eventoch (event driven architecture) funguje trošku inak ako klasické volanie funkcie. Nehovorím, aby si mal z toho paniku teraz, ale maj to na pamäti. Ak poznáš Flask aplikácie, tak spustenie appky vyzerá zväčša takto if __name__ == "__main__": app.run("0.0.0.0", debug=True)My ale musíme appku spustiť inak, pretože používame websockety. Spustíme ju pomocou objektu socketio, ktorý sme si vytvorili na začiatku. if __name__ == '__main__': socketio.run(app, debug=True)Teraz musíme ešte vytvoriť 2 súbory. Snažíme sa renderovať index.jinja a taktiež musíme vytvoriť hlavný javascript súbor, do ktorého budeme písať klientskú časť našej websocketovej ukážky. Vytvorím priečinok templates a do neho súbor index.jinja <!DOCTYPE HTML> <html> <head> <title>Websockets test</title> <script type="text/javascript" src="//code.jquery.com/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/socket.io/1.3.5/socket.io.min.js"></script> <script type="text/javascript" src="{{ url_for("static", filename="js/main.js")}}"></script> </head> <body> <form id="emit_event" method="post"> <input type="submit" value="emit"> </form> </body> </html>Dôležité sú 3 importy v hlavičke html dokumentu. Prvý importuje jQuery, druhý importuje knižnicu na prácu so socketmi socketio a posledný import je pre náš main.js súbor, ktorý musíme ešte vytvoriť. Inak, tento html dokument obsahuje len jeden formulár s jedným tlačítkom. To budeme používať na posielanie správy cez websocket. Vytvoríme priečinok static v ňom js a v ňom už konečne súbor main.js Obsah bude vyzerať asi takto: $(document).ready(function() { var url = location.protocol + "//" + document.domain + ":" + location.port var socket = io.connect(url); $("form#emit_event").submit(function(event) { socket.emit("event", "test message"); return false; }); });Toto je hlavná logika klientskej časti. Z tadeto budeme prijímať a posielať správy cez websockety tak isto ako na serverovej časti. Pomocou riadku var socket = io.connect(url); sa pripojím na môj server. Následne pomocou jQuery upravím správanie buttonu, aby pri stlačení poslal správu. Na to slúži funkcia socket.emit() Okej, základ máme hotový a môžeme teraz skúšať posielať správy. Aplikáciu spustím pomocou príkazu: (venv)$ python server.py WebSocket transport not available. Install eventlet or gevent and gevent-websocket for improved performance. * Serving Flask app "server" (lazy loading) * Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. * Debug mode: on * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) * Restarting with stat WebSocket transport not available. Install eventlet or gevent and gevent-websocket for improved performance. * Debugger is active! * Debugger PIN: 478-618-530Otvorím prehliadač na http://localhost:5000 a zobrazí sa mi jeden button. Keď ho stlačím na konzole mi vyskočí: test messagePoďme teda preskúmať, aké možnosti nám poskytuje táto knižnica socketio. Príjmanie správAko som už spomínal, prijímanie správ na oboch stranách prebieha ako event. V Pythone musíme pre takýto event definovať handler. V javascripte používame tzv. callbacky. V princípe ide o to isté, ale každý jazyk má svoje vlastné technické riešenie a my si toho musíme byť vedomí. Každý event, ktorý chcem prijať musím mať nejaké meno. V príklade sme mali názov event. Môžem ale použiť čokoľvek @socketio.on("foobar") def handle_data(data): print(type(data)) print(data)Taktiež dáta sa automaticky menia na príslušný typ. Ak v javascripte pošlem string, tak string dostanem aj na serveri. Tak isto to platí pre iné dátové typy ... $("form#emit_event").submit(function(event) { socket.emit("foobar", "message"); socket.emit("foobar", [1,2,3,]); socket.emit("foobar", {data : "message"}); return false; }); ...Po odoslaní udalostí dostanem výpis na serveri <class 'str'> message <class 'list'> [1, 2, 3] <class 'dict'> {'data': 'message'}Handler taktiež môže mať viacero argumentov @socketio.on("sum") def handle_sum(arg1, arg2): print(arg1 + arg2)Upravíme javascriptovú časť a zavoléme event s viacerými argumentami ... $("form#emit_event").submit(function(event) { socket.emit("sum", 23, 47); return false; }); ...Namespace patrí medzi ďalšie funkcie, ktoré mám knižnica SocketIO ponúka. Každý event si môžeme rozdeliť podľa namespaceov. To nám dáva ďalšie možnosti organizácie eventov. @socketio.on("sum", namespace="/math") def handle_sum(arg1, arg2): print(arg1 + arg2)Avšak pozor! Na strane klienta sa musíme teraz pripojiť na inú url $(document).ready(function() { var namespace = "/math"; var url = location.protocol + "//" + document.domain + ":" + location.port; var socket = io.connect(url + namespace); $("form#emit_event").submit(function(event) { socket.emit("sum", 23, 47); return false; }); });Ďalšia vychytávka je to, že každý event, ktorý pošleme, vie zavolať callback potom, čo sa vykonal. Napríklad z javascriptu pošlem nejaké dáta na server a server mi ešte dodatočne potvrdí, že dáta boli spracované. Aha takto ... $("form#emit_event").submit(function(event) { var ack = function(arg){console.log(arg)}; socket.emit("sum", 23, 47, ack); return false; }); ...Ak chcem, aby sa callback zavolal, musím v Pythone vrátiť nejakú hodnotu z vykonaného handlera => return True @socketio.on("sum", namespace="/math") def handle_sum(arg1, arg2): print(arg1 + arg2) return TrueMusím si otvoriť v prehliadači konzolu (ja používam chrome) a keď stlačím tlačítko, dostanem výpis na konzolu [Image] Posielanie správPosielať eventy sme už posielali, ale iba z javascriptu. V Pythone to vyzerá veľmi podobne. Používame 2 funkcie send a emit medzi ktorými je zásadný rozdiel. Najprv musíme importovať z knižnice flask-socketio from flask_socketio import send from flask_socketio import emitupravíme funkciu na sčítavanie @socketio.on("sum", namespace="/math") def handle_sum(arg1, arg2): value = arg1 + arg2 print("{} + {} = {}".format(arg1, arg2, value)) send(value)a pridáme handler v javascripte aby sme mohli tento event zachytiť. ... $("form#emit_event").submit(function(event) { socket.emit("sum", 23, 47); return false; }); socket.on("message", function(data){ console.log("received message: " + data) }); ...Všimni si, že teraz som použil handler, ktorý spracováva event s názvom message. Nie je to náhoda. Ide totiž o to, že funkcia send posiela tzv. unnamed event. Tieto eventy sa vždy posielajú na handler, ktorý spracúva message. Narozdiel od funkcie send, funkcia emit posiela už konkrétny event a musíš mu dať názov. Skúsme teda pozmeniť náš príklad @socketio.on("sum", namespace="/math") def handle_sum(arg1, arg2): value = arg1 + arg2 print("{} + {} = {}".format(arg1, arg2, value)) emit("result", value)... socket.on("result", function(data){ console.log("sum is: " + data) }); ...BroadcastingVeľmi užitočná funkcia je broadcastovanie, čo už z názvu vyplýva, že eventy sa budú vysielať na všetkých pripojených klientov. Dajme tomu, že zmeníme funciu emit na broadcastovanie @socketio.on("sum", namespace="/math") def handle_sum(arg1, arg2): value = arg1 + arg2 print("{} + {} = {}".format(arg1, arg2, value)) emit("result", value, broadcast=False)Teraz, keď si otvoríš 2 prehliadače a v jednom stlačíš button, výsledok súčtu sa ukáže vo všetkých prehliadačoch[Image] note: callbacky sa pri broadcastovaní nebudú vykonávať ZáverWebsockety majú mnoho využití. Tento článok bol len úvod a prehľad niektorých základných funkcií. V budúcom blogu spravíme malú aplikáciu postavenú na websocketoch. Máš nejaké otázky k článku? Napíš ju do komentára.
Predstavenie lektora Android Developer kurzu
Rozhovory
08.08.2018
Skillmea

Predstavenie lektora Android Developer kurzu

Dominik Palla je autorom nášho nového online kurzu Android Developer, v ktorom ťa naučí programovať mobilné aplikácie pre platformu Android. Dominik má za sebou viac ako 5-ročnú prax ako androidový vývojár, podniká v oblasti vývoja softwaru na zákazku, je autorom projektu českej hlasovej asistentky s umelou inteligenciou pre OS Android a je držiteľom Java certifikátu od Oraclu. Aktívne sa tiež venuje tvorbe webových a desktopových aplikacií. Keďže Dominika asi nepoznáš, vyspovedali sme ho a teraz ti prinášame tento rozhovor. Čítaj a keď budeš mať nejaké otázky na Dominika, neváhaj ich napísať do komentára. Kde teraz pracuješ? Predstav sa nám aj po pracovnej stránke.Momentálne podnikám na vlastnú päsť, nerobím to však sám, ale zamestnávam ďalších 5 kolegov. Spoločne vyvíjame mobilné aplikácie, prevažne pre platformu Android, ale sem-tam sa nájde aj projekt pre iOS. Klasicky vytvárame tiež webové stránky alebo aplikácie, ku ktorým poskytujeme tiež vlastné hostingové služby. Občas je predmetom našich projektov aj vývoj desktopových aplikácií. Okrem týchto komerčných zákaziek tiež pracujeme na jednom vlastnom projekte - Českej hlasovej asistentke s umelou inteligenciou ClaraSys. Projekt je zameraný predovšetkým na nevidiacich ľudí, ale aj napriek tomu väčšina našich používateľov sú vidiaci ľudiâ. Ide vlastne o aplikáciu na spôsob Siri pre iOS, ale je kompletne v češtine a má väčšie spektrum funkcií. Momentálne pracujeme na implementácii inteligentného slúchatka (Smart Ear), ktoré umožňuje vybaviť všetky úlohy na mobilnom telefóne pomocou rozhovoru s asistentkou cez bluetooth slúchatko be toho, aby ste museli mobil vybrať z vrecka či tašky. Slúchatko bude cca do mesiaca hotové a dostupne v našom eshope. No a samozrejme lektorujeme začínajúcich Android programátorov.[Image] Dominik Palla - autor online kurzu Android Developer Čo sa ti na tvojej práci páči najviac?Na mojej práci sa mi najviac páči sloboda, že môžem vytvoriť v podstate čokoľvek, čo sa mi zapáči. Keď si potrebujem nejakým spôsobom uľahčiť alebo obzvláštniť svoju prácu, nemusím si vyberať len z verejne dostupných aplikácií, ale môžem si vytvoriť aplikáciu priamo pre svoje potreby. Google umožňuje androidovým vývojárom vytvoriť v podstate čokoľvek. Nie je potrebné zostavovať vlastný hardware, pretože to niekto už urobil za vás. Mobilný telefón alebo tablet, prípadne aj inteligentné hodinky či smart televízia majú kompletnú výbavu (bluetooth, WiFi, NFC, GPS a pod.) a vy sami určíte, ako sa daný hardware bude používať (naprogramujete ho tak). Pokiaľ niečo vytvorím, mám to stále všade so sebou a dokonca sa o to môžem podeliť so svojou rodinou alebo priateľmi. Čo viac si priať?[Image] Dominik pracuje na viacerých Android aplikáciách U nás si lektorom online kurzu Android Developer. Ako si sa k programovaniu, Androidu a učeniu dostal?Začínal som klasicky ako mnoho iných programátorov tvorbou webstránok. Stále som sa učil ďalšie a ďalšie programovacie jazyky, ale mojím skutočným snom bolo vytvoriť aplikáciu na svoj mobilný telefón (ako inak než na Android). Dvakrát som to skúšal (prvýkrát cca v 14 rokoch a potom v 15stich), ale vždy neúspešne. Bolo to na mňa veľmi ťažké a nerozumel som tomu. Vždy som to nakoniec odložil a začal sa učiť iný jazyk. Problém pri mojich začiatkoch s Android programovaním bol aj v tom, že v tom čase neexistoval takmer žiadnz český návod, všetko bolo v angličtine, s ktorou som mal trochu problémy. Na tretí pokus asi v 16 rokoch sa mi podarilo záhadné androidové programovanie konečne prelomiž. Bolo to aj tým, že som sa zdokonalil v angličtine a že som už poznal iné programovacie jazyky. Na začiatkoch je najhoršie to, že začínajúci programátor sa nemá koho opýtať, keď rieši nejaké problémy vo svojich začiatkoch. Raz som bol dokonca taký zúfalý, že som kontaktoval jedného českého vývojará, či by mi nepomohol, že pre neho je to otázka 30 minút. Zapýtal si za túto radu 10 tisíc ČK a tak som radšej odpoveď na svoj problém riešil sám. Zo začiatku to trvalo, problémy som riešil pomocou webov ako Stack Overflow ako asi väčšina programátorov. Najskôr som robil veci len preto, že to tak jednoducho malo byť, ale nepochopil som prečo, nikto mi to nevysvetlil. Preto si myslím, že mať človeka, na ktorého sa človek môže obrátiť pri svojich problémoch v začiatkoch (ideálne v jazyku, ktorému dobre rozumie), je celkom dôležité. To ponúkam práve účastníkom svojho kurzu. Čo všetko môže dať spomínaný online kurz tomu, kto sa rozhodne ho absolvovať?Určite získa potrebné základy, na ktorých sa dá ďalej stavať. V rámci kurzu preberieme všetky najpoužívanejšie widgety, ako sú Buttony, CheckBoxy, EditTexty, TextViewy atď. Vždz si ukážeme na praktickom príklade ich použitie. Ďalšia časť kurzu je zameraná na funkčné prvky aplikácií. Tu si preberieme životný cyklus aplikácií, naučíme sa obsluhovať rôzne udalosti a robiť najčastejšie vykonávané akcie. Úplne v poslednej časti kurzu si vyrobíme vlastný webový prehliadač. V rámci tohto kurzu sa príliš nebudeme sústrediť na grafickú stránku aplikácií, najskôr je totiž potrebné pochopiť princíp a potom je možné designovať. Účastníkov kurzu určite poteší sekcia Publikácia aplikácie na Google Play, kde sa pozrieme na to, akým spôsobom je možné publikovať vašu aplikáciu. Po absolvovaní kurzu budú účastníci schopní vytvoriť si jednoduchú až mierne zložitú androidovú aplikáciu a väčšinu vecí, ktorú nebudú vedieť, si dokážu sami aktívne vyhladať na internete. Pokiaľ sa ale aj napriek tomu vyskytne nejaký problém, môžu ma kontaktovať a rád poradím. Pre pokročilejších vývojárov pripravujeme pokračovanie v podobe druhého online kurzu na tvorbu Android aplikácií. Sleduješ aj konkurenciu, aktuálne trendy, inovácie? Ako si na tom v tomto smere?Nové trendy samozrejme sledujem, v podstate všetky ich určuje spoločnosť Google. Každú aplikáciu, ktorú vyvíjam, musím vytvoriť tak, aby bola kompatibilná s čo najviac zariadeniami a to vrátane tých úplne najnovších. Google rád pridáva nové veci, ktoré je potrebne sa za chodu naučiť, ale ktoré sú tiež veľmi efektívne alebo v niektorých prípadoch i nevyhnutné. Príkladom môžu byť nové adaptive icons v Androide 8, alebo odlišný spôsob tvorby notifikácií a časovania udalostí naprieč rôznymi verziami Androidu. Dnes je dosť veľa pracovných ponúk v oblasti programovania a tvorby mobilných aplikácií. Vnímaš to tak aj ty?Áno, byť vývojárom mobilných aplikácií je momentálne „cool“. Pracovných pozícií je veľa a podľa môjho názoru budú pribúdať, obzvlášť v dnešnej dobe, keď sa všetko automatizuje. Je táto práca dobre zaplatená? :)To teda je, priemerný plat programátora v ČR je okolo 40 000 Kč. To platí, keď ste zamestnanec v nejakej firme. Pokiaľ vytvoríte nejaký zaujímavý projekt alebo aplikáciu, môžete sa dostať na úplne inú sumu. Mnoho mladých ľudí zarobilo pekné peniaze tak, že vytvorili aplikáciu, ktorú od nich kúpila nejaká veľká firma (typu Facebook, Google). Je na Slovensku a v Čechách podľa teba dosť kvalifikovaných ľudí práve na tieto vývojárske pozície?Podľa mňa je ich skôr nedostatok. Mnoho ľudí dnes vyhľadáva skôr prácu v zahraničí, je to finančne lukratívnejšie. V Čechách a myslím, že aj na Slovensku je dopyt po kvalitných programátoroch vysoký. Stále niekde vidím inzeráty, kde sa rôzne firmy snažia nájsť programátorov a to kľudne aj bez praxe s tým, že si ich sami vychovajú a zaučia. Čo by ste poradili všetkým, ktorí nemajú žiadne skúsenosti s programovaním a tvorbou mobilných aplikácií, ale chceli by nejako začať?Takýmto ľuďom vždy radím, aby začali s niečím jednoduchším, napr. s webovými stránkami. Ďalší krok sa odvíja od cieľov danehé človeka. Pokiaľ je vaším cieľom stať sa vývojárom androidových aplikácií, vaším ďalším krokom by mala byť Java. Hneď potom sa na vývoj Android aplikácií môžete vrhnúť. Odporúčam nejaký kurz na základy Java, postačovať by mal aj online kurz tu na Learn2Code, ktorý je dokonca úplne zadarmo. A ešte nám prezraď tvoje plány do budúcnosti.Mojím plánom do budúcna je posunúť sa zase o krok, alebo skor o skok ;), projekt ClaraSys, svoje podnikanie povýšiť na etablovanú firmu, no a samozrejme vytvoriť pokročilý kurz Android Developer 2 tu na Learn2Code.
Videosúťaž RECfruit 2018 má svojich víťazov
Ostatné
04.07.2018
Skillmea

Videosúťaž RECfruit 2018 má svojich víťazov

Po úspešnom minuloročnom nultom ročníku súťaže RECfruit prišiel ešte úspešnejší prvý ročník, ktorý so sebou priniesol veľa nových video talentov. Oproti minulému roku nevzrástol len počet videí, ale aj ich kvalita. Odborná porota zložená z profesionálov z praxe mala ťažkú úlohu, ale tri najlepšie videá nakoniec úspešne vybrala. Vysoká úroveň a originalita súťažných príspevkov pomohla organizátorom k rozhodnutiu udeliť aj tento rok špeciálnu cenu a cenu ContentFruiter.  Veľké poďakovanie patrí odbornej porote i partnerom súťaže RECfruit. Bez nich by nebolo možné dostatočne oceniť nápady, snahu, venovaný čas a odvahu súťažiacich, podporiť ich rozvoj a motivovať ich k ďalšej práci videomakerov.  Výsledky prvého ročníka Bronzová priečka Tretie miesto obsadil Dávid Bartoš so svojím videom Práve teraz. Ukazuje potrebu vychutnať si život v prítomnosti. Svoju prácu opísal slovami: „Myšlienka videa je byť v prítomnosti a nachádzať potešenie v prítomnom okamihu. Aj keď nás stále ženú nejaké povinnosti a deadliny, treba si nájsť čas a vychutnať si ho.“ Strieborná priečka Na druhom mieste sa umiestnilo video s názvom Lovec, ktoré do súťaže poslal 19-ročný Košičan Šimon Šebo. Video s pútavou myšlienkou „kradnutia duší“ zanecháva v príjemcovi silnú emóciu. Prekvapením Šimonovho videa boli vynikajúce herecké výkony dvoch malých dievčat, pekné zábery a skvelá práca so zvukom. „Video, ktoré sa začína ako detská rozprávka a končí sa ako horor.“ Takýto dojem vzbudilo spracovanie v organizátoroch súťaže. Nejednoznačný koniec videa vo vás zaručene vyvolá zimomriavky. Víťaz Prvé miesto v súťaži RECfruit získalo video s názvom Again, v ktorom sa 18-ročný Tomáš Biely z obce Hrochoť veľmi originálne pohral s myšlienkou času. V čiernobielom videu je hlavný hrdina zachytený v akejsi časovej slučke. Pútavé spracovanie porotu natoľko oslovilo, že vyhralo so značným bodovým náskokom. Tomáš svoje video opísal týmito slovami: „Again je krátky hraný film, ktorý zachytáva nadprirodzenú udalosť súvisiacu s časovým paradoxom. Celý dej sa odohráva v istom momente, v ktorom je hlavný hrdina „uväznený“, preto teda Práve včas.“ Organizátor opäť pridal ďalšie motivačné ceny Špeciálna cena Organizátori sa rozhodli udeliť špeciálnu cenu videu, ktoré natočil 17-ročný Patrik Hrabovec z Bratislavy. Svoje video nazval podľa témy tohto ročníka, a to Práve včas. Pri hodnotení videí ale bolo známe pod názvom Smrťák. Patrikovo video si vybojovalo špeciálnu cenu kvôli svojej odvahe pohrať sa s témou smrti humorne, no tiež vďaka odlišnosti od ostatných videí. Tento rok takpovediac „vytŕčalo z davu“. Krátku komédiu o konkurze na smrtku geniálne zakončil titulkami, v ktorých hlavný aktér tancuje so svojím „vraždiacim“ nástrojom. Špeciálna cena je udelená aj ako povzbudenie nebáť sa začať a s odhodlaním experimentovať.  Cena ContentFruiter Cenou ContentFruiter sa organizátori rozhodli oceniť prínos Tomáša Bieleho. Ten predviedol svoje majstrovstvo vo videu Again. Túto cenu organizátori udeľujú za mimoriadne dielo. V tom tohtoročnom je to za originalitu, za odvahu pozrieť sa na veci inak, za svojské uchopenie atmosféry, podania, no aj za vtiahnutie do deja od začiatku až do konca. V súťaži sa ocitlo viacero videí, ktoré si zaslúžia pozornosť. Žiaľ, nie všetky sa dajú oceniť. Spomínané víťazné videá, ale i shortlist finalistov si však môžete pozrieť na recfruit.sk. Víťazi získavajú zaujímavé ceny, medzi ktorými nesmú chýbať online kurzy od Learn2Code.
Pripravované online kurzy - 3. štvrťrok 2018
Novinky
24.06.2018
Skillmea

Pripravované online kurzy - 3. štvrťrok 2018

Stále makáme na príprave nových online kurzov a pokiaľ ťa zaujíma, ktoré kurzy v najbližších týždňoch a mesiacoch zverejníme, čítaj ďalej. Flask - Python mikroframeworkAko prvý pán na holenie tu je minimalistický a jednoduchý webový Python framework Flask. Všetky znalosti, ktoré sa naučíš v tomto kurze, vieš neskôr aplikovať aj na iné frameworky. V kurze sa naučíš vyrobiť plnohodnotnú webovú aplikáciu so všetkými jej súčasťami vo Flasku. Porozumieš architektúre webovej aplikácie, budeš vedieť používať databázy, formulár, vyrobíš si prihlasovanie na stránku, použiješ pekný CSS framework a na konci nahodíš svoju aplikáciu na Linux server, Heroku alebo Docker. Malá koštovka a teaser ku kurzu: Android DeveloperNa tento kurz čakáte už dlhšie a dobrou správou je, že už naozaj čoskoro (určite ešte v júli) bude kurz k dispozícii. Programovať mobilné aplikácie pre operačný systém Android sa naučíš práve v tomto kurze. Budeme používať Javu a využijeme vývojárske prostredie od Googlu Android Studio, ktoré beží na platforme Intellij IDEA. V kurze vyrobíš vzorové Android aplikácie, ktoré sa naučíš aj publikovať do obchodu Google Play.  Týmto jedným začiatočníckym Android kurzom neskončíme a už teraz pripravujeme kurz Android programovania pre pokročilých.[Image]   Linux pre začiatočníkovMnohí ste nám písali, nech rozšírime ponuku kurzov aj o Linux a servery. A tak sme sa rozhodli vaše želanie splniť a máme pre vás nachystané dva nové kurzy. Prvým z nich je Linux pre začiatočníkov. Pokiaľ máš ambíciu stať sa Linux administrátorom, týmto kurzom by si mal určite začať. Budeš vedieť robiť s VirtualBoxom, s Linux Desktopom, naučíš sa terminálové príkazy a pohybovať v Linuxe. Servery pre začiatočníkovDruhým z kurzov z úplne iného súdka, ako sme mali doteraz, je online kury Servery pre začiatočníkov. V kurze začneš inštaláciou Linuxového servera, neskôr to bude Lamp server a webserver. Pozrieme sa na zúbok aj mailserveru, SSL certifikátom, cloudu a zálohovaniu. Na záver sa povenujeme skriptovaniu a OnlyOfficu. Máš sa na čo tešiť :)[Image] InDesignPre všetkých, ktorí chcú vedieť zalamovať texty a vytvárať publikácie ako napr. časopisy, noviny, brožúry alebo prospekty určené pre tlač, pripravujeme online kury Adobe InDesign. Okrem zaužívaných postupov pri sadzbe jednotlivých dokumentov sa naučíš a porozumieš základným typografickým pravidlám a na profesionálnej úrovni zvládneš spracovať grafické návrhy až po export pre tlač.[Image] Testovanie - CucumberĎalší parádny kurz od Furbyho. Po kurzoch Testovanie webu I. - Selenium a Selenium Advanced - Java si pre vás nachystal kurz o testovaní s použitím nástroja Cucumber, ktorý aplikuje BDD (behavior-driven development), čiže popísanie testov jednoduchšie a zrozumiteľnejšie. Okrem toho sa v kurze bude venovať aj regulárnym výrazom a Jave. Opäť to bude jeden kvalitný online kurz od Martina.[Image] Microsoft AccessAccess je databázový nástroj, vďaka ktorému vieš vytvoriť rozmanité databázy, ku ktorým môže pristupovať aj viac užívateľov súčasne. V kurze sa naučíš robiť databázy, ale aj vyhľadávať v nich s pomocou SQL.  Data ScienceData Science je nový trend v spravovaní dát, ktorý vznikol ako reakcia na obrovské množstvo dát, ktoré máme v súčasnosti k dispozícii. Tieto dáta môžu ukrývať veľmi cenné informácie, ktoré je však nutné získať vhodnou analýzou. A práve vo veľkom module zameranom na Data Science sa naučíš, ako tieto cenné informácie vydolovať. Čo všetko sa tomto bloku zameranom na Data Science naučíš?  Programovať v jazyku R a používať ho na získavanie informácií z veľkých datasetov. Ďalej to bude jazyk Python a jeho použitie v Data Science. Na vizualizáciu dát použijeme Tableau a s veľkou pravdepodobnosťou spracujeme aj horúcu novinku v Data Science - programovací jazyk Julia. Ten je veľmi rýchly a určený predovšetkým pre vedecké výpočty, numerickú matematiku či štatistiku. Na tieto Data Science kurzy sa môžeš už teraz veľmi tešiť.[Image] Na ktorý z kurzov sa najviac tešíš a ktoré kurzy ti ešte na Learn2Code chýbajú? Napíš nám to do komentára :)
7 dôvodov, prečo sa ľudia na vašom webe neregistrujú
Tipy a triky
06.06.2018
Skillmea

7 dôvodov, prečo sa ľudia na vašom webe neregistrujú

Weby sú o biznise. A teraz nemám na mysli vývojárske firmy a mladé dynamické “desing studios”. Hovorím o biznise ako takom - o činnosti, pri ktorej sa vymieňajú hodnoty (ako peniaze a tovar) k vzájomnej spokojnosti oboch strán. Vy máte super obsah, návštevníci vašich stránok zase svoje kontaktné údaje. Tak si podáte ruky a dohodnete obchod. Moje články za tvoj e-mail. Jednoduché, nie? Nie. Registračný proces je vcelku zložitá záležitosť a nie vždy funguje tak, ako by sme si predstavovali. Web môže mať veľa návštevníkov, no len veľmi málo sa aj zaregistruje. Prečo? Nuž, keď sme web vymýšľali, mohli sme nevedomky urobiť pár chýb. Tak po prvé… 1. Sme v tom, že registračný proces rovná sa registračný formulár Samozrejme, že je dôležité mať pekný a použiteľný formulár. Názvy nad inputmi pre vertikálne skenovanie, absencia CAPTCHA pre duševný kľud, poznáme. Ale registrácia nezačína vypĺňaním políčok. Ak sme návštevníka dostali až sem, máme už vlastne spolovice vyhraté - registračný proces formulárom nezačína, ale končí. Ďalšou chybou teda môže byť, že… 2. Zabúdame na to, že registračný proces rovná sa motivácia “Ahoj, sme Triad a robíme efektívny digitálny marketing tak, aby to bavilo nás aj našich klientov”. Nejako takto by mohla vyzerať vaša value proposition (nechce sa mi hľadať slovenský preklad), ak by ste boli Triad. Lenže nie ste, tak si vymyslite vlastnú. Pamätajte, že návštevníci stránok sú sebci a zaujíma ich len to, čo im prinesiete. Kašlú na vašu misiu, víziu a počet šálok kávy vypitých od začiatku roku. Prečo by s vami mali robiť biznis, keď im nedáte jasne najavo, akú hodnotu im prinášate? Prečo by sa mali registrovať práve u vás? Povedzte im to. Jednoducho, zrozumiteľne, hlavne nepreháňajte. S tým súvisí ďalší bod. 3. Neosobné a nudné webové copy Ako hovorí Adam Javůrek, vo webovom copy sú sväté 3 slová: vy, váš a zdarma. Schválne, skúste použiť všetky. Buďte priateľskí, s užívateľmi sa rozprávajte. Gombík “Registrujte sa” je prívetivejší ako “Registrovať”, alebo “Registrácia”. Vyznačte dôležité časti, text štruktúrujte. Oh, a skráťte ho. Na polovicu. A potom ešte raz. To, čo je na vás super musíte vedieť povedať počas krátkej cesty výťahom. Je váš produkt alebo obsah zdarma? Povedzte to. A ešte raz - nie ste najlepší, najkrajší a neviete všetko. Svojim návštevníkom dajte jasný a zrozumiteľný dôvod, prečo sa u vás majú registrovať. Bez preháňania. Všetky kecy na svete však nenahradia osobnú skúsenosť - občas na to pozabudneme a potom vzniká… 4. Obsah skrytý pod registračnou hradbou To je tak. Kliknem na nadpis článku alebo odkaz v zmysle “zistiť viac” (moje obľúbené, BTW, keď nejdem ďalej čítať, ale “zisťovať”). Vyskočí na mňa modálne okno s formulárom a vrieska po mne čosi o registrácii. Skúsim ďalší odkaz, situácia sa opakuje. Odchádzam.  Povedzme, že zháňate cukríky a narazíte na dvoch predavačov. Benďo a Jožo. Benďo bude svoje cukríky vynášať do neba a opisovať ich úžasnú chuť. Jožo otvorí balíček a rovno vás ponúkne. Od koho si cukríky kúpite? Jožova prefíkaná obchodná taktika stojí na princípe reciprocity - ak dáš najprv niečo ty mne, ja budem viac ochotný dať niečo tebe. Preto ak máte super obsah, neskrývajte ho pred návštevníkmi. Ukážte im ho. S tým, že keď ho budú chcieť vidieť celý, nech sa zaregistrujú. Svoj e-mail vám poskytnú veľmi radi, ak budú vedieť, do čoho idú. Apropo, do čoho idú… 5. Príliš veľký záväzok Registrácia na webe je veľké rozhodnutie. Nie, vážne. Sú to cudzie stránky, neviem, kto ich vlastní. Komu dávam svoj e-mail? Na čo všetko ho použije? Čaká ma spambox plný super piluliek a členov nigérijskej kráľovskej rodiny? A načo chcú moje telefónne číslo? PSČ? Zbláznili sa? Tak. Buďte transparentní. Ľudia nemajú radi záväzky, ukážte im teda, že sa nemajú čoho báť. Budete im posielať newsletter? Tak im ho ukážte. Ako vyzerá, čo obsahuje a hlavne - ako často sa naňho môžu tešiť. Môžu si účet kedykoľvek zrušiť? Povedzte im to. Pridajte aj vetu o tom, že informácie neposkytnete tretej strane (a skúste to aj dodržať). A uistite ich, že to celé nezaberie viac ako minútu ich času. Ešte jedna vec. Veľa webov prichádza o obrovský zdroj dôvery v očiach ich potencionálnych užívateľov - robia jednu zásadnú chybu… 6. Skrývanie ostatných užívateľov Máte super web plný super obsahu, kde chodí veľa super ľudí? Ukážte ich. Čo všetko tam robia? Jožo práve číta článok o červených pandách? Benďo v špeciálnej aplikácii zistil, kde v jeho okolí sa pandy dajú skvelo pozorovať? Prečo sa nepochváliť? Možno tam dokonca nájdem nejakých kamošov z Facebooku. A prečo by som sa neregistroval, keď tam už sú moji známi, ktorí to preverili za mňa? Volá sa to social proof a viac o ňom zistíte v Googli. Nejaké knihy o tom zoženiete aj na Amazone. A vôbec, keď už o nich hovorím. Títo veľkí hráči míňajú milióny na UX testovanie, musia mať super premakanú registráciu. Spravíme to ako oni. Nemôže to dopadnúť zle. Alebo hej? 7. Opakovanie po ostatných Ak sa nevoláte Bezos (čo určite nie, lebo čítate článok v slovenčine), zapíšte si za uši: nie ste Amazon. Ani Google, ani Alza ani lokálny opravár plynových bojlerov. Vy ste vy. Pri navrhovaní registračného procesu treba vždy vychádzať z vlastnej situácie a vlastných skúseností. Internetoví giganti majú určite veľmi dobre zvládnutý registračný proces, no nikto z nás nevidí do ich cieľov, štatistík a stratégie. To čo funguje pre nich nemusí fungovať pre vás. Na druhej strane, inšpirovať sa niekde treba, takže…  Trochu inšpirácie Tu je niekoľko známych webových produktov, ktoré majú podľa mňa vynikajúco zvládnutý registračný proces. Čo majú spoločné, je predovšetkým jednoduchosť - jasne komunikujú, ako mi pomôžu (či už pomocou textu alebo obrázkov) a okamžite mi ponúknu možnosť ich bezbolestne začať používať. • Intercom • Basecamp • Dropbox Autorom blogu je Roman Pittner, lektor online kurzu Dizajn pre obrazovky. Ak máš k blogu otázky, neváhaj ich napísať do komentárov.
Predstavujeme Romana - lektora UX / UI kurzu
Rozhovory
26.05.2018
Skillmea

Predstavujeme Romana - lektora UX / UI kurzu

Roman Pittner je super týpek. Momentále žije v Prahe a ak by mal vizitky, má na nich napísané "Product designer". Momentálne pracuje pre startup Angelcam, ďalší vlastný rozbieha. Predtým približne 4 roky pracoval v reklame pre Triad a predtým veľa rokov ako freelancer. Vo freelancovaní odnedávna pokračuje a pracuje pre rôznych individuálnych klientov, ako aj pre veľké Silicon Valley cool startupy. Čo sa týka UX, testovania a rôznych dizajn princípov, má na to možno trochu iný náhľad ako väčšina ostatných dizajnérov - Roman totiž za sebou má komplet 5 ročnú psychológiu. Jeho portfólio nájdeš tu.[Image] Roman Pittner - UX / UI dizajnér A teraz čítaj parádny rozhovor s Romanom, lektorom online kurzu Dizajn pre obrazovky: úvod do UX a UI. Na začiatok najskôr začnime tvojou prácou. Čo presne robíš?Moja posledná oficiálna pozícia sa volala Product Designer. To znamená že okrem samotného kreslenia appiek a webov robím nejaké veci predtým aj potom. Snažím sa zistiť, kto sú zákazníci pre daný produkt, aké majú problémy a potreby. A svoje riešenia potom testujem a overujem ich účinnosť. Na akých projektoch si pracoval?Pomáham (snažím sa pomáhať) firmám v rozbehu. Často sa nazývajú aj startupy, ale na to slovo som trochu alergický :) Každopádne, je to rozmanité: od cloudovej bezpečnostnej platformy po aplikáciu pre učiteľov a ich žiakov. Pár rokov som strávil aj v reklamke. Do toho mám nejaké svoje projekty v rôznom štádiu rozkladu; napríklad cestovného sprievodcu Prahou. A ako si k dizajnovaniu a UX/UI vôbec dostal?Na strednej som sa začal hrať s Photoshopom a na výške som zistil, že existuje niečo ako webový dizajn a že sa v tom Photoshope dá robiť, tak som to skúsil. Potom strih do obdobia cca 5 rokov neskôr, prišiel som na to, že grafika samotná ma nebaví. Že urobiť “peknú” vec mi nestačí a to, čo ma reálne zaujíma je, komu moja práca pomôže. Tu som mal dosť šťastie na nadriadených (pozdravujem Peťu, Mareka a Jara), ktorí mi umožnili svoju kariéru stočiť trochu iným smerom - k UX a následne produktovému dizajnu. Dnes mám najlepší job na svete. Prečo si sa rozhodol robiť lektora v Learn2Code?Celé tie roky čo sa učím dizajn, si robím kadejaké poznámky na kadejaké miesta. Alebo nerobím a držím to len niekde v hlave. Chcel som to proste skonsolidovať, dať tomu všetkému formu. Druhá vec je, že keď chceš niečo vysvetliť druhému človeku, musíš si utriediť myšlienky a hlavne sa sám doučiť kopu detailov. Tretia vec je, že sa rád nenudím a chcel som skúsiť novú vec. A posledný dôvod je, že je dobré mať niečo podobné v CV-čku.  Kde berieš inšpiráciu pre svoju prácu? Máš nejaké tipy, ktoré zaručene fungujú?Jasné. Roky praxe :) To je môj zaručený tip. Nie vážne, myslím, že jediný rozdiel medzi “juniorným” a “seniorným” dizajnérom je ten, že senior robí veci rýchlejšie a kvalitnejšie, pretože keď niečo navrhuje, nemusí skúsiť 100 verzií, ale iba 10. Tých zvyšných 90 si totiž odžil v priebehu rokov. Inšpiráciu máš vo vrecku. Veľakrát proste otvorím telefón a pozriem sa, ako sú riešené appky. Minule som robil ovládanie pre bezpečnostné kamery a použil som riešenie z Budíka, defaultnej appky v iOS. Je v tejto oblasti dizajnu potrebné sledovať aktuálne trendy a inovácie? Ako si na tom ty?Tak ako v každom inom odbore, ak sa chceš posúvať, musíš sa stále učiť. Ja striedavo sledujem rôzne magazíny a blogy (napr. oficiálne blogy dizajnových divízií firiem ako Google alebo Dropbox) a snažím sa nájsť čas aj na video kurzy. V poslednej dobe sa zameriavam na Javascript a programovanie ako také.[Image] Angelcam - ukážka z portfólia Čo ťa najviac baví na tvojej práci? Máš nejaký obľúbený task, ktorý robíš najradšej?Mám takú teóriu, že práca, ktorá človeka bude baviť, by sa nejako mala vzťahovať k tomu, čo robil rád v detstve, keď sa hral. Aspoň u mňa to sedí. Ja som chcel byť vynálezca. A teraz tak trochu som. Technologické odvetvie vo všeobecnosti je podľa mňa fascinujúce. Pomocou dizajnu a programovania sa dá vyrobiť prakticky čokoľvek, dokážeš vyriešiť problémy, alebo naplniť potreby ľudí. A najviac ma baví ten moment, keď po x pokusoch konečne prídem na to, ako vyriešiť nejaký dizajnový problém. Napríklad, že akým spôsobom sa má otvoriť navigácia, alebo čo :)  V čom vidíš výhodu svojej práce? Je v niečom výhodnejšia ako iné zamestnania?Nie. Dizajn je povolanie alebo zamestnanie ako každé iné. Niekoho to bude napĺňať, iného nie. A keď už si zaradený v správnej kariére, najdôležitejšia vec je nájsť dobrý kolektív, ktorého súčasťou budeš. Ja osobne som na toto mal, až na individuálne výnimky, zatiaľ šťastie.  Čo by si poradil všetkým, ktorí nemajú žiadne skúsenosti s dizajnom a grafikou, ale chceli by začať?Vygoogli si “Figma” alebo “Invision Studio”. To sú schopné dizajnové nástroje, ktoré sú zadarmo. Trochu sa v tom pohrab, zisti, čo to dokáže, pozri si nejakú dokumentáciu a tutoriály. To nájdeš na ich stránkach. Krok dva je nájsť akýkoľvek web alebo aplikáciu, ktorá sa ti páči a skúsiť ju v dizajnovom programe nakresliť. Toto zopakuj niekoľko krát a potom sa môžeš pustiť do svojich prvých projektov. Normálne sa niekomu ponúkni (škola, športový klub, kamarátova firma), že im zadarmo vyrobíš grafiku webu, appky alebo hoci len plagátu. Postupne si takto budeš budovať portfolio. Veľa vecí nebudeš vedieť a nepôjdu ľahko. To je dobrá príležitosť na ďalšie googlenie a učenie sa nových vecí. Po pár mesiacoch budeš pripravený nájsť si ozajstné zakázky alebo hoci full-time job na juniornej pozícii. Hej a tajný tip: ak ťa to len trochu zaujíma, uč sa zároveň kódovať (HTML, CSS) a programovať (JavaScript). Extrémnym spôsobom ti to neskôr pomôže. Aké máš plány do budúcnosti?Chcem sa stať produktovým dizajnérom v Google. Bodka. Ak nevyjde Google, mám v zálohe niekoľko ďalších veľkých tech firiem so sympatickým produktom a miliónmi užívateľov. Zaujímajú ma hlavne produkty využívajúce počítačové učenie, formy umelej inteligencie alebo rozšírenú realitu. V najbližšej dobe ma teda čaká veľa učenia, veľa upratovania a poctivé zostavovanie portfólia. Táto moja snaha trvá už približne rok, zatiaľ som 3x pristál fejsom na betón a vypadol v následných kolách pohovorov. Snáď som sa poučil, a teda sa podľa toho teraz plánujem zariadiť a skúsiť to znova. Takže držte palce :) Krátky odkaz všetkým čitateľom na záverNikdy sa neprestaň učiť a rátaj s tým, že sa ti veci na prvý ani druhý krát nepodaria. A že je to tak v poriadku. To, že na dosiahnutie úspechu (nech je to pre teba čokoľvek) treba hlavne potiť krv, nie je žiadne klišé; všetky kurzy, knihy, články a prednášky sú len pomôcky, snažiť sa musíš hlavne ty sám. Je to dosť hlboké? :) P.S. Ak by si sa chcel ohľadom dizajnovo grafických vecí spýtať, napíš mi do diskusie pod kurzom na Learn2Code. Ak budem vedieť, rád odpoviem niečo múdre. Čau.
WordPress opäť ovládne Bratislavu už v apríli
Podujatia
07.04.2018
Skillmea

WordPress opäť ovládne Bratislavu už v apríli

Aktuálne takmer 30% všetkých webov po celom svete beží na WordPresse. Tento open source systém ponúka jednoduchú možnosť zriadenia funkčnej web stránky alebo blogu, pričom každým dňom na svet prichádzajú nové moduly a témy, vďaka ktorým má každý príležitosť prispôsobiť si web stránky podľa vlastných predstáv. Na Learn2Code nájdeš na tvorbu vlastných modulov a tém dva online kurzy, v ktorých sa naučíš WordPress využívať naplno. Webový systém WordPress je vyvíjaný stovkami dobrovoľníkov, ktorí spolu tvoria nadšenú komunitu. Na otvorených konferenciách WordCamp, organizovaných po celom svete sa delia so svojimi vedomosťami a skúsenosťami. V sobotu 28. apríla 2018 sa v Bratislave na Paneurópskej vysokej školy uskutoční už siedmy ročník tejto konferencie s názvom WordCamp Bratislava 2018.[Image] Na WordCamp budú súbežne prebiehať prednášky v dvoch miestnostiach, ktoré sú určené tak pre bežných používateľov, ako aj pre profesionálov. Témy prednášok budú rôznorodé, napr. marketing, blogovanie, tvorba webových stránok, či programovanie. Tak, aby si každý našiel to, čo ho zaujíma. Minulý rok sa na WordCamp zúčastnilo približne 240 ľudí. „Chceme okrem kvalitných prednášok poskytnúť možnosť stretnúť sa s ostatnými ľuďmi z komunity a porozprávať sa s nimi,“ hovorí Ján Bočínec, „to je vlastne aj vec, čo mám na WordCampe najradšej. Vidieť konečne naživo ľudí, s ktorými spolupracujem a komunikujem v online svete. Vymeniť si skúsenosti a zážitky a nakoniec si s nimi dať “zopár” drinkov na afterke.“[Image] Chceš zažiť WordCamp na vlastnej koži? Kupuj lístok, alebo sleduj náš Facebook, kde už čoskoro budeš mať možnosť zasúťažiť si o 2 lístky.
Ako vie programátor samouk dobehnúť tých, čo študovali na univerzite
Tipy a triky
03.04.2018
Martin Lipták

Ako vie programátor samouk dobehnúť tých, čo študovali na univerzite

Čo sa učia na univerzitáchSi programátor samouk a rozmýšľaš, ako to vyzerá na univerzite? Už si videl všetky online kurzy, máš za sebou 10 vlastných projektov a začínaš v novej práci ako Web developer. Ako dobehnúť ľudí, ktorí 5 rokov študovali informatiku? Dá sa to vôbec?  Pred 3 rokmi som skončil FIIT (Fakulta informatiky a informačných technológií) na STU v Bratislave a tiež som rozmýšľal, čo všetko mi škola dala. Je toho veľa a som veľmi rád, že som si vybral takú cestu. Na druhej strane, keby som túto možnosť nemal, väčšinu vecí by som sa naučil aj inde. Čo boli pre mňa tie najdôležitejšie veci? Asi už tušíš, že je to celé veľmi subjektívne a určite neber tento článok ako univerzálny návod. Študentský životBýval som na intrákoch v Mlynskej doline a jeden semester som strávil na programe Erazmus v Španielsku. Boli to kamarátstva a zážitky, na ktoré sa dá spomínať celý život. Pre samoukov: Ak si študoval na akejkoľvek vysokej škole, vieš o čom hovorím. Inšpiratívni ľudiaSpoznal som veľa spolužiakov a učiteľov, ktorí ma vo veľa veciach posunuli ďalej. S mnohými som doteraz v kontakte a môžem sa na nich spoľahnúť, keby som potreboval pomoc.  Pre samoukov: Skvelých ľudí nájdeš aj v pracovných kolektívoch. Obklop sa takými, ktorí sú lepší ako ty sám.  Na škole sa organizovalo veľké množstvo podujatí a učitelia nás motivovali chodiť na stretnutia programátorov mimo školy, kde som spoznal veľa ďalších ľudí. Pre samoukov: Hľadaj si kamarátov na rôznych udalostiach pre programátorov, ktorých je viac než dosť v každom väčšom meste (napríklad taká Rubyslava alebo Reactive meetups a veľa ďalších). SamostatnosťOd intrákov a štúdia v zahraničí, až po prácu na zadaniach, projektoch a záverečných prácach. Aspoň na FIIT to bolo tak, že ťahať to musel sám študent a učiteľ mu len pomáhal alebo niekedy aj nepomáhal. Zasekol si sa pri zadaní a termín je zajtra? Použi Google, alebo sa poraď so spolužiakmi, ale vyrieš to. Ak tvoje zadanie nebude do 00:00 CEST v odovzdávacom systéme, nikoho nebudú zaujímať tvoje výhovorky a predmet si zopakuješ ďalší rok. Ak sa ti nazbiera takýchto predmetov viac, letíš zo školy. Pre samoukov: Tak ako si spravil tých 10 vlastných projektov, aj v práci budú očakávať, že sa vecí chytíš a dotiahneš ich samostatne do konca. To ale neznamená, že sa nemáš pýtať (najskôrskús Google) a požiadať o pomoc, keď ju potrebuješ. [Image] Práca v tímeNa mnohých školských projektoch som nepracoval sám. Na tímovom projekte sme boli až 7 a museli sme sa vysporiadať s odlišnými názormi a dokonca cieľmi v projekte.  Pre samoukov: Máš za sebou tých 10 projektov, pri ktorých si sa naučil samostatnosti. V práci budeš obklopený ľuďmi a musíte spolu čo najlepšie vychádzať. Volá sa to soft skills a dá sa to natrénovať.[Image] VedomostiNa čo všetko si spomeniem 3 roky po skončení školy? O čom boli všetky tie predmety? • Ako funguje počítačový hardvér a ako sa z jednotiek a núl stanú programy - logické obvody a počítačové architektúry. • Ako funguje operačný systém - ovládače zariadení, IO, systémové volania, procesy, vlákna (threads), synchronizácia, správa unixových systémov a shell skripty. • Ako funguje Internet a čo je HTTPS, DNS, POP3, IP a Ethernet - 7 vrstiev počítačových sietí a ako spolu súvisia všetky tieto protokoly. • V čom sa líšia paradigmy programovania - procedurálne programovanie v C, objektovo-orientované v Jave, funkcionálne v Lispe a logické v Prologu. Pozri môj prvý projekt v C, ktorý som nahral do školského systému na automatické testovanie :) • Čo znamená zápis O(n) a ako určiť zložitosť algoritmov? Ako môže efektívny algoritmus vypočítať výsledok za 1 milisekundu a neefektívny by to počítal týždne? Vyvážené binárne stromy, hashing, grafy a iné dátové štruktúry. • Čo je to Turingov stroj? Prečo sú regulárne výrazy regulárne? Čo je abstraktný syntaktický strom? Základná teória informatiky, na ktorej stoja všetky programovacie jazyky. • Je umelá inteligencia naozaj inteligentná? Hrubá sila a heuristiky, ktoré riešia zložité problémy, neurónové siete, genetické algoritmy a odvodzovacie stroje. • Aké sú výzvy paralelného programovania? Klasické problémy synchronizácie, vlákna, mutexy a semafory. • Čo je to databáza? Návrh dátových modelov, písanie dopytov (queries), optimalizácia indexmi a kedy použiť NoSQL. • Úvod do analýzy dát (data science). Lineárna regresia, neurónové siete, support vector machines, clustering a časové rady. • Ako manažovať softvérové projekty? Vodopád alebo agilné metodológie, dôležitosť testovania a dokumentácie, návrh požívateľských rozhraní, kvalita kódu a návrhové vzory. • Ako robiť výskum? Návrh hypotéz, ich vyhodnocovanie experimentmi, meranie dát, písanie a zverejňovanie výskumných článkov. • Zopár predmetov o ekonómii, práve a psychológii bolo príjemným oddychom od technických vecí. • Webový vývoj v Ruby on Rails. Toto je to, čomu sa teraz venujem v práci. Pre samoukov: Vyzerá to ako veľmi dlhý zoznam, ale väčšinu z týchto vecí sa vieš naučiť v praxi. Sú však veci, ku ktorým sa nedostaneš. Ak sa od začiatku zameriavaš na webový vývoj v PHP, asi sa nebudeš do hĺbky zaoberať hardvérom, prekladačmi (compilers) a operačnými systémami. A väčšina ľudí sa asi nebude zaoberať výskumom.[Image] Takže ako dobehnúť tých, ktorí študovali FIIT?• Obklop sa ľuďmi, od ktorých sa môžeš veľa naučiť. Nájdeš ich v práci a na stretnutiach programátorov. • Nečakaj, že ti vždy povedia ako máš veci robiť. Samostatnosť je ale aj vedieť požiadať o pomoc, keď ju potrebuješ. • Aj keď to tak na prvý pohľad nevyzerá, programovanie je viac o ľuďoch ako o počítačoch. Pracuj na svojich soft skills a komunikácii v tíme. • Snaž sa porozumieť veciam do hĺbky. Ako fungujú regulárne výrazy? Prečo potrebuje databáza indexy? Aký je rozdiel medzi http:// a https://? V čom sú výhody SCRUM-u? • Uč sa veci mimo tvojej špecializácie. Vyvíjaš weby? Skús spraviť natívnu mobilnú aplikáciu. Čo tak si cez víkend naprogramovať ovládač do operačného systému alebo kompilátor? Máš otázky k tomuto blogu? Neváhaj ich napísať do komentárov.
Predstavujeme nových lektorov Tomáša a Samuela
Rozhovory
01.03.2018
Skillmea

Predstavujeme nových lektorov Tomáša a Samuela

Tomáš Sokol a Samuel Švolík sú kolegovia z digitálnej egentúry ecake. Obaja sú PPCčkári ako lusk, a preto sme s nimi pripravili online kurz na reklamný systém Google AdWords. Chalanov sme vyspovedali, môžeš sa teda dozvedieť viac o nich, o tom, ako začínali a aké sú ich rady pre začínajúcich online marketérov. Ahojte Tomáš a Samuel, vítame vás u nás, v Learn2Code. Ste našimi novými lektormi, tak sa nám na začiatok predstavte.Tomáš Sokol (T.S.) Ahoj :) Okrem toho, že najbližším povolaním bude manžel, vnímam sa ako pozitivistu, umierneného workoholika, cestovateľa, večného študenta, marketéra, raz aj tanečníka latino, karatistu, zen-budhistu, jogína a preferenčného vegetariánaň Samuel Švolík (S.Š.) Ahojte, ak by ste ma chceli stretnúť, odporúčam lesy, lúky a háje. Inak som občas príliš realista, často príliš slniečkár, nastupujúci workoholik a asi najmenej kvalifikovaný magister matematiky. Oh, a v lete nesmie chýbať detský letný tábor, kde už viac ako 10 rokov robím vedúceho. Odporúčam - indiáni.sk  Kde teraz pracujete? Predstavte sa nám aj po pracovnej stránke.T.S. Momentálne šéfujem oddeleniu accountov v digitálnej agentúre ecake, s.r.o., kde som pôvodne aj začínal ako junior PPC špecialista. Postupne som začal viac riešiť biznis stránku veci a prešiel som bližšie do kontaktu s klientmi. Keďže som si za ten čas spravil veľký prehľad o všetkom, čo je v online svete, bolo to veľkou výhodou pri komunikácii s klientmi a doteraz z toho čerpám. S.Š. V tejto chvíli sa pohybujem hlavne v online agentúre ecake s.r.o., snažím sa byť online špecialistom s čo najširším záberom. Začínal som ako PPC stážista, teraz som teamleader nášho skromného PPC tímu. Okrem toho vo voľnom čase konzultujem so všetkými kamarátmi ich projekty, či už ide o luxusné handmade kabelky, detské tábory, blog Elona Muska alebo milión ďalších… mal by som si možno trocha vydýchnuť.[Tomáš a Samuel z digitálnej egentúry ecake] Čo sa vám na vašej práci páči najviac?T.S. Je toho viac. Dynamické prostredie, nové technológie, skvelé neformálne prostredie, veľa humoru a zaujímavých projektov. Hlavne ma baví, že je tu veľa priestoru na realizáciu a kreativitu. S.Š. Neformálnosť, kreativita, strategické plánovanie,možnosť realizácie niekedy fakt šialených nápadov. Takisto je fajn, že všetko, čo robím, viem podložiť číslami.  U nás ste lektormi online kurzu Google AdWords. Ako ste sa k tomuto dostali?T.S. Bavilo ma vždy vystupovať pred ľuďmi a zdieľať know-how. Začal som chodiť na konferencie, prednášky a pod. Prirodzene som sa tak dostal aj ku kurzom, ktoré som pôvodne poznal z užívateľskej strany ako samouk :) S.Š. Úprimne? Náhodou. Súhlasil som ale hlavne z dôvodu, že ma vždy bavilo učiť. Čo všetko môže dať spomínaný online kurz tomu, kto sa rozhodne ho absolvovať?T.S. Určite mu dá prehľad o tom všetkom, čo sa v AdWords nachádza, dostane sa do obrazu, čo všetko môže s AdWords robiť a dostane ho to na správnu dráhu, ak chce ďalej pokračovať v kariére týmto smerom. Ako by ste opísali PPC kampane na Slovensku? Je to rozdielne napríklad v porovnaní so zahraničím?T.S. Na Slovensku vidím, že každým rokom značne pribúda reklám vo vyhľadávaní, čo odzrkadľuje rastúci online trh a to, že pribúda aj online špecialistov, ktorí tomu rozumejú. Texty sú omnoho bohatšie, zmysluplnejšie, ale stále je vidieť, že sa v dostatočnej miere nevyužívajú všetky rozšírenia, ktoré AdWords ponúka. Keďže nemáme Google Shopping a niektoré ďalšie produkty, máme obmedzenejší výber toho čo dokážeme do reklamy pustiť. Oproti zahraničiu smerom na západ máme stále nižšie ceny za preklik a práve naopak, často keď ideme smerom na východ, vidíme tam ceny nižšie. Ešte stále môžeme využiť niektoré oblasti, kde konkurencia nie je taká vysoká a dá sa preraziť.[Tomáš s kolegami z agentúry ecake] Sledujete aj konkurenciu, aktuálne trendy, inovácie? Ako ste na tom?T.S. Sledujeme všetko, aby sme sa udržali v biznise a dokázali klientom vždy ponúkať najlepšie riešenia na trhu. Myslím, že by to malo byť automatické u každého, kto chce v tomto biznise pôsobiť. S.Š. Bez toho by biznis veľmi nešiel :D Podľa môjho názoru sme na tom nadpriemerne dobre ;) Dnes je dosť veľa pracovných ponúk v tejto oblasti a pravdepodobne už každá firma potrebuje odborníka na PPC kampane. Vnímate to tak aj vy?T.S. PPC špecialista sa na Slovensku stáva nedostatkovým artiklom. Hľadáme ich do agentúr, či do firiem. V zásade teraz platí, že najlepšieho si vychováte sami a zatiaľ je úroveň stále nízka na to, čo trh potrebuje, keď niekto opustí školu. S.Š. Bojím sa, že toto sa časom zmení. Predsa len na Slovensku je momentálne niekoľko stoviek digitálnych agentúr.  Je táto práca dobre zaplatená? :)T.S. V porovnaní s priemerom na Slovensku si myslím, že áno. Plus, keď si k tomu zoberiete nejaké tie "side joby", dá sa žiť :) S.Š. Áno aj. Otvára dosť veľa možností na zárobok pomimo ;) Na druhej strane komunita PPCčkarov veľmi rýchlo rastie. Napríklad aj na Facebooku denne pribúdajú pracovné ponuky na rôzne online marketingové pozície. Je podľa teba dosť kvalifikovaných ľudí práve na tieto pozície?T.S. Ako som spomínal vyššie, práve mám pocit, že nie je dosť kvalifikovaných ľudí na tieto pozície. Plus do budúcna nebude stačiť ovládať len slovenské PPCčko, ale treba sa orientovať aj na zahraničných trhoch. Aké sú najčastejšie chyby pri práci PPC špecialistu?T.S. To je veľmi individuálne. Povedal by som, že sa ešte málo robí s automatizáciou práce + workflow práce, kde sa dá mnohým chybám predísť tým, že si dobre nastavím monitoring, reporting a frekvenciu kontrol účtov. Chce to mať dobrý systém práce, potom tých chýb nebude veľa :) S.Š. Keď si myslí, že má pravdu a že si poriadne skontroloval všetky nastavenia. Vždy sa nájde niečo, čo sa dá prehliadnuť.  Pýtajú sa vás napríklad vaši priatelia na to, ako by si mali čo najefektívnejšie nastaviť svoje kampane? Dávate im rady?T.S. Vždy, keď sa spomenie, že robím v agentúre :) V duchu "treba si pomáhať" vždy niečo poradím, keď však už niekto chce pravidelnú starostlivosť o účet, vždy to zaberie niekoľko hodín času, a to má svoju hodnotu, takže je na mieste poskytnúť protihodnotu (nemusia to byť len eurá :P ) Ono je to aj o zodpovednosti, že robím s reálnymi peniazmi niekoho. Odporúčam často, že je lepšie si to dať profi nastaviť, lebo v AdWords sa dá naozaj aj utratiť dosť peňazí za nerelevantné výsledky. S.Š. Nonstop. Už ma to prestáva baviť.  Čo by ste poradili všetkým, ktorí nemajú žiadne skúsenosti s PPC kampaňami alebo online marketingom, ale chceli by nejako začať?T.S. Určite to, aby si najprv pozreli online kurz AdWords, študovali pomocné materiály a nebáli sa experimentovať. Ideálne je získať si taký, povedzme osobný pocit zodpovednosti voči peniazom. Buď si začať robiť nejaký vlastný mini projekt alebo pomôcť niekomu blízkemu, aby človek mal reálnu skúsenosť s tým, aká je cena reklamy na internete a získal snahu dostať čo najviac z daného budgetu. S.Š. Konzultácie s niekým. Možno spoločnosť dotyčného vôbec nepotrebuje online reklamu, len počul, že je to trendy a potrebné. Inak jednoznačne nerobiť to bez prejdenia si kurzom. Pokiaľ človek nepozná všetky triky Googlu, ako z nás vytiahnuť peniaze, môže na tom dosť prerobiť.  Chalani a ešte prezraďte vaše plány do budúcnosti.T.S. Mojim najbližím plánom je spraviť tak dobrú kampaň, že s ňou vyhráme v súťaži :) S.Š. Rozbehnúť nejakú značku :) Akúkoľvek! Čo najskôr :D  Vďaka za rozhovor a tešíme sa, že s vaším kurzom vychovávate nových PPC špecialistov a machrov na Google AdWords.
Startup Weekend už po druhýkrát v Banskej Bystrici
Podujatia
08.02.2018
Skillmea

Startup Weekend už po druhýkrát v Banskej Bystrici

Po úspešnom prvom ročníku hosťuje Startup Weekend  v meste Banská Bystrica aj v roku 2018. Na tri dni zábavy, pracovného nasadenia, nových skúseností a stretnutí s inšpiratívnymi ľuďmi sa  Banskobystričania a všetci startupoví nadšenci môžu tešiť v dňoch 23. - 25. februára 2018. Princíp podujatia Startup Weekend, ktoré sa pravidelne koná v rôznych mestách po celom svete je zhromaždiť počas 54 hodín účastníkov rôznych povolaní, znalostí a záujmov, ktorí chcú vyskúšať svoje podnikateľské zručnosti. Doteraz sa na približne 3000 rôznych podujatiach vo viac ako 150 krajinách zúčastnilo viac než 50 000 účastníkov.  Na začiatku sú vytvorené tímy podľa svojich preferencií a sympatií k prezentovaným nápadom a v priebehu nasledujúcich mnohých hodín tvoria svoje projekty za pomoci viacerých mentorov. V minulom roku súťažilo v Banskej Bystrici 11 tímov a spolu 52 výnimočne šikovných ľudí.  Startup Weekend Banská Bystrica je otvorený pre všetkých. Hlavnou cieľovou skupinou sú aktívni, podnikaví jednotlivci alebo skupiny, ktorí majú záujem overiť si svoje zručnosti, resp. získať nové a spolu s nimi aj skúsenosti a kontakty s podobne zmýšľajúcimi ľuďmi. „Zaregistrovať sa môžu profesionáli aj študenti z rôznych oblastí, dizajnéri, vývojári, projektoví manažéri, právnici, účtovníci, marketingoví odborníci. Ak chcú inovovať a uspieť, musia sa spojiť, vytvoriť tímy a spolupracovať,“ uvádzajú organizátori.  Registrácia prebieha na webovej stránke http://communities.techstars.com/slovakia/banska-bystrica/startup-weekend/12221.  Do 11. februára je možné kúpiť lístky v zvýhodnenej cene. V cene budú mať účastníci zahrnuté jedlo od piatkového večera do nedeľného večera (raňajky, obed a večera), mentoring od skúsených profesionálov a možnosť vyhrať zaujímavé ceny.  Partnerom a sponzorom tohto ročníka je opäť aj Learn2Code, na víťazné tímy čakajú naše online kurzy. Pre viac informácií choď na oficiálne internetové stránky Startup Weekendu alebo Facebook event. Vidíme sa v Bystrici! :) 
Bratislava bude po tretíkrát hostiť konferenciu PyCon
Podujatia
31.01.2018
Skillmea

Bratislava bude po tretíkrát hostiť konferenciu PyCon

Na tri dni sa Bratislava už po tretíkrát zmení na miesto s najväčšou koncentráciou profesionálnych programátorov, učiteľov informatiky aj technologických nadšencov. Hlavným lákadlom bude konferencia PyCon SK 2018, určená záujemcom o Python, jeden z najpopulárnejších programovacích jazykov na svete. Účasť na PyCon SK 2018 už potvrdil tvorca jedného z najpopulárnejších podcastov o Pythone.[Image] Hostiteľom konferencie bude počas druhého marcového víkendu (9. - 11. marec 2018) Fakulta informatiky a informačných technológií STU. Počas prvých dvoch ročníkov dokázala komunitná konferencia PyCon SK pritiahnuť do slovenskej metropoly takmer tisícku návštevníkov z piatich kontinentov a bezmála stovku rečníkov z 15 krajín. „Aj v roku 2018 si účastníci konferencie budú mať z čoho vyberať. Svoju účasť zatiaľ potvrdil napríklad Michael Kennedy, tvorca populárneho podcastu pre fanúšikov Pythonu,“ avizuje Richard Kellner, predseda občianskeho združenia SPy, ktoré komunitnú konferenciu organizuje. Zoznam rečníkov však podľa neho nie je vyhradený len pre zvučné mená technologického sveta. „PyCon je komunitnou konferenciou, preto veľmi radi privítame každého, kto bude túto komunitu chcieť obohatiť svojimi vedomosťami alebo inšpiratívnym príbehom. Miesto na pódiu dáme radi aj ľuďom, ktorí s Pythonom len začínajú a budú mať chuť podeliť sa o svoju skúsenosť,“ zdôrazňuje R. Kellner.[Image] Hlavný organizátor PyCon konferencie, Richard Kellner Vyhradený priestor na konferencii budú mať aj slovenskí učitelia informatiky. „O špeciálnu sekciu EduTrack bol pri jej premiére enormný záujem. Približuje Python aj tým učiteľom, ktorí sa s týmto jazykom zatiaľ nestretli,“ dodáva R. Kellner. PyCon SK je druhá konferencia v Európe, ktorá sa pýši samostatnou sekciou pre vzdelávanie. Učitelia nebudú na konferencii len pasívnymi poslucháčmi, miesto dostanú aj za rečníckym pultom. "Každý, kto bude mať záujem vystúpiť so zaujímavým príspevkom, dostane takúto možnosť. Až do 21. januára máme otvorenú výzvu na predkladanie návrhov na prednášky. Platí to pre profesionálnych programátorov, aj učiteľov informatiky. Stačí sa ozvať," pripomína zástupca občianskeho združenia SPy.[Image] PyCon 2018 v Bratislave už v marci Vstupenky na tretí ročník komunitnej konferencie PyCon SK sú k dispozícii na stránke www.pycon.sk. Možnosť zúčastniť sa za zvýhodnených podmienok majú sociálne znevýhodnené skupiny záujemcov, pre ktorých organizátori pripravili grantový program. Sponzormi konferencie PyCon SK 2018 sú kiwi.com, Exponea, Python Software Foundation, Kistler, Red Hat, JetBrains, Sli.do a Learn2Code. Python je moderný programovací jazyk a jeho popularita stále rastie. Využívajú ho svetové platformy ako Facebook, Google, Youtube, Mozilla a pod. A prečo je taký skvelý? Dá sa veľmi rýchlo naučiť a je univerzálny. Vytvoríš v ňom webstránky, hry, aplikácie, skrátka čokoľvek. Ešte si s Pythonom nezačal? A chcel by si vedieť, ako na to? Práve pre teba sme pripravili tento online kurz.
 Pripravované online kurzy - 1. štvrťrok 2018
Novinky
08.01.2018
Skillmea

Pripravované online kurzy - 1. štvrťrok 2018

Aj v roku 2018 sa môžeš tešiť na poriadnu porciu nových online kurzov. Programovanie, grafika aj online marketing. Čo všetky sme si pre teba pripravili na prvý štvrťrok 2018? Čítaj ďalej a všetko sa dozvieš. JavaScript a ES6Tento online kurz je už k dispozícii a už teraz môžeš študovať jeden z najpopulárnejších programovacích jazykov súčasnosti JavaScript. Aktuálne lektor kurzu Yablko pripravil cca polovicu kurzu, čo je asi 50 videí a k tomu veľa domácich úloh. Mrkni trailer ku kurzu:  Po dokončení kurzu sa Yablko rozhodol spraviť kurz na Vue.js, čo je skvelá alternatíva k React-u alebo Angular-u a pomáha ti predovšetkým pri tvorbe single page aplikácií. Google AdWordsPo dlhšej dobe prišlo nové rozhranie reklamného systému Google AdWords. Okrem nového dizajnu prináša aj veľa noviniek, vylepšení a zmien a práve preto sme sa rozhodli oprášiť náš súčasný online kurz na AdWords a prísť s novým kurzom. Na produkcii kurzu makáme spolu s lektormi z digitálnej agentúry ecake a pripravený pre vás bude približne koncom januára 2018. Automatizované testovanie v Seleniu 2 Pokračovanie online kurzu automatizovaného testovania v Seleniu. V tomto kurze sa lektor Furby pozrie na zúbok aj Jave v praxi (Java 8), Jenkinsu, spúšťaniu viacerých testov naraz, Data Driven Testingu a ďalším špecialitkám z testovania. Adobe IllustratorOnline kurz na tvorbu printovej grafiky v Adobe Illustrator sme vám sľúbili dávnejšie a v januári 2018 tento kurz aj budete mať k dispozícii. V kurze prejdeš od základného vysvetlenia vektorovej grafiky, používania Illustratoru až po reálne ukážky využitia tohto programu pri tvorbe loga, vizitky, plagátu či kalendára. [Online kurz Adobe Illustrator] Android DeveloperMobilné appky pre Android sa naučíš programovať v tomto kurze. Naučíš sa, ako si pripraviť všetko potrebné pre vývoj aplikácie, používať Android Studio a neskôr sa vrhneš na vývoj vzorovej mobilnej aplikácie. Pri jej programovaní prejdeš všetkými dôležitými súčasťami vývoja, naučíš sa robiť v Jave, vytvárať obrazovky/layouty aj v UI editore a Jave. Online kurz ťa naučí čo sú to aktivity a intenty pre jednotlivé obrazovky, ako si uložiť svoje údaje a ako k niektorým z nich pristúpiť z hardwarových častí zariadenia.[Android Developer online kurz]Okrem týchto kurzov sa posnažíme zverejniť čo najskôr aj ďalšie kurzy, na ktorých výrobe pracujeme, napríklad by to mohol byť kurz Java pre pokročilých alebo Microsoft Access.  Aký kurz ti na Learn2Code chýba? Napíš do komentára a posnažíme sa splniť tvoje želanie, ak to bude možné :)