Hallo Krille! Wir treffen uns hier beim UBports Dekko Hackathon in München. Was hat dich bewogen, zum Hackathon zu kommen?
Der Spaß am Entwickeln. Vor allem andere Entwickler aus der UBports Community zu treffen, sich mit ihnen austauschen und gemeinsam etwas zu schaffen. Und die Leute wirklich mal in real zu sehen.
Welche Rolle nimmst du in der UBports-Welt ein?
Ich würde sagen, einfach App-Entwickler. Ich hab ja ein paar Apps entwickelt, hauptsächlich wäre das FluffyChat. Bei Apps von anderen versuche ich auch ab und zu was zu helfen, wenn ich das schaffe.
Was ist eigentlich FluffyChat?
FluffyChat ist ein Messenger für Ubuntu Touch, der das Matrix-Protokoll verwendet. Deswegen ist er kompatibel mit Messenger-Apps auf anderen Plattformen, die ebenfalls das Matrix-Protokoll verwenden. Am meisten ist da wahrscheinlich Riot verbreitet. Das finde ich eben auch sehr wichtig, da man mit den meisten Messengern das Problem hat, nur mit den Leuten schreiben zu können, die den selben Messenger nutzen. Es haben halt nicht so viele Leute Ubuntu Touch. Deswegen braucht man einen Messenger, der universeller ist.
Was sind die Vorteile von Matrix gegenüber anderen Messengern wie Telegram, die es ja auch für Ubuntu Touch gibt?
Matrix ist dezentral. Man kann sich seinen Server aussuchen oder sogar selber aufsetzen. Ich denke, das ist der größte Vorteil. Und die Ende-zu-Ende-Verschlüsselung von Matrix würde ich auch gegenüber der von Telegram bevorzugen. Die Ende-zu-Ende-Verschlüsselung von Matrix unterstützt auch Gruppenchats. Die von Telegram nicht.
Wie verbreitet ist das Matrix-Protokoll bisher?
Ich hab dafür keine Zahlen, weil man in einem dezentralem Netzwerk nicht so einfach Nutzerzahlen bekommen kann. Es kann ja jemand einen Matrix-Server betreiben mit Tausenden Nutzern und sagt es keinem. Es sind aber wohl noch nicht so viele wie beispielsweise bei XMPP.
Du hast also schon ein paar Kontakte in deiner Liste?
Ja, wobei einige von denen Whatsapp verwenden. Mit denen kommuniziere ich über eine Whatsapp-Matrix-Bridge. Das verwendet die Whatsapp-Web-API, was allerdings heißt, dass man dafür ein Android- oder iOS-Gerät ständig herumliegen haben muss, um eine Verbindung offen zu halten. Wenn diese Bedingung erfüllt ist und es auf dem Matrix-Server diese Bridge gibt, dann kann man tatsächlich mit Whatsapp-Kontakten chatten.
Ähnlich funktionieren Bridges zu Facebook-Messenger, zu Telegram und anderen Systemen. Die Bridges zu Telegram oder XMPP benötigen dank der offenen API kein zusätzliches Gerät. Die Bridge zu Telegram funktioniert so, dass man Gruppenchats in Matrix mit Gruppenchats in Telegram verbinden kann, so dass man in eine Matrix-Gruppe geht und es ist, als wäre man in der gekoppelten Telegram-Gruppe.
Unterstützt FluffyChat die Ende-zu-Ende-Verschlüsselung von Matrix bereits?
(lacht) Das ist theoretisch kurz davor, fertig zu sein, immer noch. Mir fehlt gerade etwas die Zeit dafür. Ich wollte die nächsten Wochen daran weiter arbeiten. Mein Versprechen lautet: Es wird eher fertig sein als der Berliner Flughafen.
Wie viel Arbeit macht es eigentlich, einen Messenger zu entwickeln?
Ein Messenger ist wohl eine der komplexesten Apps, die man machen kann. Man denkt sich am Anfang, ein Messenger wäre ziemlich einfach. Tatsächlich ist es aber recht kompliziert. Das hat auch damit zu tun, dass Nachrichten von außen eindringen und deswegen der Kontrollfluss in der App sehr asynchron ist. Deshalb sind auch Fehler schwerer zu finden.
Der Conversations-Entwickler Daniel Gultsch, den ich sehr bewundere, hat einmal gesagt, dass die Entwicklung eines Messengers für eine Plattform ein Vollzeitjob ist. Ich hab leider keine Zeit, Vollzeit an FluffyChat zu arbeiten, aber ich würde ihm da schon zustimmen.
Kann man FluffyChat auch auf dem Desktop nutzen?
Ja. Einfach ein snap install fluffychat
oder in Ubuntu Software nach FluffyChat suchen und dann hat man FluffyChat auf dem Desktop. Vielen Dank an Tim für die Snapcraft-Konfiguration, die das ermöglicht hat!
Ist eine Smartphone-App auf dem Desktop überhaupt sinnvoll bedienbar?
Ja, natürlich. Ubuntu Touch hatte ja von Anfang an die Konvergenz im Sinn. Dementsprechend sind Apps, die für Ubuntu Touch entwickelt werden, auch sehr gut mit Maus und Tastatur zu bedienen.
Woher kommt eigentlich das Fluffy in FluffyChat?
Das hängt mit dem Design von FluffyChat zusammen. Das ist so ein bisschen pink und lila gehalten. Im Grunde ein bisschen als Witz gedacht. Ich hab mir mal so überlegt, woran es bei quelloffenen Messengern und Crypto-Messengern hapert, dass die sich nicht durchsetzen. Ich bin zu dem Schluss gekommen, dass die Messenger sehr kompliziert und schwer zu verstehen sind. Außerdem wirken sie meist sehr technisch und machen nicht so viel Spaß. Deshalb dachte ich mir, ich versuch einfach mal beim Design den Spaß in den Vordergrund zu stellen und einen Messenger zu machen, der sich im Grunde genauso bedient wie die anderen Crypto-Messenger, aber einfach aussieht. Man hat also einen Messenger, der aussieht, als wäre er für Kinder gemacht. Das assoziieren die Benutzer dann damit, dass er kinderleicht zu bedienen ist.
Fluffy ist nebenbei erwähnt auch noch die englische Übersetzung vom Namen meiner Katze.
Da du dich gern mit Design-Fragen beschäftigst: Würdest du gern grundlegend etwas ändern am Design von Ubuntu Touch?
Grundlegend auf jeden Fall nicht. Ich finde, das Design von Ubuntu Touch ist ziemlich hübsch geworden. Da hat Canonical wirklich gute Designer gehabt. Hier und da würde ich vielleicht ein paar weitere Animationen einbauen. Animationen in Seitenübergängen finde ich sehr schön. Sollte Ubuntu Touch irgendwann mal auf Qt Quick Controls 2 umstellen, dann hätten wir die ja auch. Ansonsten finde ich das Design immer noch sehr gut.
Was sind die Gründe, warum du überhaupt Ubuntu Touch nutzt und nicht irgend ein anderes mobiles Betriebssystemen?
Das hat verschiedene Gründe. Ich bin schon seit Jahren ein Fan von Ubuntu auf meinem Rechner. Entsprechend wollte ich auch Ubuntu Touch auf meinem Smartphone ausprobieren. Ich hab früher Android und Firefox OS verwendet. Ich finde aber die Idee toll, auf meinem Smartphone das selbe Betriebssystem verwenden zu können, wie auf meinem Rechner.
Bei Android hat man zwar immer noch viel mehr Möglichkeiten, aber immer auch Probleme mit dem Datenschutz. Auch wenn es tolle Projekte wie LineageOS gibt, womit man sich schon besser schützen kann, mach ich mir doch Sorgen, inwiefern Google die Android-Plattform in Zukunft nicht weiter einschränken und verschließen könnte. So ein Monopol wie Android ist eben nie besonders gut. Deshalb finde ich, ist Ubuntu Touch ein gutes Projekt, was man unterstützen kann.
Was machst du so, wenn du gerade keine quelloffene Software entwickelst?
Dann studiere ich. Ich bin im Master Informatik und hoffentlich bald fertig.
Wie sehen deine weiteren Pläne als Entwickler aus?
Ich möchte dann noch ein, zwei Features in FluffyChat einbauen. Da wären vor allem Sprachnachrichten. Danach haben mich viele gefragt und ich fände das auch sehr cool. Ansonsten möchte ich weiterhin bei Hackathons partizipieren und da einfach zusammen mit anderen an tollen neuen Features zu arbeiten.
Zum Abschluss: Was möchtest du der Welt noch mitgeben?
Come to Ubuntu Touch, we have Cookies!
Vielen Dank für das Gespräch!
Gerne.