Jupyter Notebooks & Git 🚀
MZ
+GymHum Tools!💻
Was ist Jupyter Notebook?
- Interaktive Entwicklungsumgebung: Code, Text und Visualisierungen in einem Dokument, mit IDE Fähigkeiten
- Web-basiert: läuft im Browser
- Zellen-basiert: Code in ausführbaren Blöcken
- Mehrere Sprachen: Python, R, Julia, Scala
Fun fact: „Jupyter“ steht für Julia, Python und R
Warum Jupyter nutzen?
- ✅ Web-basiert: keine Installation nötig
- ✅ Markdown integriert: Dokumentation und Code zusammen
- ✅ Visualisierungen: direkt im Notebook sichtbar
- ✅ Einfache Verwaltung: über Terminal
Jupyter Grundlagen 🔧
Zellen-Typen:
- 🐍 Code-Zellen: ausführbarer Python-Code
- 📝 Markdown-Zellen: Text, Überschriften, Listen
- 📄 Raw-Zellen: unformatierter Text (brauchen wir nicht)
Wichtige Tastenkombinationen
Jupyter im Command Mode:
Shift + Enter
– Zelle ausführen & nächste auswählen
Ctrl + Enter
– Zelle ausführen & Fokus bleibt
A
– Zelle oberhalb einfügen
B
– Zelle unterhalb einfügen
X
– Zelle löschen
Verteilsystem für Jupyter-Aufgaben 📤
Automatisierte Aufgabenverteilung für den Kurs, von Holger!
Funktionen:
- 📤 Aufgabe verteilen – an alle Schüler*innen
- 📥 Aufgabe einsammeln – automatisch aus Schüler-Ordnern
- 💬 Feedback verteilen – korrigierte Version zurück
- 👤 Einzelaufgabe verteilen – gezielt
- 🧪 Prüfungsmodus – sichere Prüfungsumgebung
Bash & .bashrc 🐚
Was ist die Shell?
- Terminal ist dein Interface, um Befehle einzugeben
- Schützt dich davor, direkt im Kernel zu arbeiten
- Aliase und Skripte vereinfachen deine Arbeit
- Config in
~/.bashrc
Linux-Dateisystem
- Computer haben User
- Jede*r hat eigene Dateien
- Du bist im Home-Ordner
- Dein Home =
~/
Bash-Befehle
ls
– Inhalte anzeigen
cd
– Verzeichnis wechseln
rm
– Datei löschen
..
– ein Verzeichnis nach oben
Alias setzen
alias jup="jupyter notebook"
Dauerhaftes Alias
echo 'alias jup="jupyter notebook"' >> ~/.bashrc
source ~/.bashrc
Was ist Git? 🔄
- Versionskontrollsystem: verfolgt Änderungen
- Kollaboration: mehrere arbeiten am Projekt
- Historie: komplette Projektchronik
- Branching: paralleles Arbeiten
- Dezentral: jede*r hat volle Kopie
Fun fact: Git wurde 2005 von Linus Torvalds entwickelt
Git-Begriffe
- Repository: Projektordner mit Git
- Commit: Schnappschuss
- Branch: Zweig
- Merge: Zusammenführung
- Remote: Serverversion (z. B. GitLab)
- Clone: lokale Kopie
Workflow
1. Arbeitsbereich → Staging
git add datei.py
git add .
2. Staging → Repository
git commit -m "Beschreibung der Änderung"
3. Repository → Remote
git push origin main
Neues Repo anlegen
mkdir mein-projekt
cd mein-projekt
git init
git config user.name "dein Name"
git config user.email "deine@email.com"
echo "# Mein Projekt" > README.md
git add README.md
git commit -m "Initial commit"
Repo klonen
git clone https://git.gymnasium-hummelsbuettel.de/MZ/pythoncrashkurs_aufgaben.git
cd pythoncrashkurs_aufgaben
git status
Git Best Practices
- Aussagekräftige Commit-Messages
- Kleine, häufige commits
- Eine .gitignore verwenden
Praktische Tipps
Jupyter
- Kernel neu starten bei Fehlern
- Markdown-Zellen zur Dokumentation nutzen
Git
- Vor wichtigen Änderungen committen
- Branches für Experimente
Zusammenfassung
Jupyter
- Interaktive Entwicklung
- Markdown plus Code
- Verteilsystem für Aufgaben
Git
- Versionskontrolle
- Kollaboration
- Historie & Backup
Nächste Schritte: Repo klonen, Aufgaben lösen, commit & push!