Sve su firme šampionske, razlika je samo u kompenzaciji.
 

  Site o šampionizmu i šampionskim firmama na hrvatskoj informatičkoj sceni.            ->Engleski site 
 
  Šampionski manifest
 
 

Pobedničko geslo

  1. Glavno geslo šampionske organizacije glasi: "Mi smo svi svetski šampioni". Neki koriste i naziv "igrači". Sve daljnje natuknice su samo daljnje objašnjenje osnovnog gesla.

Šampionsko znanje

  1. Pred drugima šampion nikad ne govori da nešto ne zna. On zna sve. Ne treba mu nikakvo učenje i usavršavanje. Ako prizna da nešto ne zna, pregazit će ga konkurentski šampion koji takvu grešku ne čini. Reći "ne znam" je znak slabosti, nesigurnosti i manjka samouvjerenosti.
  2. Ustvari, ako nešto ne zna a treba naučiti, to će napraviti potajno tako da nitko ne zna i onda će se kasnije s tim praviti važan kao da to zna već godinama.
  3. Pravi šampion se može baviti svačime. Po mogućnosti, s onim što u tom trenutku donosi najviše profita (popularnosti) uz najmanje rada. Jučer VB, danas ASP, sutra .NET – sve se da lako skužiti i onda iskoristiti.
  4. Šampionsku organizaciju je najlakše prepoznati baš po tom kriteriju. Ako naiđete npr. na organizaciju u kojoj:
  • Ima 6 zaposlenih i svi vode projekte

  • Na projektima radi ili samo jedan čovjek ili jedan iz firme + vanjski suradnici

  • Nitko od onih koji ne sudjeluju u projektu nema pojma što se u tom projektu događa

  • Svi rade u svih tehnologijama i uopće nije u pitanju da li netko od dotičnih zna neku tehnologiju već ako je na raspolaganju daje mu se posao

  • Ne postoji nikakav standard rada, proces niti dokumentacija zajednički bar dvojici a da ne govorimo o svima skupa (tj. svatko radi po svome)

onda budite sigurni da ste definitivno među šampionima.

Šampionske vrline i mane

  1. Ono što neznalice i nešampioni nazivaju skromnost ili istinoljubivost je nešto što je strano pravom šampionu. U svakoj prilici i na svakom mjestu šampion treba uzdizati svoje "vrline" pred ostalima, bez imalo lažnog stida. "HTML sam rasturao već 1990", "među prvih sam 10 VB programera u Hrvatskoj po Brainbenchu", "Ovo rješenje sam ja zamislio a ostali su došli tek kasnije a sada si prisvajaju zasluge".
  2. Dobra šampionska tehnika je pripisivati vlastite mane drugima. Ako šampion kaže za nekoga da "je pun ego tripova", onda budite sigurni da je ego dotičnog šampiona veći od Himalaje. Ili, ako kaže "ja ne znam drugima raditi iza leđa" onda je 100% to jedna od njegovih najvažnijih tehnika preživljavanja među drugim šampionima.

Profil šampiona

  1. Pravi profil svetskog šampiona je sljedeći:
  • "Zna" sve tehnologije. Rastura Windows, AD i Exchange administraciju, projektira baze podataka, programira, radi web stranice.
  • Naravno, ništa od toga ne zna detaljno, samo onoliko koliko mu treba da se proda da to zna.
  • Leti s jedne stvari na drugu, nikad ni jednu ne obavi temeljito i do kraja jer mu brzo dosade.
  • Nikad nije čuo za teoriju programiranja ili prošao neku formalnu naobrazbu već je sve naučio upornim isprobavanjem i pikanjem. Logika, matematika, Booleova algebra i slični pojmovi spadaju u ropotarnicu povijesti. Šampionsko pitanje: "ako mi funkcija vraća true ili false, kako da dobijem obrnutu vrijednost, da li da provjeravam s If ..? " Nakon što je dobio odgovor da koristi Not, šampion još ne vjeruje i nakon nekog vremena ozarena lica kaže: "stvarno, pa to radi."
  • Objektno orijentirani dizajn i srodne jezike (Java, C++) izbjegava jer se ne daju tako lako svladati i razumjeti. Ustvari, prezire klase i objekte jer mu je cijeli koncept previše znanstven i nerazumljiv. Citat: "ne volim klase jer su mi nekako preglomazne i neoptimalne, zato radim samo sa strukturama" ili "nemojte mi zbog jednog if-a napraviti klasu". Sofisticiranje koncepte kao što su npr. Design patterni nećemo niti spominjati.
  • Na Windows platformi, gotovo obavezno programira u Visual Basicu i VBScriptu.
  • Najdraža arhitektura aplikacije mu je monolitna jednoslojna arhitektura u kojoj u event handlerima forme nakrca brdo spaghetti koda u kojem miješa hardkodirane SELECT statemente sa business rulovima i user interface akcijama. Three-tier i slične arhitekture mrzi jer oduzimaju previše vremena. Citat: "odustali smo od COM komponenti jer smo stalno imali s njima problema s binary compatibilitiem. Zato smo sve stavili u jedan exe (od 7.5 MB)" Naravno, između redaka je trebalo pročitati da dotični šampion nema pojma o razlici između project i binary compatibility u VB-u i da mu je umjesto da pročita MSDN ili ne daj bože, pita nekog o tom, bilo lakše sve strpati u jedan exe.
  • Za kompjuterom radi brzo i energično tako da nitko sa strane ne shvaća što radi
  • Druge developere ocjenjuje isključivo po tome kako brzo naprave neki posao bez obzira na kvalitetu i čitljivost koda. Iz njegovih usta ćete često čuti komentar: "ah, dobar je on, ali je spor!"
  • Da bi postigao tu brzinu, služi se legendarnom šampionskom Copy and Paste metodom. Uzorke koda koji su radili na jednom mjestu a trebaju mu na drugom jednostavno će iskopirati, ako treba i sto puta. Tek ponekad će mu se omaknuti da kod, umjesto da ga kopira, stavi u funkciju ali to nije prečesto jer je brže iskopirati kod i ići dalje nego razmišljati o funkciji, parametrima itd. Što će poslije netko razbijati glavu nad takvim rješenjem nije ga briga – pravi šampion ne misli na poslije a kamoli na loosere koji će održavati njegov kod. (Primjer)
  • Kod ne komentira ili ako ga ipak mora komentirati, onda to radi preko volje i nemušto. Prvom prilikom prestaje s tom nepotrebnom djelatnošću uz objašnjenje kako nema vremena za to.
  • Dokumentacija? To rade pičkice i knjiški moljci. Ako netko ne kuži njegov kod, onda je jadnik i looser i bolje da se vrati pod kamen ispod kojeg je ispuzao. Osim toga, ako bi sve što je radio bilo dokumentirano i jasno, onda bi netko mogao doći na heretičku misao da se posao može nastaviti i bez šampiona. A ne, to on ne može dozvoliti! Sve treba biti isključivo u njegovoj glavi tako da firma jednostavno ne može bez njega.

Nešampioni

  1. Ljudi koji se usavršavaju u nekoj djelatnosti i žele maksimalno kvalitetno raditi taj posao (tzv. stručnjaci ili još gore – inženjeri i znanstvenici) su budale. Posao treba znati površno, tek toliko da drugi misle da ga znaš raditi a ako je nešto prekomplicirano, to ćeš lako delegirati budali koja to zna raditi (još će u najboljem slučaju biti i sretan i zahvalan zbog toga).

Šampioni i edukacija

  1. Tečajevi, knjige i slično služe samo zato da šampion može reći: "da, bio sam tamo i ispravljao predavača" ili "da, naravno da sam knjigu pročitao makar u njoj nema ništa što nisam znao" ili još, ni ne pogledavši u knjigu "Ja znam deset puta više nego što piše u toj knjizi". Ako netko nadobudan kaže "Ajmo primijeniti što smo naučili na tečaju ili u knjizi", šampion će reći "da, to je zgodno ali nemamo vremena" ili "daj ti, ja te podržavam". Naime, tečajevi i knjige najčešće nemaju veliku vrijednost jer uglavnom ne služe promociji i prodavanju već znanju i kvaliteti, a ovo potonje su pogane riječi u ušima pravog šampiona.
  2. Šampion ne primjenjuje tuđa znanja i iskustva, on uvijek stvara nešto novo i originalno. Primjer: u šampionsku organizaciju dođe nadobudni nešampion i neuvidjevši da je u firmi već instaliran šampionski proces rada, predloži da šampioni u razvoju softvera primijene neki priznati koncept kao npr. MSF. Naravno, iskusni šampionski kolega mu na to odgovara: "zašto bismo mi uzimali gotov recept od nekog drugog? Pa izmislimo svoj vlastiti proces!"

Šampionski project mannagement

  1. Pravi šampion uvijek ima iza sebe hrpu nedovršenih projekata. Cilj projekta nije da se dovrši i isporuči već da se na njemu steknu kontakti, reference i slava. Kada šampion postigne taj cilj, on napušta projekt a dovršava ga budala koja zna raditi ili projekt propada, ali naravno bez krivnje šampiona već onih koji su ostali.
  2. Područje u kojem je šampion nepobjediv je procjena vremena i težine posla odnosno projekta. Da navedemo samo neke šampionske fraze: "To je tri linije koda", "To je tri sata programiranja" "znam da vama treba toliko ali ja bih to napravio deset puta brže" "to je kikiriki za napraviti", "imam osjećaj da ćemo to začas naštrikati". Ako nešampion na kraju potroši tri puta više vremena ( a i šampion bi toliko da je radio), šampion će mu reći "još trebaš puno učiti" ili indirektno "on je spor i ne zna puno, zato mu je trebalo toliko"
  3. Procjena resursa kod šampiona ide po jednostavnom principu kojeg je patentirao otac izjave "svi smo mi svetski šampioni" a koji glasi – "Koliko Kineza toliko zida". Idioti kao F. Brooks ili drugi teoretičari project managementa koji tvrde da 10 čovjek mjeseci ne znači da će 10 ljudi napraviti posao u jedan mjesec su naravno u krivu. Dakle, ako projekt kasni, dodat ćemo više ljudi na projekt i sve ćemo stići. Ako se to ne desi, naravno, krivi su ljudi jer su prespori ili jer ne znaju dovoljno. Ako je netko pisao dokumentaciju, toga naravno treba razapeti jer je to čisto gubljenje vremena.
  4. Omiljeni specijalitet šampiona je također herojski pothvat tj. herojsko programiranje. Analogno tome, planiranje, procjena resursa, kontrola napretka ili (god forbid) kontrola kvalitete su riječi prljavije od pojmova kao što su incest ili nekrofilija.
  5. Pravi šampion nikad ne planira. Glavna parola je "Sve ćemo stići" Ako neki skeptik počne gnjaviti s matematikom u stilu "Pa ima 20 dana puta 3 čovjeka i čak da ignoriramo Brooksov zakon to ne možemo stići" pravi šampion će naravno napasti skeptika, optužiti ga da je pesimist, da ima attitude problem, da ne razumije situaciju itd. Itd.
  6. Kada se rok približi i šampion u užasu počne shvaćati da je skeptik imao pravo, posegnut će za omiljenim metodama: dizanje napetosti, političke parole ("malo je frka ali mi to možemo stići, vjerujem u nas.."), mobilizacija svih resursa, prekovremeni rad, rad vikendom, herojsko programiranje bez ikakve kontrole i nadzora itd.
  7. Šampionski rok isporuke tipično izgleda ovako: pola sata prije roka još uvijek se završava kod, testira se u hodu i ako se baš ne ruši, smatra se istestiranim i spremnim. Tek tada počinje integracija pojedinih dijelova. Vlada velika nervoza i panika, svatko sa svakim razgovara, gube se dijelovi koda, odjednom iskrsavaju duhovi, otkriva se da su neki developeri radili po svom jer nije bilo jedinstvene specifikacije, počinju optuživanja, (Primjer)
  8. Ako nekim čudom ipak nekako skrpaju stvar da kako tako radi, raspoloženje se mijenja i šampioni si počinju čestitati, odlaze na piće, od panike najednom nastaje euforija, samohvala, svi su neprirodno zadovoljni. Naravno, to traje samo do trenutka kada klijent započne testirati ili koristiti proizvod. Nakon toga proces optuživanja i prebacivanja odgovornosti počinje ponovo. Naravno, krivnja treba pasti na nešampione i na skeptike koji "nisu vjerovali od početka".

Šampioni i dokumentacija

  1. Pravi šampion ne piše dokumentaciju. To je za pičkice i knjiške moljce koji nemaju pojma o ekstremnom, šampionskom programiranju.
  2. Pravi šampion je također nepismen. On kraj svih svojih obaveza i pothvata nema vremena za takve trice kao što su č i ć, ije i je ili nekakvi stilovi i struktura rečenice. To mu je tako beznačajno da ga nije briga da li će i svoje ime u dokumentima napisati točno.
  3. Šampion također površno zna strane jezike jer to nije bitan faktor koji ga čini šampionom. Bitno je da zna VB i VBScript a engleskim neka se bave nešampionske gnjide. Tko ne zna da je umjesto "Throw" šampion htio napisati through nije ni zavrijedio čitati šampionske dokumente.
  4. Ako šampion mora pisati dokumentaciju, najčešće zbog više sile, onda on naravno ne piše da bi od toga netko imao koristi već da se zadovolji forma. Ovdje do punog izražaja dolazi nemjerljiv pokušaj šampiona da dokažu Marxovu teoriju o prelasku kvantitete u kvalitetu – nastaju tone i tone dokumenata koje naravno nitko ne čita a kamoli da radi po njima. Ipak, ako jednog dana netko potegne pitanje "pa gdje je to specificirano?", šampion će sa smiješkom reći: "pa mi to imamo odavno u dokumentima".

---------------------------------------------------------------------------------
Šampionski proces rada odgovara CMM level1 (capability maturity model level 1) što je vrlo sofisticirana klasifikacija za nešto što se jednostavnim riječima može opisati kao anarhija ili kaos. Taj proces je nažalost dominantan ili jedini poslovni proces u većini organizacija. U programiranju se to također opisuje kao "beskonačni code-debug-test ciklusi". Većina projekata koji slijede taj proces propada ili stvaraju gubitak ali svejedno proces se i dalje naširoko koristi, najviše zbog toga što naizgled najbrže dovodi do "koda koji radi".

Otac izraza šampioni je sam vlasnik firme u kojoj je ponikao naziv šampioni i  koji je još tvrdio "nas pet radi posao koji bi u nekoj drugoj firmi radilo 15 ljudi". Nije nikad otkriveno da li je mislio na 15 mentalno retardiranih makar bi i oni možda mogli naučiti programiranje bolje od nekih šampiona.

Primjer iz života sa šampionima: Looser dobija zadatak da dopuni formu koju je radio šampion s dodatnim funkcionalnostima. Slučajno primijeti da postoje dvije takve forme u aplikaciji s gotovo identičnim funkcionalnostima ali se svaka poziva s drugog mjesta (detail forma koja se otvara s master forme koja sadrži grid). Dalje istražujući kod, looser s užasom shvati da su dvije forme potpuno identične osim što se referenciraju na različite master forme s kojih se pozivaju. Pitanja koja se nameću looseru su: Zašto programer koji je radio detail formu nije napravio par manjih modifikacija tako da se ona može pozivati s bilo koje master forme tj. da bude neovisna o pozivatelju? Kako je moguće da je duplicirao formu i 99% njenih funkcionalnosti otežavajući time njene daljnje modifikacije i zagorčavajući život drugima koji će tu formu održavati? E moj looseru – pa odgovor na ta pitanja je jednostavan. Zato što je taj programer Svetski šampion. Nema on vremena za nekakve ideje o lakoći održavanja, code reuseu, univerzalnosti tj. on to ni ne zna napraviti. On dobije zadatak i obavi ga brzo tako da može ići raditi druge stvari a što njegovo rješenje nema veze s mozgom i što je koma za održavanje njega nije briga. Ako netko i postavi pitanje o takvom rješenju i zašto je tako napravio, on će naći sto načina da se opravda i izvuče ali nikad neće reći: "da, imaš pravo, mogao sam to i bolje napraviti"

Primjer šampionske isporuke korisniku: sat prije isporuke kod se kompajlira, radi se setup i na testnom stroju se instalira aplikacija. Po pokretanju aplikacija se ruši jer je developer hardkodirao drugačiju putanju do report fajlova nego što je na ciljnom stroju. Head developer o tom nije imao pojma i cijelo vrijeme je mislio da će ovaj koristiti standardnu putanju. Naravno, standardna putanja nije nigdje spomenuta osim u glavi head developera. Dokumentacije naravno nema (još jedna prljava riječ, možda i gora od planiranja jer se planiranje može glumiti ali dokument ne, ali više o tome na kraju). Na kraju sve završava odgodom isporuke i velikim brukanjem gazde pred klijentom.