Menü

Werkzeugkasten

Bild im Header: Abgeleitet (zugeschnitten) von „Framaspace“ von David Revoy, framasoft.orgCC-BY 4.0

Text, Code & Co.

Ein großer Teil eures Studiums wird darin bestehen, Dinge aufzuschreiben oder zu -malen, sei es jetzt Programmcode, die Lösung eines Übungsblattes, eine Hausarbeit oder etwas ganz anderes. Die folgenden Ressourcen könnten euch dabei helfen.

Texteditoren & Entwicklungsumgebungen

CryptPad ermöglicht euch, gemeinsam an Dokumenten (Tabellen, Text, Folien, Umfragen, …) zu arbeiten. Sehr ähnlich wie Google Docs oder Microsoft 365, allerdings sind alle eure Daten Ende-zu-Ende-verschlüsselt und die Anwendung ist Open Source. Ein Account ist ebenfalls nicht zwingend nötig.

Visual Studio Code ist ein genialer, erweiterbarer Open-Source-Editor von Microsoft. Verfügbar für alle Betriebssysteme und auch im Web. Eignet sich zum Mitschreiben in Vorlesungen, Bearbeiten von Übungsblättern, Programmieren von Projekten und so weiter.

Joplin ist ein Open-Source-Markdown-Editor mit Extras (LaTeX, …). Ebenfalls geeignet, um in Vorlesungen mitzuschreiben.

bwJupyter hostet Jupyter Notebooks (werden unten noch genauer erklärt) in der Cloud, die ihr gemeinsam bearbeiten könnt. So ähnlich wie Google Colab wie Deepnote.

Visualisierungen

FLACI lässt euch Automaten zeichnen und mit formalen Sprachen, Grammatiken und regulären Ausdrücken arbeiten. Sehr praktisch für Vorlesungen wie ECL oder die Theoretische Informatik.

diagrams.net (ehemals draw.io) lässt euch unter anderem Flussdiagramme, UI-Mockups, ER- und UML-Diagramme zu zeichnen. Es gibt dafür auch Plugin für Visual Studio Code . Tipp: Wenn ihr als Endung der Dateien .drawio.png oder .drawio.svg wählt, ist die einbettbare Bilddatei gleichzeitig auch die Datei, die ihr mit diagrams.net bearbeitet.

Minimum-Edit-Distance-Rechner mit Visualisierung. Nützlich für ECL.

Typst

Typst ist ein Textsatzsystem (so ähnlich wie LaTeX, nur wesentlich unbekannter, aber wesentlich besser). Damit lassen sich Projektberichte, Papiere, Abschlussarbeiten und Präsentationen komfortabel erstellen.

Detypify lässt euch Zeichen zeichnen (zum Beispiel ein ℝ) und gibt euch den Code aus, um es in Typst zu setzen.

LaTeX

Overleaf ist eine Website, auf der man zusammen an LaTeX-Dokumenten (wie Präsentationen, Projektenberichten oder Papieren) arbeiten kann. Das Institut hostet eine eigene Instanz davon, Anmelden geht mit ICL-Account. Alternativ gibt es auch eine Free-Version von Overleaf.com, die aber deutlich weniger Kompilierzeit anbietet.

LaTeX Tables Editor ist ein schicker grafischer Editor für LaTeX-Tabellen, damit man sich nicht mehr selbst mit dem Code dafür herumschlagen muss.

Detexify lässt euch Zeichen zeichnen (zum Beispiel ein ℝ) und gibt euch den Code aus, um es in LaTeX zu setzen.

LaTeX for Linguists gibt einen Überblick über eine Vielzahl von LaTeX-Paketen, die für linguistische Texte relevant sind.

Vorlagen für Übungsblattabgaben, Seminararbeiten und Abschlussarbeiten findet ihr in unserem Altklausuren-Repository bei GitLab. Falls ihr eine Präsentation erstellen wollt, könnt ihr euch von den Tutoriumsfolien inspirieren lassen – einige Tutorien laden den LaTeX-Quelltext der Folien bei GitLab hoch (z.B. das Prog 2-Tutorium).

Literatur

Zotero ist ein Literaturverwaltungsprogramm. Mit Zotero könnt ihr alle relevanten Papers, Bücher etc. meistens über einen einzigen Klick im Browser aufsammeln, und euch dann später ein Literaturverzeichnis erzeugen lassen (unterstützt werden sowohl BibTeX und BibLaTeX als auch Office-Programme wie Word). Die Unibibliothek bietet zu Zotero übrigens regelmäßig auch kurze Einführungen an.

Neuigkeiten, Dokumentation und Tutorials

Hacker News sammelt Artikel, Nachrichtenbeiträge, Blogposts zu Themen rund um Computer, Naturwissenschaft und allgemein alles, „was die intellektuelle Neugierde befriedigt“. Falls ihr informiert bleiben wollt über das, was in der IT- und Forschungswelt so passiert, empfiehlt sich diese Website wirklich.

devdocs.io ist eine Website, die die Dokumentation für viele Programmiersprachen und Bibliotheken über eine einheitliche Oberfläche gut durchsuchbar zur Verfügung stellt. Falls ihr öfter unterwegs ohne Internet arbeitet: Die Site funktioniert auch offline.

AI Coffee Break with Letitia erklärt aktuelle Papiere und Entwicklungen im Bereich künstlicher Intelligenz.

Neel Nanda liefert detaillierte Erklärungen zu KI-Modellen wie dem Transformer, zu Interpretierbarkeit, und aktuellen Forschungsergebnissen. Besonders empfehlenswert ist sein Transformer Walkthrough.

Python-Bibliotheken

Für viele Programmierprobleme gibt es bereits Lösungen in Form einer Python-Bibliothek. Einige davon werden euch im Studium unvermeidbar über den Weg laufen, andere nicht. Gerade diese lohnt es sich aber oft zu kennen.

Web-Scraping

requests vereinfacht das Arbeiten mit HTTP-Anfragen an Seiten.

beautifulsoup4 parst HTML und XML.

requests-html ist wie Requests und Beautifulsoup4 zusammen auf Steroiden – es unterstützt zum Beispiel JavaScript, weil es im Hintergrund einfach einen vollwertigen Chromium-Browser startet. Praktisch für die großen Web-Scraping-Projekte.

scrapy ist ein Framework zum Schreiben von Scrapern.

Strings vergleichen

fuzzywuzzy ist eine Bibliothek, die es z. B. erlaubt Strings ungenau miteinander zu matchen (Levenshtein) und somit zu filtern.

Textsprache erkennen

langdetect ist eine nützliche Bibliothek, die es erlaubt die Sprache eines Textes einfach herauszufinden.

Websites

flask ist ein eher leichtgewichtigtes Web-Framework, das viele Freiheiten lässt. Tutron basiert zum Beispiel darauf.

django ist ein eher schwergewichtiges Web-Framework, das einen einigermaßen festen Rahmen für ein Projekt vorgibt.

Text aus Dokumenten extrahieren

textract kann Texte aus Dokumenten wie PDFs extrahieren. Sehr praktisch, denn das ist gar keine so einfach Aufgabe.

Geiler Shit & Gimmicks

jupyterlab erlaubt euch, Code und Dokumentation in Form von webbasierten, interaktiven Jupyter Notebooks direkt miteinander zu verbinden. Praktisch für Demos, Lehre, Data Science, …

termcolor erlaubt bunten und formatierten Output ins Terminal auszugeben.

tqdm zeigt coole Fortschrittsbalken.

genanki erzeugt programmatisch Anki-Decks. Nichts, was direkt mit Coli zu tun hat, aber hat sicher Anwendungsbereiche. Wie wäre es zum Beispiel damit, diese Library mit requests, beautifulsoup4, textract und scikit-learn zu kombinieren, um aus in Moodle-Kursen hochgeladenen Folien automatisch Lernkarten zu erzeugen?

Deep Learning

Equinox ist eine Library für maschinelles Lernen. Sie ist noch nicht so populär wie PyTorch, aber wirkt cooler. Equinox setzt auf JAX auf, einer Alternative zu NumPy.

torch (= PyTorch) ist eine Library für maschinelles Lernen, die im NLP-Umfeld äußerst häufig verwendet wird. Ihr werdet im Laufe eures Studiums damit sicherlich in Berührung kommen.

Statistik & Machine Learning

scipy implementiert sehr viele Algorithmen für wissenschaftliches Arbeiten, wie Korrelationstests oder bereits implementierte Ähnlichkeitsmaße wie Kosinusähnlichkeit.

scikit-learn implementiert viele Algorithmen fürs maschinelle Lernen.

sympy erlaubt es mathematische Formeln in Python zu formulieren, die dann vereinfacht, abgeleitet, integriert oder mit eingesetzten Zahlen evaluiert werden können.

statsmodels enthält viele Funktionen zur statistischen Analyse von Daten, z. B. Korrelation.

pandas erlaubt es, tabellarische Daten zu verarbeiten. Die an die Programmiersprache R angelehnten Schnittstellen sind allerdings in der Verwendung gewöhnungsbedürftig.

Visualisierung

matplotlib ist die klassische Visualisierungsbibliothek für Pythonprogramme.

seaborn ist eine Erweiterung von matplotlib mit viel schöneren Defaults und automatischer Integration von pandas-Dataframes.

Textverarbeitung

nltk enthält viele Algorithmen zur Textverarbeitung.

spacy implementiert Algorithmen für POS-Tagging, Dependency Parsing und Named Entity Recognition.

textblob enthält Algorithmen zur Verarbeitung von englischen Texten, wie eine automatische Sentiment-Analyse basierend auf einem Wörterbuch.

textblob-de ist wie textblob, bloß für Deutsch.

polyglot enthält Algorithmen wie POS-Tagging und Sentiment Analyse für über 100 verschiedene Sprachen.

Zur Ausleihe

  • 1x Presenter im Pool-Schließfach