Kada nastupa programiranje?

2 min

Skala veština razvoja.

Nivo 1: programski jezik

Primarna veština je poznavanje programskog jezika, rečnika programiranja. Predstavlja neophodnu osnovu, ali ne daje preveliku vrednost - izuzev na intervjuima za posao. Samim programskim jezikom se malo šta može uraditi.

Nivo 2: razvojni okviri

Poznavanje ekosistema i okvira (framework) je veština kojom se može stvarati vrednost. Ovaj nivo je ono našta se većina nas fokusira - konačno, tu smo da iskucamo traženo, zar ne? SpringBoot, AWS, Docker… sve to spada u nekakve razvojne okvire.

Nivo 3: prilagođavanje

Jednom kada znamo kako rade alati i okviri, imamo priliku da ih prilagodimo našim potrebama. Svaki upotrebljeni alat je mahom generalan (da podrži što više slučajeva korišćenja); u projektu nam treba njegova specijalizovana upotreba. Ovo je nivo meta-programiranja, generisanja koda, procedura.

Nivo 4: programiranje

Tek kada pređašnje postavimo na svoje mesto, može da krene programiranje. Na ovom stupnju su korišćene biblioteke i okviri u drugom planu, poželjno sakriveni iza apstraktnih barijera; u fokusu je modelovanje sistema i arhitektura. Ovo je nivo DSL jezika.

Gde smo mi?

Prvo: gradacija ne preslikava kvalitet niti osporava vrednost.

Voleo bih da češće dobacimo dalje od drugog nivoa.

Zanimljivo je da četvrti nivo može da postane tehnološki-agnostičan; te da izgleda slično bez obzira koji jezik i tehnologiju koristili. Što je i suština, zar ne?

Osvrnuvši se na to, ne mogu a da se ne zapitam: ima li mesta za programski (?) jezik koji obitava na nivou 4? Koji, mašti kada pustimo na volju, ima plug-and-play za osnovne jezike i tehnologije? Drugim rečima, takav apstraktan jezik kome će sadašnje tehnologije biti samo implementacija.

🧧
Nisam definisan svojim stavovima. Stavove usvajamo, menjamo, nadograđujemo, ali oni ne čine nas same. Manje je važno da li se slažemo, koliko da se razumemo.