Den ochrany dětí před špatným kódem

Den ochrany dětí před špatným kódem

Příspěvek věnovaný Dni ochrany dětí. Jakákoliv shoda – nesouhlasí.

V deseti letech jsem dostal první počítač a disk s Visual Studio 6. Od té doby si vymýšlím úkoly – automatizovat úkoly, vytvořit nějakou webovou službu pro tři lidi nebo napsat hru, kterou pak z Play Store odstraní kvůli stáří. Samozřejmě jsem ztrácel zdrojové kódy a psal kód, který bych se styděl ukázat lidem. A v deseti letech bych určitě neodmítl dostat z budoucnosti archiv se všemi chybami – abych je nikdy nemusel opakovat.

Před pár týdny jsem se ptal kolegů z Yandex.Money, co by nyní doporučili dítěti, které se chce stát IT specialistou, a pak si vzpomněl na něco o sobě. Tak vznikl tento text. Navrhuji o tom diskutovat.

Nedoporučuji trávit hodně sil při výběru, raději vše zkoušet a všemu se věnovat. Jakmile pochopíš, co se ve všeobecnosti děje, můžeš sám rozhodnout, kterým směrem se ubírat a čemu se raději vyhnout.

Sergej, junior programátor

Dětství

Jaká je nejzábavnější činnost v programátorském dětství, když ještě není internet?

Měl jsem dvě – rozebrat všechny hry z disku „800 her v ruštině“ pomocí všech programů z disku „Vše, co hacker potřebuje“, a pak přepsat všechny hry, na které jsem strávil více než 10 hodin, od nuly v Basicu. Není žádný rozdíl, co se povede – i když se povede něco takového.

Den ochrany dětí před špatným kódem

Berete, zkoušíte, přemisťujete bloky, experimentujete a dostáváte se na všechno, kam se dá dostat. Odstraníte Windows, po 10 hodinách nainstalujete Windows zpět. Snažíte se vrátit ovladače. Zjistíte, jak funguje DOS. Zjistíte, jak by měly být jumpery, aby váš hard disk nastartoval na počítači kamaráda (tam je 200 megabajtů nových her!). Otáčíte softwarem, otáčíte hardwarem, rozebíráte a skládáte počítač. Píšete fotbalový simulátor 13 let, na konci.

Když není nic, stáváte se šťastným z toho.

Nelze podceňovat důležitost sebereflexe. Podle mého názoru nováčci v IT podceňují, jak přísně budou muset kontrolovat svůj produkt (a v analytice také) a jak moc času to zabere ve srovnání s čistě tvůrčí částí. A čím zajímavější to, co děláte, tím složitější a delší bude ověřování.

To je samozřejmě poněkud abstraktní rada, ale kdybych to hned věděla.

A nedoporučuji se zaměřovat na jedno odvětví v IT. I zde má široký přehled význam.

Anna, senior systémová analytička

Střední škola

V určitém okamžiku na fóru okresního města P se probíralo programování – a objevila se tam vlákna s názvem "Do velké společnosti hledáme programátory PHP". Text inzerátu zněl takto:

Do velké společnosti hledáme programátory PHP:

Abychom zjistili, zda se vyplatí na pohovor přijít, splňte jednoduchý úkol: napište program v php, který najde taková celá kladná čísla x, y a z, aby x^5 + y^5 = z^5. (^ - mocnina).

Odpovědi můžete posílat zde.

Na tomto vlákně se ozvalo jen několik lidí – byl jsem mezi nimi. Se všemi svými šestnáctiletými naivními idejemi jsem odpověděl:

Fakt je to divné. A počítač potřebujete slušný, abyste to našli...
Protože od x,y,z <= 1000 taková čísla nejsou - to je za prvé (vzal jsem si to do vb, více zatím nedáno), za druhé počítač se nakonec zasekne.

Není to jedno, IMHO.

Ano, napálili nás, past pro nováčky, jo, s padonkovským, a co. Je zřejmé, že jsem strávil nějaký čas jednoduchým skriptem, ale úplně jsem zapomněl na existenci Fermatovy věty – o čemž autor vlákna, ctihodný The_Kid, objasnil na konci.

Výsledek je smutný – v P. prakticky nejsou lidé, kteří by znali matematiku, ale každý druhý se považuje za super programátora. Za tři hodiny, na všech fórech, kde jsem umístil zprávu, bylo celkem kolem dvou set zhlédnutí... a jen dva správné odpovědi. A Fermatova věta – to je přece školní program, a její podmínky jsou tak jednoduché, že by měly být zřejmé. Mimochodem, paralelně při dotazování na aškou 6 z 6 známostí novosibirských studentů odpovědělo "To je přece Fermatova věta".
A koho tedy brát do práce?

Tehdy to ve mně vyvolalo bouři rozhořčení ve smyslu: "Pokud jsem o Fermatově větě nepsal, neznamená to, že ji neznám," – klasická výmluva. Je mi teď smutno? Ne, to je také životní lekce. Stejně jako tehdy, když moji hru zařadili do indonéského Windows Phone Store a po dvou týdnech ji odstranili, protože jsem neaktualizoval nějaké podmínky EULA.

A vůbec není jasné: pokud ve velké společnosti není koho zaměstnat - kým tedy být? Čím se zabývat? Kam růst?

Nemysli si, že tím, že získáš vzdělání, budeš programátorem/taxi řidičem/matematikem nebo někým jiným.

Přišly doby, kdy se v diplomu mnohem více hodnotí základní předměty (matematika, fyzika, informatika, filozofie), nikoli aplikované (programování, projektování v konkrétních oborech, další). Vysokoškolské vzdělání začalo být rozděleno na vrstvy - základní (inženýrské) a aplikované. Měli bychom se učit ne konkrétním dovednostem, ale myšlení, vědeckému přístupu, pochopení, jak řešit problémy, a měkkým dovednostem.

Pokud jde o univerzitu. Na aplikované dovednosti má člověk ještě celý zbytek života.

Oleg, vedoucí systémový analytik

Univerzita

Píšeš kód v C++, píšeš kód v Javě. Dotýkáš se assembleru, odtahuješ ruku, zaplétáš se do Qt a přemýšlíš, co jsi provedl. Ve čtvrtém ročníku už všem na tom, v čem píšeš důležité úkoly, vůbec nezáleží - vyučující se dívají na kód ledabyle.

Tak to sice neplatí všude - jsou vysoké školy, kde to je silné a dobré, ale tam berou kluky, kteří v škole řešili úkoly z ACM, na dodatečných hodinách vyždímali maximum z teorie grafů a biflovali, kolik paměti potřebují všechny existující na světě algoritmy.

Já jsem takové úkoly neřešil, nechodil jsem na dodatečné hodiny, ale jednoduše jsem si dodělal školu ve svém matematickém třídě, přitom dělaje zajímavé věci. Spoiler - na pohovorech to nikomu nebude k ničemu.

Nejprve je lepší si ujasnit, co tě na IT baví. Pokud tě baví všechny směry, bude to složité. Učit se nějaký jazyk - ničemu to nepovede, bude to jen zmatek v budoucnu.

Jan, specialista na finanční monitoring

Skutečný příběh - za simulátor Windows, udělaný s kamarádem na koleně ve 10. třídě, lze na univerzitě získat pár zkoušek a zápočtů automaticky. Můžeš pak všem vyprávět, jak to bylo skvělé. Problém je v tom, že to nebylo skvělé - byla to zamotaní architektura, odporný kód a naprostý nedostatek jakýchkoli standardů.

Takové věci je třeba dělat s jedním cílem – mít vlastní katalog hřebíků. Ačkoliv tě to neochrání před syndromem podvodníka, když se ocitneš ve velké společnosti s nějakými povrchními znalostmi o všem a myslíš si, že tě teď prozradí.

Den ochrany dětí před špatným kódem

Podporuji, důležitější je pomáhat radami, co dělat a kde brát informace, než naopak. A vůbec není strašné, pokud na začátku bude něco zkoušet naslepo. — uvědomění přijde později. Důležité je, aby ho to bavilo.

Eric, inženýr testování

Všichni píšeme plány rozvoje – co je potřeba se naučit, čemu se věnovat v nejbližší budoucnosti a jak se zlepšovat. Ale zdá se, že by nám všem prospělo napsat dopis sobě z minulosti – tady je můj.

  1. Věnuj čas, najdi si knihu a nainstaluj ten distribucí Ubuntu, který ti zdarma poslali z Canonical. Určitě tam je nějaký jednoduchý problém, Ubuntu běží všude. A Linux ti přijde vhod.
  2. Neboj se konzole. Volkov Commander se sice vejde na jednu disketu, ale zkus zjistit, proč potřebuješ všechny tyto příkazy, skamaráď se s příkazovou řádkou. Diskety vymřou. Disky vymřou. USB klíčenky také vymřou. Neboj se příliš.
  3. Přečti si o algoritmech, pochop třídění, stromy a haldy. Čti knihy.
  4. Aby ses naučil základy, nemusíš mít placené kurzy. Brzy přijde YouTube – uvidíš, jak tě to překvapí.
  5. Neremcej se na Basicu. Na světě je stovka technologií, které stojí za to sledovat, a milion věcí, které jsou zajímavější, než znovu kreslit uživatelské formuláře v Excelu. Vezmi si alespoň Python – a pak to zvládneš.
  6. Nauč se používat Git, zálohuj všechny zdrojové kódy. Napiš alespoň jednu aplikaci typu klient-server, abys chápal, jak fungují. Pochop sítě, switche a směrovače.
  7. A pokud to teď čteš, znamená to, že to nebylo zbytečné.

Napište v komentářích, co byste napsali sobě z minulosti? Doporučte něco současným školákům a studentům, kteří jsou zatím na rozcestí a snaží se najít svou cestu. Pojďme o tom mluvit.

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster