středa 9. července 2014

Pustil bych se do vývoje e-shopu... kdybych věděl jak

Přes léto bych rád začal s vývojem kompletního e-shopu, který by nahradil současný experiment Čaj týdne. Na něm jsme se naučili většinu toho, co jsme chtěli, a myslím, že jsme na „velký“ e-shop připravení. Potíž je v tom, že stále váhám, jakou cestu zvolit. V zásadě jsou tři možnosti:
  1. Dohodneme se s vývojářskou firmou specializovanou na e-shopy (dobrou zkušenost mám např. se Shopiem, ale jistě je podobných víc) a necháme si jejich systém upravit na míru. Bude to drahé, pomalé a neflexibilní, půjde ale začít rychle a základ bude spolehlivý, prověřený.
  2. Seženeme vlastního vývojáře a vše si postavíme sami od nuly. Bude to trvat dlouho, taky to bude drahé, ale nebudeme se muset smiřovat s kompromisy a budeme moci postupovat takovým tempem, jaké nám bude vyhovovat.
  3. Variantu dva na začátku urychlíme tím, že vyjdeme z nějakého open source řešení (OpenCart, OsCommerce, Magento, PrestaShop apod.), které si necháme specialistou implementovat a dál si ho budeme rozvíjet nejspíš sami. Na první pohled to vypadá nejlépe, nebýt ovšem mé silné nedůvěry k open source e-shopů. Většinou jsou dost zprasené, pomalé a upravovat je může být od určité fáze pracnější než vlastní vývoj od nuly.
Tak, a teď babo raď. Vlastně raďte spíš vy. Váš názor mi může hodně pomoci.

Jen pro jistotu upozorňuji, že s hotovým systémem si nevystačíme. Žádný nesplňuje ani zcela obecné a univerzální požadavky, které na e-shop mám, to vím ze své poradenské praxe dost jistě. Čaj je navíc hodně specifický a už mám sepsaných desítky funkcí, které žádné typové řešení neumí.

Nejnepříjemnější je, že jde o rozhodování velmi zavazující. Jeho důsledky nejspíš poneseme mnoho let a těžko jim půjde uniknout.

61 komentářů:

  1. Varianta 3) OpenSource bude ve výsledku asi nejdražší a nejhorší. Úpravy zaberou spoustu času a programátor bude stát spoustu peněz. S vydáním aktualizací jádra se pak bude pokaždé možná muset něco upravovat.

    Úprava hotového řešení na míru by mohla být dobrým řešením, ale zřejmě bude ve výsledku stát stejně, jako vývoj vlastního e-shopu.

    Já bych sepsal všechny funkce navíc a konzultoval to přímo s vývojáři.

    OdpovědětVymazat
  2. Magento je neskutečný fuckoff, pomalý náročný na HW, nepoužitelný pro větší návštěvnost.

    OdpovědětVymazat
    Odpovědi
    1. Magento a jeho naivní přístup pomocí EAV http://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model :)

      Vymazat
  3. Ideální je podle mě modifikovaná varianta č. 2 s tím, že eshop nebude vyvíjet jen jeden vývojář, ale tři až čtyři. Programovat budou všichni a jeden "nejschopnější" bude navíc v roli projekt manažera, zodpovídat za dodržování milníků atd., druhý zase pokryje kód testy. (Z praxe vím, že to tak nastavit jde).

    Myslím, že tato varianta je stabilní, nejrychlejší, v dlouhodobém horizontu nejlevnější a když navíc dobře navrhnete architekturu, zvolíte vhodný framework a budete zodpovědně psát dokumentaci (samozřejmě ne Vy, ale programátoři), eshop bude velmi snadno rozšiřitelný a udržitelný v budoucnu. Samozřejmě proto, že ikdyby původní tři programátoři odjeli na Srí Lanku, jiní budou moc jejich kód snadno adaptovat a měnit.

    Snad jsem pomohl nebo alespoň inspiroval.

    OdpovědětVymazat
    Odpovědi
    1. Tato varianta se mi zdá také dobrá,

      možnost jak to zlevnit/ušetřit by mohla být po zvolení frameworku najít někoho, kdo již má nebo vytváří eshop a Vaše funkce, které máte doplnit formou modulu.

      Domluvit se sním na odkoupení základu (levnější než to tvořit) a doprogramovat nebo si nechat dotvořit modul s dokumentací.

      Výhodou je poté to co je zvýšeno výše, tedy aplikace na rozšířeném frameworku s možností budoucí rozšiřitelností s někým, kdo bude danou problematiku ovládat, což s dobře zvoleným frameworkem nemusí být už problematické.

      Snad pomůže.

      Vymazat
  4. tiez si myslim ze idealnost riesenia 2 stoji a pada na "sezeneme vlastniho vyvojare". na nom bude zalezat ci to bolo dobre alebo zle rozhodnutie. problem sa teda posunul do - ako zohnat vlasneho vyvojara aby riesenie 2 bolo naozaj idealne

    OdpovědětVymazat
  5. Varianta č. 3 je sebevražda. Předpokládám, že to tam uvádíš jen, aby řeč nestála ;-)

    Ideální může být s trochou štěstí varianta 2, ale je potřeba mít znalosti na to, abyste si dokázali uhlídat, že co udělá vývovář A, bude dávat smysl a bude schopen v tom pokračovat vývojář B, C, D... ;-) Jinak je to něco podobného jako varianta č. 3 - časem zjistíte, že máte doprasené cosi, co se nedá dál rozvíjet a je jednodušší shop vytvořit znovu od začátku.

    OdpovědětVymazat
    Odpovědi
    1. Jirko, ono je to spíš věc konkrétních lidí než systémů a jsou tací, kteří by i s variantou 3 dokázali velmi dobrý výsledek.

      Znalosti na to, abych vývojáře uhlídal, IMHO mám, ale na druhou stranu jsem rád, když mohu svůj čas ušetřit.

      Vymazat
    2. Takových, kteří dokáží zázraky s ohýbáním/rozšiřovaním všelijakých open-source systémů, jsem zažil moc. Nějakou dobu to funguje. Ale vždy se v dlouhodobém horizontu ukázalo, že je to jen cesta do pekel. Varianta 3 je fajn řešení pro malé firmičky a živnostníky, kteří chtějí za pár babek otestovat svůj podnikatelský záměr. Ale určitě bych to nedoporučil nikomu, kdo to myslí vážně.

      Vymazat
  6. 1. "Každý zákazník si může vybrat jakoukoliv barvu auta, jestliže to bude černá." Henry Ford. A přesně tak to je s hotovými eshopy. Všechno je tam univerzální a přizpůsobitelné, ale jen do té míry, do jaké to měli předem promyšlené. Jste jen jeden otrava z mnoha, ten co si vymýšlí blbosti a není s ničím spokojený. Cokoliv jinak? Stovky tisíc, líná komunikace, nakonec to tam nějak příšerně nahackují. Odstrašujícím příkladem budiž kopie jejich codebase, což se do pár let sesype. A co pak? Zdrojáky jejich shopu včetně těžce zaplacených úprav vám nedají.
    2. Šikovný vývojář nemusí být drahý a výsledek dokonce může fungovat. Ale kde ho vzít? Veliká pravděpodobnost, že narazíte na nějakého zoufalce, který všechny slíbí, pak bude rok pracovat a nakonec to vzdá a vše se může zahodit. Specializovaná firma může dodat kvalitní výsledek, ale bude chtít miliony.
    3. Stovky eshopů, tisíce pluginů, tisíce vzhledů. Než to všechno projdete, tak zešedivíte. A jestli tam půjde to, co chcete? To nezjistíte, dokud to nezačnete používat a upravovat.
    ------
    Máte-li kvalitního vývojáře, anebo ho umíte sehnat a množina požadovaných funkcí do začátku je malá, volil bych vlastní vývoj. Agilně, s testováním, ideálně ne PHP, ale třeba RoR (i to je filtr). Znáte-li kvalitního implementátora open source eshopů, co má viditelné úspěchy za sebou, volte 3. Nevíte si rady? Bod 1.

    OdpovědětVymazat
  7. Nějak mi tady chybí spojení s business stránkou, finančními možnostmi, rozvojem firmy, logicky nevím jak to bude fungovat tak nepůjdu hned od začátku do drahého řešení, třeba si na to čaje nevydělají? takže pro ověření, že můj biz má vůbec smysl tak začnu na opensource, pak na hotové řešení a až pak na vlastní řešení, jde o to v jaké jste fázi ne?

    OdpovědětVymazat
    Odpovědi
    1. K ověřování nám slouží Čaj týdne, ale i kompletní e-shop chceme stavět postupně a pro začátek nám stačí relativně málo.

      Vymazat
    2. Proč začít na opensource, kde by museli všechny nepotřebné nesmysly vypínat, když už mají "čaj týdne"? Ten nevypadá špatně, asi to nedělal úplný blbec. Stačí ten stávající kód lehce přiohnout - doplnit jen výpis čajů a košík s lepším objednáním po krocích. Týden práce a mají základ eshopu :)

      Vymazat
    3. Ano, je pravda, že v Čaji týdne už něco máme, třeba administrace objednávek by použít šla. Na druhou stranu je to psané s ohledem na rychlost a počítali jsme, že se to pak prostě zahodí. Tím chci říct, že ten kód možná nebude nic moc (nevím, nehlídám ho).

      Vymazat
  8. Z praxe, někým naprogramované eshopy bývají celkem často děravé, dělám e-comerce a také jsem začala dělat klientům bezpečnostní audity. Když jsem zjistila jak je na tom konkurence s bezpečnostní vlastnoručně naprogramovaného webu špatně, začali si ode mě klienti objednávat i data konkurence, šlo o data které se nacházely neveřejně uvnitř jejich databází, jelikož dostat se k nim nebývá v mnoha případech nemožné. Hodně webů stavím na prestashopu, jelikož hodně klientů ocení rychlou implementaci modulů, platebních metod jejichž vývoj by trval několik dní a takhle je možno využít hotového řešení a většinou i zdarma. Nepopírám, že třeba defaultní instalace presty je pomalá, nahromaděná stovkou pluginů, které ovšem jde zredukovat na 10 potřebných a malou optimalizací, není ani cache nezbytné jelikož se eshop načte s klidem do 200ms, což je podle mě cajk.

    OdpovědětVymazat
    Odpovědi
    1. Krást cizí data za úplatu? Trestný čin a morální hnus.

      Vymazat
    2. Hnus bývá když programátor nezabezpečí svůj web proti nejtriviálnějším možným bezpečnostním chybám. Tyhle data jsou pak dostupné pro kohokoliv a v horším případě mu může utočník web smazat z tohoto světa uplně.

      Když se tu bavíme o morálce, určitě máte odjakživa všechen software legální, já třeba ano. Nikdy jste neukradl film, je to tak...?

      Vymazat
  9. Můj komentář je sice ovlivněn tím, že jsem vývojář eshopů na míru, takže to může působit jako agitačka pro bod 1 a ono to tak také bude. Osobně nevidím (krom zásadního a jediného problému - výběru té správné firmy) důvod, proč by bod 2 měl být lepší než 1. Ano, bude 100% bez kompromisů, ale sežere to čas a těch peněz v tom vidím násobně více než vytvoření shopu na míru požadavkům - samozřejmě to nemůže být firma, co ač neprodává krabicovky, tak stejně pod tím má krabicové řešení a zapíná univerzální moduly...

    Určitě by mě zajímal ten seznam nestandardních požadavků. Já si nevzpomenu, kdy k nám naposledy přišel klient, vysypal požadavky a my řekli - pohoda, všechno už dávno máme. Prd s voctem. Jenže my řekneme - kein problem, všechno uděláme. Ale je jasné, že to nemohou dělat velké firmy se systémem, kde se hlasuje o nových funkcích, které pak dostanou všichni.

    OdpovědětVymazat
    Odpovědi
    1. Mezi jedničkou a dvojkou je největší rozdíl v závislosti na dodavateli. V prvním případě má práva k řešení on a my ho bez něj nebudeme schopni upravovat, v druhém případě tohle odpadá. Další rozdíl je v tom, že v první případě už něco hotového je a my budeme mít tendenci se tomu přizpůsobit, kdežto v druhém případě se bude naopak řešení přizpůsobovat jen nám.

      Vymazat
    2. Ta závislost nemusí být problém - systém může být váš a potom můžete odejít i s řešením, to je otázka dohody (smlouvy). Vývojáře potom budeš hledat stejně, jako na začátku řešení č. 2.
      Také navrhnout systém na zelené louce bude asi náročnější, než použít základ, který je již nějak odzkoušený. Druhá strana mince ale je, aby ten systém nebyl starý / omezený apod...

      Vymazat
  10. Moc bych chtěl vidět ty obecné a univerzální požadavky, které na e-shop máš. A také ty desítky funkcí, které žádné typové řešení neumí. To by mohlo být moc zajímavé čtení.

    OdpovědětVymazat
    Odpovědi
    1. Hodně z nich probíráme na http://www.prokopsw.cz/cs/skoleni-seo-pro-vyvojare (název je trochu zavádějící, většina má i jiný význam než jen pro SEO). Je to dost dlouhý soupis. Bohužel, typické vývojáře a potažmo vývojářské firmy tyhle věci nezajímají.

      Vymazat
    2. A když chceš nějaký příklad, tak třeba řazení zboží v kategorii podle pravděpodobnosti, že si uživatel produkt koupí. V celku evidentní věc, ale nikde jsem ji neviděl, v několika obchodech jsme ji dodělávali.

      Vymazat
  11. Znám eshopy, které jedou na OpenSource a skutečně dobře vydělávají, zas tak bych je neshazoval, i když s diskutujícími souhlasím, že může být rozšířitelnost OpenSource na míru, v případě růstu eshopu, také poměrně nákladná.

    Nejlepší řešení je IMHO (jak již bylo zmíněno) vlastní naprogramovaný eshop na míru, avšak vyhledat programátora, který to skutečně dotáhne (i třeba s týmem) dokonce není jednoduchá, ani zřejmě levná záležitost.

    Osobně bych hledal nejdříve takovou platformu, která má prokazatelné uživatele, je rychlá a nejvíce se přibližuje Vašim představám a je snadno modifikovatelná. Pokud takovou najdete, proč nosit dříví do lesa a tvořit novou, když můžete případně rozšířit existující. Pokud však takovou nenajdete, snažil bych se najít někoho, kdo je schopen celý systém naprogramovat (případně odřídit tým schopných programátorů) a zrealizovat tak vše dle Vašich představ. Můj názor...

    OdpovědětVymazat
  12. Ahoj Marku,
    já můžu dát svoje osobní zkušenosti. Nechal jsem si před cca 7 lety postavit e-shop na míru a začal jsem opravdu na zelené louce. Nedokáži odborně posoudit jak moc dobře je programovaný, ale tím, že jsem si sám zadával co potřebuji mi přijde jako obrovská výhoda. Na druhou stranu většina věcí které jsem chtěl , dnes již má většina dobrých e-shopů dnes v základu. Takže doporučuji stavbu na míru, i když to možná v tuto chvíli není úplně levná varianta.

    OdpovědětVymazat
  13. Rozhodně 2) ... nečetl jsem žádný z komentářů, ale tak pracuji na svých projektech. Svůj tým, přesně, jak to chceme a ono není přeci kam spěchat. Pokud je dobrá marže na prodeji, tak ta investice úplně svého vlastního systému se prostě dlouhodobě vyplatí.

    OdpovědětVymazat
  14. Marku, napsal jsem ti krásný komentář, ale nějak mi to ten komentářový systém smazal. ČIli jen stručně - začali jsme na opensource (v podstatě) a po roce provozu jsme rozjeli vlastní systém na míru. A funguje to asi nejlépe, jak může :-)

    OdpovědětVymazat
  15. Marku, napsal jsem tak dlouhý komentář, že jsem z něj musel udělat článek :)
    http://blog.tomasfejfar.cz/266-jak-zacit-prodavat-na-internetu

    OdpovědětVymazat
    Odpovědi
    1. Tomáši, díky, to je výborný článek, budu ho doporučovat. Zároveň je z něj ale vidět, jak je rozhodování individuální. Já mám tu osobní výhodu, že jsem vývojařinu 15 let dělal, řídil jsem i docela velké programátorské týmy a na mých databázových návrzích běžely i gigantické systémy (např. celý vnitřní systém všech finančních úřadů). Ten tvůj příklad s položkami objednávky bych vyřešil správně během pár vteřin, i kdybys mě vzbudil o půlnoci, a dodnes si jsem schopen napsat i docela složité selecty, když potřebuju z databáze vytáhnout data pro nějaké analýzy.

      Teoreticky jsem tedy schopen uřídit i méně šikovné vývojáře. Ovšem na druhou stranu bych samozřejmě raději věnoval svůj čas na projektu něčemu užitečnějšímu.

      Vymazat
  16. k tym rieseniam tretieho typu - da sa porozmyslat aj nad Wordpressom, ktory ma existujuce otestovane a funkcne shop pluginy (lepsie su zvycajne komercne). woocommerce je dost flexibilny, da sa ohybat a upravovat (napr. par riadkove rozsirenia pre postovne ucely CR a SR)

    OdpovědětVymazat
    Odpovědi
    1. Díky za tip. Napsat či upravit moduly pro nějaké obecné CMS (Wordpress, Drupal), může být taky zajímavá cesta.

      Vymazat
  17. Ahoj Marku, my děláme e-shopy na OpenCartu již přes pět let a dá se opravdu hodně ohnout. Prakticky neznám, že bychom používali slovo "to nejde". Je spíš otázkou "jak dlouho a za kolik". Což občas nechce zákazník akceptovat. Jestli chceš, tak ti pošlu odkazy na ohnuté shopy na OpenCartu, aby si viděl co tam na tom jde třeba dělat. Jo a určitě nestál jejich vývoj před spuštěním statisíce.

    OdpovědětVymazat
    Odpovědi
    1. Obecně by mě docela zajímal takový seznam úspěšně nasazených řešení. Vzít nějaký seznam eshopů a u každého zjistit, co to je. Vlastní vývoj, pronájem, ohnutý open source. Anebo obráceně. Vývojáři eshopů - pochlubte se svými referencemi!

      Vymazat
    2. Petře, ty odkazy na příklady by mne určitě zajímaly, i když zvenku je samozřejmě vidět jen něco.

      Milane, prakticky všechny větší úspěšné obchody mají vlastní řešení a vlastní vývojářské týmy.

      Vymazat
    3. To tvrzení "všechny úspěšné obchody mají vlastní řešení" pocitově také mám, ale důkazy chybí. Samozřejmě - alza, mall, aukro, vasecocky, czc, slevomat.. mají vlastní vývoj. Jenže platí to univerzálně i pro menší i když úspěšné? Platí to i opačně ("nemůžete být úspěšní bez vlastního vývoje")?

      Vymazat
    4. Milane, pracoval jsem pro desítky e-shopů a tu zkušenost myslím mohu zodpovědně zobecnit do tvrzení, že se sortimentem, který má nějakou konkurenci, nelze uspět bez vlastního unikátního řešení. Jednak je to proto, že krabicové systémy nejsou dost dobré obecně, a jednak právě kvůli té unikátnosti, která představuje konkurenční výhodu, když chybí v samotném zboží.

      Z toho ovšem neplyne nutně potřeba vlastního vývoje. Vývoj může být v různé míře outsourcován, ale všechno pak trvá mnohem déle a jsou tam i psychologické bariéry, protože za realizaci každého nápadu platíte. Když je naopak vývoj in-house za fixní náklady, firma ochotněji experimentuje i se zdánlivými nesmysly, což vidím opět jako výhodu.

      Vymazat
    5. My jsme teď dodělali po roce a půl svůj vlastní systém, který jsme použili na e-shopu http://www.eureko.cz. E-shop je napojený na účetní systém, jednou denně aktulizuje dostupnost zboží a s možností optimalizovat ho pro hlavní vyhledávače zboží atd.

      Vymazat
    6. Tak to je spíš odstrašující příklad :)

      Vymazat
    7. milanmanak: CZC zrovna myslím běž na přiohnutém OxyOnline a nemají ho napsané "od základů" ;)

      Vymazat
  18. Ahoj, můj pohled bude určitě zaujatý, protože děláme jak pronájem e-shopů, tak shopy na míru, ale zkusím to aspoň trochu objektivně :)

    Varianta 3) nemusí být špatná, ale zase to chce firmu, co v tom už dělá dlouho. Většina open-source projektů je dost zprasených (minimálně PHP) a něco tam upravovat může být docela peklo, ale to už v článku je všechno řečené.
    Varianta 1) je podle mě nejlepší (nemusíš se o nic starat, jen zadáš práci a počkáš na výsledek), ale záleží hodně na konkrétním dodavateli - tj jak moc bude chtít svoje řešení "přiohnout" na tvoje požadavky. Vůbec bych neřešil to, že ty by ses měl nějakému hotovému řešení přizpůsobovat a prostě trval na tvých požadavcích.
    Varianta 2) se pak vyplatí až v případě, že ty požadavky nebude dodavatel schopen plnit. Udělat e-shop vypadá sice jako brnkačka, ale je to jak znovu vymýšlet kolo.. ty hotové systémy už třeba 70% funkčnosti umí a zbytek si hold necháš udělat pro tebe na míru.

    Zkus klidně poslat požadavky na email (kluvanek@sunlight.cz) a já ti rovnou řeknu, jestli to jsme schopní splnit nebo ne. Jak jsem psal výš - děláme jak krabice, tak e-shopy na míru. Do jisté míry jsme schopní dělat poměrně rozsáhlé úpravy i u pronájmů. V případě odkupu licence není problém udělat jakoukoliv úpravu.

    OdpovědětVymazat
  19. Ahoj Marku,

    doporučuji 2. variantu.

    1. varianta je podle mě neschůdná. Nebyli byste první ani poslední eshop, u kterého se rapidně zastavil vývoj kvůli závislosti na jednom subjektu a jedné uzavřené platformě. Ta samotná závislost s sebou nese tolik rizik, že byste tuhle možnost měli vyloučit apriori jen kvůli ní.

    3. varianta vám dá sice na počátku akceleraci, ale časem tuhle výhodu vystřídají problémy s udržování větší codebase (málokdy u open source řešení využiješ vše co v něm je - přece jen je to obecné řešení problému) a jakékoliv zásahy do nitra systému, kterým se nakonec stejně nevyhnete, se stanou dírou požírající čas, energii a peníze.

    2. varianta je na začátek nejpomalejší, nejdražší a nejnáročnější. Pokud si ovšem vyberete dobrého vývojáře a díváte se na to v dlouhodobějším horizontu, tak vás v konečném součtu vyjde levněji než 3. varianta a oproti eshopům využívající 1. a 2. variantu získáte nezanedbatelnou konkurenční výhodu.

    OdpovědětVymazat
  20. Jéje, psal jsem příspěvek a po kliknutí na "Náhled" byl nenávratně ztracen. A zrovna takový dobrý... (-: Ale zkráceně jsem pro vlastní řešení. Dělal jsem také jeden takový individuální eshop a jsem rád, že jsem nezvolil hotová řešení (ačkoliv jsem je zvažoval), protože se eshop začal rozšiřovat a jen bych se s tím hodně trápil. Takto mi vůbec nic nestálo v cestě... (-:

    OdpovědětVymazat
    Odpovědi
    1. Ctrl-C Ctrl-C Ctrl-C! Vždy před odesláním :)

      Vymazat
  21. Marku, jsem sice velký zastánce open source řešení, ale v tomto případě bych ho nebral. Čím víc se open source ohýbá, nafukuje a překopává, tím víc ztrácí na svém kouzle (např. často pak odpadá možnost aktualizací jádra či jiných částí systému). Open source je podle mě ideální řešení na začátek nebo pro menší e-shopy - tam je mnohem flexibilnější než varianta 1 a levnější než varianta 2.
    Výběr mezi 1. a 2. variantou už je těžší. Variantu 1 bych zvolil, pokud by se systém dokázal dokonale přizpůsobit Vašim představám, nejednalo by se pouze o pronájem ale prodej řešení a byl by zaručen následný bezproblémový servis - možnost dalších úprav a rozšíření v přijatelném čase a za přijatelnou cenu.
    V opačném případě bych zvolil 2. variantu.

    Největší hrozbou 1. řešení je podle mě velká závislost na konkrétním dodavateli konkrétního řešení a možné problémy, které z toho mohou plynout.

    OdpovědětVymazat
  22. Normálka ne? Hoď požadavek na Webtrh a uvidíš kolik najdeš progresivních a dynamických firem, které ti to s láskou za patnáct tisíc a do měsíce "vpoho" udělaji.

    Ale teď vážně. Automaticky bych zavrhnul variantu č. 3). Jediná výhoda je rychlý start. Zbytkem budeš trápit jak sebe tak programátora. Čaj týdne bude podle dosavadního průběhu asi trochu jiný e-shop a ohnutí těch molochů do požadované podoby by zabralo děsivě moč času, pěněz a nervů. Navíc jak už někdo podotkl, tá zátěž na HW je skoro všude obrovská.

    No a teď co vybrat mezi 1 - 2. I přes to (nebo možná právě proto) že jsem dělal delší dobu konzultanta pro jednu dodavatelskou firmu e-shopů bych o chloupek více favorizoval in-house řešení.

    Má to ovšem jeden důležitý předpoklad - máš lidi, kteří víš že jsou schopni to opravdu kvalitně napsat a v takovém termínu na jakém se domluvíte. Pokud je nemáš a budeš je muset teprve hledat, mazej k dodavatelovi. Ti už mají nastavené procesy, lidi, workflow a ty přeneseš zodpovědnost na jejich zaměstnavatele. Navíc dneska už ti větší většinou opradu umí a výsledku bych se nebál.

    Pokud ale máš člověka / lidí co to zvládnou běž imho do in.house. Budeš agilnější, kód bude tvůj a uvidíš tomu pod všemu pod ruce. Finančně to paradoxně vyjde +/- skoro stejně jako dodavatel. Pokud to navíc bude lean tak MVP ti stojí za pár týdnů a pak už jen postupně přidáváš.

    Hodně štěstí - není to lehké rozhodnutí, zvlášť pokud si člověk uvědomí že jde o věc, která je během na hodně dlouhou trať a za docela dost peněz. Vážně by mě pak zajímál článek "3 měsíce poté", kdy se podělíš jak jsi se rozhodl a jak to probíhá.

    OdpovědětVymazat
  23. Skončil jsem u varianty 1:
    duvody:
    - rozpoctove dosahnu na reseni nabizene sice na miru ale na domene a hostingu dodavatele, tam si pripadam jako rukojmi
    - na mem hostingu to stoji tolik co nemam
    - v obou pripadech jsem betatester a nestane se nic o co si nereknu
    - chci aby se eshop vyvijel i kdyz ja nic nechci, tj chci byt jednim ze stovek uzivatelu a tezit z toho

    Bohuzel to znamena ze nezmenim ani triviality, ted se s tim pereme. www.velorama.cz versus www.eshop.velorama.cz reseni je od webareal.cz Po projiti asi deseti pronajimanych reseni jsem si vybral je, umeli nejvic.

    OdpovědětVymazat
    Odpovědi
    1. Tak to je spíš odstrašující příklad :)

      Vymazat
    2. No jasne vzhledu caje tydne na tom patrne nedosahnete, ale pouzivam to na zprocesovani objednavky ziskane primarne na webu velorama.cz a administracni zazemi mi vyhovuje. Ideal evidentne vede ke svemu cloveku a nekolika statisicum rozpoctu, to je pro me nerentabilni utopie.

      Vymazat
  24. Ty komentáře nefungují... Náhled mě o můj komentář připravil. :-(

    Psal jsem, že si myslím, že ti na tuhle otázku nedokáže dobře odpovědět nikdo, kdo nezná váš byznys plán. Ten totiž ukazuje, jaký je potenciál byznysu z hlediska výnosů/zisku a mělo by z něj také být vidět, jak velkou roli právě ve vašem případě hraje rychlost. Právě podle toho bych se já osobně rozhodoval.

    OdpovědětVymazat
    Odpovědi
    1. Vašku, k byznys plánu jsem něco psal v http://dokosiku.blogspot.cz/2013/10/jak-premyslim-nad-byznysplanem.html (+ na konci odkázané pokračování). Rychlost spuštění moc velkou roli nehraje, rychlost úprav naopak docela ano.

      Za komentáře se omlouvám. Někomu fungují, někomu ne. Blogger.

      Vymazat
  25. Zdravím Marku,

    Od roku 2010 stavím eshopy na Prestashopu a je to dle mého názoru nejlepší opensource eshop vůbec. Přesto bych Vám jej ale nedoporučil.

    Za ty roky jsem se setkal s obrovským množstvím požadavků, které bylo utrpení na opensource eshopu implementovat. Občas byly úpravy tak náročné, že cenově vyšly dráž, než to celé přepsat. Z toho důvodu již dva roky stavím eshop vlastní. Není to zatím nic uceleného, měl za úkol nahradit nejhorší části opensource řešení, které nešly patřičně ohnout.

    Okolo eshopu mám vystavenou malou infrastrukturu. Např. skladový systém, fakturaci, překladový systém, exporty do účetnictví, tisk štítků pro přepravce. Tyto věci na opensource řešení moc nenajdete a jejich vývoj je dosti drahý.
    Mám tedy pro Vás ještě jednu alternativu. Něco mezi body 1 a 2. K dispozici byste měl kompletní jádro, tedy by se nevyvíjelo od začátku, ale zároveň dostatečně modulární, aby na něm šel rychle postavit eshop kompletně na míru.

    Mohl by to být zajímavý obchod pro nás oba. Myslím, že bych se od Vás leccos naučil.

    Pokud byste měl zájem tak napište. Něco o mě najdete na LinkedIn. Pokud ne, tak jsem snad alespoň trochu přispěl k Vašemu rozhodování.

    OdpovědětVymazat
  26. Já bych šel variantou 2 s tímhle základem http://sylius.org/ - aneb open source nemusí stát vždycky za hovno.

    OdpovědětVymazat
  27. Z open-source světa doporučuji zvážit i Drupal Commerce. Je to podobné Magentu, ale více škálovatelné. Asi před rokem jsem o tom napsal článek: https://www.drupal.cz/proc-byste-meli-pouzivat-drupal-treba-pro-svuj-eshop

    OdpovědětVymazat
  28. Tak trochu si také přihřeji polévku ;)

    Varianta 1. Je to možnost, ale je to "navždy spolu a nikdy jinak" - což je riziko které ne vždy je únosné a za hodně let to může být velký problém (paralela s ekonomickými SW v minulosti a dnes se celkem docela nabízí). Něco takového změnit je jako zavádět SAP.. někdo to dá, někdo ne... ;)

    Varianta 2. Rozhodně nejlepší řešení, pokud projekt má potenciál ty lidi živit, budou kvalitní a po letech se v tom vyzná i někdo nový a "neošoupaný". Ale fluktuace programátorů z dobře rozjetého in-house řešení dokáže udělat black-box, pokud to je trochu budou flákat..

    Varianta 3 - to je ta moje polévka - řešíme a stavíme na Magentu

    Jak se zmínil Tomáš Fejfar ve svém blogu, opravdu je to fakt dobře napsané - a to je výhoda pro údržbu, rozvoj a úpravy. Velká výhoda. Zároveň je to nevýhoda - najít kvalitního programátora co tenhle standard dokáže držet je docela těžké. Zprasit se dá i Magento - zrovna tu jedno takové po někom předěláváme.. Jenže tohle platí i pro ty předchozí 2 body a tu dvojku dvojnásob. Proto také často řešíme služby typu "dev hotline" - zákazník má svého developera (dva) tak "akorát" in-house a když si neví rady, pomůžeme/poradíme/uděláme.

    O Magentu napíše většina jak je pomalý a náročný. Pomalý? Ne to není, pomalý je jen tam kde ho neumí nastavit, nebo kde nemají vhodný hosting/konfiguraci HW (nebo tragédie obojího dohromady) a dorazí to tragickou šablonou či obsahem (nebo opět obojím). Náročný je - a to dost. Jenže, a to mi určitě potvrdí velká spousta tvůrců komerčních řešení (těch kvalitních), i to jejich řešení je náročné - prostě když chcete řešit určitou sadu věcí určitým standardem (obsluhy, funkčnosti, možností), tak to ten výkon potřebovat bude - oni to také neprovozují na nějakém podprůměrném HW. Ale fakt to nepotřebuje pro provoz tak moc jak si dost lidí myslí - před 3-5 lety to tak možná vypadalo, ale dnes fakt ne.. ;).

    A pro koho je vhodný? V podstatě pro kohokoli - malý projekt se rozjede relativně rychle a má kam růst. Větší či komplexnější do toho vklouznou rychle svými požadavky a individuálním přístupem k jejich fungování. A opravdu velké řešení tomu taky nedělá problém, počítá to se škálovatelností, nemá problém s rozložením výkonu, využitím CDN apod.. Jen se to musí umět nasadit a provozovat. A tohle platí pro všechny 3 varianty.

    OdpovědětVymazat
    Odpovědi
    1. Velmi krásně napsané, tvůj komentář je v podstaté stručnější verzí toho mého článku o Drupalu ;-)

      Vymazat
    2. Díky :) Jdu si ho hned přečíst.. ;)

      Vymazat
  29. Jenže, a to mi určitě potvrdí velká spousta tvůrců komerčních řešení (těch kvalitních), i to jejich řešení je náročné - prostě když chcete řešit určitou sadu věcí určitým standardem (obsluhy, funkčnosti, možností), tak to ten výkon potřebovat bude - oni to také neprovozují na nějakém podprůměrném HW.
    Přijde na to....většina klientů provozuje Shopio na tarifu Optimal od ToJeOno (179Kč/měs), ti malí dokonce na Start (79Kč/měs). A jen několik výjimek jsme museli přesunout na dedikované VPS, případně celý vlastní stack. To je ale typicky až ve chvíli, kdy je roční obrat už v milionech a náklady na hosting se v něm ztratí. Ale na ten zbytek výtek - především vendor lock-in - v tom máte pravdu. Ale nedá se dělat nic jiného, než důsledně prověřit dodavatele - ale stejně tak musíte prověřovat dodavatele zboží do eshopu, přepravní služby, pronajímatele skladu, atp.

    OdpovědětVymazat
    Odpovědi
    1. Možná na to koukáme různou optikou, jsme zvyklí na to že malý e-shop udělá tak +/- 0,5-2M/rok, a větší/velké jsou pak od cca 7-10M+/rok. A ten malý zůstává malým tak rok. Na druhou stranu umíme hostovat dobře i to malé Magento za od cca 250Kč/měsíc, takže ta náročnost je diskutabilní. Z druhé strany máme pod křídly projekt, kde je návštěvnost cca 500 lidí den, ale datově to v prodejní špičce dává kolem 400Mbps (cca 1-1,5TB/den - privátní a zabezpečená distribuce SW o desítkách GB) a rozhodně to nestojí nějaké šílené peníze. Je to to prostě individuální.

      Nicméně uznávám že hostovat Magento za 79 neumíme/nechceme, ta kvalita by za to nestála. Magento prostě na hosting "citlivé" je - což je i výhoda. Jsou "zákazníci" pro které je cena za hosting nad 30Kč problém a tady je Magento dobrý filtr (odpadnou) - u nich je často problém i spousta jiných věcí, když přijde na placení/placené služby ;)

      Na druhou stranu, předpokládám že e-shop na hostingu za 79 asi nebude využívat potenciál Shopia tak moc jako ten co běží na lepším nebo VPS.

      Vymazat
  30. Nic nového do diskuze nepřidám, jen potvrzení nejčastěji vyskytujícího se názoru - varianta 2.
    Z praxe znám všechny tři, jednička je vendor-lock a postupně se prodražuje, trojka je nutnost přijmout nepochopitelné vnitřnosti a opravovat cizí chyby, dvojka je možnost udělat cokoliv a refaktorovat dle potřeb. Samozřejmě nevýhody a rizika má také, ale zrovna ve vašem iterativním vývoji a postupném přidávání se mi jeví jako nejmenší. Jen je třeba mít šťastnou ruku při volbě vývojářů.

    OdpovědětVymazat
  31. Mám 9 roku eshop na opensource zencartu a řeším stejný problém. Po přečtení komentářů bych volit variantu 2, ale finančně jsem šel do varianty 1. Po první schůzce s firmou webmium a zadání požadavků co chci aby eshop uměl mi pak odpověděli za 14 dnů že to bude trvat 3 měsíce. Uff, počkám tedy co z nich vypadne. cena je 18.000 ročně paušál i s hostingem.

    OdpovědětVymazat

Díky za váš čas věnovaný článku a za váš komentář. Všechny věcné připomínky, doplnění či otázky k článku mi pomohou posunout náš obchod dál. Nechcete-li komentovat veřejně, napište mi prosím na marek@sovavsiti.cz.