Ezt a webhelyet Kohei Koyanagi által fejlesztett szoftver fordítja automatikusan több nyelvre. A legpontosabb információért lásd az eredetit angol nyelven.

A Splync v1.9 egyéni megosztási arányokat állíthat be minden költségre

Felhasználói visszajelzések a Splync-ről

Másfél hónappal a Splync v1.5 megjelenése után — amely frissítés végre lehetővé tette az egyéni megosztási arányokat projektenként és kategóriánként — újabb visszajelzések érkeztek. A v1.5 frissítés jelentős szerveroldali változtatásokat igényelt, így akkor úgy gondoltam, hogy a részletesség „elég jó” a legtöbb felhasználáshoz. Aztán néhány új felhasználó feltett egy egyszerű, ésszerű kérdést: „Beállíthatunk egyéni megosztási arányokat egyéni költségre?” Az ő utazási projektjükben voltak olyan pillanatok, amikor csak két tag akarta megosztani a költséget, és voltak, amikor mind a három. A Splync v1.8-ban sajnos a válasz nem volt. Elmagyaráztam, hogy létrehozhatnak további kategóriákat egyéni arányokkal ezen konkrét esetekhez szabva — ez egy kerülőút volt, nem igazi megoldás.

A fraktál erdő nyomasztónak tűnt

Kicsit nyomasztó volt visszaemlékezni, mennyi munka ment a v1.5-be. Először hagynom kellett, hogy a projekteknek saját megosztási arányaik legyenek. Majd a kategóriáknak is szükségük volt egyéni arányokra. Ekkor azt hittem, az egész fát lefedtem — minden gyümölcsöt összegyűjtöttem minden ágról. De az egyéni költségarányokban való munka más volt. Úgy éreztem, mintha minden alkalommal, amikor egy gyümölcsöt leszedtem, új fa nőne ki ugyanarról a helyről. Nem végtelen fraktál erdő, hanem egyértelmű kétszintes struktúra: egyik réteg a másikat hozta létre. A v1.5 logikája szerint egy költség először a projekt arányát örökölte. Ha a kategóriának voltak egyéni arányai, azok felülírták a projekt értékeit. Tehát amikor az egyéni költségarányokat adtam hozzá, úgy találtam, hogy egy újabb felülírást próbálok adni a meglévő felülírásra. A struktúra egy felülírástól felülírásig tartó lépcsővé vált — technikailag helyes, de mentálisan zavaros. Nehéz volt indokolni egy újabb javításon alapuló logikai réteg építését.

Paradigmaváltás a Splync v1.9-ben

A megoldás végül abból származott, hogy megfordítottam a struktúrát. Ahelyett, hogy „projekt → kategória → költség” legyen, és minden réteget a következő írjon felül, miért ne gondolkodhatnánk az ellenkező irányban? Egyéni költségmegosztások → kategóriamegosztások → projektmegosztások. Ez a sorrend tükrözi, ahogyan az emberek gondolkodnak: ha egy adott költségnek saját szabályai vannak, egyszerűen kövesse azokat. Ha nem, akkor a kategória mintája logikus. Ha még ez sem működik, térjünk vissza a projekt alapértelmezett beállításához. Nincs többé felülírás lépcsőfoka — csak egy tiszta prioritási hierarchia. Amint így láttam a struktúrát, az álerdő ködje azonnal eltűnt. Az implementáció útja nyilvánvalóvá vált: „Minden költséget ellenőrizzük az egyéni költségmegosztásokra. Ha vannak, használjuk őket. Ha nincsenek, nézzük meg a kategóriamegosztásokat. Ha azok sincsenek, használjuk a projekt alapértelmezését.”

Séta az ég alatt

Az új logika egyszerűnek, kiszámíthatónak és matematikailag helyesnek tűnt. Ennek a prioritási rendszernek a támogatására hozzáadtunk egy külön MariaDB táblát az egyéni költségmegosztásokhoz, mintegy tükrözve a kategóriamegosztások tábláját. A költségrészletek táblát is bővíteni kellett, csakúgy, mint a kategóriarészletek tábláját a v1.5-ben. Amint világossá vált a „kétszintes” design, a többi csak gondos kódolás volt — mind az alkalmazásban, mind a szerveren. Ennek ellenére az út helyenként kockázatosnak tűnt, mintha egy sötét erdőn sétálnék térkép nélkül. Ki akartam tisztítani a fejem, és kiléptem. A levegő éles és tiszta volt. Sétálva a környékemen, láttam, ahogy a Fuji-hegy a távolban kék kristályként emelkedik a tökéletesen kék ég alatt. Majdnem 100 km-re volt, mégis elég közel tűnt ahhoz, hogy megérintsem. A pillanat emlékeztető volt: még ha azt is gondolom, hogy egy erdőben sétálok, valójában a nyílt ég alatt járok.

Mit tehetsz a Splync v1.9-cel — Egyéni megosztás minden költséghez

A Splync v1.9 abból a világos pillanatból született. Hazatértem, befejeztem az új végpontok összekapcsolását, előkészítettem az új szerverlogikát, megszerveztem a kapcsolódó felületeket, benyújtottam a v1.9-et az Apple-nek, és végül elaludtam. A felülvizsgálat a szokásosnál korábban befejeződött. Amikor felébredtem, a Splync v1.9-et már jóváhagyták és automatikusan megjelent az App Store-ban. Ettől a verziótól kezdve a megosztás sokkal rugalmasabbá válik. Ha Johnnal és Kate-tel utazol, az alapvető költségeket egyenlően oszthatjátok meg hármatok között. De az étkezéseknél válthatsz egy „25% : 50% : 25%” megosztásra, mert John általában kétszer annyit eszik. És ha John kihagy egy vacsorát — például egy osztrigaétteremben —, beállíthatod azt a konkrét étkezést „50% : 0% : 50%”-ra, hogy ne fizessen azért, amit nem evett meg. A v1.9-cel a Splync most már támogatja a projektenkénti, kategóriánkénti és költségenkénti arányokat egy egységes logikában. Az alapok stabilak és matematikailag helyesek. A következő kihívás az interfész: néhány más megosztási alkalmazás simább, stílusosabb módokat kínál ezeknek az arányoknak a beállítására. A Splync most már rendelkezik a háttérrendszer erejével, hogy támogassa ezeket a fejlesztéseket. Ezeken egyenként fogunk dolgozni.