[ Zavřít ] 


 

RSS Kanál

 

Bez Holdingu: appka identifikující zboží Agrofertu

Mobilní aplikace Bez Holdingu navazuje na předchozí počiny různých vývojářů, které se snaží zákazníkům pomoci určit výrobky, které produkuje holdingová chobotnice Agrofert. Běžnými cestami to není zrovna snadné, neboť moloch intoxikuje stále nové firmy, a tak informace rychle zastarávají. Appka Bez Holdingu tomu čelí čerstvou a nadále aktualizovanou databází.

 

Bez Holdingu: appka identifikující zboží Agrofertu (Zdroj: Google Play)

„Načtením čárového kódu potravin (pečivo, mléčné výrobky, sýry, maso, uzeniny, vejce) se zobrazí data o jejich původu a informace, jestli výrobce patří do holdingu Agrofert. Dokáže identifikovat i většinu výrobků prodávaných pod privátními značkami obchodních řetězců,“ uvádí appku Bez Holdingu její vývojář Midnight Code.

Appka Bez Holdingu navazuje na starší aplikaci Bez Andreje vývojáře Martin Vytrhlíka. Midnight Code to komentuje: čím dál víc mě prudilo, že aplikace Bez Andreje dává špatné výsledky a pořád jsem měl pocit, že vytvořit něco podobného musí být práce maximálně na pár dní. 

Vývoj Bez Holdingu

Úplně snadný vývoj aplikace podle slov Midnight Code nebyl:

„Jednou večer jsem si sednul, začal psát a k ránu jsem měl hotový funkční základ appky, zatím ovšem pouze s elementární datovou strukturou.

Další dny jsem se ve volném čase zabýval zkoumáním logiky čárových kódů v obchodech. A tam se situace zkomplikovala. Ukázalo se, že existují dva základní druhy kódů – kratší EAN8 a delší EAN13. Každý se výrobcům a prodejcům přiděluje trochu jinak – EAN8 celý kód, z EAN13 jenom prefix a výrobce si sám doplňuje zbývající číslice unikátně pro každý výrobek.

Jenže k tomu přichází ještě další komplikace, a sice privátní značky obchodních řetězců. Každý řetězec používá trochu jiný systém. Někdo má EAN8 začínající číslem 2, který je pro tyto účely určený, jiné řetězce mají vlastní EAN13 a výrobci jim tisknou na zboží jejich kód. Jinde zase nepoužívají na privátních značkách vlastní kódy, ale kódy výrobců a bohužel některé řetězce vzájemně kombinují víc těchto způsobů najednou.

U některých kódů (typicky EAN8 začínající číslovkou 2) se dokonce může stát, že ten stejný čárový kód použije více řetězců pro různé zboží. K tomu jsou kusové a váhové EAN13, také začínající dvojkou a několik dalších, úplně nestandardních kódů. Vymýšlení vhodné datové struktury zabralo dobře dva měsíce a několikrát jsem ji musel úplně předělat. Celý vývoj první veřejné verze trval nakonec tedy dva měsíce a ten jeden, první, den.

Bez Holdingu: před skenováním čárového kódu a možnosti výsledku po skenování (Zdroj: Google Play)

Funkce aplikace Bez Holdingu

Bez Holdingu funguje offline - při dostupnosti datové sítě je vhodné aktualizovat databázi čárových kódů produktů svázaných s Agrofertem. Uživatel může EAN  jak jen naskenovat fotoaparátem mobilního zařízení, tak využít ručního zadání produktového kódu. Appka pak:

  • identifikuje výrobce a jeho spojení s Agrofertem; 
  • identifikuje výrobek; 
  • případně vypíše výsledek Nezjištěná firma + lokalitu firmy a instruuje uživatele: Kód výrobce není v seznamu firem holdingu. Pro jistotu se můžete pokusit jméno výrobce na obalu.

Fungování vnitřností aplikace osvětluje Midnight Code:

„Architektura je vcelku jednoduchá. Aplikace je napsaná v Javě, při aktualizaci dat se připojuje na server npoint.io, kde jsou v JSON formátu uložena data, a to zvlášť pro EAN8, EAN13 a pro každý obchodní řetězec. Tato data si víceméně jedna k jedné stáhne, uloží do svých datových seznamů a ty potom při načtení kódu podle optimalizovaného algoritmu prohledává.“

Relativní nezranitelnost přes autora

Appka Bez Holdingu je realizována tak, aby nebyla ohrožena protizásahy ze strany finančních skupin, ani vládních úřadů posluhujících Andreji Babišovi. Midnight Code zůstává v anonymitě, a to sice proto, že autor aplikace Bez Andreje Martin Vytrhlík musel čelit problémům právě kvůli své aplikaci. 

Midnight Code navíc volně zpřístupnil zdrojové kódy Bez Holdingu a oddělil správu dat, se kterými appka pracuje:

„Jedním z cílů, které jsem si během vývoje dal, bylo, aby se aplikace dala spravovat i beze mě – kdybych v ní nemohl, ať už z jakéhokoliv důvodu, pokračovat. Oddělil jsem proto pořizování dat, ta sbírají a spravují mí přátelé, kteří si pro to založili na Facebooku skupinu Sorry Yako (technické informace pro vývojáře). Do ní může kdokoliv napsat chybu nebo poslat nově objevený kód. Data jsou volně přístupná všem vývojářům a kdyby chtěl někdo napsat konkurenční aplikaci, může se k npoint serveru připojit a data využívat.

Zdrojové kódy vývojové verze aplikace jsem nahrál na GitHub, takže pokud by Bez Holdingu příliš zastarala, může si je kdokoliv stáhnout, upravit, zkompilovat a vytvořit tak snadno úplně novou appku.“

Appka Bez Holdingu je aktuálně dostupná pouze pro Android, a to sice kvůli schopnostem programátora. Midnight Code se ovšem rozšířením na ostatní platformy nebrání. Verzi pro iOS nechystám. A to z jednoduchého důvodu – programuji v Javě a psát aplikaci v prostředí, které neznám by mi zabralo příliš mnoho času. Kromě toho se mi zdá, že Bez Andreje v Apple verzi funguje docela dobře. Kdyby se ale našel někdo, kdo by chtěl a uměl udělat iOS klon, jsou mu k dispozici data, stávající zdrojové soubory i moje podpora.

Uživatelé appky tvrdí, že někdy ani není třeba složitě zjišťovat, kdo je výrobcem konkrétního výrobku. Kupř. diskutující Kelley na Lupě.cz říká: Piškoty Mondeléz (dříve Opavia) jsou hnusný už na pohled, tam není potřeba načítat EAN kód.

Odkazy, co se šiknou

Zdroje

  • Lupa.cz
  • Google Play

 

 

 

 

 

ČTÚ spouští NetTest, certifikovaný test internetu

Kvalita připojení k internetu se liší nejen mezi jednotlivými poskytovateli - co hůř - kolísá v čase u téhož. Navíc zákazníci jsou typicky v nevýhodné pozici: mohou sice rychlost připojení reklamovat, ale o tom, jak jejich reklamace dopadne či...

Vivaldi 4.2 přináší nové volby ochrany soukromí

Vivaldi stále válčí především customizovatelností prohlížeče, maximální svobodou výběru používaných služeb a snahou o ochranu uživatelského soukromí. Ve verzi 4.2 se to rovná implementací nového překladače Lingvanex...

LibreOffice 7.2: neustálé zlepšování podpory formátů MS Office

LibreOffice je sice open-source software, nicméně jeho vývojáři ví, že pro masivní rozšíření v komunitě a především mezi firemními zákazníky musí bezchybně pracovat i s proprietárními formáty. Jako jsou například ty...

NortonLifeLock akvíruje Avast

Bývalý Symantec Corp. alias NortonLifeLock a Avast se dohodli na fúzi, při níž Avast skončí pod křídly NortonLifeLock. Akvizice přijde americkou společnost na něco mezi 8,1 - 8,6 miliard dolarů. A akcionáři Avastu budou mít nárok na kombinaci peněžního...


 
© 2005-2021 PS Media s.r.o. - digital world
 

reklama