( XMI | 2024. 09. 09., h – 19:31 )

Az a gond, hogy itt a programnyelvet sokan (Te is) az alapján ítélik meg, hogy milyen fanboy- / ellenfanboy-kultusz van körülötte.

Az egész azzal kezdődött, hogy minden nyomorult biztonsági sebezhetőség alá elkezdték egyesek bekommentelni, hogy "újra kéne írni- / miért nincs még újraírva- / látjátok ezért kell újraírni Rustban". Állítom, hogy döntő többségük olyan ember volt, aki azelőtt egy hello world példát nem írt meg rustban.

Nyilván erre válaszként beindult a szatirikus vicc csinálás és az "újra kéne írni Rustban" már szándékosan ironikus poénforrás volt. Olyan emberektől, akik szintén egy sor kódot nem írtak rustban.

Én pl nem mondom, hogy mindent újra kell benne írni. Sőt, userspace-ben valószínűleg jobban jársz egy managed-memóriás nyelvvel. Ott ugye nem kell követned, hogy ki a tulajdonos, nem kell agytorzitó módon gondolkodni a borrow-checkhez.

Ugyanakkor (perverz érdeklődésből) el szoktam olvasni az egyes biztonsági sebezhetőségek részletes leírását. Azt gondolom van egy bizonyos képem arról, hogy sokszor milyen komplexitás van mögötte és mennyire nyakatekert corner-case-eket kell megtalálni és kihasználni. Pl a webp-ben volt pár hónapja olyan sebezhetőség, ami a huffman kódolás lehetséges hibáinak egy elméletileg is egészen különleges speciális esetét használta ki, hogy túlírhassa az elméletileg lehetséges legnagyobb méretű adatszerkezetre helyesen lefoglalt memóriát. Aki (whitehat) megtalálta ezt a hibát, egyáltalán azért állt neki reprodukálni, mert tudta, hogy élesben használják az exploitot rá, tehát _valahogy_ lehetségesnek kell lennie, hiába tűnik algoritmuselméletileg lehetetlennek. Ezek messze nem strcpy() vs. strncpy() bonyolultságú problémák. És ezt nagyon nem fogja meg semmi valgrind meg hasonló kód analizáló tool. Ennyit arról, hogy C-ben meg kell tanulni "helyesen kódolni".

Túl van már a szakma azon, hogy az igazán jó programozónak nem kell semmi védőháló.