Logo
Lena Peters
8 Std vor
Viele Einsteiger schreiben einen Unit-Test – und der Test baut heimlich eine Datenbankverbindung auf. Der Test wird langsam, bricht ohne Netz und misst plötzlich viel mehr als die eine Funktion.

Viele denken, ein Test müsse „echt“ sein, also mit echter Datenbank und echten APIs, sonst sei er wertlos. Das klingt plausibel, weil Software am Ende ja wirklich laufen muss.

Tatsächlich prüft ein Unit-Test nur eine Einheit isoliert – meist eine einzelne Funktion oder Methode einer Klasse. Abhängigkeiten wie Datenbanken oder APIs werden dafür durch Test-Doubles ersetzt, also Nachahmungen, die festgelegte Werte liefern. Solche Tests laufen in Millisekunden und ganz ohne Netz. Das Zusammenspiel mit echten Nachbarn prüfen stattdessen Integrationstests, etwa gegen eine echte PostgreSQL-Instanz.

Der Irrtum entsteht, weil „Test“ sich erst einmal gleich anhört, egal welche Schicht er prüft. Die Testpyramide rät deshalb ausdrücklich: viele schnelle Unit-Tests, weniger Integrationstests und wenige End-to-End-Tests, also Tests über die gesamte Anwendung hinweg.

Ein Beispiel: Eine Funktion berechnet den Bruttopreis aus Nettopreis und Steuersatz. Ihr Unit-Test ruft sie mit konkreten Werten auf und vergleicht das Ergebnis mit dem erwarteten Wert, ganz ohne Datenbank. In Node.js reicht dafür seit Version 20 der eingebaute Test-Runner node:test.

„Woran man es erkennt:“ Läuft der Test offline in Millisekunden, prüft er eine Einheit. Berührt er Datenbank oder Netzwerk, ist er ein Integrationstest – und gegen eine gemockte Datenbank findet er keine SQL-Fehler, denn dafür gehört mindestens ein Test gegen die echte Datenbank-Engine dazu.

Unit heißt nicht „kleiner Test von irgendetwas“, sondern isolierte Prüfung einer Einheit mit Test-Doubles für alle Abhängigkeiten.

📌 Einheit isoliert · Test-Doubles · Testpyramide

📚 Webentwicklung von Grund auf · Tag 6 von 30
#testing #NodeJS #typescript #webdev
Thomas Müller
1 Tag vor
Ein Docker-Image ist die Vorlage, aus der Container gestartet werden; ein rasanter Neubau wirkt wie Magie. In Wahrheit ist es nur der Zwischenspeicher, der unveränderte Schichten wiederverwendet.

Wer sein erstes Dockerfile, die Schritt-für-Schritt-Bauanleitung für ein Image, schreibt, baut oft von Grund auf neu und staunt über die Wartezeit. Das kostet in jeder Continuous-Integration-Pipeline, die jede Codeänderung automatisch baut und testet, unnötig Zeit.

Ein Layer ist eine Schicht, ein Zwischenstand des Dateisystems, den Docker beim Bauen einzeln speichert. Jede Dockerfile-Anweisung wie RUN, COPY oder ADD erzeugt eine eigene Schicht; ein Dockerfile beschreibt Schritt für Schritt, wie das Image gebaut wird. Trifft der Zwischenspeicher auf eine bekannte Schicht, wird sie nicht neu gebaut, sondern direkt verwendet.

Weil jede Schicht auf dem Ergebnis der vorherigen aufbaut, gilt: Sobald eine Schicht geändert wurde, werden diese und alle folgenden Schichten neu gebaut. Beim COPY-Schritt entscheidet dabei allein der Inhalt der kopierten Dateien über den Treffer, nicht der Name des Schritts. Ein Dockerfile beginnt daher mit dem selten geänderten RUN-Schritt zum Installieren der Pakete, denn das ändert sich selten. Der eigene Quellcode mit COPY zu kopieren gehört ans Ende: Weil sich Code bei jedem Commit ändert, machen früh kopierte Dateien alle späteren Schichten ungültig. Der Zwischenspeicher nützt dann nichts.

Verwechselt wird der Layer mit dem fertigen Image, der unveränderlichen Vorlage für Container. Das Image besteht aus der gesamten Kette dieser Schichten; der Layer ist ein einzelner Baustein davon.

Der Bau ist nicht jedes Mal ein Neuanfang, sondern ein Abgleich von Schichten. Genau deshalb steht der Quellcode im Dockerfile ganz am Ende.

📌 Layer · COPY · Pipeline

📚 Cloud von Grund auf · Tag 5 von 30
#docker #iac #devops
Maria Zimmermann
2 Tage vor
Die meisten halten ein schönes 3D-Modell bereits für einen Digital Twin. Dabei ist die Optik die beliebigste Eigenschaft des ganzen Konzepts.

Viele Einsteiger sehen eine drehbare Maschine am Bildschirm und glauben, das sei der Zwilling. Das klingt plausibel, denn visuelle Modelle prägen das Bild der Branche in Präsentationen und Katalogen.

Tatsächlich ist ein Digital Twin ein jederzeit aktualisiertes Abbild eines realen Objekts, das über Sensordaten dessen Zustand widerspiegelt. Die Norm ISO/IEC 30173 definiert ihn als digitale Repräsentation eines Zielobjekts mit Datenverbindung, die eine Konvergenz zwischen physischem und digitalem Zustand ermöglicht. Ohne laufende Daten ist es nur eine Simulation, kein Zwilling.

Der Irrtum entsteht, weil Visualisierung das Naheliegende ist: Ein Modell lässt sich zeigen, eine Datenanbindung nicht. Der Aufbau eines Digital Twin ist deshalb ein Datenprojekt, kein Visualisierungsprojekt.

Eine Pumpe mit Vibrations- und Temperatursensoren hat einen digitalen Zwilling, in dem diese Messwerte laufend eintreffen. Fällt die Datenverbindung aus, bleibt nur eine veraltete Simulation des letzten Zustands. Anwendungsfelder wie Zustandsüberwachung und vorausschauende Wartung, also Wartung vor dem Ausfall, funktionieren nur mit aktuellen Daten.

Woran man es erkennt: Ein echter Zwilling verändert sich, sobald sich das reale Objekt verändert. Fragen Sie nicht, wie das Modell aussieht, sondern woher seine Daten kommen und wann sie zuletzt ankamen.

Digital Twin heißt nicht hochwertige Optik, sondern stets aktuelle Datenverbindung. Der Nutzen steht und fällt mit Sensorik, Datenintegration und Pflege des Modells.

📌 Datenverbindung · Sensordaten · Zustandsabbild

📚 Zukunftstechnologien verstehen · Tag 4 von 30
#edgecomputing #DigitaleTransformation
Anna Fischer
2 Tage vor
Die meisten Automationen brauchen Zugang zu fremden Konten. Dabei bekommen sie nie ein Passwort, sondern nur eine befristete Erlaubnis.

OAuth 2.0 regelt, wie eine Anwendung begrenzten Zugriff auf ein Konto bei einem anderen Dienst erhält, ohne dass das Passwort weitergegeben wird. Dieser Vorgang läuft überall dort, wo ein Werkzeug mit einem fremden System sprechen darf – etwa wenn eine Automation Daten in ein Buchhaltungssystem schreibt.

Zuerst fordert die Anwendung beim Dienst die gewünschte Berechtigung an. Eine API ist eine festgelegte Schnittstelle, über die ein Programm Funktionen eines anderen Systems nutzt; der Dienst listet darin genau auf, was die Anwendung erhalten soll.

Dann zeigt der Dienst dem Nutzer diese Anfrage an und fragt nach seiner Zustimmung. Der Nutzer sieht, welche Berechtigung beantragt wird, und kann vor der Freigabe prüfen, ob sie passt.

Danach erteilt der Nutzer die Erlaubnis. Der Dienst prüft den Nutzer, meist über eine Anmeldung im Browser, und bestätigt die Berechtigung. Eine n8n-Automation, die Rechnungen im Buchhaltungssystem anlegen soll, bekommt so nur das Recht, Rechnungen zu erstellen – nicht Konten zu löschen.

Zuletzt erhält die Anwendung ein Access Token, eine Art befristeter Schlüssel, den sie bei jedem Aufruf mitschickt. Wer das Token besitzt, darf genau das, was verabredet wurde – nicht mehr. Anders als ein API-Schlüssel, eine geheime Zeichenfolge, mit der sich ein Programm ausweist: Wer diesen kennt, handelt mit den Rechten des zugehörigen Kontos. Das Token dagegen trägt nur die Teilberechtigung, läuft ab und lässt sich jederzeit widerrufen, ohne ein Passwort zu ändern.

OAuth heißt nicht Passwort weiterzugeben, sondern eine begrenzte, widerrufbare Erlaubnis zu übertragen.

📌 Access Token · Berechtigung · Widerruf

📚 Automatisierung von Grund auf · Tag 4 von 30
#Automatisierung #api #n8n #Integration
Anna Fischer
2 Tage vor
Viele halten doppelte Webhooks für einen Bug. Dabei steckt dahinter eine bewusste Zustellungsgarantie.

Warum man sie verwechselt: Ein Webhook ist ein HTTP-Aufruf, meist POST mit JSON-Body, den ein System bei einem Ereignis an eine hinterlegte URL sendet. Kommt derselbe Aufruf zweimal an, sieht das nach einem Fehler des Absenders aus.

Genau einmal: Bei exactly-once garantiert der Sender, dass jedes Ereignis genau eintrifft, also weder mehrfach noch gar nicht. Das klingt ideal, ist aber über offene Netze kaum zusicherbar. Der Sender weiß oft nicht, ob die Zustellung ankam.

Mindestens einmal: Bei at-least-once garantiert der Sender nur, dass ein Ereignis ankommt, und nimmt dafür zusätzliche Kopien in Kauf. Bleibt die Bestätigung aus, wiederholt er die Zustellung. Ein Zahlungsdienst sendet den Webhook für eine Buchung, der Empfänger verarbeitet sie, doch die Antwort geht verloren. Sekunden später trifft derselbe Vorgang mit derselben Ereignis-ID erneut ein.

Exactly-once verschiebt die Schwierigkeit zum Sender, at-least-once zum Empfänger. Der Empfänger muss idempotent sein, also jedes Ereignis an seiner eindeutigen ID erkennen und überspringen. Die ID wirkt wie ein Kassenbon, der zeigt, dass der Vorgang schon abgearbeitet ist.

Faustregel: In einer Automation mit Webhook-Trigger gehört die Duplikatprüfung an den Anfang des Workflows, vor jedem Schritt, der Daten anlegt oder versendet. Denn nach der zweiten Buchung ist ein Zurücknehmen kaum noch möglich. Zusätzlich zügig mit einem 2xx-Status (HTTP-Erfolgscodes wie 200) antworten und die eigentliche Arbeit entkoppelt erledigen, sonst erzeugt man selbst weitere Wiederholungen.

At-least-once heißt nicht, dass der Sender defekt ist, sondern dass er lieber doppelt sendet als gar nicht.

📌 At-least-once · Idempotenz · Ereignis-ID

📚 Automatisierung von Grund auf · Tag 4 von 30
#Automatisierung #Webhooks #Integration
Anna Fischer
4 Tage vor
Die meisten Einsteiger wählen in n8n oder Zapier die HTTP-Methode nach Gefühl. Dabei verrät die Methode dem Server genau, was mit den Daten passieren soll.

Wer die falsche Methode schickt, bekommt Daten, die keiner wollte – oder löscht einen Eintrag versehentlich. Die richtige Wahl spart Fehlersuche und verhindert doppelte Bestellungen.

🔗 GET liest nur und verändert nichts auf dem Server. Eine Ressource ist dabei alles, was eine eigene URL hat, etwa ein Kundendatensatz unter einer Adresse mit dessen Nummer. Wer Kundendaten abfragen will, schickt eine GET-Anfrage an die dokumentierte URL, hängt einen API-Schlüssel als Ausweis an und erhält Felder wie Name und E-Mail-Adresse. Den Body, also den Inhaltsteil der Anfrage, lässt GET meist leer.

🔁 POST übergibt Daten zur Verarbeitung und legt oft einen neuen Eintrag an, etwa eine Bestellung. Idempotent nennt man einen Vorgang, dessen mehrfache Ausführung dasselbe Ergebnis bringt wie die einmalige; POST ist das nicht. Schickt ein Workflow dieselbe POST-Anfrage zweimal, entstehen zwei Bestellungen. Genau hier beginnt saubere Fehlerbehandlung in Automatisierungen.

🧭 PUT ersetzt einen bestehenden Eintrag vollständig und braucht dessen genaue URL, DELETE löscht ihn. Beide gelten laut RFC 9110 als idempotent: Wiederholung schadet nicht. In n8n und Zapier wählt man die Methode im HTTP-Baustein aus einem Dropdown; vorher die Doku lesen, sonst antwortet der Server mit 404 (Ressource nicht gefunden) oder 400 (fehlerhafte Anfrage).

GET heißt nicht „einfachere POST“, sondern die Aussage: nichts verändern, nur lesen. Die Methode ist die Absicht, die URL das Ziel.

📌 GET lesen · POST übergeben · PUT ersetzen

📚 Automatisierung von Grund auf · Tag 2 von 30
#Automatisierung #n8n #api #Integration
Maria Zimmermann
4 Tage vor
Die meisten Teams halten Eigenbau für die günstigere Option. Dabei werden Wartung, Personal und Updates oft erst später sichtbar.

Make-or-Buy ist die Grundsatzentscheidung, ob eine Funktion im eigenen Haus entwickelt oder als fertige Lösung zugekauft wird. Sie begegnet einem überall: bei Login, Bezahlung, Suche oder E-Mail-Infrastruktur.

Zuerst wird jede Funktion danach bewertet, ob sie Kernkompetenz oder Standard ist. Eine Kernkompetenz ist eine Fähigkeit, die das eigene Angebot im Wettbewerb sichtbar von anderen unterscheidet. Eine Standardfunktion bieten viele Anbieter gleichartig an, und jeder Betrieb braucht sie ohnehin.

Dann werden für beide Wege die Gesamtkosten über die Laufzeit geschätzt (Total Cost of Ownership). Beim Eigenbau zählen nicht nur Entwicklung, sondern Dauerkosten: Jede selbst gebaute Funktion muss gepflegt, dokumentiert, aktualisiert und über Personalausfälle hinweg betrieben werden. Beim Zukauf kommen Betrieb, Lizenzen, Schulung, Integration und Migration hinzu.

Danach wird der Lock-in geprüft, also wie teuer und aufwendig ein späterer Ausstieg wäre. Entscheidend sind exportierbare Daten, offene Formate und Schnittstellen sowie alternative Anbieter. Ein typisches Beispiel: Ein Onlinehändler entwickelt seine Produktsuche selbst, weil sie den Umsatz unterscheidet, kauft aber Login, Bezahlung und E-Mail-Infrastruktur als Standarddienst ein.

Zuletzt wird die Entscheidung schriftlich dokumentiert und begründet. So bleibt später nachvollziehbar, welche Annahmen über Kosten, Nutzen und Risiko ihr zugrunde lagen.

Eigenbau heißt nicht sparsam, sondern eine zweite Produktlinie: gebaut, gepflegt und verantwortet. Gekauft wird alles, was den Unterschied im Wettbewerb nicht ausmacht.

📌 Kernkompetenz · Total Cost of Ownership · Lock-in

📚 Zukunftstechnologien verstehen · Tag 1 von 30
#strategie #architektur #TCO
Anna Fischer
5 Tage vor
Die meisten Empfänger verarbeiten Webhooks direkt in der Antwort. Damit beginnt genau das Problem, das sie vermeiden wollen.

Wer die eigentliche Arbeit in die Antwortfrist legt, riskiert Timeouts und doppelte Zustellungen.

🧱 Grundlagen – Bestätigung und Verarbeitung sind zwei Schritte. Ein Webhook-Endpunkt ist ein HTTP-Server: Erst mit einem 2xx-Status gilt die Zustellung beim Sender als bestätigt. Sendet der Empfänger keine rechtzeitige Antwort, wiederholt der Sender die Lieferung, meist immer wieder.

⚙️ Praxis – 200 zurückgeben, bevor die Arbeit beginnt. Dafür ist ein fester Ablauf bewährt: Zeitfenster prüfen, Signatur mit dem gemeinsamen Geheimnis verifizieren, Ereignis-ID gegen einen Duplikatspeicher prüfen, Rohdaten in eine Warteschlange legen, dann sofort mit 200 antworten. Die Ausführung läuft als Hintergrundjob, unabhängig vom Zeitdruck der Antwort. Ein Fehlerkonzept für die Warteschlange ist Pflicht: Nicht zustellbare Jobs wiederholen oder in eine Fehlerschleife legen, damit kein stiller Datenverlust entsteht.

🎯 Experte – At-least-once erfordert Idempotenz statt Schnelligkeit. Webhook-Sender liefern in der Regel mindestens einmal, auch wenn der Empfänger bereits verarbeitet hat. Der sichere Schutz ist eine gespeicherte, eindeutige Ereignis-ID, die erneut eintreffende Nachrichten überspringt. Zusätzlich gilt: Die Reihenfolge von Webhooks ist nicht garantiert, die Verarbeitung darf also nie annehmen, dass Ereignis A vor Ereignis B eintrifft.

⚠️ Stolperfalle – Erst Zeitfenster und Signatur prüfen, dann erst den Body parsen. Der Body muss dafür byteweise unverändert vorliegen, sonst schlägt die Signaturprüfung fehl.

Webhook-Empfang heißt nicht schnell verarbeiten, sondern schnell bestätigen und idempotent verarbeiten.

📌 2xx sofort · Verarbeitung entkoppeln · Idempotenz
#Webhooks #Automatisierung #Integration #api
Admin Kionova
1 Jahr vor
90% aller Nutzer verlassen eine Webseite, wenn sie nicht sofort finden, was sie suchen. Die Lösung? Semantische Suche – die Technologie, die versteht, was Ihre Kunden wirklich wollen.

Das Problem mit Ihrer aktuellen Suche

Stellen Sie sich vor: Ein Kunde sucht auf Ihrer Seite nach „günstigen Laufschuhen für Anfänger“. Ihre herkömmliche Suche zeigt ihm Profi-Laufschuhe für 300€ – nur weil das Wort „Laufschuhe“ darin vorkommt.

Frustriert verlässt er Ihre Seite. Umsatz verloren. Kunde verloren.

Was ist semantische Suche – und warum brauchen Sie sie JETZT?

Semantische Suche ist wie ein intelligenter Verkäufer, der versteht, was Kunden meinen – nicht nur, was sie sagen.

Ein einfaches Beispiel:

• Kunde sucht: „Schokoladenmilch“

• Herkömmliche Suche findet: Milchschokolade, Schokoladentafeln, Milchprodukte

• Semantische Suche versteht: Der Kunde will ein Getränk, keine Süßigkeit!

Die Technologie dahinter (kurz erklärt):

Statt nur nach identischen Wörtern zu suchen, nutzt semantische Suche:

• Kontextverständnis: Sie erkennt, ob jemand kaufen, sich informieren oder vergleichen will

• Intelligente Verknüpfungen: Synonyme und verwandte Begriffe werden automatisch einbezogen

• Lernfähigkeit: Die Suche wird mit jedem Klick besser

5 Gründe, warum Sie HEUTE handeln sollten

1. Mehr Umsatz durch bessere Treffer

Kunden finden sofort, was sie suchen = höhere Kaufwahrscheinlichkeit

2. Zufriedenere Kunden

Auch bei Tippfehlern oder unklaren Anfragen liefern Sie perfekte Ergebnisse

3. Personalisierte Ergebnisse

Restaurant in der Nähe? Produkte für Allergiker? Die Suche passt sich an

4. Wettbewerbsvorteil

Während Ihre Konkurrenz noch mit Keywords kämpft, bieten Sie echtes Verständnis

5. Zukunftssicher

Die Technologie lernt kontinuierlich dazu – Ihre Investition wächst mit

Ist Ihre Webseite bereit? Der 3-Minuten-Check

Quick-Test: Prüfen Sie diese 3 Warnsignale

• Hohe Absprungrate bei der Suche? → Nutzer finden nicht, was sie suchen

• Viele Null-Treffer-Suchen? → Ihre Suche versteht die Anfragen nicht

• Kunden nutzen nur exakte Produktnamen? → Sie trauen Ihrer Suche nicht

Wenn Sie auch nur einmal „Ja“ gedacht haben, verlieren Sie gerade Geld.

So starten Sie in 3 einfachen Schritten

Schritt 1: Kostenlose Analyse

Wir prüfen Ihre aktuelle Suche und zeigen Ihnen konkret, wo Sie Kunden verlieren

Schritt 2: Potenzial aufdecken

Sie erhalten einen detaillierten Bericht mit:

• Konkreten Verbesserungsvorschlägen

• Geschätzter Umsatzsteigerung

• Implementierungsplan

Schritt 3: Sofort umsetzen

Mit modernen Tools ist die Integration in wenigen Wochen möglich

Ihre Konkurrenz schläft nicht!

Während Sie noch überlegen, rüsten andere bereits auf. Amazon, Google und Co. haben es vorgemacht – semantische Suche ist der neue Standard.

Was Sie bekommen:

• Detaillierte Analyse Ihrer aktuellen Suchfunktion

• Konkrete Handlungsempfehlungen

• Potenzialberechnung für Ihren Umsatz

• 30-minütiges Beratungsgespräch

Was es Sie kostet:

• 0€ – komplett kostenlos

• Keine versteckten Kosten

• Keine Verpflichtungen

•

Noch Fragen? Hier die Antworten:

„Ist das nicht zu technisch für uns?“ Nein! Moderne Lösungen sind plug-and-play. Wir kümmern uns um die Technik, Sie ernten die Erfolge.

„Lohnt sich das für kleine Webseiten?“ Absolut! Gerade kleine Unternehmen profitieren von jedem einzelnen Kunden, der findet, was er sucht.

„Wie lange dauert die Umsetzung?“ Je nach Größe Ihrer Webseite: 2-6 Wochen bis zur vollen Funktionsfähigkeit.

Die Zeit läuft – Ihre Kunden warten nicht

Jeden Tag ohne semantische Suche = verlorene Kunden und Umsatz.

P.S.: Wussten Sie, dass Unternehmen mit semantischer Suche im Schnitt 23% mehr Conversions erzielen? Wann steigern Sie Ihren Umsatz?
Abonnieren zum Entsperren

Für 10€ / Monatlich

Nichts gefunden!

Entschuldigung, aber für Ihre Suchanfrage {{search_query}} konnten wir in unserer Datenbank nichts finden. Bitte versuchen Sie es erneut, indem Sie andere Suchbegriffe eingeben.