Softwareentwicklung – nur noch Handwerk, keine Kunst

20.09.2007 15:45

Als ich mit Softwareentwicklung angefangen habe, gab es keine IDE oder Compiler. Meine ersten Programme schrieb ich in Basic und danach mit Basic und Maschienencode (toll. Zahlen auswendig lernen).

Irgendwann gab es dann C-Compiler und Programmieren war spannend und abenteuerlich. Mit C++ wurde es dann das erste mal kreativ und Code wurde zur Kunst. Ein Programm konnte man auf verschiedenen Wegen realisieren. Einige meiner Programme waren recht plump und andere waren unglaublich elegant (zumindest erschien es mir damals so).

Seit dieser Zeit ist Programmieren für mich ein Ausdruck von unglaublicher Kreativität. Dabei ging es manchmal um Geschwindigkeit, manchmal darum, wie man mit wenig Code sehr viel erreichen kann, manchmal auch darum, etwas anders als erwartet zu benutzen.

Reale Probleme verlangen oft nach bodenständigen Lösungen. Im Laufe des Lebens wird man immer wieder dazu gezwungen, Programme zu schreiben die Probleme lösen, die nicht besonders spannend oder elegant sind (weil die Probleme zum Teil ja schon Designfehler haben).

Immer wieder wird man mit grundlegenden Anforderungen konfrontiert, die man dann das erste mal selbst lösen muss, obwohl eigentlich alle anderen genau die gleiche Anforderung haben müssten. Besonders durch OpenSource-Projekte wurden viele grundlegenden Probleme gelöst und man findet heut zu fast jedem Problem eine passende Lösung, die man nur noch einbauen muss.

Die letzte Stufe der Entwicklung wird so langsam eingeläutet. Denn nach dem nun alle Bestandteile einer klassischen Businessanwendung vorhanden sind, beschränkt sich die Softwareentwicklung auf das Zusammenstecken und Verkleben. Das ganze nennt man „Business On Demand“ und wird zunehmend als Softwareplattform angeboten. Jetzt ist auch einem vollkommen unkreativer Geist in der Lage, eine klassische Anwendung zusammenzubauen. Das kann man vermutlich sogar bis zur Fließbandarbeit weitertreiben.

Auf der einen Seite ist es ja durchaus beruhigend, wenn wir die Herausforderungen der letzten Jahre endlich gemeistert haben, auf der anderen Seite müsste man sich gerade jetzt damit beschäftigen, über das bestehende hinauszuschauen, um eine der letzten großen Herausforderungen im Bereich Softwareentwicklung zu meistern.

Die letzte große Herausforderung – Was ist das?

Zumindest an dieser Stelle ist die Antwort ungewohnt einfach. Doch besser geht es in Frageform:

  • Wieso muss ich mich daran gewöhnen, wie der PC arbeitet?
  • Wieso funktioniert das Programm nicht, wie ich es erwarten würde?
  • Warum brauch ich unterschiedliche Geräte für unterschiedliche Aufgaben?
  • Warum kann ich meine Daten nicht auf all meinen Geräten bearbeiten?

Softwareentwickler sind keine Nutzer. Aber Softwareentwickler nehmen sich selbst oft als Maßstab. Dass führt zu Produkten, die vermutlich nur „ein“ (im schlimmsten Fall „der“) Softwareentwickler bedienen kann.

Die Möglichkeit, dass der Nutzer die Funktionen, die er braucht beliebig zusammenstellen und vernetzen kann, wird zu viel interessanteren Anwendungen führen, als man sich das heute vielleicht vorstellen mag.

Aber auf alle Fälle sollte es dazu führen, dass das Geräte genau das machen, was ich möchte. Markenzeichen: Funktioniert wie erwartet.


Empfehlungen: handy taschen | Good Job - Bad Job