Kolumne – Zwischen 0 und 1
22.03.2019, 10:10 Uhr
Wir sind alle Informatiker
Software könnte in Zukunft fundamental anders programmiert werden. Anwender diktieren smarten Maschinen ihre Wünsche und diese erstellen den Code. Dafür müssen wir die nächste Generation in drei bestimmten Disziplinen besser ausbilden, als dies heute der Fall ist.
Wir müssen das Entwickeln digitaler Arbeitswerkzeuge allen zugänglich machen. Das Ziel für das nächste Jahrzehnt heisst: Software kreieren für alle! Um dieses Ziel zu erreichen, müssen einerseits die Designwerkzeuge wesentlich einfacher werden und andererseits müssen wir dringend mehr Computational Thinking in der Aus- und Weiterbildung vermitteln.
Seit Anbeginn des Computerzeitalters arbeiten Forscher und Entwickler daran, die Abstraktion bei der Code-Entwicklung zu erhöhen. Die ersten grossen Schritte wurden bei der System-Software, bei Middleware und bei Datenbanken erzielt. Das half den Profis. Die Vision war und ist aber, Fachexperten und Managern ohne IT-Kenntnisse das Programmieren zu ermöglichen. Low-Code- und No-Code-Plattformen kommen dieser Vision in letzter Zeit erstaunlich nahe, indem sie auf visuelles und konfigurierendes Programmieren setzen. Ihre Nutzung muss man aber aufwendig erlernen und sie verlangt «Computational Thinking». Wer nicht imstande ist, programmiernahe Lösungen konzeptionell zu entwerfen, wird sich auch schwertun, sie durch Drag and Drop zusammenzuschustern. Und selbst im Fall, dass es wider Erwarten gelingt, ist es für andere kaum möglich, solcherart abstraktionsfrei konstruierte Programme weiterzuentwickeln.
“Das Ziel für das nächste Jahrzehnt heisst: Software kreieren für alle!„
Reinhard Riedl
Ein verwandtes Entwicklungsziel der Informatik ist es, das Programmieren den Maschinen zu übergeben: Fachanwender und Manager sollen künftig die gewünschten Eigenschaften der Software beschreiben und lernfähige Maschinen daraus das entsprechende Programm konstruieren. Dabei wird bei den menschlichen Auftraggebern lediglich die Fähigkeit vorausgesetzt, ihre Wünsche adäquat zu formulieren. Solange es darum geht, Standardlösungen zu konfigurieren, ist das auch machbar. Denn Rückfragen der Maschine können dabei helfen, die Wunschbeschreibungen zu präzisieren. Vorerst kaum vorstellbar bleibt dieses Szenario nur in Fällen, für die Standardimplementierungen fehlen. Dafür müsste die Maschine nämlich aus umgangssprachlichen Beschreibungen eine brauchbare Software-Lösung ohne Vorbild ableiten.
Trotzdem können wir davon ausgehen, dass der technische Fortschritt in naher Zukunft beides ermöglichen wird: für bekannte Aufgaben eine durch Umgangssprache gesteuerte automatisierte Software-Entwicklung und für wirklich neue Aufgaben das Entwickeln innovativer Software-Lösungen durch Fachexperten und Manager mittels einfach zu nutzender No-Code-Plattformen. Wenn dies technisch erreicht ist, wird die nächste grosse Frage lauten: Verfügen Fachexperten und Manager über genügend logische Fähigkeiten, um den technischen Fortschritt zu nutzen? Besitzen sie Kompetenzen im präzisen Beschreiben von Anforderungen und im Entwickeln wiederholbarer algorithmischer Problemlösungen?
Dringend notwendig ist darum, die Ausbildung in drei Bereichen radikal zu verbessern: Sprachkompetenzen, Mathematik und Computational Thinking! Ob wir in der Schweiz eine autonome Zukunft haben, hängt zwar stark von Trump, China, vom Rahmenvertrag, Migrationspakt und der Klimaerwärmung ab. Noch viel stärker wird es aber darauf ankommen, ob Lehre und Ausbildung die nächsten Generationen darauf vorbereitet, den technischen Fortschritt zu nutzen. Mathematisch-logisches Denken ist dabei der Schlüssel zum Erfolg!
Zum Autor
Reinhard Riedl
hat in reiner Mathematik promoviert und zu Fragen der IT, Ökonomie und Rechtswissenschaft geforscht. Riedl leitet das transdisziplinäre Forschungszentrum «Digital Society» an der Berner Fachhochschule. Seit 2015 ist Riedl Präsident der Internationalen Gesellschaft für Neue Musik Bern.