Home

Versionen

2025-11-08 08:00

Da ich heute nicht so viel Zeit habe, dachte ich mir ich könnte mal über Versionen sprechen. Genau genommen, wie ich mir gedacht habe, dass ich meine Versionsnummern vergeben möchte.

Versionen

Ich bin gerade mit dieser Software in Version 0.1.1[^1]. Eigentlich wäre das die Version 0.1.1.0, aber die letzte Null spare ich mir in diesem Zusammenhang.

Ich meine, klar, Programmierern erzähle ich hiermit definitiv nichts neues. Zumindest hoffe ich das, denn wenn es neu ist, mache ich es wahrscheinlich falsch. Aber ich versuche trotzdem aufzuschlüsseln, wie ich zu meinen Versionsnummern komme.

Die beiden wichtigsten Punkte zuerst: Klar, eine Version die mit 0 beginnt bedeutet, dass die Software noch nicht einmal so weit ist, dass sie wirklich veröffentlicht werden kann. Und auch klar ist, die Versionsnummer darf immer nur steigen.

Die 0. Stelle

Wie schon am Anfang gesagt, die nullte Stelle, also die in meinem Fall erste Stelle zeigt an, dass es sich noch um eine Vorversion der Software handelt. Ich bezeichne sie so, weil sie vor der eigentlich ersten Stelle kommt, aber nur, wenn sie gebraucht wird. Sobald die Software veröffentlichungsfähig ist, wird es in meinen Versionsnummern (so der Plan) nur 3 Stellen geben.

Die 1. Stelle

Die erste Stelle beinhaltet immer neue Features. Also wenn ich von 0.1 auf 0.2 Stelle wird das bedeuten, dass ich neue Features eingefügt habe. Nach meinem aktuellen Plan wird das eine Kommentarfunktion sein.

Die 2. Stelle

Die zweite Stelle bedeutet, dass es Verbesserungen gegeben hat. Bei dem Anstieg von 0.1 auf 0.1.1 war das zum Beispiel das Vermeiden von Mailversand für das Kontaktfeld[^2]. Das ist für mich das klassische Beispiel einer Verbesserung, oder vielleicht auch nur Veränderung. Auch für Version 0.1.2 wird dies wieder der Fall sein, dann sollte es sich um verbesserte Barrierefreiheit und einige andere Verbesserungen handeln.[^4]

Die 3. Stelle

Die dritte Stelle steht bei mir für Bugfixes. So sind mir jetzt schon einige Bugs bekannt, die dann wahrscheinlich in Version 0.1.1.1 gefixt werden. Sie sind alle nicht schlimm, einer kann nur von mir ausgelöst werden, der zweite ist einfach eine fehlende Übersetzung und beim dritten handelt es sich um eine Kleinigkeit die es ermöglicht Posts zu früh zu lesen, daher wird der Fix dafür wahrscheinlich am Montag eingepflegt werden.

System

Wenn ich das richtig verstanden habe, nennt sich das ganze ein "Feature-based Versioning". Meine Version ist wahrscheinlich auch recht nahe am "Semantic Versioning", bei dem es vor allem darum geht, wie wahrscheinlich es ist, dass ein Upgrade oder eine Nutzung Daten zerstören kann. Da dies bei mir allerdings gar nicht vorkommen soll und auch Verbesserungen oder sogar Bugfixes manchmal Datenbankveränderungen benötigen, habe ich mich für meinen Weg entschieden.[^5]


[^1]: Entgegen dem, was in der List der Lizenzen steht. Das muss ich beim nächsten Release wieder anpassen.

[^2]: Nachdem ich am Donnerstag ins verlängerte Wochenende gefahren bin und dort festgestellt habe, dass ich auf meine E-Mail sehr viele unerwünschte Nachrichten über Preise bekommen habe. Daraus habe ich verschiedene Dinge gelernt. Erstens "Never ship on friday", zweitens "Wenn du weg fährst, nimm Passwörter mit" und drittens "Wenn etwas genutzt werden kann um Blödsinn zu machen, wird es genutzt!"[^3]

[^3]: Terry Pratchett schrieb in "Der Zeitdieb": "Wenn du in einer versteckten Höhle einen Schalter anbringst und ein Schild aufhängst 'ENDE-DER-WELT-SCHALTER. BITTE NICHT DRÜCKEN', hätte das Schild nicht einmal Zeit zu trocknen."

[^4]: Nicht zuletzt einen Honeypot um die Bots vielleicht etwas einzudämmen. Siehe [^2]

[^5]: Nachdem ich diesen Post fertig gemacht hatte, fiel mir auf, dass ich nun noch eine weitere Verbesserung in die Version 0.1.2 einfügen muss: Die Darstellung von Fußnoten, so dass man sie vernünftig auslesen kann. Und auch das CSS muss ich wohl anpassen, dass Unter-Überschriften besser angezeigt werden.

Impressum Kontakt Datenschutz Lizenzen