Všetkým vládne jeden jazyk

Jazyk skrytý pod vrstvou kódu chradne a túži sa naučiť.

Všetkým vládne jeden jazyk

V čase písania tohto článku dotaz „naprogramovať, ktorý jazyk sa učiť ako prvý“ vráti 517 miliónov výsledkov vyhľadávania. Každá z týchto stránok bude chváliť jeden konkrétny jazyk a 90 % z nich nakoniec odporučí Python alebo JavaScript.

Bez ďalších okolkov by som rád povedal, že všetkých týchto 517 miliónov webových stránok je nesprávnych a že jazyk, ktorý by ste sa mali naučiť ako prvý, je fundamentálnej logiky.

Nestačí len vedieť kódovať. Trh je natoľko presýtený absolventmi inštitútov a kurzov, že juniorská pozícia prakticky prestala existovať*. Ak chcete uspieť v dnešnom svete, musíte kódovať a mať pokročilé základné logické myslenie.

*ďalej, prosím, nezabúdajte, že ide o preklad a situácia na trhu práce pre autora a vo vašej krajine môže byť iná (ako aj iné nuansy), čo však samo osebe pôvodný článok nezhoršuje - približne. preklad

Moja prvá hodina informatiky

Moje prvé stretnutie s informatikou bol voliteľný predmet, ktorý som absolvoval v 10. ročníku. Hneď v prvý deň, keď som vstúpil do triedy, som sa potešil, keď som pred sebou videl veľké množstvo vedier zmrzliny a rôznych poliev. Keď si všetci sadli, učiteľ oznámil:

“Dnes ochutnáme vlastnoručne pripravené zmrzliny. Ale s jednou podmienkou: musíte si urobiť zoznam konkrétnych pokynov na prípravu dezertu a ja sa nimi budem riadiť.“

"Žiadny problém," pomyslel som si, "táto lekcia nebude trvať dlho." Asi za minútu som si zapísal perfektný recept na zmrzlinu mojich snov:

  1. Naberte a vložte tri kopčeky malinovej zmrzliny do misky
  2. Otvorte čokoládovú omáčku a pridajte dve polievkové lyžice do tej istej misky
  3. Pridajte šľahačku do misky
  4. Všetko to posypeme cukrovými tyčinkami a navrch dáme čerešňu

Môj učiteľ – „počítač“ v tejto roztomilej metafore – predviedol sarkastickejší, doslovnejší výkon, než som kedy predtým videl. Horlivo začala naberačkou kopať do vedra so zmrzlinou bez toho, aby sa čo i len dotkla veka.

"Dobre, dobre, ale najprv to musíš otvoriť!" - zvolal som a snažil som sa dostať pochúťku čo najrýchlejšie.

„Toto si nenapísal v pokynoch a ja som ti nemohol urobiť zmrzlinu. ĎALŠIE!"

Poďme rýchlo dopredu na pokus č. 2

  1. Otvorte malinovú zmrzlinu odstránením veka
  2. Naberte a vložte tri kopčeky malinovej zmrzliny do misky
  3. Otvorte čokoládovú omáčku a pridajte dve polievkové lyžice do tej istej misky
  4. Pridajte šľahačku do misky
  5. Všetko to posypte cukrovými tyčinkami a navrch položte čerešňu

Teraz by už určite nemali byť žiadne problémy. Pre každý prípad som sa uistil, že všetky ingrediencie na výrobu môjho kulinárskeho majstrovského diela sú otvorené.

Učiteľ odstránil vrchnák, nabral a dal tri kopčeky zmrzliny do misky. "Konečne sa moja krásna zmrzlina začala plniť!" Potom otvorila čokoládovú omáčku a do misky pridala dve polievkové lyžice. „Nepridala čokoládovú omáčku z dvoch polievkových lyžíc“ - nemyslite si to -, samozrejme, vložila do misky samotné lyžice. Žiadna omáčka v nich. Opäť som sa neobťažoval všetko presne napísať. Keď sa zvyšok urobil v rovnakom duchu, dostal som misku zmrzliny a dve polievkové lyžice, sotva viditeľné pod morom šľahačky. Navrchu bol pár cukrových tyčiniek.

Zdá sa, že v tejto chvíli mi konečne svitlo: počítač je logika vo vzduchoprázdne. Nepozná okolité okolnosti a nerobí si žiadne domnienky. Vykonáva len jasne formulované pokyny a doslovne ich dodržiava.

Môj konečný výsledok bol výsledkom dlhej, ale nevyhnutnej série pokusov a omylov:

  1. Ak ste tak ešte neurobili, otvorte každé z nasledujúcich balení: malinová zmrzlina, čokoládová omáčka, šľahačka, cukrové tyčinky.
  2. Vyberte misku a položte ju pred seba
  3. Vezmite naberačku zmrzliny a jeden po druhom vložte tri kopčeky malinovej zmrzliny do misky. Vložte naberačku zmrzliny späť na miesto.
  4. Vezmite pohár čokoládovej omáčky, naberte omáčku a nalejte obsah polievkovej lyžice do misky. Proces naberania a nalievania zopakujte ešte raz. Vložte lyžicu a nádobu späť na miesto.
  5. Vezmite balenie šľahačky hore dnom a držte ho nad miskou, nalejte na zmrzlinu na 3 sekundy a potom vráťte balenie na svoje miesto.
  6. Vezmite nádobu cukrových tyčiniek, nalejte asi štyridsať tyčiniek do misy a vložte nádobu späť.
  7. Vyberte jednu čerešňu z misky s čerešňami a položte ju na zmrzlinu.
  8. Dajte žiakovi misku s hotovou zmrzlinou a lyžicu.

Posledný bod bol obzvlášť dôležitý, pretože bez neho mi predposlednýkrát učiteľka jednoducho začala jesť zmrzlinu.

Ale toto je programovanie. Stres z vytvárania starostlivého súboru pokynov pre počítač. V podstate ide o to, čo každý programovací jazyk rieši – písanie inštrukcií.

Kariéra v programovaní

Programovanie dospelo do bodu, keď je ťažké diskutovať ako o jednom odvetví, rovnako ako je ťažké použiť jediné slovo „programátor“ ako popis práce. Na trhu môžu byť rovnako žiadaní dvaja vývojári, ktorí ovládajú úplne odlišné jazyky, čo znamená, že schopnosť rozvíjať sa je dôležitejšia ako znalosť konkrétneho jazyka. Univerzálny atribút zdieľaný všetkými úspešnými vývojármi je fundamentálnej logiky.

Najlepší programátor je ten, ktorý sa dokáže pozrieť na kód z nového uhla. A to je zásadne dôležité, pretože väčšina softvérových produktov je zbierkou nezdokumentovaných fragmentov zlého kódu. Neustále sa musia spájať a podľa potreby vyplniť medzery. Ľudia, ktorí nedokážu spojiť nesúrodé bodky jednou čiarou, budú musieť navždy zostať na vedľajšej koľaji.

To všetko ma privádza k ďalšiemu vyhláseniu, tentoraz tučným písmom: základné znalosti vždy boli a budú pre programátora prvoradé.

Jazyky prichádzajú a odchádzajú. Rámce sú zastarané a spoločnosti reagujú na dopyt zmenou technologického balíka, ktorý používajú. Je jedna vec, ktorá sa nikdy nezmení? Áno – fundamentálne poznanie, ktoré sa nazýva fundamentálne, pretože je základom všetkého!

Ako zlepšiť základné vedomosti

Všetkým vládne jeden jazykFoto Christopher Jeschke na Unsplash

Ak hľadáte východiskový bod na zlepšenie svojho základného logického myslenia, skúste začať tu:

Poznajte zložitosť svojho programu

Tiež nazývaný Veľký O „zložitosť algoritmu“ sa vzťahuje na závislosť času potrebného na vykonanie programu od veľkosti jeho vstupných údajov (N). Udržať prst na pulze používaných algoritmov je dôležitým krokom.

Poznajte svoje dátové štruktúry

Dátové štruktúry sú srdcom každého moderného programu. Vedieť, ktorú štruktúru v akom prípade použiť, je disciplína sama o sebe. Dátové štruktúry priamo súvisia so zložitosťou runtime a výber nesprávnej štruktúry môže viesť k zásadným problémom s výkonom. Nájdenie prvku v poli je O (n), čo naznačuje vysoké náklady na používanie polí ako vstupných údajov. Vyhľadávanie v hašovacej tabuľke − O (1), čo znamená, že v tomto prípade čas hľadania hodnoty nezávisí od počtu prvkov.

Ľudia za mnou prichádzali na rozhovor a tvrdili, že vyhľadávanie v poli je rýchlejšie ako vyhľadávanie v hašovacej tabuľke. Toto bol najistejší znak toho, že by ste ich nemali najať – poznajte svoje dátové štruktúry.

Čítajte / sledujte / počúvajte

Stránky ako ÚdomPlurálny pohľad и CodeAcademy - Výborná voľba pre učenie sa nových programovacích jazykov. Ale pre základy si pozrite knihy o všeobecných princípoch kódovania, postupoch a štýloch. Najviac odporúčané knihy sú „Design Patterns“, „Refactoring“. Zlepšenie existujúceho kódu, „Perfektný kód“, „Čistý kód“ a „Pragmatický programátor“. Nakoniec by si každý vývojár mal ponechať kópiu súboru „Algoritmy" po ruke.

Cvičte!

Miešané vajcia nemôžete uvariť bez rozbitia vajec. Stránky ako Hacker RankCodeWarsCoderByte, TopCoder и LeetCode ponúkajú tisíce zaujímavých hádaniek, ktoré otestujú vaše znalosti dátových štruktúr a algoritmov. Skúste svoje šťastie pri riešení problému, ktorý sa vám páči, uverejnite svoje riešenie na Github a potom uvidíte, ako k nemu pristúpili ostatní. Čo nás privádza k poslednému bodu:

Prečítajte si kód iných ľudí

Najväčšou chybou, ktorú môžete urobiť, keď idete cestou rozvoja, je ísť sám. Vývoj softvéru je z veľkej časti tímová práca. Spoločne vytvárame štandardy, robíme spolu chyby a napriek všetkým zlyhaniam sa spolu stávame lepšími. Čas strávený čítaním kódu iných ľudí sa vám bohato vyplatí. Len sa uistite, že je to dobrý kód.

No, najlepšia rada, ktorú môžem dať, je nikdy sa nehanbiť za to, že ešte niečo nevieš. Ako už bolo povedané, náš priemysel je obrovský a množstvo technológií je nekonečné. Vybudovanie celkového obrazu si vyžaduje veľa času a úsilia, ešte viac stať sa profesionálom v niečom konkrétnom a rádovo viac zdokonaľovať svoje zručnosti vo svojom odbore. Dám vám vedieť, keď to sám dosiahnem.

Zdroj: hab.com

Pridať komentár