Programme
Created: 2020-11-15 Updated: 2025-06-26
Diese Seite soll eine Übersicht über alle Programme anbieten, an denen ich arbeite. Gleichzeitig soll die Seite aber auch Informationen sammeln, die mich beim Programmieren unterstützen, um darüber offensichtliche Fehler zu vermeiden.
Gliederung
Projekte
Arbeitsanwendungen
- Dashboard (2013-): Meine Webseite ist der Versuch, mein eigenes Wissen kritisch hinterfragbar zu machen, um damit zu besseren Überzeugungen und Methoden zu gelangen und Probleme systematisch zu lösen.
- TiddlyWiki für den Haushalt (2020-): Eine HTML-Datei für die gemeinsame Haushaltsplanung.
- TiddlyWiki für die Schulorganisation (2020-): Eine HTML-Datei für die Vorbereitung von Unterrichtseinheiten und die Planung eines Schuljahres. Oder generell für das systematische Lernen.
- FastWriter (2020): Ein Programm für schnelles, strukturiertes Schreiben mit Countdown-Funktion und verschiedenen Teilabschnitten.
- Freunde-treffen-Bot (2022): Ein Discord-Bot, der dazu gedacht ist, freie Zeiten innerhalb eines Kanals zu sammeln, um darüber festzustellen, wer Zeit und Lust für ein Treffen hat.
Computerspiele
- blues (2015): Ein Spiel über den Umgang mit Trennung; in einem C64-Stil, abstrakt und emotional
- Lost Path (2016-)
- Adventure Cards (2021-): Es handelt sich um einen rundenbasierten Deckbuilder mit einem stärkeren Fokus auf taktische Positionierungen und der Verbindung von Fähigkeiten und Kartenkategorien.
- Sandsteamers (2022-)
- Storm Island (2022-)
Konzepte
Jedes Programmierkonzept besitzt die Möglichkeit, neue Codeideen vorzugeben [Designperspektive] und bisherigen Code zu verbessern [Optimierungsperspektive]. Diese Einteilung hilft dabei, genauer zu bestimmen, wann ein bestimmtes Konzept sinnvoll genutzt werden kann.
Design- und Optimierungsperspektive (Programmierung) - Modified: 2025-06-26
Designperspektive
- Code wird durch das Ziel bestimmt (Programmierung) (Updated: 2025-06-26)
- Interoperabilität (Programmierung) (Updated: 2025-06-26)
- Interpretierbarkeit (Programmierung) (Updated: 2025-06-26)
- Komplexität vermeiden (Programmierung) (Updated: 2025-06-26)
- Modularität (Programmierung) (Updated: 2025-06-26)
Optimierungsperspektive
- Code wird durch das Ziel bestimmt (Programmierung) (Updated: 2025-06-26)
- Geschwindigkeit erhöht Immersion (Programmierung) (Updated: 2025-06-26)
- Interpretierbarkeit (Programmierung) (Updated: 2025-06-26)
- Komplexität vermeiden (Programmierung) (Updated: 2025-06-26)
- Wiederholtes Schreiben desselben Codes vermeiden (Programmierung) (Updated: 2025-06-26)
Nützliches
- Bézier-Kurve: Eine Bézier-Kurve beschreibt eine Krümmung anhand von Punkten anstatt durch die 1-zu-1-Zuordnung einer Funktion. Dies ist nützlich, um beliebig komplizierte Kurven zu beschreiben.
- Koroutinen: Koroutinen helfen dabei, eine sich wiederholende Aktion in bestimmten Rhythmen umsetzen zu können, wobei sie es erlauben, einen ablaufenden Prozess auf mehrere Zeiteinheiten aufzuteilen. Zum Beispiel wird in der ersten Sekunde die erste Hälfte abgearbeitet, in der zweiten Sekunde die andere. Diese Funktionalität lässt sich auch mit Timern und einer Programmstatus-Verwaltung bauen, erhöht aber den Schreibaufwand.
- Sigmoid-Funktion: Die Sigmoid-Funktion ist eine Zuordnung eines Wertes zu annähernd 0 oder 1, wobei der Übergangs-Bereich um 0 herum ein Verlauf ist. Damit kann ein Bool'scher Zusammenhang ohne starke Grenze dargestellt werden.
- Zustandsübergänge (Statecharts von David Harel): Zur Beschreibung eines Systems, das verschiedene Zustände einnehmen kann, sollte über eine State Machine nachgedacht werden, die diese Zustände repräsentiert. State Chars von Harel sind eine effiziente Variante solche Systeme zu beschreiben.
Bibliotheken
Javascript
- Quill: Javascript-Bibliothek für einen Online-Texteditor.
Diskussionen
- Bewertungssysteme: Ein Bewertungssystem soll einem Nutzer die Möglichkeit bieten, schneller darüber entscheiden zu können, ob etwas nützlich sein könnte, indem es einen Punktestand (Score) zuweist, um Objekte nach der Höhe ihrer Platzierung sortieren zu können.
- Freundeskreise: Beim Teilen von Inhalten wird häufiger über eine Funktion nachgedacht, die dafür verantwortlich ist, den Zugang nur bestimmten Gruppen zugänglich zu machen. Der Vorteil besteht darin, an einer Stelle alles mit anderen teilen zu können, anstatt diese Funktion auf verschiedene Dienste zu verteilen. Das Hauptproblem einer solchen Funktion besteht darin, dass es bei einem gleichbleibenden Design sehr anstrengend sein kann, genau zu bestimmen, wer was sehen soll. Darüber hinaus muss eine Taxonomie von Freundschaften explizit gepflegt werden
- Checkboxen sollten eine Nichts-von-allem-Auswahlmöglichkeit besitzen, um Fehlverhalten von Anwendern zu minimieren. Das offizielle Designblog der britischen Regierung schlägt dieses Verhalten nach einer Reihe von empirischen Überprüfungen vor.