Bazična znanja – kuća od cigala
Kakva znanja stičemo je veoma bitno, nije svako učenje podjednako dobro i efikasno.
Hajde da pričamo o jednom veoma bitnom pojmu – granulaciji. Granulacija nam određuje najmanju gradivnu jedinicu koju koristimo kako bismo nešto sagradili.
Zamislimo da zidamo kuću. Možemo se odlučiti za ciglu, blok ili pak gotove montažne zidove. Gotovi zidovi nam ne daju previše izbora, to nam je što nam je. Blok pruža veću vleksibilnost, ali ciglom možemo da napravimo skoro sve što zamislimo.
Isto tako je i sa znanjem. Možemo da ulažemo u bazična znanja koja će nam omogućiti da gradimo naše programe najmanjom gradivnom jedinicom. Svaki kod nije ništa drugo nego posledica naših misli. Inženjer koja ima jaka bazična znanja neće imati problem da svaku svoju zamisao sprovede u delo. To je jako važno.
Sa druge strane imamo ljude koji traže gotova rešenja. Ovu pojavu je veoma lako prepoznati. Kada dođu pred prepreku traže gotovo rešenje i isprobavaju različita dok ne dobiju očekivani rezultat. Pogrešno.
Svaki problem ima rešenje. Rešenje se prvo ogleda u vidu koraka koje je potrebno preduzeti da bi se do rešenja došlo. Ovde još uvek govorimo o misaonom procesu koji definiše skup koraka neophodnih da se izvrše – algoritam. Naredni korak ovog procesa je implementacija. Algoritam pretvaramo u kod koji sprovodi naše misli u delo. Finalni korak je poređenje rezultata sa onim koji smo očekivali. Ukoliko ne dolazi do razlike, problem je rešen.
Zvuči jednostavno, zar ne? Jeste jednostavno, pod pretpostavkom da imamo jaka bazična znanja i da svaki algoritam možemo opisati programiskim kodom. Oni kod kojih to nije slučaj, provešće svoje vreme tražeći gotove delove koda, biblioteke, funkcije ili servise. Ponekad to i jeste rešenje, jer ne treba izmišljati toplu vodu. Uvek je bolje pozvati se na vec implementiranu pouzdanu funkcionalnost, ali mora postojati svest o tome kako ona funkcioniše i pod kojim uslovima.