Firma Cultured Code ogłosiła właśnie istotną modernizację swojego najpopularniejszego produktu — aplikacji do zarządzania zadaniami Things 3. Całkowicie przebudowano zaplecze chmurowe odpowiedzialne za synchronizację danych pomiędzy urządzeniami użytkowników. Co istotne, cała infrastruktura została napisana od podstaw w języku Swift, opracowanym przez Apple, i jest już aktywna dla wszystkich użytkowników aplikacji Things 3.
Chociaż z zewnątrz aplikacja funkcjonuje bez zmian i oferuje ten sam intuicyjny interfejs użytkownika, to pod maską doszło do przełomowych zmian. System synchronizacji zadań pomiędzy iPhone’ami, iPadami, komputerami Mac, zegarkami Apple Watch, a nawet urządzeniami Apple Vision Pro został całkowicie przepisany na Swift. Proces był na tyle dobrze zaplanowany, że użytkownicy nie odczuli żadnych przerw w działaniu aplikacji, co jest sporym osiągnięciem biorąc pod uwagę skalę i znaczenie tych zmian.
Poprzednia wersja zaplecza Things Cloud była oparta o język Python 2 i środowisko Google App Engine. Ten zestaw technologii, choć służył niezawodnie przez ponad dekadę, z czasem zaczął ograniczać możliwości dalszego rozwoju. Twórcy aplikacji wskazali na coraz większe koszty utrzymania, dłuższy czas odpowiedzi systemu oraz potencjalne ryzyko związane z dynamicznym typowaniem w Pythonie jako główne przyczyny konieczności zmiany technologicznej. Co ważne, same algorytmy synchronizacji — odpowiedzialne za m.in. rozwiązywanie konfliktów między edytowanymi offline zadaniami — pozostały bez zmian, gdyż dzięki oparciu ich na solidnym modelu matematycznym sprawdzały się doskonale.
Choć Swift jest znany głównie jako język tworzenia aplikacji mobilnych i desktopowych dla systemów Apple, jego wykorzystanie po stronie serwera pozostaje nadal rzadkością. Mimo to Cultured Code już w 2021 roku rozpoczęło eksperymentowanie z tworzeniem usług serwerowych w Swift, a po serii udanych prób z mniejszymi komponentami, firma zdecydowała się na pełne przepisanie całej infrastruktury backendowej.
Migracja do nowego systemu została przeprowadzona niezwykle starannie. Nowy backend oparty na Swifcie działał równolegle ze starszym rozwiązaniem, przetwarzając te same dane dla celów testowych, ale bez wpływu na końcowych użytkowników. Pozwoliło to zespołowi inżynierów na dopracowanie szczegółów, jednocześnie monitorując zachowanie systemu w warunkach produkcyjnych. Po potwierdzeniu poprawności działania i wydajności nowej infrastruktury, w pierwszym kwartale 2024 roku przełączono całą bazę użytkowników Things 3 na nowe rozwiązanie.
Efekty tej zmiany są więcej niż imponujące. Nowy system obsługuje nawet 500 żądań na sekundę dzięki rozproszonemu klastrowi Kubernetes, złożonemu z czterech węzłów wirtualnych, z których każdy ma 2 rdzenie CPU i 8 GB pamięci RAM. Takie rozwiązanie pozwoliło nie tylko znacznie zwiększyć wydajność przetwarzania żądań synchronizacji (nawet czterokrotnie), ale również zmniejszyć koszty obliczeniowe ponad trzykrotnie w porównaniu do wcześniejszego systemu.
Na przestrzeni lat Things 3 zyskało ogromne uznanie wśród użytkowników ekosystemu Apple. Dowodem na to są dwa przyznane aplikacji wyróżnienia Apple Design Award, które potwierdzają konsekwencję projektową i niezawodność działania. Modernizacja backendu tylko wzmacnia tę reputację — użytkownicy mogą dziś liczyć nie tylko na spójny i elegancki interfejs, ale także na nieporównywalnie szybszą i stabilniejszą synchronizację swoich zadań na wszystkich urządzeniach Apple.