Unsere Coding-Philosophie

Warum wir so unterrichten, wie wir unterrichten.

Programmierphilosophie

Unsere Herangehens­weise bei der Um­schulung für Fach­informatiker für Anwendungs­entwicklung in Sachen Programmie­rung ist sehr speziell und ambitioniert. In diesem Beitrag stellen wir dar, auf welchen Überlegungen unsere Herangehens­weise beruht.

Unser wichtigstes Ziel ist, dass die Fach­informatiker für Anwendungs­entwicklung, die wir ausbilden, im Anschluss produktiv als Entwickler tätig werden können bzw. hierfür optimal aufgestellt sind. Und aus diesem Ziel haben wir unsere Philosophie abgeleitet.

Analytische Denkweise

Das erste Unterziel ist, dass unsere Absolventen wissen, wie man eine konkrete Problem­stellung mit Algorithmen lösen kann. Das ist eine Programmier­sprachen-unabhängige Qualität. Im Kleinen bedeutet das, dass man einen Algorithmus konstruieren kann - ein Stück Programm­logik, das ein Problem löst. Im Großen heißt das, dass man weiß, welche Komponenten wie zusammen wirken müssen, um eine funktionierende Anwendung zu bauen.

Beherrschung von Programmiersprachen

Wir standen bei der Konzeptionie­rung dieser Um­schulung vor einer Wahl:

  • Entweder wir lassen unsere Um­schüler in 5 verschiedenen Programmiersprachen jeweils die Grundlagen lernen oder
  • wir lernen 1-2 Programmiersprachen wirklich kennen, im Detail, absolut auf fortgeschrittenen Niveau und vermitteln den Teil­nehmern darüber hinaus die Kompetenz, sich neue Programmiersprachen informiert zu erschließen. Welche Sprachen wir dafür nutzen werden wird an anderer Stelle ausführlich besprochen.

Professionelle Herangehensweise

Es ist eine Sache, privat eine App zu schreiben. Es ist eine andere Sache, eine professionelle Arbeitsweise zu haben. Dazu gehört, dass man nicht nur so schreibt, wie es einem gerade in den Sinn kommt, sondern dass man so schreibt, dass andere das eigene Denken nachvollziehen können. Themen wie Clean Code, Clean Architecture, Prozessbeschreibungen, Test Driven Design und Naming conventions spielen hier eine wichtige Rolle.

Teamfähigkeit

Anwendungs­entwicklung ist in der Regel ein Team-Unterfangen. Einzel­kämpfer sind sehr limitiert in dem, was sie erreichen können. Gerade Anwendungs­entwicklung ist der Bereich, in dem sehr offensiv mit verschiedenen Arten der Team­organisation experimentiert wird, eben weil es so unglaublich wichtig ist, das Zusammen­spiel der beteiligten Personen zu optimieren. Aus diesem Grund ist ein Großteil der Praxis­zeit Gruppen­projekten gewidmet, in denen jeweils dann moderne Organisations­methoden angewendet werden (zum Beispiel SCRUM, Agile).

Projekterfahrung

Das Lernen geschieht bei uns nicht nur über theoretischen Unterricht. Vielmehr sind unsere Praxis­übungen ein integraler Bestandteil der Um­schulung. Über weite Strecken der Um­schulung werden Projekte absolviert, die wiederum eng auf den Unterrichts­plan abgestimmt sind. Eigene Erfahrungen führen zu besser behaltenem Lehr­stoff.