Cikkek ·
Clair Contour: mit old meg egy galéria-rendszer, és mit tanultam
Online galéria galériáknak, művészeknek és gyűjtőknek: falra próbálás valódi méretben, privát katalógus, jogdíj-nyilvántartás. És amit nyolc hét fejlesztés tanított.
A Clair Contour egy online rendszer azoknak, akik egyedi, fizikai és értékes tárgyat mutatnak be és adnak el: galériáknak, önálló művészeknek és design- vagy vintage-boltoknak. Mindegyikük saját, kiállítás-minőségű weboldalt kap, és egy kezelőfelületet, ahol a leltárt, az eladásokat és a kötelező bejelentéseket viszi. Az első sor kód augusztus 13-án készült; ma a claircontour.com zárt teszt üzemben fut.
Ebben a cikkben arról írok, milyen problémára született, kinek miért jó, és mit tanultam az építése közben.
A probléma
Egy kis vagy közepes magyar galéria ma jellemzően három külön dologgal dolgozik. Van egy weboldala, ami sokszor nehéz és lassú. Van egy Excel-táblája a művekről, az eladásokról és a vevőkről. És van egy negyedéves kötelezettsége: az eladások után járó követő jogdíjat be kell jelenteni a HUNGART-nak, a 3 millió forintos vagy nagyobb eladásoknál pedig a vevőt azonosítani és nyilván kell tartani. A három nem beszél egymással.
A gyűjtő oldaláról más a gond. Egy festmény fotója a telefonon mindig ugyanakkorának látszik. Hogy elfér-e a kanapé fölött, és tényleg úgy mutat-e, mint a képen, azt csak személyesen lehet eldönteni.
A művész oldaláról pedig az, hogy a nagy online piacterek jutalékot vonnak le, és a munkái ott más művészek ezrei között jelennek meg, nem a saját életművükként.
Kinek miért jó
Galériáknak. Saját arculatú weboldal a saját domainjükön, tizenegy előre megtervezett megjelenéssel, amelyekből szekciónként bármi átállítható. Mögötte egy kezelőfelület, ami az Excelt váltja ki: mű, művész, kiállítás, eladás vevővel, és a negyedéves jogdíj-kimutatás, ami az eladásokból magától számolódik. A számlát a galéria meglévő számlázója állítja ki (Számlázz.hu vagy Billingo); a rendszer csak összeköti vele. Ami nem kell, kikapcsolható: aki csak katalógust akar, annak nem jelenik meg a jogdíj és a számlázás.
Művészeknek. Ingyenes alapcsomag, jutalék nélkül. A művész saját oldalt kap életrajzzal, műteremfotókkal és a munkáival, és ha akarja, a művei egy közös felfedező falon is megjelennek, a többi művész és galéria munkái mellett. A közös fal azért van, mert egy magában álló művész-oldal önmagában nem hoz látogatót.
Gyűjtőknek. Nem kell fiók. A galéria egy névre szóló linket küld, amin a gyűjtő csak azt látja, amit neki válogattak: nincs menü, nincs teljes készlet. A link lejár, és egyenként visszavonható. A műoldalon a gyűjtő lefotózhatja a saját falát, és a mű valódi méretben kerül rá; Androidon és iPhone-on egy koppintással a szobájában is megnézheti, alkalmazás nélkül. A képet pedig a nagy felbontású eredetiből nagyíthatja, egészen a vászon szövéséig.
Amit tanultam
A fehér fal nem fal
Az eredeti terv az volt, hogy a falra próbálás élő kiterjesztett valóságban (AR) megy: a telefon felismeri a falat, és a mű ráakasztható. Az első napon telefonon kipróbáltuk. Mintás, részletes falon működött. Sima fehér falon nem, mert a telefon a kamera képében keres fogódzót, és egy üres fehér felületen nincs mit bemérnie. Ez nem a mi hibánk, minden AR-alkalmazás így viselkedik. Csak éppen a magyar lakásokban a sima fehér fal az alapeset.
Ezért megfordítottuk a sorrendet. A fő út egy fotó-alapú megoldás lett: a gyűjtő lefotózza a falát, megjelöl rajta egy ismert méretű tárgyat (egy villanykapcsoló 80 mm), és a mű ehhez képest, centire pontosan kerül a képre. Nincs szerencsefaktor, és minden telefonon meg számítógépen működik. Az élő AR maradt a ráadás.
Ami a gépemen jó, az a telefonon még nem az
Androidra egyszer írtunk egy saját AR-nézőt, ami a fal síkjában is forgatta a művet. A fejlesztői gépen minden mérés rendben volt. A saját telefonomon szaggatott, és rosszul ismerte fel a falat. Kivettük, és visszaálltunk a Google beépített megoldására; azt valódi telefonokon végigmértük, és ma Androidon és iPhone-on is jól működik. Azóta az a szabály, hogy amit valódi eszközön nem mértünk végig, azt a bemutatkozó oldal nem ígéri.
A „működik” két irányban mérendő
Egy ponton kiderült, hogy a galéria minden aloldala HTTP 200-as kóddal válaszol akkor is, ha a kért mű nem létezik. A látogató egy „nincs ilyen oldal” feliratot látott, a keresőmotor viszont egy létező oldalt. A javítás után nem elég volt megnézni, hogy a nem létező mű 404-et ad. Azt is mérni kellett, hogy mind a kilenc valódi oldal továbbra is 200-at ad, mert egy ilyen kapu legrosszabb hibája nem az, hogy átenged, hanem hogy egy valódi oldalt tüntet el.
A félkész mező csendes hiba
A leggyakoribb hiba-családunk az volt, hogy egy adatbázis-mezőnek csak az egyik vége létezett: valami olvasta, de semmi nem írta, vagy fordítva. A menüben ott volt a „Rólunk” pont, de mögötte az oldal sosem készült el. A katalógus színtémája mentéskor egy nem létező mezőből íródott, ezért minden mentés lenullázta. Egyik sem dobott hibát. Azóta minden új mezőnél az első kérdés: mi írja, és mi olvassa.
Egy szám önmagában semmit nem mond
A galéria-oldal kezdeti betöltése 338 KB lett. Ez önmagában nem jelent semmit, ezért két működő magyar galéria-honlapot ugyanabban a böngészőben, ugyanúgy megmértünk: az egyik 6 761 KB, a másik 12 072 KB volt. Húsz-harmincötszörös különbség, mobilneten ez másodpercekben mérhető. A nevüket nem írjuk ki, mert mindkettő lehetséges ügyfél.
Az „EU-ban tárolt adat” legyen igaz, ne csak jól hangozzon
Az első éles változat egy amerikai felhőszolgáltatón futott, az adatbázis egy másikon, mindkettő frankfurti adatközpontban. A tárolás EU-s volt, de a bemutatkozó oldal azt ígéri, hogy az adat az EU-ban marad, és ezt egy amerikai cégek láncán át nehéz tisztán állítani. Augusztus végén az egész rendszer egy németországi szerverre költözött. Ehhez nem kellett újraírni semmit, mert a kód kezdettől nem kötődött egyik szolgáltatóhoz sem. Az ár az, hogy a mentés és a frissítés most a mi dolgunk.
A mesterséges intelligencia gyorsít, a hibanapló tanít
A Clair Contourt is mesterséges intelligencia segítségével fejlesztem, ugyanúgy, ahogy a KlipTrackről szóló cikkben leírtam. A projektben van egy külön fájl a gép komolyabb hibáiról; ma közel harminc bejegyzés van benne. A fenti tanulságok nagy része onnan jön. Az élesítés és az éles szerver módosítása nálam maradt: ezeket semmi nem futtatja kérdés nélkül.
Hol tart most
A rendszer zárt teszt üzemben fut. Kész és ellenőrzött a katalógus, a nagyítás, a falra próbálás, az AR Androidon és iPhone-on, a privát katalógus, a három nyelv (magyar, angol, német), a jogdíj- és vevő-nyilvántartás, és a rendszerlevelek. A számlázók és az online fizetés (Barion) kódja kész, de valódi fiókkal még nem futott. Árak még nincsenek.
Ha galériád van, művész vagy, vagy egyszerűen kíváncsi vagy rá, a claircontour.com oldalon kérhetsz bemutatót. Ha pedig hasonló, egyedi webes rendszeren gondolkodsz, erről szól a webalkalmazás-fejlesztés szolgáltatás.