la linearità tendi a raggiungerla con un po' di esperienza, quando capisci bene come organizzare le cose, di solito quando piangi per giorni perché non capisci le intersezioni del codice e ti riprometti (seguendo la tua promessa) di scrivere quello che arriva meglio.
Quando scrivo (o faccio le cose) di solito se mi trovo "incartata" già a livello teorico è segno che sto andando nella direzione sbagliata

Il resto bon, senso critico SEMPRE e alla fine non c'è UNA soluzione assoluta, ma una soluzione che va bene al tuo caso