Jak budovat disciplínu - principy

Jak budovat disciplínu - principy

osobní rozvoj

V minulém článku jsme si ukázali, jak o disciplíně přemýšlet, co je potřeba pochopit, než se pustíme do projektu. Dnes se konečně podíváme na to, jak disciplínu vybudovat. Povíme si o 3 principech, které k disciplíně vedou, a pokud je budete dodržovat, budete mít dostatek sebekázně na dlouhodobou práci na svém snu. Povíme si o konzistenci, fokusu a systému.

Principy disciplíny jsou jednoduché, jejich dodržování je to, co je těžké, pokud ale vydržíte, váš život se výrazně změní.

Disciplína - mentální nastavení

Disciplína - mentální nastavení

osobní rozvoj

Pojďme se podívat na to, jak disciplínu vybudovat. Cesta začíná ve vaší hlavě, v přístupu. V přístupu k věci, o kterou se snažíte, v přístupu k vám samotným.

A budete k tomu potřebovat některé skutečnosti vzít na vědomí.

Disciplína - co to je?

Disciplína - co to je?

osobní rozvoj

Dnes se konečně dostáváme k první skutečné dovednosti potřebné ke změně a růstu – k disciplíně. Disciplína je nezbytná, podmínka nutná pro dosažení vašich cílů, pro to, abyste se stali tím, čím chcete.

Samotné slovo „disciplína“ bude znít pro mnohé zlověstně, jako něco, co je třeba dělat, něco, čemu se chceme vyhnout. Disciplína je ale základem růstu, a v tomto článku se podíváme na to, jak z disciplíny udělat svého pomocníka.

Scatter-Gather pattern

Scatter-Gather pattern

architekturanávrhové vzory

Scatter-Gather je další z rodiny návrhových vzorů, které se zaměřují na separation of concerns (oddělení zodpovědnosti). Hlavním přínosem scatter-gather vzoru je paralelizace – možnost vykonávat několik operací najednou, a je tedy vhodný pro prostředí a jazyky, které paralelizaci nabízejí, mají thready, workery nebo umí spustit nové procesy.

Talent - běžná výmluva

Talent - běžná výmluva

osobní rozvoj

V pokračování série o faktorech, které ovlivňují úspěch, se dnes podíváme na talent. Pokud jste nečetli článek o štěstí, doporučuji. Hodně faktorů je podobných a nebudu je vysvětlovat znovu.

Nicméně, na rozdíl od štěstí, talent už má praktický dopad na úspěch (dá se s ním pracovat). Co to ale talent je? Podle mě si hodně lidí talent vykládá špatně.

Hodně lidí si talent vykládá jako něco, co dá člověku náskok, a to není pravda.

Štěstí - kotva na noze

Štěstí - kotva na noze

osobní rozvoj

Štěstí, o kterém chci dnes mluvit, není „Ty máš štěstí, vyhrál jsi loterii“, ale „Ty máš štěstí, že máš tak skvělé kolegy, že máš takové skvělé nabídky“ atd. To první je štěstí. To druhé málokdy. A přesto se to dá zaslechnout často...

Nicméně, takřka nikdy to nemá co společného se štěstím.

Rules engine pattern

Rules engine pattern

architekturanávrhové vzory

Návrhové vzory jsou jako nástroje ve vaší dílně. Dokáží výrazně zjednodušit jak psaní kódu, tak i kód samotný. Dnes začneme ukázkami patternů, specificky se vzorem rules engine.

Rules engine vám umožní zlepšit jak separation of concerns, tak high cohesion a low coupling, a tím výrazně snížit míru komplexity kódu.

Architektura

Architektura

architektura

"Softwarová architektura je návrh API, databáze a měla by být robustní a stabilní."

Na předchozí větě není skoro nic pravda. Moderní softwarová architektura je něco velmi jiného. Chybí to hlavní. To, co je vlastně cílem architektury.

Co je tedy softwarová architektura?

Nejcennější zdroj

Nejcennější zdroj

osobní rozvoj

Spoustu věcí lze nahradit nebo získat znovu. Dům, auto, peníze – vše lze nahradit. Existuje ale něco, co je cennější než peníze či zlato. Čas. Čas je skvělý zdroj; všichni ho máme stejně – 24 hodin denně. Není možné mít více, jediné, co je možné, je rozhodovat o jeho využití.

Slyšeli jste někdy lidi říkat "nemám dost času"? Nemyslím tím úkoly a termíny. Nemluvím o práci, někdy jsou termíny příliš krátké, úkoly příliš velké a není čas je dokončit. Mluvím o "Chtěl bych se tohle naučit, ale nemám čas."

Mít pravdu

Mít pravdu

leadership

Má cenu mít vždycky pravdu? Co to znamená mít pravdu v softwarovém vývoji? Jak důležité je pro lídra mít pravdu? A kdy to všechno začne být arogance? Měli jste někdy co dočinění s někým, kdo musel mít vždy pravdu?

Prozkoumáme pohled developera, lídra a architekta.

Softwarová komplexita

Softwarová komplexita

architektura

Komplexita je úhlavní nepřítel softwarového designu a architektury. Primárním úkolem softwarového architekta je odstranit, redukovat a spravovat komplexitu – v tomto pořadí. Ale co když samotná podstata problému, který řešíte, je komplexní? Co potom? Co vlastně znamená řídit komplexitu a co je vůbec komplexita?

Existuje několik typů softwarové komplexity, a každý typ vyžaduje jiný přístup.

Co je abstrakce

Co je abstrakce

architektura

Vývojáři používají slovo "abstrakce" běžně, nicméně často s omezeným chápáním významu. Pro většinu byl koncept abstrakce zastíněn jejím použitím v některých jazycích pro označení metody nebo třídy, která musí být děděna a přetížena. Stejně tak "použij abstrakci" pro spoustu developerů znamená "napiš abstraktní třídu".

Abstrakce je jednou z nejdůležitějších technik pro docílení decouplingu a stabilizaci veřejného rozhraní na všech úrovních.

Struktura modulitu

Struktura modulitu

architekturabackend

Existuje několik způsobů, jak vytvořit modulit, a jeden z nich si dnes ukážeme. Ty důležité části, na které se dnes zaměříme, jsou: aplikační vrstva, business vrstva, fasády a repositáře, event bus/broker, CQ router a utilities.

Pochopení rolí a rozdělení těchto částí je základem pro napsání kódu, který neskončí jako "big ball of mud".

Cesta modulitu

Cesta modulitu

architektura

Monolitický styl má špatnou reputaci, nicméně je vhodnou volbou pro menší aplikace. Problémem není nutně monolit, ale spíš způsob jeho implementace.

Proč zvolit monolit namísto distribuované architektury (např. microservices)? Networking mezi jednotlivými komponentami představuje novou sadu problémů. Existují stejně benefity jako nevýhody.

Modulární monolit – modulit je vhodná volba, jak začít psát aplikaci.

Hodnoty, cíle a loajalita

Hodnoty, cíle a loajalita

leadershiporganizace

„Měli byste být loajální k firmě, sdílet její cíle a přijmout její hodnoty.“ K tomu ale nedojde. Nechápejte mě špatně, neříkám „To neudělám“, říkám, že to se nestane, nemůže se to stát, není to možné.

Lidé nejsou loajální k firmě, jsou loajální k lidem ve firmě díky kultuře, která je těmito lidmi vytvořena.

Příliš mnoho bludů

Příliš mnoho bludů

leadershiparchitektura

Někteří lidé si myslí, že dependency injection by mělo být použito všude a je nejnovější technologií. Podobně někteří lidé si myslí, že layered architecture vyřeší všechno, a další si myslí to samé o microservices.

Někteří lidé si myslí, že serverless je vhodné vždy, jiní, že vše by mělo být napsané v Rustu na backendu a Vue3 na frontendu.

Někteří lidé si myslí, že stačí na jednoho člověka nalepit Product Ownera, na jiného Scrum Mastera, poslat je na 2denní certifikační kurz, mít standupy, reviews, retrospektivy, používat Jiru a máte agilní tým, který praktikuje Scrum.

Toto vše má jeden společný atribut: nepochopení hodnot a principů.

Hodnoty

Hodnoty

leadership

Proč děláte to, co děláte? Co vás motivuje k tomu, jít do práce? Podle čeho rozhodujete? Čeho chcete pracovně dosáhnout?

tl;dr – nejsou to peníze.

Pevně věřím, že existují hodnoty, které jsou důležitější než peníze. Hodnoty, které vytvářejí lepší, udržitelnější business model a zároveň generují peníze. Těmi hodnotami jsou: zákazník, tým a kvalita; a jdou ruku v ruce.

Používáme cookies a podobné technologie, jako je Google Analytics, pro sběr analytických dat. To nám pomáhá pochopit, jak uživatelé používají naše stránky.

Více info

Stránky používají Google Analytics a analytické služby poskytované společností Google. Google Analytics používá cookies, aby nám pomohla analyzovat, jak uživatelé používají naše stránky. Informace generované cookies, které se týkají vašeho používání stránek (včetně vaší IP adresy), budou přeneseny a uloženy u společnosti Google. Používáme tato data pro vytváření reportů o aktivitě a k poskytování dalších služeb, které se týkají těchto stránek.

Analytická data nám pomáhají vylepšovat naše služby. Nepoužíváme je k marketingovým a reklamním účelům. Tato data nepředáváme ani neprodáváme dál.