On 29/04/2021 23:05, Giacomo Tesio wrote:
Spero davvero che non annoiamo nessuno, ma... :-D
spero anche io ;)
On April 29, 2021 6:31:08 PM UTC, Andrea Trentini <andrea.trentini@unimi.it> wrote:
On 29/04/2021 15:56, Giacomo Tesio wrote:
... Se un software non può essere completamente letto, studiato e compreso in meno di un mese da un singolo essere umano, è "broken beyond repair".
mi pare un po' draconiano come criterio
Così (ap)pare a molti, in effetti.
D'altronde quanto software conosci che lo rispetta?
appunto, proprio perché è un criterio sostanzialmente inapplicabile avrebbe senso ribaltarlo, definendo come "atomo programmativo valutabile" quella parte del sistema comprensibile in un mese (anche meno) da una singola persona
Naturalmente per studiarlo non usiamo una lettura lineare e disponiamo di strumenti e tecniche di navigazione del codice che possono tranquillamente dimezzare il tempo necessario.
strumenti software che andrebbero a loro volta studiati e capiti, in un mese ;)
Ci vuole comunque troppo tempo. Chi se lo può permettere?
applicando questo approccio del "mese per comprendere" alla realtà analogica credo si possa capire la sua inapplicabilità
...
diciamo che accetterei l'affermazione se per "software" si intendesse una "funzione/classe"
Uhm... no.
Se ci vuole un mese a studiare una funzione, quel software va bruciato e vanno sparse le ceneri ai quattro angoli del pianeta.
infatti un mese è troppo per un singolo "atomo programmativo", la variabile tempo è da stabilire oppure vedi sopra (ribaltamento della definizione)
... Una libreria o un framework sviluppata da una comunità a sé stante, dovrebbe essere studiabile completamente in meno di un mese, così come il codice di una applicazione indipendente che utilizza 12 librerie diverse.
Un po' come un teorema può usarne un altro nella propria dimostrazione: sta a te decidere se vuoi andare a rileggere il teorema menzionato, o fidarti.
esatto, io propongo di definire un "atomo programmativo" come l'artefatto (funzione/classe/ecc.) comprensibile in un tempo ragionevole (qualche giorno?)
... Il software è un artefatto umano, non una creazione divina.
sono ateo e sbattezzato ;)
... Come pretendiamo che le bottiglie di latte al supermercato non contengano diossina possiamo pretendere che un software richieda un certo tempo massimo per essere studiato, nell'interesse della salute cibernetica di tutti.
concordo, ma (citando un film che adoro) "you have to remember that a worm[bottiglia di latte]... with very few exceptions... is not a human being[kernel di linux]." -- |_|o|_| Andrea Trentini - http://atrent.it |_|_|o| Dipartimento di Informatica |o|o|o| Università degli Studi di Milano