Oczywiście niektórzy programiści chętnie pokazują, jak są sprytni, tworząc skandalicznie skomplikowany kod, którego nikt nie rozumie. Inni programiści strzelają na tak wysokim poziomie, że skomplikowanie rozwiązań jest naturalną ewolucją.
Jednym z najgorszych kodów, jakie kiedykolwiek widziałem, była metoda zawierająca ponad 2000 linii kodu. Bez wątpienia ten kod był złożony, ale także bardzo słaby.
Myślę, że dobry programista unika zbyt skomplikowanego kodu. Obejmuje to unikanie pokusy, aby zmusić wzór projektowy do dopasowania do rozwiązania, które tak naprawdę go nie wymaga. Obejmuje to także unikanie obiektów Boga, magicznych przycisków, przedwczesnej optymalizacji, przedwczesnego uogólnienia i innych anty-wzorów.
Ciągle refaktoryzuję i szukam możliwości uproszczenia moich rozwiązań, ponieważ wzrost złożoności jest sprawą organiczną. Podobnie jak wiele innych rzeczy organicznych, musi być przycinany i przycinany, jeśli chcemy, aby nadal był użyteczny. Nienawidzę konieczności interakcji z nadmiernie skomplikowanymi rozwiązaniami, ponieważ wraz ze wzrostem złożoności rośnie prawdopodobieństwo złamania kodu.
Myślę, że czytelność jest najważniejszym elementem konserwacji kodu, a zbyt skomplikowane rozwiązania prawie zawsze zmniejszają czytelność i zwiększają koszty utrzymania.