Beginn von Version 0.2

Die Arbeit an Version 0.2 hat begonnen. Erster Schritt hierbei war das Erstellen des Eingabe-Fensters für das Profil. Soweit ist das auch abgeschlossen und sieht so aus:

Horizont Profil bearbeiten

Ja, da werden einige Daten abgefragt. Wie man an dem * jedoch erkennen kann, sind nur ganz wenige davon zwingend erforderlich.

Benutzername

Man könnte es auch Anzeigename nennen, denn dieser Eintragt dient ausschliesslich dazu, von anderen Personen erkannt zu werden. Der Name ist dabei freiwählbar, wenngleich natürlich auf die Verfügbarkeit geprüft wird.

Geburtsdatum

Dieses Feld hat einen bestimmten Grund. Derzeit spiele ich mit dem Gedanken, Einträge im Notizbuch so markierbar zu machen, dass daraus auf den Inhalt geschlossen werden kann. Beispielsweise »ab 18«, oder ähnlich. In dem Fall kann der Eintrag des Geburtsdatums dazu genutzt werden, Personen unter 18 Jahren den entsprechenden Eintrag nicht zugänglich zumachen.

Geschlecht

Das ist eigentlich nebensächlich. Auf diese Weise soll man eben angeben müssen, ob man ein Mann, oder eine Frau ist. Unter Umständen lässt sich von dem Benutzernamen nicht darauf schliessen. Es dient einfach dazu, Missverständnissen vorzubeugen.

Alle andere Felder

Diese dienen ausschliesslich dazu, besser gefunden werden zu können. Je mehr Angaben man hier macht, desto wahrscheinlicher ist es schliesslich, über eine noch zu entwickelnde Suchfunktion gefunden zu werden. Insofern man dies wünscht. Wer das nicht will, lässt die Felder einfach leer.

Der Infotext ist für Informationen gedacht, die man über sich selbst preisgeben möchte. Ich zum Beispiel könnte dort meine Tätigkeit als Autor angeben, oder etwas in der Art. Was man da rein schreibt ist schlussendlich egal.

Die Interessen sind dafür gedacht, Menschen mit ähnlichen Interessen zu finden. Ähnliches gilt auch für den Beziehungsstatus und nach was man sucht. Es ist nur dafür gedacht, die richtigen Personen zu finden und von diesen gefunden zu werden. Unter Umständen kann die Angabe, was man sucht, das Interesse von jenen abmildern, die ganz bestimmte Vorstellungen haben. Inwieweit sich das in diesem System besser schlägt, als in allen anderen, sei mal dahingestellt.

Profilbild

Auch wenn bereits ein entsprechender Eintrag vorhanden ist, ist er derzeit noch nicht verfügbar. Das liegt daran, dass ich noch keine wirkliche Ahnung habe, wie ich das realisieren werde. Möglichkeiten gibt es da viele und ich bin dabei, diese zu prüfen und auf ihre Tauglichkeit hin zu testen. Die effizienteste Methode wird es schliesslich werden. Bis dahin, gibt es eben noch kein Profilbild.

Version 0.1 abgeschlossen

Die Entwicklung an Version 0.1 ist abgeschlossen. Die Software ist dazu in der Lage, sich mit dem Server zu verbinden, einen Account anzulegen und sich in diesen einzuloggen.

Das System überprüft dabei, ob bei der Registrierung die angegebene E-Mail Adresse noch verfügbar ist und ob die Passwörter übereinstimmen. Bislang ist noch keine Validierung der E-Mail Adresse implementiert.

Beim Login-Vorgang prüft das System, ob die angegebene E-Mail Adresse vorhanden ist und vergleich die Passwörter. Stimmen sie überein, ist der Login-Vorgang abgeschlossen und das Fenster wird automatisch geschlossen. Sollte die E-Mail Adresse, oder das Passwort falsch sein, wird eine Fehlermeldung ausgegeben.

Weiter geht es mit dem Profil für den Account. Im nächsten Schritt soll diese angelegt, abgerufen und bearbeitet werden können.

Der Beginn mit Version 0.1

Version 0.1 ist abgeschlossen, sobald die grundsätzliche GUI, die Registrierung und der Login funktionsfähig sind.

Zum Zeitpunkt der Veröffentlichung dieses Artikels sind die Grundzüge der GUI erstellt, allerdings noch ohne weitere Funktionen. Lediglich das Login- und Registrierungsfenster können geöffnet werden.

Hauptfenster

Hauptfenster Horizont

Es macht noch nicht viel her, doch sind bereits alle derzeit relevanten Punkt vorhanden.

Die linke Spalte soll alles beinhalten, mit dem man sich verbunden hat. Seien es Freunde, oder Gruppen. Ein dort ausgewählter Eintrag wirkt sich umgehend auf das Notizbuch und den Chat aus. Derzeit ist geplant, mittels Rechtsklick ein Menü zu erzeugen, in welchem man sich das Profil des Freundes, oder die Informationen der Gruppe anzeigen lassen, oder den Eintrag löschen kann.

Die mittlere Spalte beherbergt oben das jeweilige Notizbuch des Freundes, oder der Gruppe, darunter werden die Nachrichten des Chats angezeigt während ganz unten ein Eingabefeld sein wird, in dem man eine Nachricht abschicken kann. Derzeit ist noch nicht ganz klar, ob unter dem Notizbuch ein Feld sein wird, in welches man direkt etwas in das Notizbuch einfügen kann, oder ob dafür ein extra Button in die Funktionen eingefügt wird. Das zeigt sich erst im Laufe der Entwicklung.

Die rechte Spalte beinhaltet die verschiedenen Funktionen, unter denen man auswählen kann. Derzeit vorhanden sind nur Login und Profil, wobei nur der Login-Button zur Zeit auch eine Funktion enthält. Je nach Menge der Funktionen ist es auch nicht ausgeschlossen, dass diese Spalte noch horizontal geteilt und der untere Bereich anderweitig verwendet wird. Ob und wie steht jedoch noch nicht fest.

Login

Login Fenster

Das Fenster ist unspektakulär. Derzeit ist vorgesehen, sich über die E-Mail Adresse einzuloggen, wie man es beispielsweise von Facebook, Google+ (welches zum Zeitpunkt dieses Artikels noch existierte) und MeWe her kennt. Unter Umständen wird der Login zukünftig aber auch über den Benutzername erfolgen können, dies steht augenblicklich jedoch nicht fest.

Das Passwort wird natürlich zum Schutz nicht angezeigt.

Der Login-Button funktioniert derzeit noch nicht. Dafür muss erst einmal eine Registrierung durchgeführt werden können. Dies gelingt über den Button “Registrieren”.

Registrieren

Registrieren Fenster

Wie zu sehen ist, benötigt man ausschliesslich die E-Mail Adresse und ein Passwort, um sich bei Horizont zu registrieren. Aus momentaner Sicht werden es die einzigen Angaben sein, die für das Horizont-Netzwerk notwendig sein werden. Natürlich wird man noch einen Benutzername, bzw. Anzeigename angeben müssen, doch dieser wird frei wählbar sein und muss nicht den realen Namen beinhalten. Eine Prüfung, ob der gewählte Name bereits vorhanden ist, wird ebenfalls eingebaut, um doppelte Namen zu verhindern.

Nächste Schritte

Die Registrierung steht als nächster Entwicklungsschritt auf dem Programm. Nachdem die Daten eingegeben und die beiden Passwörter, die ebenfalls aus Sicherheitsgründen nicht angezeigt werden, verglichen wurden, geht die Registrierung an den Server. Dieser veranlasst den Versand einer E-Mail an die angegebene Adresse, um den Account freizuschalten.

Ist dieser Schritt abgeschlossen, wird der Login-Vorgang implementiert, dem schliesslich das Anlegen des Profils folgen wird.

Ein kleines soziales Netzwerk

Beschreibung

Horizont ist eine Machbarkeitsstudie um herauszufinden, ob ich ein solches Projekt alleine bis zur Serienreife realisieren kann. Es handelt sich um ein soziales Netzwerk, welches im Gegensatz zu den etablierten Vertretern nicht auf dem World-Wide-Web basiert, sondern eigene Software verwendet.

Konzept

Im Gegensatz zu anderen Netzwerken wird es in Horizont keinen öffentlichen Stream geben, welcher die Inhalte der in der Freundesliste eingetragenen Personen anzeigt.

Schwerpunkt des Netzwerkes liegt auf zwei Komponenten:

  1. Das Notizbuch
  2. Der Chat

Das Notizbuch

Jede Person und jede Gruppe in Horizont hat ein eigenes Notizbuch, auf welches Beiträge gepostet, bewertet und kommentiert werden können. Es stellt das Äquivalent zu den bekannten Streams dar, ist aber nur dann sichtbar, wenn eine bestimmte Person, oder eine Gruppe ausgewählt wurde.

Der Chat

Bei dem Chat handelt es sich um das bekannte Prinzip. Wie auch das Notizbuch wechselt der Chat zwischen Personen und Gruppen hin und her, so wie diese ausgewählt wurden.

Zielsetzung der Version 1.0

  • Registrierung
  • Login
  • Profil
  • Notizbuch
  • Chat (OTR Verschlüsselt)
  • Gruppen
  • Suche
  • Freundesliste

Entwicklung

Entwickelt wird die Software in C++ mit Nano als grafische Benutzeroberfläche. Der erste Client wird, da er darauf entwickelt wird, auf Linux lauffähig sein, wenngleich auf Plattform übergreifende Entwicklung Wert gelegt wird. Nach Möglichkeit soll der Client ohne grössere Anpassungen auch auf Windows compiliert werden können. Auch die Portierung auf andere Betriebssysteme ist geplant.

Auch eine Umsetzung für Android-Smartphones ist fest eingeplant, auch wenn diese Umsetzung erst vollzogen werden soll, wenn die entsprechende Funktionsfähigkeit des Systems gewährleistet werden kann.

Schliesslich ist auch eine Oberfläche für den Browser angedacht, auch wenn in dem Punkt noch nicht alle Fragen hinreichend geklärt sind.