Loading...

Can You Start Your Application?

6. Juli 2023
2 Minuten Lesezeit
Beitrag teilen:

Hi,

Viele Firmen nutzen moderne Technologien. Kubernetes, RabbitMQ, AWS, Docker, ArgoCD… und so weiter. die Auswahl ist riesig. Der CNCF Landscape ist in den meisten Unternehmen angekommen.

Doch was mich wundert: Die Software ist kompliziert.

So kompliziert, dass sie nicht “mal eben” lokal gestartet werden kann.

Das hätte ich nicht erwartet.

In der Auflistung ist bewusst Docker dabei. Denn die meisten Unternehmen mit denen ich sprach nutzt Docker. Viele davon in production.

Und genau deswegen bin ich so irritiert. Wieso müssen die Anwendungen so komplex sein, dass man sie nicht jederzeit lokal starten kann?

Selbst wenn das Problem, dass die Software löst, inhärent so komplex ist, dass sie viele Komponenten benötigt - mit Docker ist auch das vollständig simulierbar. Lokal.

Es ist so wichtig schnell Feedback zu bekommen.

Deswegen schreiben wir mehr Unit- als Integrationtests.

Deswegen sorgen wir dafür, dass unsere Anwendungen schnell starten können.

Deswegen haben wir konstant unser Log im Blick, wenn wir die Anwendung laufen lassen.

Und deswegen ist es so wichtig, dass wir immer und jederzeit unsere Anwendung Ende-zu-Ende auf unserem Rechner - lokal - starten können.

Wenn du eine Änderung im Code nicht sofort, unter möglichst realen Umständen, verifizieren kannst. Wenn du deinen Code erst pushen, bauen und deployen musst. Wenn du erst dein ELK oder Loki aufmachen musst.

Dann hast du kein sofortiges Feedback. Jedes Testen wird zur Qual. Es ist immer anstrengend. Die Folge: Du testest weniger. Du probierst weniger aus. Und du traust dich seltener wie ein Boy Scout aufzuräumen.

Sorge immer dafür, dass du lokal testen kannst. Sorge dafür, dass es schnell geht. Du wirst sehr viel effizienter sein.

Rule the Backend,

~ Marcus

Top