No a pak jsou projekty, které Go opustily ve prospěch C. Dokonce v kontejnerovém projektu. Třeba:
https://github.com/containers/crun#performance
Rust by byl fajn, ale není zatím dost vývojářů a zkušeností.
A další perla, pojďme to hodit na projektové řízení. Nebylo by lepší, kdyby se těm chybám předcházelo a ne řešit až na ně někdo přijde? Navíc tohle už řeší jenom následky, když už tam ty chyby jsou.
Jak tohle zajistíte třeba v Blink, Linux atp.? Tohle prostě není vůbec možné, od určité velikosti se tam ty chyby prostě udělají ať na tom bude dělat kolik chce geniálních programátorů.
Což, pokud to má být opravdu garantovaně memory a thread safe, zahrnuje i neustálý kompletní audit všech závislostí při každém update a neustálý audit veškerého dosavadního kódu aplikace, jestli je safe i v novém kontextu.
Reálně se ten tvůj post dá přeložit jako "nikdo by neměl programovat", protože ne, tohle u čehokoliv většího dělat nejde.
4. 11. 2023, 09:57 editováno autorem komentáře
Motáš se v kruhu. To Tvoje "ono by stačilo" se moc dobře nedá škálovat až do nejnižších levelů a zvlášť ne, když jazyk je takový lepší assembler. A při každé změně či opravě by se to muselo znovu a znovu updatovat, což prakticky není v lidských silách. Natož aby to někdo byl ochotný a schopný ověřovat (myslím manažera, ne kodéra).
Doufám, že vy tedy neprogramujete.
Proč zrovna C? Co třeba: „Kdo nedokáže napsat bezpečný kód ve strojovém kódu, opravdu by neměl programovat.“
Ano, je to analogie jako s řízením dopravních prostředků, nejen aut, ale i vlaků, letadel, lodí. Tam se také snažíme eliminovat případy, u kterých se notoricky ukazuje, že lidem nejdou. Proto máme na silnicích semafory, v autech ABS a parkovací automaty, na železnici traťové a vlakové (teda to my nemáme, ale to je jiná písnička) zabezpečovací zařízení. Proto jsou ve velkých letadlech dva piloti, proto je na věži letový dispečer, proto mají letadla spoustu přístrojů a dá se létat i jen podle přístrojů.
Programovat by neměl ten, kdo odmítá používat nástroje, které umožňují psát lepší a bezpečnější kód nebo které umožňují programovat efektivněji.
Kdo napise prasacky kod v C, tomu nepomuze sebelepsi nastroj. Protoze dane individuum je zrejme absolutni nesika a nema zadne vlohy k programovani - a chapani souvislosti, jak to v pocitaci vlastne funguje.
Pro tyhle "opice" existuje javascript, html a electron.. protoze potrebuji neustale zachranovat pred strilenim se do vlastni nohy.
Ne - lepsi nastroje opravdu nejsou resenim problemu, ktery je jinde.
Prasácký a nebezpečný kód jsou ortogonální věci.
Lepší nástroje umožňují s omezenými lidskými schopnostmi řešit věci, které by jinak byly mimo lidské možnosti. A nebo umožňují řešit věci snáze. Vykopat jámu pro dvoupatrové garáže můžete i lopatou, ale udělat to bagrem bude daleko efektivnější. A když jsou mraky až nad zem, pilot svýma očima skrz ně nevidí a nemohl by přistát. Ale použití nástrojů mu umožní vidět skrz mraky a přistát.
Super. A teď chci vidět toho dokonalého C/C++ programátora který dovede udržet v hlavě celý paměťový model své aplikace a všech knihoven co používá.
Sorry. Kód od C++ programátora co ví že se v tom psát bezpečně nedá respektuju. Kód někoho kdo sebejistě tvrdí že to jde dělat bezchybně... Nope. Někdo kdo je takhle delusional tam naseká chyb mnohem víc, protože reálně, neví o čem mluví.
[RDa]
Myslim, ze jeste porad hodne z tech lidi, kteri maji vytky proti C/C++ napsat bezpecny kod C/C++ dovedou. Ale presto nechteji. Z nejruznejsich duvodu. Prijde jim to neohrabane, zdlouhave, najivne veri tomu, ze stroj muze jejich (nebo druhych) opominuti ve vsech situacich odchytit, napravit, a nebo dokonce nahradit lidsky intelekt a dumysl na nizsich urovnich. Nebo proste jen, proto ze v dnesni uspechane dobe tlaci terminy a oni nechteji drahoceny cas venovat na hlidani si inicializaci/alokace/dealokace pameti (a pod). Dovedu to pochopit.
Co ale nedovedu pochopit, je, ze jsme ochotni dopustit, aby se to zmenilo v nastroje prachsproste lenosti a zhnilosti pohnout mozkovymi zavity a zpohodlnele lidstvo vrsi na sebe ne sebe velmi slozite binarni kosticky o nich jednak mnohdy dnes ani nevi jak funguji, jednak je jim to uplne jedno, stejne tak jaky to ma v globalu dopad na uzivatele a jejich systemy jako celek (za vsechno se plati). Hlavne ze mam produkt, rychle, levne a pokud mozno s minimem namahy. Stavime nase pohodli na vrchol piramidy nad znalosti a lidskou praci a zlenivelost se stava normou. Myslim, ze vseak realne hrozi, ze se ty vyse zminovane kosticky na nas jednou plnou vahou zhrouti a hodne lidi bude nestastnych. Asi bude pozde premyslet jak to napravit a litovat, ze jsme to nechali zajit tak daleko...
Ja s tebou do urcite miry souhlasim a pokud splnuji to co jsi psal, chapu i nektere argumenty druhe strany. Jen posledni dobou se desim toho jak moc se naduzivaji... ne zneuzivaji technologie i tam kde jich neni vubec potreba a staci se jen na chvili zastavit a trochu zmyslet....
Da se to rict i jednoduseji - cca pred rokem jsem potkal jedno ze svych Linuxovych guruu. Dali jsme si kafe a ja mu polozil celkem osobni otazku "Proc ty se svym talentem a vzdelanim uz nedelas v IT, vzdyt...?". Ani me nenechal domluvit: "S IT to jde do cim dal tim rychleji do p****e a ja se na tom nechci podilet." Mlcel jsem - na to jsem nemel co rict....
5. 11. 2023, 13:16 editováno autorem komentáře