Ovviamente, alcuni programmatori sono desiderosi di mostrare quanto sono intelligenti creando un codice scandalosamente complicato che nessuno può capire. Altri programmatori stanno sparando a un livello così alto, che la complicazione nelle soluzioni è un'evoluzione naturale.
Alcuni dei peggiori codici che abbia mai visto erano un metodo che conteneva oltre 2000 righe di codice. Senza dubbio questo codice era complesso, ma era anche molto povero.
Penso che un buon programmatore eviti un codice eccessivamente complicato. Questo include evitare la tentazione di forzare un modello di progettazione per adattarsi a una soluzione che non lo richiede realmente. Include anche evitare oggetti di Dio, pulsanti magici, ottimizzazione prematura, generalizzazione prematura e altri anti-pattern.
Riattivo costantemente e cerco opportunità per semplificare le mie soluzioni perché la crescita della complessità è una cosa organica. Come molte altre cose organiche, deve essere tagliato e potato se vogliamo che continui ad essere utilizzabile. Odio dover interagire con soluzioni eccessivamente complicate perché con l'aumento della complessità aumenta la possibilità di rompere il codice.
Penso che la leggibilità sia l'elemento più importante della manutenzione del codice, e soluzioni eccessivamente complicate riducono quasi sempre la leggibilità e aumentano i costi di manutenzione.