Pamięć średniego trwania

Dzisiaj krótko, dobitnie i z lajfhakowym wymiarem. Puenta od razu: wszelkie dane, które chcecie przechowywać długo – nie przechowujcie ich w aplikacjach. Gałczyński apek nie lubi: nie ocalają od zapomnienia. Sprawnie działają w perspektywie miesięcy i niskich lat – w tej perspektywie są świetne. Ale nie na dłużej.

O co chodzi? Najogólniej mówiąc, o sposoby przechowywania danych. Kiedyś, w początkach ery komputerów, generalnie w latach 90. i dwutysięcznych, oczywistością i jedyną możliwością było przechowywanie danych w plikach. Swoje wypracowania z liceum – jeśli ciągle je masz – masz właśnie dlatego, że miałeś je w plikach. A pliki ani jeść nie wołają, ani się nie starzeją. Może zabraknąć magnetowidów do odtwarzania kaset VHS, ale pliki DOC czy PDF nie staną się nieczytelne nigdy.

Ale jakoś w drugiej dekadzie XXI wieku coraz więcej rzeczy zaczęliśmy przechowywać w aplikacjach. Co jest oczywiście super wygodne i poręczne, ale… Właśnie. Doświadczenie uczy, że aplikacje są świetną pamięcią krótko- i średnioterminową. Przechowują dane na miesiące i lata. Ale nie na dekady. Dlatego po prostu, że są ciągle zbyt świeżym nabytkiem naszej cywilizacji, nieustandaryzowanym i zmiennym. Podlegają fluktuacjom i modom. Jeśli przechowujesz dane w aplikacji – nie masz pewności, że jak długo je będziesz mieć. Nie chodzi przy tym o to, że zły wirus, czy zapaść dysku sprawią, że te dane fizycznie znikną. Chodzi o to, że w świecie aplikacji same standardy odczytu i przechowywania zmieniają się zbyt szybko. Wrzucasz dane do aplikacji, ale może się niespodziewanie okazać, że tej aplikacji już więcej nie będzie. Albo że ona nie działa w nowym systemie. Albo w ogóle, że będzie inaczej.

Stąd też: nazwijcie mnie konserwatystą (jestem nim faktycznie, bo pewne rzeczy chcę naprawdę conservare – zachować), ale radzę Wam wszem i wobec, że wszystkie dane, które realnie chcecie mieć na lata: kopiujcie do plików, do starych i niezmiennych formatów XLS, DOC, PDF, JPG. One są jak wieczysta Ewangelia – nie zdezaktualizują się nigdy. Co będzie natomiast z apkami-świeżynkami: tego na dłuższą metę nigdy do końca nie wiadomo. A ponadto, nazwijcie mnie paleokonserwatystą, ale to, co chcecie przechowywać przez dziesięciolecia: drukujcie i miejcie na papierze.

I teraz dubeltowa przypowieść, co mnie popchnęło do tego tekstu. Bo jak zwykle, zawsze jest coś. Pierwsze primo: dobry znajomy opowiadał, jak stracił niedawno dane w pewnej aplikacji w sposób następujący. Pamięć w telefonie się kończyła, więc telefon zaczął niektóre aplikacje przechowywać w chmurze. Działa to tak, że fizycznie i dane i sama aplikacja są w chmurze, a na ekranie telefonu jest tylko ikonka. Chcesz użyć: otwierasz, a wtedy aplikacja ściąga się z chmury. Czasem taki układ działa wolno, ale w jakimś sensie jest smart, szczególnie dla apek, których używamy rzadko. No więc działało, ale – jak to za aplikacjami – do czasu. Stało się bowiem tak, że ta aplikacja zniknęła z dnia na dzień z AppStore. Ot, wyszła z mody, przestała być in. Wyroki fajnizmu są nieprzewidywalne. Samo to nie byłoby jeszcze problemem… ale znajomy nie miał jej przecież ściągniętej u siebie, ale miał ją w tej opcji “w chmurze”. I teraz nie może jej w ogóle otworzyć, żeby te dane gdziekolwiek wytransferować. Bo tej aplikacji nie ma u siebie ani nie ma jej już w AppStore. I szlus. To jest ten paradoks: dane nie zniknęły, nic ich nie skasowało. Ale zniknęły środki dostępu do nich. To jest to zagrożenie świata aplikacji właśnie.

Przykład drugi. Sam mam w telefonie inną apkę, w której gromadzę pewien specyficzny typ danych. Nic super ważnego, ale poręczne dla mnie. I zasmuciłbym się, gdybym stracił. Na razie działa i śmiga. Ale noszę się od jakiegoś czasu z zamiarem sporej aktualizacji oprogramowania. I przyuważyłem – na szczęście! – że ta aplikacja ostrzega mnie, że po tej aktualizacji już działać nie będzie, bo producent przestał produkować nowe wersje. I koniec, kropka. Zwróćcie uwagę, że to jest uliczka bez wyjścia: nie zmuszę przecież jakiegoś nieznanego producenta apek, by wypuścił wersję zgodną z nowym systemem. Z drugiej strony (i chyba najważniejsze) zwróćcie też uwagę na paradoks. Wygoda i poręczność aplikacji zasadza się w znacznej mierze na tym, że one przechowują specyficzne dane w specyficzny sposób. Wszystko co mam w apkach mógłbym mieć ręcznie w Wordzie czy Notatniku… tyle że byłoby to strasznie toporne we wpisywaniu. Istotą apki do przechowywania danych jest to, że ona upraszcza proces wpisywana… ale kosztem tego, że dużo trudniej wytransferować z niej dane gdzie indziej. Bo z Notatnika mogę wszędzie i zawsze. A z apki – właśnie nie. Jeśli na przykład mam, na ten przykład, aplikację Wieniczka, w której notuję ile alkoholu wypiłem którego dnia i jeśli ona przestaje być aktualna i muszę się przenieść na nową, powiedzmy na aplikację Jurek, to nie ma żadnej siły, która zmusiłaby firmę Tamta Rosja, produkującą aplikację Wieniczka, żeby transfer danych z niej do apki Jurek, robionej przez firmę Teraz Polska, był łatwy i w ogóle wykonalny. On może być zwyczajnie niemożliwy i wszystko może być do zrobienia ręcznie.

Oczywiście, w tym czy innym przypadku może to się i udać. Ale długofalowo – a o przechowywaniu długofalowym mówimy – zawsze wyjdzie coś. Tak to jest z aplikacjami. Nie ma żadnej gwarancji, że one będą działały przez lata. One nie są dość twardym bytem.

Jeśli zanadto zaufamy apkom to – prędzej czy później – zaczniemy się budzić z ręką w nocniku. Będziemy mieć oczywiście pamięć krótkotrwałą, ostatnie 2-3 lata życia zapisane w apkach, ale to tyle. Nie będziemy mieć tej kluczowej, pamięci średniego trwania. I staniemy w tej kretyńsko-naiwnej pozycji, w której będzie się nam wydawało, że świat się zaczął wczoraj. Nie polecam.

Stąd też, jako się rzekło. Wszystkie dane, które chcecie, żeby trwały długo – róbcie ich kopie poza aplikacjami. W Wordzie, Excelu, PDFie, czy czym tam jeszcze. Byle w plikach. To pliki przetrwają. Gdy apek już nie będzie, gdy nas już nie będzie.

Napiszcie co myślicie o tym. Ogólnej tezy jestem dość pewien, ale chętnie się dowiem czy gdzieś w szczegółach coś mógłbym podciągnąć.

*

rysunek pióra, towarzyszący zapisowi na stoicki newsletter

Podobają Ci się moje teksty? Pozwól, że będę pisał do Ciebie częściej — zapraszam na maila!

  1. Zgoda co do zasady przechowywania ważnych danych w plikach a nie „w apkach”, ale lepiej nie w XLS, DOC, PDF. Najlepiej użyć zwykłego formatu TXT, albo np. HTML lub XML oraz (które też są plikami tekstowymi). Najbezpieczniej jest używać formatów jak najprostszych, niezwiązanych z żadnym producentem. Ponadto w przypadku takich plików, jeżeli część pliku zostanie uszkodzona, zawsze będzie można odczytać część nieuszkodzoną (np. edytorem heksadecymalnym). W przypadku XLS, DOC, PDF będzie to często niemożliwe lub dużo trudniejsze.

  2. Oczywiście pełna zgoda. Ja byłbym jednak bardziej eksptremalny i radziłbym przechowywać ważne dane w kilku papierowych kopiach, a oprócz tego w zwykłym pliku tekstowym lub markdown i tyle. Żadne formaty elektroniczne związane z prywatnym producentem (XLS, DOC, itp.) nie będą długowieczne. Papier będzie, o ile nie spłonie 😉

  3. Aha, i w sumie to radziłbym też przemyśleć co chcemy przechowywać – bo mało z tego co na codzień produkujemy zasługuje na to, żeby to przechowywać. Ja np. nie gromadzę wcale zdjęć innych niż papierowe – bo co z tego, że miałbym na dysku terabajty zdjęć, jak nie chciałoby mi się ich przeglądać? A album ze zdjęciami to co innego, inny „user experience”, że tak powiem.

  4. Prawdopodobnie większość tych aplikacji i tak używa któregoś z popularnych standardów – bazy SQLite, pliku CSV, XML, czy JSON. Kopie zapasowe wszystkich danych aplikacji robi się paroma kliknięciami, a ich czytanie nie jest dla człowieka wcale trudniejsze od rozszyfrowywania, co Szekspir czy inny Mickiewicz zapisali na nośnikach może ciągle jeszcze używanych, ale kodem coraz mniej zrozumiałym. Pozdrawiam!

  5. Pingback: Jak (nie) przytyć po dziecku - Myślnik Stankiewicza

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Scroll to Top