Katama do znanja – mojih prvih 12 unit testova [en]

Već duže vreme sam imao želju da svoje programerske veštine ojačam sa znanjem pisanja unit testova i da TDD (Test driven development) primenim u praksi. Čitao sam dokumentaciju, napisao neke probne testove ali nisam išao dalje od toga. Nažalost firme kod nas nisu spremne da potroše više novca i vremena na TDD jer po mom mišljenju nema ni sluha ni znanja o ovoj programerskoj tehnici.

Juhn Cleary je objavio blog post u kojem najavljuje da će 12 dana objavljivati i raditi po jednu TDD katu i poziva programere da mu se pridruže. Bio sam oduševljen idejom jer sam znao da je to idelan način ulaska u novu tehnologiju. Jer kako kaže John nećete se probuditi jednog dana i reći sebi “Od danas ću početi da primenjujem TDD u razvoju aplikacija”. Prihvatio sam ovaj izazov kao i mnogi drugi programeri širom sveta.

Tviter je bio mesto na kojem sam pratio sva dešavanja u vezi ovog izazova. Svi smo se okupljali oko hashtaga #12tdds gde su programeri razmenjivali mišljenja i svoja rešenja zadataka/kata.

Inspiracija ovog izazova jeste syber-dojo, online alat koji vam omogućava da radite postavljene zadatake u nekom od popularnih programskih jezika koristeći TDD. Alat se može koristi sa bilo kog mesta: posla, kuće ili kafića. Za pokretanje ovog alata nije potrebno da podešavate razvojno okruženje na svom računaru.

Učenje katama je sjajan način koji će vas motivisati da učite korak po korak, tempom koji vama odgovara. Kata vam neće oduzeti previše vremena. Svaka uspešno završena kata doneće vam parče znanja i bićete bliži svom cilju.

Osećaj kada posle refaktoringa (izmene koda) pustim testove koji mi daju signal da je kod ostao funkcionalan, jeste potvrda da je TDD tehnika koja može da obezbedi stabilnost aplikacije. Kada pogledam iza sebe vidim da mi je ovaj izazov pružio mogućnost da bolje vidim prednosti razvoja vođenog testovima i da ga sprovedem na praktičnim primerima.

Kada sam završio svih 12 kata preko twitera sam zamolio John-a da pogleda moje testove i kod kako bih bio siguran da sam testirao prave stvari na pravi način. Iznenadio sam se kada sam dobio opširan odgovor u kojem mi John daje savete za poboljšanje koda i bolje imenovanje test metoda, ali i pohvale za određene kate i rešenja. Zahvalan sam John-u na vrednim savetima koji će mi pomoći da moj kod bude još bolji.

Moje kate sa rešenjima i testovima su dostupne na gihubu – https://github.com/Djuki/tdd12

Travis je platforma koja se lako integriše sa github servisom, a na svaki vaš push koda Travis će pustiti automatizovane testove u okruženju koje ste vi definisali. U slućaju da testovi ne prođu travis će vas obavestiti o tome. Ovo može biti veoma korisno za timove sa više programera. Moji prvi unit testovi su postavljeni i na travis, gde možete videti kako izgledaju testovi kada se pokrenu.

Osim boljeg razumevanja unit testova ovaj izazov mi je doneo i ponudu za posao u Londonu. Ovo je samo dokaz da se svaki trud i svaki korak ka znanju uvek isplati, kao i da entuzijazam ne može ostati neprimećen. Continue reading

Zašto ste morali biti na WebCamp-u u Zagrebu [en]

Ovog vikenda u Zagrebu održao se prvi Web Camp koji je okupio open source zajednice iz Hrvatske. Šest korisničkih grupa i organizacija zajedno su organizovale ovu jednodnevnu konferenciju namenjenu web programerima. ZgPHP, Python HR, HrOpen, CodeAtSix, Flash.hr i Hujak (User grupa Java programera) potpomognuti Microsoft zajednicom.

Pravac – Zagreb

 

Veliko interesovanje na WebCamp-u u Zagrebu

Veliko interesovanje na WebCamp-u u Zagrebu

U petak smo se smestili u voz i uputili ka Zagrebu kako bismo se družili sa kolegama iz regiona a vratili smo se puni pozitivnih utisaka. Predavanja su bila organizovana u dve sale pa smo uvek morali birati između dva predavanja koje ćemo da slušamo a koje ćemo propustiti. Često odluka nije bila laka, jer su predavanja bila veoma kvalitetna, a teme veoma privlačne.

Konferencije su mesta na kojima ćete se povezati sa ljudima, imati priliku da popričate sa njima i pitate ih šta god da vas zanima, a to je značajnije od samih predavanja. Predavači dolaze na ovakva predavanja jer žele da podele i svoja iskustva i svoje znanje, koje su stekli kroz praktičan rad, i biće im zadovoljstvo da odvoje vreme za vas na druženjima pre i posle same konferencije.

Vaše znanje i interesovanja treba da širite, a konferencije će vam u tome pomoći, što znači da treba da slušate i predavanja koja nisu usko vezana za vaš posao i vaša trenutna interesovanja. Zato sam se i odlučio da čujem nešto više o Erlang jeziku o kojem nisam znao apsolutno ništa. Predavač Saša Jurić je predstavio priogramski jezik Erlang tako što je “zaronio” u samu dubinu ovog jezika i predstavio sve njegove prednosti koje mogu iskoristiti sistemi kojima je skalabilnost prioritet.

Highlight predavanja

Ilija Studen

Ilija Studen govori o tome kako se “zakopao” sa verzijom 3

Tomislav Capan i Luka Kladarić pričali su o svojim iskustvima u radu distribuiranog tima, gde smo moglu da čujemo nešto o tome kako treba organizovati tim koji se širi i čiji su članovi dislocirani. Tomislav Caplan je predstavio prednost i jednostavnost Trello aplikacije i KanBan metodologije rada, koju je u poređenju sa SCRUM metodologijom fleksibilnija i manje striktna, pa je pogodnija za samoorganizovane timove. Zanimljivo je napomenuti da je KanBan korišćen u Toyoti koja je poznata po svojoj inventivnosti kada je u pitanju organizacija proizvodnje. Luka Kladarić radi u timu koji stoji iza veoma popularnog i posećenog web sajta deviantart.com tako da smo imali priliku da čujemo kako izgleda organizacija tako velikog i uspešnog tima.

Continue reading

Dodajte tagove u vašu WordPress temu [en]

WordPress je u verziji 2.3 uveo podršku za tagove. Ali najverovatnije niste osvežili vašu WordPress temu tako da, i ako koristite tagove, oni se ne vide i vaši posetioci ne mogu da iskoriste ovu blagodet web 2.0 web-a. Mnogi ne vole tagove i ne vide ništa preterano korisno u njima, a ježe se na pomen tag oblačića (tag cloud). Ali ja sam ipak na strani tagova, oni će pomoći da vaši posetioci lakše pronađu vaše stare i zaboravljene postove (tekstove), koji su označeni sa istim tagom kao tekst koji upravo čitaju. Drugi argument u korist tagova je da vam neće škoditi, a čim ne škode to znači da koriste, pa da …

WordPress

Sve što treba da uradite jeste da u single.php fajl, koji je deo vaše WordPress teme umetnete sledeći kod:

Ovo je funkcija koju ćemo koristiti

  1.  

Tako da vaš kod može izgledati ovako:

  1. span class=”st0″>’Tagovi : ‘,‘ • ‘,

Tagovi će na izlazu izgledati ovako
Tagovi : WordPress • Djuki • Tutorijal
Continue reading