ITSimplified: Site-ul de e-commerce

Acum 9-10 ani doream să cumpăr ceva de pe net. Nu era ceva enorm sau complicat, nici ceva teribil de scump, însă în dimineața aceea nefastă mi-a fost imposibil. Când am plasat comanda site-ul s-a stricat de tot – atât de tare încât site-ul nu se mai încărca deloc, și nu a mers vreme de vreo oră.

Erau începuturile e-commerce-ului în România, și lucrurile erau interesante – oamenii își dădeau numerele de telefon pentru că nimeni nu avea încredere să plaseze comanda doar online1)Plată cu cardul? Hai să fim serioși, doar prin 2007-2008 a apărut prima soluție românească de plată cu cardul.. Așa că am pus mâna pe telefon2)Nokia 3310, pentru curioși, cu Badinerie ca ringtone și am sunat, și acolo o secretară agitată mi-a răspuns: “ați plasat comanda? ăăă, stați să vedem, acum pornește PC-ul cu icomersu'”. Nu e glumă, femeia de servici le mișcase ștecherul care alimenta serverul. Unul singur.

Spuneam în articolul anterior că o să vorbim despre cum arată un site de e-commerce făcut de o persoană și de ce alte site-uri de e-commerce cer o echipă de 5-10 oameni vreme de câțiva ani pentru a fi implementate. Cred că exprimarea mea e greșită: posibil ca cele două site-uri să arate la fel. Mai important este să subliniem care sunt diferențele.

Fascinația cu e-commerce e naturală. O afacere vrea să-și facă un magazin online – cerere există întotdeauna. Există și oferte: azi până și Facebook încearcă să-ți vândă spațiu de magazin online3)evitați, Facebook e otrava internetului, o să ajungeți să plătiți mai mult decât câștigați. Dar problema pornește din facultățile de IT, unde una din temele favorite pentru lucrările de licență e “site de e-commerce”. Aparent, toată lumea știe să facă, pentru că e vorba de ceva simplu. Și, serios, e vorba de ceva simplu. Ia uitați-vă pe site-ul Amazon: Ai o pagină cu ofertele speciale, după care ai o pagină pentru fiecare produs în parte, care are recomandări cu alte produse, un buton de căutare, după care ai check-out-ul și ‘coșul de cumpărături’. Mai sunt și alte chestii, dar mărunte.

Fiecare student care termină o facultate de calculatoare e ferm convins că poate implementa un site de e-commerce și cel mai des o și face. Ce e mai grav e că aproape fiecare antreprenor din România crede același lucru: că un magazin online e o treabă simplă, și crede că ar trebui să investească mai mult în alte părți decât în magazinul propriu-zis.

Și când defalchezi problema magazinului online e o chestie foarte simplă, Ai cinci-șase tipuri de pagini care trebuie să meargă bine. Studentul ăla e ferm convins că e ușor de făcut, și uite-l cum a venit cu o soluție care, e adevărat, merge cam prost pe laptopul lui. Luăm un calculator mai puternic și gata. Antreprenorul chiar are un gust amar de satisfacție în gură, pentru că simte că a făcut ceva foarte biznis: “a aruncat bani în problemă” (adică a luat un calculator mai puternic). Magazinul online e gata, și îl pune să-l vadă toată lumea.

Cei mai mulți se opresc aici și foarte multe site-uri nici măcar nu au propriul PC pe care stau – au un calculator închiriat într-un data-center, cel mult, și și pe acela poate îl au în regim VPS (adică spațiul și timpul de calcul e împărțit cu mai multe domenii). Comenzile încep să curgă (cinci-zece comenzi pe zi e un vârf pentru un magazin online la început) și antreprenorul e mulțumit. Când site-ul începe să se miște prost cumpără un calculator mai puternic, și unul mai puternic până când ajunge la o limită la care își dă seama că, stai, când ai doi clienți simultan în site își amestecă comenzile între ele pentru că studentul a gândit lucrurile școlărește4)situație întâlnită în realitate. După ce se chinuie cu studentul care e de negăsit să-i repare site-ul, antreprenorul merge la o firmă de apartament, care are mai multă experiență.

Mai toate firmele de apartament au o soluție de e-commerce. Nu poți să-ți faci firmă de apartament fără o soluție de e-commerce, o lucrare de diplomă oribilă a unui membru fondator al firmei, sau ceva similar. O soluție bastardizată, cu tehnologii ceva mai scumpe sau mai complicate, care ar putea satisface un client mediu (care vrea mai mult de doi oameni simultan pe serverul lui). Genul de soluție pentru care ai concedia un angajat, dar fiind soluția construită de membrul fondator al firmei e o soluție venerată, refolosită. Evident, nimeni nu are curajul să îi spună că e o porcărie pentru că în IT, ca în toate domeniile, nimic nu merge mai bine decât lașitatea și lingușirea.

Așa că firmele de apartament vin cu soluțiile astea “enterprise”, soluții slabe calitativ care nu rezolvă probleme precum scalabilitate. Asta pentru că orice angajat care ar ști să scrie “scalabilitate” s-a dus deja la o firmă mare. Așa că pentru antreprenorul nostru soluția funcționează până când vrea să scoată la vânzare de Black Friday trei cutii de pește aproape de termenul de expirare. Atunci vin la tine pe site 20-30 de oameni și ți-l dărâmă, pentru că lucrul făcut prost e făcut prost de la început. Așa că antreprenorul merge la firmele mari unde află că o soluție de e-commerce are un preț care se scrie cu cel puțin șase zerouri în coadă, și în monedă euro.

De ce?

Am vorbit mai sus despre ce se întâmplă, dar nu am explicat coordonatele eșecului pentru fiecare din pașii respectivi. Vorbesc despre trei probleme diferite, trei elemente foarte importante din poveste: dificultățile problemei, capacitatea programatorilor de a produce programe performante și capacitatea antreprenorului de a controla dezvoltarea soluției.

Dificultățile unui site de e-commerce

O soluție de e-commerce e un exemplu clasic de “interfață prietenoasă peste o bază de date”. Pe scurt, o bază de date e un sistem în care se stochează informațiile. Toate informațiile sunt puse “într-un singur loc”. Asta înseamnă că informațiile despre utilizator, de exemplu, sunt de obicei în același loc cu informațiile despre produse și cu toate celelalte date necesare pentru un site funcțional.

Bazele de date trebuie să asigure consistența datelor, și pentru asta genul de “gimnastică” pe care softul de baze de date trebuie să-l facă devine foarte complex, mai ales când ai doi clienți care vor să scrie și să citească în același timp. Iar faptul că soluția de baze de date are probleme complexe de rezolvat o face o soluție lentă.

Acum închipuiți-vă următorul lucru: un utilizator face o cerere pe site-ul vostru. Programul care ascultă cererea începe și face câteva cereri către baza de date (să valideze drepturi de acces, să citească informațiile despre produse, să modifice coșul de cumpărături, etc.). Fiecare cerere ia câteva milisecunde, doar că într-o secundă sunt doar 1000 de milisecunde. Asta înseamnă că un client care dă un click pe un produs ar putea să-ți ocupe serverele vreme de 200-300 de milisecunde (într-un caz fericit). Dacă o astfel de cerere ia 300 de milisecunde, înseamnă că nu poți deservi mai mult de 3 clienți într-o secundă, adică undeva la 200 de clienți într-un minut. Și asta în condiții ideale.

Realitatea e însă mult mai complexă, și e foarte posibil ca anumite cereri să poată fi executate în paralel. Există extreme – există baze de date gigantice (de exemplu Google) unde cererile unor clienți sunt satisfăcute în 400 de milisecunde (uitați-vă la timpul pe care îl afișează Google după fiecare căutare), și există baze de date de dimensiuni mici (undeva la 2-5 MB de date) unde pentru a face anumite operațiuni durează mai mult de 24 de ore. Pentru că oricâtă performanță ar avea sistemele de baze de date sau serverele web, liantul este programatorul care le pune în valoare.

Programatorii nu au niciodată controlul aplicațiilor pe care le dezvoltă

Există o problemă în lumea programatorilor: e programarea inginerie sau muncă de creație? Din multe puncte de vedere e inginerie, însă inginerie fără nicio noimă. E foarte mult “trial and error” în munca de programare, prea mult pentru a fi ceva la fel de precis precum ingineria, unde planificarea trebuie să prevadă problemele pe care produsul final le va întâmpina. În multe feluri e mai ușor să construiești o casă decât o soluție software. Pe de altă parte mulți programatori consideră că munca lor e muncă de creație, pentru că în ciuda identificării unor șabloane, unor soluții standard, soluțiile trebuie întotdeauna adaptate. Nimeni nu merge la muncă să facă de două ori același lucru. Cel puțin teoretic.

Ce e cel mai important e că munca de programator nu e întotdeauna o muncă precisă. Un programator care îți va scrie o bucată de cod nu va putea să îți spună că o anumită operație se va executa în atâtea milisecunde pentru că sunt nenumărate variabile care pot influența timpul de execuție al programului. Din punctul ăsta de vedere mie mi-e greu să văd munca de programare ca și inginerie.

Se râde întotdeauna de această incapacitate a programatorilor de a estima comportamentul programelor pe care le scriu, însă povestea nu e deloc amuzantă. Gândiți-vă că fiecare șurub pe care îl pune un programator în construcția lui e gândit de un alt om. Nu fiecare șurub e rotund, nu toate au capul la fel și fiecare vine cu cheia lui pentru închidere. O interfață de programare poate avea câteva mii de intrări, fiecare cu documentația ei, fiecare făcând o operație diferită.

Ăsta este motivul pentru care programatorii adoptă foarte repede așa-numitele framework-uri, care sunt menite să ușureze munca programatorului, să îl facă mai productiv. Fiecare din framework-uri însă e suficient de limitat încât în momentul în care ai nevoie de ceva special sau de mai multă performanță, va trebui să coboare la un nivel mai jos și să-și facă munca într-o zonă în care nu se simte deloc confortabil.

Cel mai des, framework-urile care îi fac productivi la început îi fac mult mai lenți după aceea. Gândiți-vă că framework-ul e o casă care vine gata făcută, tu trebuie doar să pui ceva material ici-colo ca să arate cum vrei tu. În momentul în care ai de mutat un perete, de spart, sunt șanse ca toată casa să se dărâme, că ție ți-a venit scheletul de-a gata și dacă îi muți ceva s-ar putea să dărâmi construcția cu totul. Sigur, vorbind de software, totul poate fi făcut configurabil.

Așa că framework-urile astea devin un iad de configurabilitate, de opțiuni, și programatorii încep și investesc toată energia pe care o au în cunoașterea acelui framework pentru a-l folosi cât mai eficient și pentru a-i afla limitările. Numai că invariabil toată lumea ajunge la un punct unde nu se poate scoate mai mult din unealta pe care o folosește. Uneori nu poți rezolva totul cu un ciocan, e nevoie de o bormașină. Dar nu poți folosi în același proiect și un ciocan și o bormașină, nu când vine vorba de software.

Acesta e doar unul din motivele pentru care programatorii nu devin stăpânii uneltelor pe care le folosesc, ci sclavii lor. Opțiunile programatorilor sunt limitate de unelte. Dar de ce e nevoie de unelte atât de complicate?

O soluție software permite prea multă flexibilitate

Cerințele proiectelor software sunt în continuă schimbare și din cauza programatorii trebuie să fie pregătiți să adapteze proiectul la cerințele noi. De ce atâta flexibilitate? Pentru că e simplu să faci anumite schimbări în software și să satisfaci clientul cu o schimbare mică. Numai că antreprenorul nu știe niciodată care schimbări vor necesita să arunce ce s-a muncit până acum la gunoi sau nu. Un font mai mare? Sigur. Un font diferit între diversele produse? Se poate, un pic mai greu (și un pic mai costisitor ca performanță). Mutat articolul ăla la stânga cu doi centimetri? Uneori poate fi imposibil. Produs cu același nume și poză diferită? Depinde. O pagină dinamică cu produse care se schimbă? Da, sigur, dar asta înseamnă că baza ta de date va fi ocupată non-stop cu faptul că produsele sunt tot cerute și re-cerute la infinit.

Din nou, simplificăm. Ideea e simplă: antreprenorii nu au habar cum se conduce un proiect software, și poate că nici nu ar trebui. Dar de foarte multe ori cineva care are un contact cu “omul cu bani” va ezita să spună “nu”, în ideea că acesta ar trebui să-l mulțumească pe cel care plătește. Corect din multe puncte de vedere, dar odată cu această flexibilitate cresc costurile invizibile pentru client la momentul dezvoltării precum performanța și costul de exploatare a soluției.

Echivalentul ar fi că antreprenorul merge la McDonalds și comandă un sandwich. Nu știe ce anume vrea, așa că omul de la McDonalds îi arată zece machete de posibile sandwich-uri. Antreprenorul ia în mână sandwich-ul dorit (machetă), îl miroase și spune: “ăsta, dar aș vrea să miroasă un pic mai bine”. Omul de la McDonalds însă nu poate să meargă să facă de la început un sandwich, pentru că antreprenorul, agitat, spune că uite, sandwich-ul e aproape gata, de ce durează atât de mult? El a vrut sandwich-ul ăla și doar să miroasă un pic mai bine. Evident că nu poți să-i dai macheta, dar ar trebui sa ai zece sandwich-uri gata făcute, să i le și servești. Să zicem că le ai, și i-l servești. Antreprenorul se uită la el și zice: “Da, e fain, numai că aș vrea carnea să fie un pic mai groasă, un pic mai albicioasă, brânza ceva mai puțin topită și legumele să fie ca la sandwich-ul ălălalt”. Așa că îi mai faci unul, și încă unul, și încă unul pentru că se poate.

Site-ul de e-commerce e cea mai mare capcană în care poate intra cineva. E genul de proiect pe care poate să ți-l facă și un student, dar care a făcut pe Amazon să aibă mii de programatori angajați. În site-uri de e-commerce intră direct sau indirect milioane de linii de cod (luând în calcul și framework-urile folosite). Și se discută pe internet că fiecare linie de cod are un potențial de vreo două buguri. Doar gândiți-vă la cifrele astea.

Aștept întrebări și sugestii pe viitor. În urma votului de săptămâna trecută, următoarele două teme sunt mitul programatorului genial și cât de tari sunt programatorii de la firmele mari. Cum ziceam, aștept în continuare întrebări și sugestii; și am o întrebare pentru voi: Ați asculta un podcast pe tema asta?

e-commerce-402822_640

NOTES   [ + ]

1. Plată cu cardul? Hai să fim serioși, doar prin 2007-2008 a apărut prima soluție românească de plată cu cardul.
2. Nokia 3310, pentru curioși, cu Badinerie ca ringtone
3. evitați, Facebook e otrava internetului, o să ajungeți să plătiți mai mult decât câștigați
4. situație întâlnită în realitate

Comments

ITSimplified: Site-ul de e-commerce — 32 Comments

    • Manu, cum ziceam, următorul articol din serie 😀 Am anunțat și în postarea anterioară.

      Cât despre Podcast, e un pic mai complicat, dar acum sondez opinia să văd cam câți ar fi dispuși să mă audă vorbind. 😀

    • Nu aș putea să fac așa ceva pentru că vreau să aduc niște informații din spatele scenelor fără să numesc firmele respective. Nu e ok față de ele, e ca și cum ai urmări un spectacol de teatru din culise.

  1. “Cei mai mulți se opresc aici și foarte multe site-uri nici măcar nu au propriul PC pe care stau – au un calculator închiriat într-un data-center, cel mult, și și pe acela poate îl au în regim VPS (adică spațiul și timpul de calcul e împărțit cu mai multe domenii). ”

    Nu înţeleg de ce este greşit să porneşti un ecommerce pe un VPS, este greşit să îl porneşti pe un shared server.
    1.1. Resursele dintr-un VPS nu sunt împărţite cu nimeni, ai propriile vCores, memoria ta, spaţiul tău, este o maşină virtuală, îl poţi restarta fără să afectezi pe ceilalţi. Orice hosting care îşi respectă clienţii nu aruncă mai mult de 4 / 6 / 8 clienţi pe un VPS. Da, ca şi la shared, există şi firme ce fac overselling pe un VPS sau folosesc arhitecturi slabe.
    Nu ai nevoie de server dedicat, cel puţin nu pentru început sau nu pentru trafic de câteva mii pe zi cu 30-40 de comenzi (cazul ideal).

    Păi nu? Un ecommerce la început nu trebuie să listeze 75.000 de produse “să vadă lumea că avem de toate”. Sau o poate face dar asta ridică automat costurile pentru că e clar că nu ţi-ai dimensionat bine resursele tehnice cu cele financiare.

    Dacă cineva se aşteaptă să plătească 5 Euro / lună şi să ţină un shop online, şi-a greşit cariera. Dar cu 25 – 30 Euro pe lună găseşti lejer un VPS bine dimensionat pentru un start-up.

    PS – Asta dacă nu îl omori cu o platformă dichisită cu zeci de module şi scriptuleţe (d’alea nulled că deh, nu ne găsesc ei taman pe noi), să ningă pe ecran, să afişeze nu ştiu ce contoare, să facă ping şi pong, să sclipocească. 😀

    • În general m-am referit la clienți care își doresc să fie viitorul Amazon sau viitorul eMag. Am văzut prea mulți din aceștia, prea multe proiecte eșuate de genul acesta și despre ele vorbesc, nu neapărat de shopul online de vândut cercei hand-made.

  2. Dupa felul cum e scris articolul as zice ca e scris de profesorul universitar care conduce lucrarea studentului despre ecommerce 😀
    In teorie ai dreptate, lucrurile stau cum spui tu.
    Insa teoria asta se aplica DOAR celor catorva zeci de businessuri ecommerce din romania care au volumul asta.

    Restul de cateva mii, pot exista cu solutii intermediare sau in functie de volum, pot functiona chiar si cu cele mai proaste unelte posibile.
    Ma uitam zilele trecute in arhiva mea si am vazut cum arata siteul meu din 2004, era o solutie ecommerce in javascript :))) deci se poate si mai prost decat cea mai proasta solutie de acum.

    Si nu cred ca te adresezi celor catorva zeci de cazuri gen emag, altex, etc. care au deja echipe dedicate ecommerce-ului.
    Te adresezi celor cateorva mii care activeaza pe piata sau incearca sa intre pe piata.

    Eu acestora le spun ca nu conteaza “firma” cu care lucreaza (sediu in birouri de sticla, apartament sau beci), conteaza mai mult omul cu care va colabora.
    Degeaba te duci la firma care se considera in top 3 pe romania in solutii ecommerce, dar care te amana cu lunile pentru rezolvarea problemelor, sau te minte fara jena in diverse probleme. Pentru ca nu te va ajuta cu nimic in dezvoltarea afacerii.
    Asa cum pot sa spun ca am lucrat foarte bine cu un super baiat acum 7-10 ani, avea PFA.

    Referitor la gazduire, eu spun ca poti face afaceri si pe server de 5 euro.
    Si chiar e recomandat sa pleci de la hosting de 5 euro, cel putin in primul an.
    Apoi un vps cand afacere creste si are nevoi de mai multe resurse.
    Personal n-as opta niciodata pentru server propriu, e prea multa bataie de cap in comparatie cu serverul dintr-un data center (cu exceptia celor catorva zeci de cazuri amintite mai sus).

    Eu sunt de parere ca aspectul ecommerce e cel mai putin important in dezvoltarea unei afaceri.
    Cel mai important e sa ai un plan de afaceri solid, sa ai o crestere constanta.
    Apoi daca afacerea iti merge bine, oricand poti dezvolta o solutie ecommerce asa cum ti-o doresti, adaptata noilor nevoi. Fara a fi nevoit sa carpesti o solutie in care ai investit mult la inceput.
    Decat sa adaptezi solutia veche de ecommerce, mai bine o construiesti de la zero cand afacerea este matura.

    • Există cazuri fericite și cazuri nefericite – statistica zice că mai mult de jumătate sunt nefericite. La acelea mă refer. Oameni care dimensionează nefericit așteptările. Oameni care vor cu totul altceva decât ar trebui să-și dorească.

    • sau cu alte cuvinte, un alt mare challenge in SW development: rareori clientul stie cu adevarat ce vrea, sau daca stie, nu prea reuseste sa-l exprime (coerent).
      realitatea e si mai dura. facand un pas inainte, daca dezvolti propriile produse, de multe ori chiar si tu, care (teoretic) esti specialist, ajungi sa nu prea stii ce vrei. asta datorita complexitatii domeniilor pe care le abordezi. asa se explica de ce in fiecare domeniu exista de regula cateva produse SW mari, pe care piata si le imparte functie de cerinte individuale ale celor care le cumpara. nu exista solutia universala.

      ps. podcast, podcast, podcast! 🙂

    • Am impresia ca te referi la afaceri in general care prin coincidenta erau si in ecommerce.
      Mai sus spui ca te-ai referit la clientii care vor sa fie viitorul emag.
      Hai sa fim seriosi.
      Piata e asezata. Eldorado-ul a fost in anii 2000-2008.
      Sa vrei sa ajungi acum viitorul emag, e sinucidere curata.
      Dar sa presupunem prin absurd ca e posibil sa devi un emag,
      in niciun caz nu prin solutia ecommerce aleasa ai sa reusesti.
      Ci printr-un model de afaceri foarte bun.

      Zilele trecute era o stire ca din 200 de firme aflate in centrul vechi 100 dau faliment in primul an.
      Asta-i viata. In online sau pe strada, unii dau faliment altii reusesc.

  3. Spiritul articolului e ok, probabil bazat și pe experiențe ”trăite și văzute” dar cred ca autorul exagerează puțin.

    IMHO, trebuie să faci o aplicație web extrem de proastă, cu o structură DB efectiv făcută în ciudă ca să nu poți duce câteva sute -> mii de produse și zeci -> sute de conexiuni concurente pe un server mediu ca performanță.

    • Au mai facut unii acum 1-2 ani o aplicatie de tranzactii (parca bitcoin) in mongodb :)))
      si au luat teapa tocmai pentru ca nu suporta ACID.
      Una e sa faci un lucru cu unelte proaste (a se intelege pe bani putini) si alta e sa faci un lucru prost.

    • Nu subestimez, naiba știe ce mai iese acum pe bandă din facultăți (ca medie) dar în zilele noastre un server ”mediu” înseamnă totuși ceva resurse. De aia zic, trebuie să ai ceva talent să-l omori cu doar câteva request-uri. Du-te tată la pus legume în grădina dacă ești chiar așa de prost. Sau poate că firmele de apartament ar trebui și ele eșalonate pe coduri CAEN: de garsonieră confort 2, de o cameră, de două camere cu geam mic la baie, etc. Măcar știe clientul ce alege.

    • sunt enorm de multi programatori de proasta calitate.
      economia si-a mai revenit, cam aproape orice functioneaza azi pe baza de soft, prin urmare cererea e mare.
      scolile nu fac fata cererii, statul roman e cretin si pune paie pe foc cu ajutoare de stat date firmelor de IT.
      asa ca firmele (mari) angajeaza aproape orice si mai dau si salarii NEMERITATE.
      ne asteapta vremuri faine, pentru ca orice bula se sparge.

  4. …si apropo de VPS, scalabilitate si alte cele.
    chestiile astea sunt deja rezolvate, pana la un punct chiar pe bani relativ putini.
    inventia asta, daca va supravietui, ii va tine la randul ei in viata pe cei marunti, recte firmele de apartament si uanmenshoii de PFA.
    ii zice cloud (computing).

    • Cloud-ul are și problemele lui, în mod special faptul că uneori nimic nu e mai sigur decât să ai informația ‘la tine acasă’.

      De acord, cloud-ul rezolvă multe din probleme, dar câți sunt în stare să dea o soluție decentă cloud?

    • important e ca solutia tehnica e acolo, exista, e accesibila.
      in rest, ai niste puncte valide, de aia am tinut sa mentionez “daca va supravietui”.

  5. @Cosmin: afaceri poţi să faci şi pe server de 5 Euro, nu un shop online cu sute de produse sau mai mult. De ce? Pentru că la preţul ăla este clar un shared şi eşti mult prea vulnerabil. Fix când îţi e lumea mai dragă cineva trânteşte un script de se poceşte tot. Sau dacă ai un spike, te trezeşti cu contul suspendat pe motiv de consum resurse.

    Pentru 25-30 Euro / lună se găsesc soluţii VPS viabile, cu servere în RO nu prin Californication, inclusiv cu management inclus. Dacă nu îşi permite suma respectivă, planul său de afacere e o petardă.

    Da, piaţa e aşezată dar este loc pentru toţi cei care au, aşa cum ai spus “un model de afaceri foarte bun”. Vremea de “dat în preţuri” a trecut (chiar dacă încă majoritatea mizează pe asta), marjele sunt infime pe zona IT, a fost un mic boom pe electrocasnice albe dar a pierit şi acela, acum se sapă intens pe îmbrăcăminte şi zona de food.

    Păcat că mult prea mulţi “patroni” cred că ei au ultimul cuvânt în orice domeniu din firma lor. Mă întreb chiar de ce naiba îşi angajează oameni pe diferitele sectoare dacă oricum se face după “ce-am visat azi noapte”.

    • Inteleg ce spui referitor la VPS, insa spun ca 5€ e o solutie buna de inceput, mai ales cand nu stii in ce intri. Cel putin eu nu o vad ca o solutie de blamat.

      Mi se pare gresita ideea ca daca nu-si permite 30 de euro/luna planul de afaceri e petarda.
      In afaceri si 5 euro e mult daca poti face acelasi lucru cu 2 euro. Cu atat mai mult la inceput de drum cand banii sunt putini.
      Sa stii ca nu toti intra in afaceri cu 500.000€ primiti de la rude, cum am vazut in ultima vreme articole prin ziare.

    • Nu dau nume, și asta e foarte important mai încolo când o să vină articolele despre programatori. Acolo o să fac o gimnastică afurisită în care nu o să folosesc informația pe care am primit-o de la prietenii mei din diverse firme, ci o să folosesc informația mai puțin precisă care e disponibilă publicului larg. Să mă vezi cum o să exagerez sau chiar o să mint numai ca să nu folosesc informația de la prieteni. For good reason too.

      Săptămânile viitoare.

  6. Ma rog, stii ca si eu sunt impotriva “name calling”-ului, dar sunt situatii in care daca nu arati cu degetul unele fenomene, ele continua sa existe, in detrimentul intregii categorii.

  7. +1 pentru podcast. Merg mult cu mașina, aș mai asculta și conținut românesc interesant.