TinyRetroPad: Ex-Microsoft-Entwickler schreibt Notepad mit 2,5 KB neu
Es wirkt wie eine Gegenbewegung zu Microsofts aktueller Strategie, Software immer umfangreicher zu gestalten: Der ehemalige Microsoft-Ingenieur Dave Plummer hat einen nahezu vollständigen Windows-Texteditor entwickelt, der lediglich rund 2,5 KB groß ist und dabei ausschließlich bereits in Windows vorhandene Komponenten nutzt.
Alle nötigen Funktionen vorhanden
Trotz seiner geringen Größe soll der von Plummer, zu dessen beruflicher Vita unter anderem der Windows-Task-Manager zählt, entwickelte TinyRetroPad zahlreiche klassische Notepad-Funktionen bieten. Dazu gehören das Öffnen und Speichern von Dateien, Suchen und Ersetzen, Drucken, die Auswahl der Schriftart, Zeilenumbruch sowie die Abfrage beim Schließen ungespeicherter Dokumente. Als Ersatz für den modernen Editor von Microsoft versteht Plummer TinyRetroPad allerdings nicht, stattdessen soll das Projekt demonstrieren, wie leistungsfähig die bereits in Windows integrierten Systemkomponenten sind und wie weit sich die moderne Softwareentwicklung von diesem Prinzip entfernt hat. Gleichzeitig versteht sich TinyRetroPad als Kritik an der zunehmenden Komplexität und Funktionsüberladung aktueller Windows-Anwendungen wie Notepad unter Windows 11.
Neue Software benötigt meist deutlich mehr Speicherplatz
Während das klassische Notepad unter Windows XP noch aus einer einzigen rund 65 KB großen Datei bestand, fungiert die heutige notepad.exe lediglich als Startprogramm für eine moderne UWP-/WinUI-Anwendung, deren Gesamtgröße bei etwa 5 MB liegt. Hinzu kommt, dass Microsoft den einst bewusst schlanken Editor im Laufe der Jahre um immer mehr Funktionen erweitert hat, wodurch er sich zunehmend in Richtung WordPad entwickelte. Dazu zählen unter anderem Tabs, automatische Speicherung, Markdown-Unterstützung, Tabellenfunktionen, Bildunterstützung sowie die Integration von Copilot- beziehungsweise Writing-Tools. Von einem Editor, der schnell zum Anzeigen und Bearbeiten verschiedener Textformate genutzt werden kann, ist Notepad somit heute weit entfernt.
Ähnliches konnte Windows Latest bereits beim Vergleich des modernen Media Players mit dessen klassischem Vorgänger feststellen. So benötigt die aktuelle Version nicht nur mehrere Sekunden zum Starten, sondern belegt im Leerlauf mit rund 377 MB auch deutlich mehr Arbeitsspeicher als die klassische Variante mit lediglich etwa 103 MB. Dies dürfte einer der Gründe sein, weshalb frühere Windows-Versionen mit deutlich weniger RAM auskamen.
Effizienz keine Raketenwissenschaft
Plummer betont, dass die geringe Größe des Editors keineswegs ein Wunderwerk sei. Windows selbst stelle nahezu alle Funktionen bereit, die klassische Desktop-Anwendungen benötigen. Dazu gehören unter anderem Fensterverwaltung, Menüs, Dialogfenster, Zwischenablage, Druckfunktionen, Schriftartauswahl und Textsteuerungen, die bereits fester Bestandteil des Betriebssystems sind. Eine kleine Anwendung müsse diese Komponenten lediglich nutzen, anstatt eigene Bibliotheken oder Frameworks mitzuliefern. Dies beschreibt Plummer mit dem Vergleich, dass ein kleines Windows-Programm lediglich „mit einer Brotdose und einem Stadtplan“ anreise, während das Betriebssystem bereits die gesamte Infrastruktur bereitstelle.
Viele in Windows vorhandene Komponenten verwendet
Neu ist TinyRetroPad allerdings nicht, sondern basiert auf früheren Projekten Plummers. Ausgangspunkt war das experimentelle Projekt „tiny.asm“, mit dem der Entwickler bereits demonstrieren wollte, wie klein eine vollständige Windows-Anwendung ausfallen kann. Die Grundlage des neuen Editors bildet das seit Jahrzehnten in Windows vorhandene Steuerelement RICHEDIT50W, das nahezu sämtliche Aufgaben der Textverarbeitung übernimmt. Dazu zählen die Darstellung von Text, Cursorverwaltung, Textmarkierung, Ausschneiden, Kopieren und Einfügen, die Rückgängig-Funktion sowie die Verwaltung großer Dateien. Frühere Versionen nutzten noch das einfachere EDIT-Steuerelement und erreichten damit sogar eine Größe von lediglich 890 Byte. Aufgrund der starken Komprimierung kam es jedoch zu Problemen mit dem Windows Defender, der teilweise Fehlalarme auslöste. Mit dem Wechsel auf RICHEDIT konnten diese zwar beseitigt werden, allerdings stieg die Dateigröße zunächst auf rund 981 Byte an.
Um zu verdeutlichen, wie wenig Speicherplatz für einen funktionsfähigen Editor tatsächlich erforderlich ist, hat Plummer den Speicherbedarf der einzelnen Funktionen detailliert dokumentiert. So beanspruchte das Dateimenü 1.375 Byte, die Warnung bei ungespeicherten Änderungen 1.622 Byte, Suchen und Ersetzen 2.143 Byte und die Druckfunktion mit 2.476 Byte den größten Anteil. Zum geringen Speicherbedarf trägt zudem der spezielle Linker Crinkler bei, der ursprünglich aus der Demo-Szene stammt und ausführbare Dateien besonders effizient komprimiert sowie gleichzeitig den Maschinencode optimiert. Dadurch sollen sich neue Funktionen teilweise nahezu ohne zusätzlichen Speicherbedarf integrieren lassen.
Kein offizieller Release
Für den produktiven Einsatz ist TinyRetroPad derzeit allerdings noch nicht geeignet, weshalb bislang auch keine offizielle Release-Version existiert. Aufgrund der extremen Komprimierung können Antivirenprogramme weiterhin Fehlalarme auslösen. Zudem berichten Nutzer über verschiedene Probleme, darunter einen ungewöhnlich hohen Speicherverbrauch von etwa 500 MB unter Windows 7 (64 Bit) sowie Inkompatibilitäten mit Windows XP SP3.