Prinzipien der Softwareentwicklung: Was uns die Programmierung über das Leben lehrt
Entwickler*innen, egal ob im Bereich Web oder Software, sind nicht immer nur Nerds, sondern haben es manchmal auch raus, wie sie mehr Effizienz in ihr Privatleben bringen, beispielsweise wenn sie ihr Liebesleben vorprogrammieren. Doch ganz abgesehen von technischen Maßnahmen können einfache Denkweisen auch Menschen in anderen Branchen und Berufen helfen und sogar das Leben vereinfachen.
Einsen und Nullen für mehr Klarheit
Es gibt genau 10 Arten von Menschen: Diejenigen, die das Binärsystem verstehen und diejenigen, die es nicht verstehen.
In der Informationstechnik basiert alles auf dem Maschinencode, dem sogenannten Binärsystem: Nullen und Einsen sind die Grundlage für jeden Computer und jede Software. Eine 1 bedeutet dabei, dass eine Spannung anliegt, eine 0 bedeutet keine Spannung. Aus einer Kombination dieser beiden Ziffern lassen sich anhand eines Codes alle Zahlen (z. B. 10 =2) und jeder Text, sogar Bilder und andere Medien abbilden.
Das KISS-Prinzip
Was bedeutet dies nun im übertragenen Sinne? Wenn es immer nur zwei Möglichkeiten gibt, so gibt es nur Ja oder Nein, nur Schwarz oder Weiß. Oft verkomplizieren wir Sachverhalte derart, dass wir uns selbst in Grauzonen verstricken oder Kompromisslösungen finden, statt klare Aussagen und eindeutige Entscheidungen zu treffen. Hier greift noch ein anderes Programmierungsprinzip: KISS, die Abkürzung für Keep it simple, stupid, propagiert eine Fokussierung auf das Wesentliche. Dies lässt sich vor allem auf Kommunikation anwenden: Unklare Kommunikation ist eine der häufigsten Ursachen für Probleme und Konflikte am Arbeitsplatz und in der Familie. Hier wie ein*e Programmierer*in – oder vielmehr wie ein Computer – zu denken, der nur Einsen und Nullen versteht, kann vielen Missverständnissen vorbeugen und spart zudem Zeit und Nerven.
Gespräche sind wie Software. Am besten laufen sie mit cleanem Code.
Teams – fleischgewordene Tech Stacks
Wer nicht gerade in einem Entwicklungsteam einer Webagentur arbeitet – oder selbst dann – weiß, dass Programmieren eine einsame Tätigkeit sein kann. Doch wer programmiert, weiß auch, dass keine gute Softwarelösung mit nur einer Technologie entstehen kann. Dazu braucht es eine Programmiersprache, ein Framework, eine Datenbank, APIs, Entwicklungsumgebungen, Server und vieles mehr. Das sogenannte Tech Stack vereint die leistungsfähigsten Technologien und Systeme miteinander und kann je nach Anwendungsfall variieren.
Wie in einem Tech Stack ein Zahnrad ins andere greift, funktionieren auch Teams: Ein erfolgreiches Unternehmen stellt für seine unterschiedlichen Abteilungen Mitarbeiter*innen ein, die verschiedenste Fähigkeiten und Talente mitbringen und ihren Teil zum Gelingen von Projekten beitragen. In Wenn-Dann-Beziehungen, dem logischen Grundprinzip der Programmierung, bedingt eine Tat die andere.
Unternehmen sind wie Tech Stacks. Leistungsstarke Komponenten, die gut zusammenarbeiten, bilden die Grundlage zum Erfolg.
Im Umkehrschluss heißt dies: Große Ziele können nur selten im Alleingang erreicht werden. Wer Aufgaben an andere abgibt, schafft Möglichkeiten für Wachstum – sowohl horizontal, wenn es um das Zusammenwachsen von Teammitgliedern geht, als auch vertikal, wenn es um das gemeinsame Erreichen von Zielen geht.