Dies ist Teil 3 einer Serie über moderne Entwicklungs-Workflows. Teil 1: Der strategische Wert des Denkens in Notebooks und Teil 2: Der technische Leitfaden zur Jupyter-Einrichtung haben die Grundlage geschaffen. Schauen wir uns nun konkreten Code an.
In den vorangegangenen Teilen haben wir besprochen, warum Jupyter eine „Denkumgebung“ ist. In diesem abschließenden Teil werden wir vier konkrete Szenarien durchgehen, in denen ein Notebook für einen Senior Engineer besser abschneidet als eine traditionelle IDE.
1. API-Archäologie: Das Unbekannte kartieren
Wenn Sie es mit einer komplexen API zu tun haben, möchten Sie nicht erst einen vollständigen Client bauen, nur um zu sehen, wie die Daten aussehen.
|
|
Warum das gewinnt: Sie können die Header anpassen, die Query-Parameter ändern und nur die Zelle mit der Anfrage erneut ausführen, ohne Ihre gesamte Anwendung neu starten zu müssen.
2. Performance-Audit: Den Engpass finden
Stellen Sie sich vor, Ihre Logs zeigen einen Anstieg der Latenz. Sie können eine Stichprobe der Logs ziehen und diese sofort analysieren.
|
|
Warum das gewinnt: Sie raten nicht nur. Sie haben einen visuellen Beweis für den „Long Tail“ der Latenzen, den Sie als Slack-Nachricht oder in einem PR mit Ihrem Team teilen können.
3. Algorithmus-Prototyping: Die „Sandbox“
Bevor Sie einen Ranking-Algorithmus in Go oder Java implementieren, testen Sie die Logik in Python.
|
|
Warum das gewinnt: Sie können an der Formel iterieren (z. B. 1.5 in 1.8 ändern) und die Ergebnisse sofort über alle Szenarien hinweg sehen.
4. Interaktive Runbooks: Sichere Migrationen
Anstatt einer README.md mit Befehlen zum Kopieren und Einfügen stellen Sie ein Notebook zur Verfügung.
|
|
Warum das gewinnt: Es ist „Literate DevOps“. Die Erklärung und die Ausführung leben zusammen, was das Risiko menschlicher Fehler bei riskanten Operationen verringert.
Abschließende Gedanken
Jupyter ist kein Ersatz für Ihre IDE; es ist ein Begleiter. Es ist der Ort, an dem Sie die „unordentliche“ Arbeit des Verstehens erledigen, sodass Sie, wenn Sie schließlich Ihre IDE öffnen, genau wissen, was Sie bauen müssen.
Wenn Sie diese Beispiele umsetzen, denken Sie daran, sie in einer ordentlichen Projekthierarchie zu organisieren (wie in Teil 2 besprochen). Die Trennung von Daten, Notebooks und Quellcode ist der Schlüssel zu einem wartbaren Forschungs-Workflow.
Nutzen Sie ChatGPT, um die Logik zu brainstormen, Jupyter, um zu beweisen, dass sie mit echten Daten funktioniert, und Copilot, um Ihnen bei der produktionsreifen Implementierung zu helfen.
Zusammenfassung der Serie
- Teil 1: Der strategische Wert des Denkens in Notebooks
- Teil 2: Der technische Leitfaden zur Jupyter-Einrichtung
- Teil 3: Sie sind hier!
Omid Farhang