Hezky, těžko dokážu posoudit, zda pro tak jednoduchý nástroj je takové řešení dostatečně (nebo až příliš moc) komplexní.
Co se mi "líbí" (píšu subjektivní názor) poslední dobou, je nadužívání "technologií" a někdy začínám mít obavu, že většina programátorů jsou obyčejní "skládači" existujících řešení. Takže když na mě někdo vyběhne se seznamem technologií, který má několik desítek řádek, mám z toho pocit, že jde spíš o montovače skříní z Ikea, než programátory (který umí udělat skříně na míru z dodaného dřeva). A pak se něco někde podělá a místo hledání chyb člověk jen bombarduje supporty správců těch technologií. (vlastní zkušenost)
Ale asi je to levnější.
S tím bych neměl problém, kdybys často nestál před rozhodnutím, kdy potřebuješ jednu věc a je těžké najít technologii, která sice dělá tisíce několik věcí, ale tu jednu věc co potřebuješ ne tak jak bys potřeboval. A dostáváš se do situací, kdy vytváříš rovnáky a ohejbáky.
Každý problém je jedinečný. Na ty problémy, které už jsou vyřešené, nic programovat nemusíme
Já mám zkušenost, že pokud je předpřipravené řešení "ne přesně tak, jak bych potřeboval", tak je to často proto, že člověk co psal zadání projevil příliš mnoho nezdravé kreativity a místo co by použil osvědčený design pattern, tak se pokusil vymyslet něco vlastního. Takže problém většinou vyřeší dotaz "A nemohlo by to být náhodou takhle?" následovaný odpovědí "No, vlastně proč ne." (Jedná se vesměs o oblast UI / UX)
8. 7. 2022, 09:23 editováno autorem komentáře
Vynimka je Google
Jojo, to je hodně velká výjimka... Jejich skvělá vlastní řešení mají jako typickou unikátní vlastnost asi nejhorší dokumentaci, jakou jsem kdy viděl. Např. u TensorFlow - když chceš rozjet cokoliv jiného, než demo příklady, tak se neuvěřitelně vytrápíš na nezdokumentovaných chybách, zpětné nekompatibilitě mezi verzemi, zcela chybějící dokumentaci konkrétních částí apod.
A o tom, jak takový vlastní vývoj vypadá na úrovni jejich produktů svědčí např. asi 5 let starý a nerealizovaný požadavek na doplnění elementárního formátování u zadání úkolů v Google Classroom. Nejvtipnější na tom je, že u komentářů k úkolům je možné použít na tučné písmo **, kurzívu // a podtržení __, ale nejde to používat v zadání...
Celý IT svět je postupně celý postavený z nějakých základních kamenů. Jinak bych musel pokaždé implementovat svůj vlastní algoritmus pro odmocninu místo jednoduchého math.sqrt(x).
S větší a větší abstrakcí šetříš (teoreticky) více a více svého času, ale samozřejmě taky postupně ztrácíš detailní kontrolu nad chováním daného kódu. Každý si může zvolit, jaká úroveň abstrakce je pro něho optimální.
Hezké přirovnání.
Jako vyučený truhlář ti mohu erudovaně ubezpečit, že žádný truhlář nebude dělat skříň ze surového dřeva, pokud k tomu nebude mít zatraceně dobrý důvod. Nevyplatí se to a nemá to žádnou výhodu.
Bude používat spárovky, nejlépe už nařezané na normovaný rozměr.
Bude používat rybičky a kolíky koupený v pytlíku. Bude používat lepidlo, co je fakt brutální chemie. O povrchové úpravě ani nemluvě.
Lišty se frézujou už desítky let stejné. Takže talíře mají několik základních profilů. Kování je samozřejmě taky koupený v pytlíku.
Jak říkám, pěkné přirovnání.