Relativno sam nedavno na Redditu pronašao interesantan dokument pod nazivom Programmer Competency Matrix. Par dana nakon toga sam se ponovno sjetio dotičnog i – zaboravivši link – krenuo u potragu na Googleu. Usput sam naletio na nekoliko članaka na blogovima koji komentiraju tablicu, od kojih mi je jedan posebno zapeo za oko.

Autor, naime, opravdava svoj nezadovoljavajući uspjeh na “testu” činjenicom da je on web developer, dok je tablica dizajnirana za čiste programere. Ne ulazeći u semantiku pojma “čisti programer” (koja mi nikako nije jasna), stav članka me izrazito iznenadio. Imam osjećaj kao da autor smatra da je njegovo neznanje sasvim prirodno i opravdano samo zato jer se on bavi – webom.

Zadnji put kad sam ja provjeravao, svi smo mi pisali programe. I web i offline aplikacije ovise o gotovo identičnim resursima – obje koriste CPU vrijeme, memoriju i prostor na disku. I u web aplikacijama se podaci mogu provlačiti kroz kompleksne algoritme kod kojih je itekako bitna potrošnja tih resursa.

Svakako, neke od stvari navedenih u tablici nisu neophodne prosječnom web developeru. Čemu onda sve to? Dublje (teorijsko) poznavanje područja kojim se bavite nerijetko nagrađuje mnogim stvarima koje možete primijeniti u praksi i razumijevanjem stvari koje već primjenjujete. Uostalom, Joel je o potrebi poznavanja low-level stvari pisao već nekoliko puta i sve to objasnio puno bolje od mene.

U proteklih tjedan-dva sam pročitao nekoliko članaka u kojima se na web development gleda s visoka, kao na manje vrijedan dio programiranja (link samo na jedan jer sam ostale zaboravio bookmarkirati – tko prati Reddit i DZone će se sigurno sjetiti još pokojeg). Stavovi slični onima u gore navedenom postu autorima tih članaka sigurno nisu odmogli u formiranju takvog mišljenja.