Ten, kdo to po nich chce.
Ale on to po nich nikdo nechce. Pro úředníka je jednodušší přidat do zadávací dokumentace další devítku než něco vysvětlovat občanům. A pro politika nakonec taky. Měli by to chtít občané – ale ti se přece nenechají někým poučovat, sami ví všechno nejlíp.
Politiku sem netahejme.
Jenže když píšeš o veřejných institucích, ty politika ovlivňuje zásadně.
Můžu zrušit 80% všech úřadů, optimalizovat počet lidí na těch 20% zbývajících a dát jim větší plat. Celkově se velmi výrazně ušetřilo, ti lidé mají lepší peníze a občané lepší služby.
Nemůžeš, protože nevíš kterých 80 % můžeš zrušit a jak služby zlepšit. Musíš nejprve investovat do lepších služeb a kvalifikovanějších lidí, a ti pak teprve mohou řešit, co a jak zefektivnit.
Snad každý chápe, že firma musí nejprve investovat, aby díky té investici mohla něco dělat lépe. Zvláštní je, kolik lidí si myslí, že u státu to půjde bez té investice.
Takže ono mávat s praporem "oni chtěli ušetřit a proto je to rozbité" samo o sobě nedává žádnou odpověď na to, proč je to rozbité.
No, vlastně dává. Pokud je dlouhodobě na prvním místě jenom snaha ušetřit, vždycky se to rozbije. Na to není potřeba jiná odpověď. Pokud chceme, aby bylo něco funkční, musí být požadavek na funkčnost na prvním místě.
Tohle vůbec není o penězích.
A o čem to teda je?
Prostě si tým vybere komponenty/jazyky, se kterými všichni umějí pracovat, pro nikoho to nebude překvapení a všichni budou vědět, kde to má limity apod.
Takže ten tým nikdy nepoužije žádnou novou technologii, nikdy neudělá žádnou větší aplikaci, než dělal dříve? To se obávám, že místo něj brzy začne dostávat zakázky jiný tým, který si troufne i na věci, které ještě nedělal.
Ale o to právě jde. Že ten PG to zvládne tak dobře, že zrovna tuhle komponentu vůbec nemusím řešit a po pravdě o ní vlastně ani nevím. A o tohle mi jde nejvíc.
Ano, o to právě jde. Že v praxi se řeší poměr cena/výkon, a ne to, aby bylo vše naprosto ideální a podle příruček. Takže někdo uloží do databáze 300 milionů souborů, protože to v době vzniku bylo nejefektivnější řešení, a někdo má v systemd nastavený Restart, protože je to to nejrychlejší, co se dá s aplikačním serverem udělat, když jeho proces umře. Neplyne z toho ani že tam není žádný monitoring služeb, ani že se ten Restart někdy uplatní v praxi.
Takže pokud v tom "zastaralém" projektu se použije postgresql místo něčeho, tak jako v čem to vadí? Jako v čem? Stejně to čeká na disky.
Třeba v tom, že kdyby se použilo něco jiného, nemusí to na disky čekat. Nebo v tom, že tu aplikaci musíš odstavit, když budeš chtít aktualizovat databázový stroj. Nebo v tom, že se s tím bude těžko řešit distribuovanost po celém světě.
To neznamená, že by nebyla spousta úloh, kde je PostgreSQL skvělá volba. Je. Ale jsou úlohy, kdy jsou lepší řešení než PostgreSQL. A snažit se všechno ohnout do toho, co už znám, znamená, že už se nikdy nenaučím nic nového a buď budu některé úlohy řešit neefektivně nebo nakonec budu řešit jenom takové úlohy, ke kterým se hodí nástroje, které znám.