Tools & Umgebung
Virtuelle Python-Umgebungen, pip und CMake sorgen für reproduzierbare Abhängigkeiten. Debugger und Unit-Tests sind effektive Tools, um Fehler nicht nur zu finden, sondern auch ihre Ursachen gezielt einzugrenzen.
Die Wiederverwendung geeigneter, funktionierender Module aus der bestehenden Codebase ist ein sinnvoller Ansatz, um Arbeitswege zu verkürzen. Bei der Entwicklung neuer Module ist es mir ein persönliches Anliegen, den Gedanken der Wiederverwertung von Beginn an zu berücksichtigen.
Markdown, README-Dateien und bei Bedarf Doxygen machen Entscheidungen und Ergebnisse auch für andere nachvollziehbar. Für die Planung und den Austausch wende ich je nach Projekt unterschiedliche Werkzeuge an, darunter Teams oder Discord sowie Figma, Notion und Miro. Entscheidend für mich ist, dass sich das Werkzeug an Team und Aufgabe anpasst.
Ich bin der Meinung, dass die Qualität von Software nicht ausschließlich von der Komplexität des Codes abhängig ist. Vielmehr bilden Entwicklungsumgebung, Versionsverwaltung und die Dokumentation zusammen einen Arbeitsrahmen welcher qualitativ hochwertige Arbeit möglich macht.
Meine Werkzeuge wähle ich nach den Kriterien Effektivität, Einfachheit und langfristiger Tragfähigkeit aus. Nicht die Anzahl ist von entscheidender Bedeutung, sondern die Verlässlichkeit der Unterstützung des Lösungswegs.
Eine konsistente Toolchain reduziert Reibung zwischen Analyse, Implementierung und Prüfung. Lokale Setups, Builds und Ergebnisse bleiben dadurch auch für andere nachvollziehbar und lassen sich zuverlässig wiederholen.
Wo möglich, bleiben Abläufe über Skripte und klar benannte Projektbefehle ausführbar. Das verringert den Wechselaufwand zwischen Entwicklungsumgebungen und macht Projekte auch nach längeren Pausen schnell wieder zugänglich.
-
VS Code
Entwicklung, Debugging
und Tests -
Git
Versionen, Branches
und Zusammenarbeit -
macOS & Windows
Produktiv arbeiten
und plattformnah prüfen -
Codex & ChatGPT
Recherche, Prototypen
und Reflexion -
Python
Backend, Skripte
und Automation -
SQL & PostgreSQL
Datenmodelle, Abfragen
und Persistenz -
APIs & ETL
Schnittstellen, Austausch
und Transformation -
C & C++
Systemnahe Entwicklung
und Hardwarebezug
-
Fusion 360
CAD und räumliche
Prototypen -
Figma
UI, Abläufe und
frühe Varianten