Endlich mal ein Text der sehr gut das wiedergibt, wie bei mir das Programmieren funktioniert. Programmieren ist weitaus mehr ein ästhetischer und kreativer Prozess als ein rein technischer - viele Aspekte der Programmierung haben bei mir mehr mit künstlerischer Tätigkeit als mit technischer Umsetzung zu tun. Je tiefer ich in ein Programm einsteige und in den "Hackmode" gehe, desto weiter bin ich von der klassischen Lehre der Softwarentwicklung entfernt - da ist nix mit Design und Analyse, da ist aber sehr viel mit Intuition am Werke.
Wer die Programmierung auf den rein technischen Aspekt reduziert und meint man könne vorher alles planen und analysieren, am besten bevor man sich überhaupt an den Rechner setzt, der schliesst einen wesentlichen Anteil der Programmierung aus: nämlich den Dialog mit der Maschine, mit dem Problem.
Programmiersprachen sind ein Kommunikationsmittel, also sollten wir lernen mit diesen Sprachen auch zu kommunizieren. Nicht Radebrechen und Babelfish-Übersetzen!
Bei Tao of the Machine fand ich den den Originalartikel.