Ah... Andrea! On April 29, 2021 4:19:41 PM UTC, Andrea Trentini <andrea.trentini@unimi.it> wrote:
beh, concordo che IN CERTI CASI possa valere la pena riscrivere cose esistenti: - se sono fatte male - se sono mal documentate - se sono poco supportate da una base utenti/sviluppatori (*) - se non sono licenziate correttamente (i.e. proprietarie) - se non ci sono alternative...
Se solo le cose fossero così semplici! :-) https://security.googleblog.com/2021/03/a-spectre-proof-of-concept-for-spect...
ma in generale vale il pattern "do not reinvent the wheel... badly"
Buona norma, se la ruota che ti serve è disponibile sul mercato. Se no, o ti adatti a ciò che c'è (NIH syndrome) o crei ciò che ti serve. Altrimenti avremmo ruote da carro sui Boing 747 Max.
e poi in generale chi sono io per sindacare (al punto da dire che va riscritto) che so un gcc, un git, un kernel di linux, un server web (apache/nginx) ... pur ritenendomi un decente sviluppatore (pur se non a tempo pieno)
Ma che splendida domanda! :-D La risposta è semplice: il fatto che tu non sia in condizione di "sindacare un GCC o un Linux" è una prova evidente che vadano riscritti. Non avresti alcuna remora, infatti, a sindacare 9front (che non è un kernel, ma un sistema operativo distribuito completo), TinyCC o Netsurf. Dunque chi sei tu per sindacare gli automatismi che ti circondano? Un essere umano capace di farlo. Poi questo diritto di libertà puoi scegliere di non esercitarlo. Non fanno così anche tutti coloro che rinunciano ad usare software libero? Giacomo
(*) forse vi riferivate a qualche pezzo di software trovato a caso su github/gitlab scritto da un singolo (vs. una community solida e numerosa)
No, io facevo riferimento a software open source di Facebook con una vastissima comunità e che come tale risolve problemi di Facebook e di una vastissima comunità. https://it.m.wikipedia.org/wiki/React_(web_framework) Risolve (ma in questo caso sarebbe meglio dire "affronta") problemi molto comuni, come ogni (non-)framework che punti a massimizzare la propria market share. L'errore di molti (troppi) responsabili IT (un po' paraculo) è assumere che "lo usano tutti!" coincida con "risolve tutti i problemi". Poi però tocca ai poveri programmatori/muratori "non laureati" come me risolvere i problemi che queste decisioni causano per anni. Been there, done that.