Sjaj i beda aplikacija

4 min

Svakih nekoliko meseci, spontano započnem bolan, sagorevajući proces revizije meni bitnih aplikacija.

Zaključak ovog procesa bude uvek isti: nešto baš mašimo u razvoju aplikacija. A greška je u sledećem:

Postoji app za to.

Ovaj sažetak, koji uzimamo zdravo za gotovo, predstavlja srž problema. Za svaku potrebu danas postoji ne jedna, već pregršt različitih aplikacija. Sve one rade slično, neke mogu manje, neke više; različito dizajnirane i obojene. Međutim, svaka aplikacija danas je zatvoreni, neslobodni sistem. A to nije ono kako smo maštali.

Gotovo svaka app danas je zatvorena. Ne, nije reč o otvorenom kodu; reč je o funkcionalnostima. Korisnik NE može da menja aplikaciju po svom nahođenju - već samo u nametnutim okvirima koje je ponudio autor. Zapravo, korisnik NE može da koristi samo delove (module?) aplikacija i kombinuje ih kako želi. Mi, korisnici, NE možemo da biramo šta zaista želimo da koristimo; da gradimo funkcionalnosti, a ne da gomilamo aplikacije. Ono što nam je u programiranju postalo uobičajeno: uključivanje biblioteka razvijenih od treće strane, nemoguć je scenario u svetu aplikacija. Nemoguće je, čak, isključiti deo aplikacije koji ne želiš da koristiš.

Sve, baš sve u aplikacijama zavisi isključivo od onoga kako su autori zamislili. Aplikacije su tvrđave, neprobojne barijere. Možeš jedino da pronađeš neku koja ti najviše odgovara, često usput praveći ustupke. Ostavljeni smo na milost i nemilost autora. A oni znaju da se pokondire, pa nakon nekog vremena aplikacija krene u pravcu koji je sve samo ne ono šta tebi treba.

Primeri. Koristio sam popularnu aplikaciju za taskove: radila je šta mi je trebalo. Odjednom, ubačen je Pomodoro sistem. Ne želim to, ne treba mi. Ne želim da postoji tab koji se tako zove, ne želim da vidim isti u setovanjima, ne želim da trošim resurse telefona na nešto što mi NE treba. Pa onda: u ranim danima jedne od popularnih aplikacija za vođenje zabeleški, autori nisu koristili markdown, već izmišljenu sintaksu za formatiranje. Poslao sam im predlog da to promene, bio sam naduvan: pa oni svakako znaju šta je bolje. Godinu dana kasnije, aplikacija koristi isključivo markdown. Retko koji kalendar ima opciju da mi prikaže sledećih X dana od današnjeg (ne kao agendu). Kada sam pisao jednom autoru, takođe me je naduvao: pa to mu niko nije tražio. Druže, to ti je 10 minuta posla. Autora aplikacije koja mi vodi pretplate već tri puta molim i kumim da ubaci prikaz pretplata u istoj valuti za isti interval - kako drugačije da uporedim pretplate? Momak se svaki put oduševi idejom, kao da je čuje prvi put. Tja, bar je duhovit. Za razliku od domaće aplikacije za usluge prevoza kolima. Najnovija verzija nagoveštava postojanje servisa za muziku, tv sadržaj, razgovore, hranu… sve u jednom: nedostaju saveti za kukičanje dok te voze - em iskoristiš vreme, em napraviš nešto. I tako dalje, i tako bliže.

Da se vratimo na temu. Postoje dve posledice ovakvog stava.

Prva je da za važne stvari koristim nekoliko aplikacija koje sve zajedno jedva nekako dostignu do svih mojih potreba kao korisnika. Jedna od takvih bitnih stvari je, na primer, personal knowledge (PK) sistem. Obožavam da pišem u Ulysses, Bear kida sa tagovima, a Craft mi je super sa celokupnim izgledom i cross-referencama. Sad, uveži ti to kako znaš; a i dalje mi manjka funkcionalnost-dve. S punim pravom možemo reći da sam tvrdoglav - ne želim da menjam potrebe za važne stvari i tačka. S razlogom su važne.

Druga posledica je da za preostale namene koristim šta stignem. Tu prihvatam i gutam šta mi je servirano, opsujem ponekad neprilagođen interfejs i nastavim dalje. Kad prekipi, promenim. Pragmatično, ali srozava vrednost i ideju aplikacija.


Zamislite svet u kome stvarni alat radi kao i aplikacije. Imao bih čekić za plave eksere, čekić sa ugrađenim nožem i kašikom kada majstorišem napolju, a i fensi čekić sa vremenskom prognozom koga mogu da držim na radnom stolu i kuckam. Za slučaj da zatrebaju klješta, kupuje se “dual” dodatak, da sa dva čekića mogu da klještim. A kada nadogradim verziju čekića, on odjednom dobije dve glave koja svaka gleda na različitu stranu, da bih mogao da kucam dva paralelna eksera različite boje u isto vreme.

Bilo bi kul kada ne bi postojali zidovi aplikacija okolo funkcionalnosti. Dobiješ prazan papir, a sam kombinuješ funkcionalnosti kako ti trebaju. Nešto kao… Excel??? :) Jedini način danas da se dostigne ovakva sloboda jeste programiranje. No, ono je skupo.

Možda jednog dana dobijemo low-code platforme za kombinovanje funkcionalnih modula aplikacije.

🧧
Nisam definisan svojim stavovima. Stavove usvajamo, menjamo, nadograđujemo, ali oni ne čine nas same. Manje je važno da li se slažemo, koliko da se razumemo.