⚠️💥 Aj to, čo si myslíš, že nemôže failnúť, failnúť môže.
Defenzívne programovanie 🛡️, clean code a rozvoj legacy systémov sú nosné témy podcastu Oliho a Daniela s Igorom Liškom.
Igor mal po skončení štúdia na vysokej škole už šesť rokov praxe. Prvé platené projekty programoval na strednej škole 👨💻. Prešiel rolami programátora, projektového manažéra, engineering manažéra, no ťahalo ho to k sales a podnikaniu 💼 a tak je spoluzakladateľ dvoch firiem 📈. Software štúdia a herného štúdia. Jeho veľkou láskou je lego.
Zdieľa skúsenosti z tvorby množstva projektov, kde je nutná robustnosť 🛠️, podpora starších verzií a dobrá viditeľnosť, čo sa deje v systéme 👀. Zdieľa svoj názor a skúsenosti, ako pristupovať k tvorbe odolného softwaru, ktorý sa dá zhrnúť do vety, že každý riadok kódu je potenciálny bug 🐛..
🌱 Greenfield projekt je Greenfield projektom v podstate prvých pár týždňov. Skutočná hodnota software leží v trvácnosti software a hodnote, čo prináša. Keď si budeš najbližšie hľadať výzvu a budeš chcieť projekt na zelenej lúke, mysli na to.
💪💻 Nauč sa programovať defenzívne. Defenzívne programovanie je o pripravenosti na nepredvídateľné zmeny a minimalizáciu dosahu chýb. Na začiatok sa môže zdať neekonomické riešiť neznáme riziká, no keď si tento spôsob práce osvojíš, tak budeš vytvárať odolný software s minimálnou pracnosťou navyše.
🔍🤓 Najlepší vývojári majú extrémne vysokú prirodzenú zvedavosť. Nikdy sa neuspokoja s tým, že niečo funguje, no vždy chcú vedieť prečo. Zvedavosť a ochota sa neustále učit - ale s hands on. To sú kľúčové vlastnosti.
Clean code nie je nová vec, len ho treba reálne používať. Dôležité vlastnosti dobrého software je aj tracebilita, teda schopnosť “vidieť”, čo sa v systéme deje. Zvlášt dôležitý je dobrý návrh telemetrie pri microservice architektúrach a systémoch, kde interaguje množstvo komponentov.
Okrem toho sa dozvieš o Igorovej láske k legu a hrám. Ako balansuje dve firmy a rôzne role. Ako funguje ich herné vývojárske štúdio a aj breakdown ich projektov. Ako prioritizovať bugy. Ako udržovať spätnú kompatibilitu API.
💬 Keď si nemožes dovoliť mať bug, maj tri záložné systémy. Ako raketoplán.
References:
- https://en.wikipedia.org/wiki/Defensive_programming
- https://unagiscooters.com/scooter-articles/the-scooter-a-history/