2023/12/29

Ende 2023 ist Evernote technisch besser aufgestellt denn je

Evernote 2023 recap blog post (banner)

Das Jahr 2023 war ein turbulentes Jahr für Evernote, geprägt von großen Veränderungen und beeindruckendem Wachstum. Nach der Übernahme von Evernote durch Bending Spoons haben wir einige Maßnahmen ergriffen, um das Unternehmen finanziell nachhaltig aufzustellen. Neben der kollaborativen Bearbeitung wurden auch zwei neue leistungsfähige KI‑Funktionen eingeführt. Durch Tausende von Umfrageergebnissen, Gesprächen, E‑Mails, Forenbeiträgen und vielem mehr erhielten wir wertvolle Einblicke in die Wünsche unserer Kunden. Aber vor allem haben wir die technische Basis von Evernote grundlegend modernisiert.

Zu Beginn des Jahres hatten wir drei klare Zielvorgaben:

1. Evernote schneller machen

2. Evernote zuverlässiger machen

3. Evernote sicherer machen

Es gibt zwar immer noch viel zu tun, aber wir haben bereits beträchtliche Fortschritte gemacht. Nachfolgend habe ich die wichtigsten Entwicklungen des Jahres zusammengefasst und erhältst du einen kleinen Vorgeschmack auf das, was als Nächstes kommt.

Wir haben die Leistung zu unserer obersten Priorität erhoben

Eine der größten Herausforderungen, vor denen wir zu Beginn unserer Mitarbeit an Evernote standen, war die bestmögliche Verteilung unserer verfügbaren Ressourcen. Nicht jedes Problem im Zusammenhang mit einem Produkt lässt sich lösen, indem man unendlich viele Ressourcen darauf verwendet – im Gegenteil, ein solcher Ansatz erhöht fast immer nur die Komplexität und Ineffizienz und führt letztendlich zu schlechteren Ergebnissen. Da ein Haus, das auf einem schwachen Fundament gebaut ist, nicht lange stehen bleiben wird, haben wir uns für dieses Jahr entschlossen, uns verstärkt auf die Verbesserung des Fundaments des Produkts zu konzentrieren und nur einen kleineren Teil unserer Ressourcen auf Produktinnovationen zu verwenden.

Aus diesem Grund übertreffen unsere technischen Fortschritte in diesem Jahr bewusst die Menge an Produktneuerungen. Ich freue mich, euch mitteilen zu können, dass wir in Bezug auf unsere Hauptschwerpunkte (Geschwindigkeit, Zuverlässigkeit, Sicherheit) erhebliche Fortschritte vorweisen können. Gleichzeitig konnten wir auch mehrere nachgelagerte Nutzeffekte erschließen, die die weitere Entwicklung des Produkts in den kommenden Jahren begünstigen werden.

Werfen wir nun einen genaueren Blick auf die einzelnen Zielvorgaben.

Ziel 1: Evernote schneller machen

• In Evernote wurden die Echtzeitsynchronisation und kollaborative Bearbeitung eingeführt. Die neue Datenstruktur ermöglicht die sofortige geräteübergreifende Synchronisation der Inhalte deiner Notizen, was mit der ursprünglichen Struktur unmöglich gewesen wäre. Mehr dazu erfährst du hier.

In allen Clients wurde die Lade- und Synchronisationsgeschwindigkeit verbessert, indem wir systematisch veraltete experimentelle Lösungen, Feature Toggles und ungenutzten Code entfernt haben. Insgesamt wurden dadurch etwa vierzigtausend Zeilen an veraltetem Code entfernt.

Die initiale Synchronisierung zum Gerät (Down-Sync) wurde in Evernote Web um fast den Faktor 17 beschleunigt, indem wir das Speichersystem des Clients überarbeitet haben, damit es besser mit unseren anderen Clients harmoniert. Mehr dazu erfährst du hier.

Wir haben die Häufigkeit von Software-Updates deutlich erhöht und sind von einem Update alle vier bis acht Wochen zu einem regelmäßigen wöchentlichen Erscheinungsrhythmus übergegangen. Auf diese Weise werden Verbesserungen heute schneller umgesetzt als je zuvor.

Ziel 2: Evernote zuverlässiger machen

• Nach der Einführung der kollaborativen Bearbeitung wurden viele Altlasten im Code entfernt. Dadurch wurden nicht nur alle Vorgänge beim Bearbeiten von Notizen verlässlicher, sondern wir können nun auch etwaige Probleme leichter nachvollziehen und beheben.

Es wurde ein System für die anwendungsinterne Kommunikation implementiert, das Nutzerinnen und Nutzer zeitnah über laufende Synchronisationsprobleme informiert und sie ermutigt, die App neu zu starten, damit relevante Änderungen nicht verloren gehen. Dank dieses Systems ist die Zahl der Fälle, in denen Inhalte nicht mit dem Backend-Server synchronisiert werden, merklich zurückgegangen.

Im Backend von Evernote wurden umfassende Kontrollfunktionen eingeführt, um den Betriebszustand des Produkts fortlaufend überwachen zu können. Das neue Kontrollsystem erleichtert uns die Diagnose bei komplexen Fehlern, was zu ihrer schnelleren Behebung und einem insgesamt besseren Nutzungserlebnis führt.

• Das Backend von Evernote wurde mithilfe umfangreicher Datenmigrationen modernisiert. Wie bereits in einem früheren Blogartikel erwähnt, hatten sich in der monolithischen Backend-Anwendung von Evernote eine beträchtliche Menge an technischen Altlasten angesammelt. In diesem Jahr haben wir erhebliche Ressourcen darauf verwendet, die grundlegende Architektur zu modernisieren. Die Überführung der Daten von über 200 Millionen Evernote-Nutzerinnen und -Nutzern in ein neues System war eine große Herausforderung, aber unsere Bemühungen zahlen sich bereits aus. Dank der neuen Architektur erfordert das Backend von Evernote wesentlich weniger manuelle Eingriffe, was zu einer stabileren Entwicklungsumgebung und weniger Problemen für unsere Nutzer und Nutzerinnen führt.

• Es wurde damit begonnen, Teile des Client-Codes von Evernote neu zu schreiben. Schon bevor wir mit der Arbeit an der Codebasis für unsere Clients begannen, war uns klar, dass das Erstellen von Patches für wiederkehrende Probleme auf Dauer nicht tragbar sein würde. Stattdessen haben wir gezielt wichtige Teile der Codebasis von Grund auf neu geschrieben. Inzwischen haben wir die Notizbuchliste und mehrere Widgets auf den neuesten Stand gebracht. Als Nächstes werden wir uns dem Notizeditor, der Notizliste, der Aufgabenliste und der Suchfunktion widmen.

Ziel 3: Evernote sicherer machen

Als die Hüter von Evernote ist es für uns unerlässlich, die vertraulichen und persönlichen Daten unserer Nutzerinnen und Nutzer auf bestmögliche Weise zu schützen. Im Laufe des Jahres haben wir zentrale Neuerungen eingeführt, um Evernote noch besser vor böswilligen Aktivitäten zu schützen:

• Es wurde ein neues Verfahren für die Zwei-Faktor-Authentisierung eingeführt, wobei die SMS-basierte Authentifizierung durch sicherere Alternativen wie Google Authenticator, Authy und 1Password ersetzt wurde.

• Es wurden automatische Zugriffsbeschränkungen eingeführt, um missbräuchliches Nutzungsverhalten zu verhindern. Diese Vorsichtsmaßnahme begrenzt die Anzahl der Anfragen, die an die meisten Backend-Services von Evernote gerichtet werden können, und hindert potenzielle Angreifer daran, die Server von Evernote zu überlasten, um an Nutzerdaten zu gelangen. Diese Maßnahme dürfte legitime Nutzerinnen und Nutzer in keiner Weise beeinträchtigen. Ein echter Nutzer bzw. eine echte Nutzerin würde beispielsweise niemals innerhalb einer Stunde von über hundert verschiedenen IP‑Adressen aus auf das Backend von Evernote zugreifen.

Schwache Passwörter wurden vorsorglich zurückgesetzt. Für Konten, die nicht per Zwei-Faktor-Authentisierung abgesichert waren, wurde eine automatische Passwortrücksetzung durchgeführt. Diese Konten waren aufgrund ihres schwachen oder wiederverwendeten Passworts besonders anfällig gegenüber Angriffen. Die betroffenen Nutzer und Nutzerinnen wurden dann beim nächsten Öffnen von Evernote aufgefordert, ihr Passwort zu ändern. Und auch an dieser Stelle kann ich nur dringend dazu raten, eine Zwei-Faktor-Authentisierung einzurichten!

Diese ganzen Verbesserungen machen allerdings nur einen Bruchteil unserer Arbeiten an den technischen Aspekten von Evernote in diesem Jahr aus. Da die meisten Änderungen im Backend des Produkts stattfanden, werden die Nutzerinnen und Nutzer von Evernote wahrscheinlich nichts davon mitbekommen haben – und genau das war unsere Absicht. Unser oberstes Ziel bestand darin, all diese komplexen Prozesse durchzuführen, ohne das eigentliche Nutzungserlebnis zu beeinträchtigen. Und mit Ausnahme des Ausfalls im Oktober, auf den wir in einem früheren Beitrag eingegangen sind, hat sich diese Strategie auch als erfolgreich erwiesen.

Vorschau auf das Jahr 2024

Unsere Erfolge im Jahr 2023 bilden eine solide Grundlage für zukünftige Verbesserungen. Ich freue mich, dir nun auch schon einmal ein paar Dinge verraten zu können, an denen wir im Jahr 2024 arbeiten werden.

Produkt

In der ersten Hälfte des Jahres 2024 wird es nur wenige neue Funktionen geben, da wir uns auf die Feinabstimmung der bereits vorhandenen Komponenten von Evernote konzentrieren werden. Folgende Dinge kannst du in den kommenden Monaten erwarten:

• Deutliche Verbesserungen des Nutzungserlebnisses. Bislang haben wir den größeren Problemen in Bezug auf die Zuverlässigkeit Priorität eingeräumt. Doch was Nutzerinnen und Nutzer von Evernote (mich eingeschlossen) häufiger nervt, sind eher Verkettungen mehrerer kleiner Fehler als ein oder zwei wirklich gravierende Probleme. Ab Januar 2024 wird sich das Evernote-Team einigen der offensichtlichsten Unzulänglichkeiten widmen, um das Nutzungserlebnis von Evernote angenehmer denn je zu gestalten.

Eine überzeugende neue Benutzeroberfläche, die bereits ab Januar für Nutzerinnen und Nutzer der Desktopversionen verfügbar sein wird. Die neue Benutzeroberfläche bietet den Nutzern und Nutzerinnen das vertraute und beliebte Nutzungserlebnis, allerdings verpackt in einem übersichtlicheren und modernen Design. Aber keine Sorge, es wurden weder Schaltflächen verschoben noch Funktionen neu angeordnet oder bestehende Arbeitsabläufe durcheinandergebracht.

Technologie

Während wir den Monolithen weiter modernisieren und bestimmte Teile der Client-Codebasis neu programmieren, werden wir parallel auch einige neue Projekte in Angriff nehmen:

• Unsere spezielle clientseitige Datenbank wird durch eine modernere Lösung ersetzt. Unsere derzeitige Lösung, die intern den Namen „Conduit“ trägt, ist tendenziell langsam, schwer zu warten und der Hauptengpass in Hinblick auf eine bessere Leistung der Clients. Im Jahr 2024 werden wir sie daher durch eine effizientere und zuverlässigere Alternative ersetzen. Das wird uns nicht nur die weitere Entwicklung erleichtern, sondern auch etliche der kleineren Fehler und Ungereimtheiten beheben, auf die unsere Nutzerinnen und Nutzer stoßen.

• Als neues Verfahren zum Synchronisieren von Metadaten wird RENT eingeführt. RENT ist das Pendant zu unserer im April 2023 eingeführten kollaborativen Bearbeitung. Während bei der kollaborativen Bearbeitung die sofortige geräteübergreifende Synchronisation der Inhalte von Notizen im Vordergrund steht, kümmert sich RENT um die Synchronisation der Metadaten von Notizen. Dank RENT werden Änderungen an Notiztiteln, Miniaturansichten, Datumsangaben und Inhalten der Notizliste schneller denn je auch auf anderen Geräten angezeigt.

Während wir uns dem Ende des Jahres (und dieses Berichts!) nähern, bin ich ausgesprochen stolz auf die klugen, engagierten Menschen, die unermüdlich daran gearbeitet haben, Evernote weiter zu verbessern. Darüber hinaus möchte ich an dieser Stelle auch unseren Kunden für ihr anhaltendes Vertrauen und ihre Unterstützung meinen besonderen Dank aussprechen. Wie wir alle wissen, hat das vergangene Jahr einige Unsicherheiten und Veränderungen mit sich gebracht, aber es gibt allen Grund, mit Vorfreude und Optimismus in die Zukunft zu blicken.

Auf Wiedersehen im Jahr 2024!

– Federico