10+1 dalykų, kurių apie programavimą nemoko universitete

Daugelis iš jūsų turbūt sutiks, kad Lietuvos aukštojo mokslo sistema turi daug ydų, ir universitetinės programos sunkiai gali paruošti kvalifikuotus specialistus, pasirengusius dirbti realioje aplinkoje. O tai vyksta būtent todėl, kad apie realią aplinką universitetuose mažai ką ir pasakoja. Pasirodo, tokia realybė ne tik Lietuvoje – panaši tendencija yra bendrai pasaulyje. Ta tema radau vieno užsienio blogo įrašą ir laisva forma išverčiau į lietuvių kalbą. Ar sutiksite su šiais teiginiais, kurių apie programavimą nesužinosite universitete?

1. Mes visada klystame

Programuotojai dažniausiai turi didelius storus EGO, ir labai nemėgsta pripažinti, kad jie klysta. Bet visi mes žmonės, ir kartais klaidų pripažinimas yra geresnė išeitis, negu savo “tiesos” įrodinėjimas ir tolimesnis jos taikymas.
Išmokite klausyti kitų specialistų, ir tada darykite sprendimus savo projektuose.

2. Jei kažkas gali įvykti ne taip, tai būtinai įvyks

Čia, galima sakyti, vienas iš Merfio dėsnių. Tačiau programavime tai labai pritaikoma – jeigu paliksite potencialią skylę sistemoje, tai anksčiau ar vėliau ji išlys, ir, kaip rodo praktika, pačiu netinkamiausiu metu, kai jūs apie tą skylę visai pamiršite. Taigi – testuokite, testuokite ir testuokite.

3. Visas kodas yra šlamštas

Po dešimties metų zyzimo apie tai, kaip aplink mane parašytas kodas yra blogas, priėjau prie išvados, kad apskritai visas kodas yra blogas! Įskaitant mano paties. Nes tiesiog neegzistuoja tobulo kodo, net labai gerai ir taisyklingai parašytas kodas yra sunkiai skaitomas.
Tai nereiškia, kad neverta stengtis rašyti geresnio kodo. Atvirkščiai, tarp gerai ir blogai parašyto kodo yra didelis skirtumas.

4. Klaidų yra visada

VISADA! Tai priklauso tik nuo to, kaip stengiatės jų ieškoti.

5. Svarbiausias dalykas yra klientas

Tai yra dalykas, bene labiausiai praleidžiamas pro šalį universitete. Nes ten užduotys dažniausiai susiveda į teisingą, korektišką ir efektyvų sistemos sukūrimą. O realiame gyvenime užsakovui dažniausiai visiškai nerūpi tokie dalykai, kaip:
- su kokiomis technologijomis sistema sukurta;
- kokios paradigmos panaudotos kūrime;
- ar buvo laikomasi taisyklingų programavimo praktikų.

Esmė: kartais norisi patobulinti ar perdaryti sistemą arba jos dalį, nes žinote, kad ji netobula. Tačiau jeigu tai neatneš realios naudos klientui, tada dažniausiai neverta to daryti.

6. Dizainas, nubraižytas ant popieriaus, yra neveiksmingas

Daug kas šiais laikais akcentuoja, kad prieš pradedant programuoti, reikia nusibrėžti sistemos schemą ar tinklalapio dizainą ant popieriaus. Tai yra tiesa, bet kol iš to popierinio dizaino nepradedamas lipdyti realus minimalus produkto prototipas ar bent HTML maketas, tol popierius lieka popieriumi. Jei taip nebūtų, tai ant popieriaus nusibrėžti galingas sistemas galėtų bet kuris protingesnis mokinukas.

7. Mažiau yra daugiau

Anksčiau šis principas buvo žinomas kaip KISS (“Keep it Simple, Stupid”). Jeigu kažkokia funkcija neatneš realios naudos, geriau jos kol kas atsisakyti, už tai produktas bus paleistas į gyvenimą greičiau.

8. Kodo rašymas yra tik apie 20% mūsų veiklos

Būkite pasiruošę 80% viso darbo laiko praleisti galvojant, testuojant, debuginant, šnekant, aptarinėjant, strateguojant, susirinkimuose ir kt. Tai yra normalu, ir būtent iš viso to sumoje tobulėja programuotojas.

9. Klientas niekada tiksliai nežino, ko jis nori. NIEKADA!

Įsivaizduokite, kad važiuojate į parduotuvę rinktis kilimo, bet nesate to darę niekada gyvenime. Dažniausiai jūs tik apytiksliai žinosite, kokio jums reikia, o realiai ilgai vaikščiosite ir rinksitės. Panašiai ir yra su IT sistemų užsakovais – dažniausiai jie tik apytiksliai gali nupasakoti reikalavimus, o likusią dalį jūs turite jam padėti suformuluoti. Ir eigoje užsakovo norai dar triskart pasikeis. Nors, be abejo, viskas priklauso nuo konkretaus atvejo.

10. Kažkas jau yra tai padaręs

Neišradinėkite dviračio, ieškokite per Google ar klauskite kolegų – daugumai problemų jau egzistuoja sprendimai, tik reikia mokėti juos surasti ir pritaikyti.

Bonusas: ei, bet vis tiek mūsų darbas yra kietas! Negi ne? ;)

Originalus straipsnis: 10+1 things they never teach in college about programming

* * *
Norite gauti Skaitykit.lt naujienas operatyviau? Prenumeruokite RSS įrašus
Jei nežinote, kas yra RSS ir kaip juo naudotis, apie tai galima pasiskaityti šiame puslapyje.

Komentarų: 8

    Type:
    May 31, 2010 1:28 pm

    Aš tai pasakysiu tiesiai šviesiai: universitetai dažnai mėgsta marketingo tikslais pasipuikuoti, kaip ten pas juos viskas gerai ir gražu, bet iš tikrųjų ne vienas dėstytojas apskritai neturi kompetencijos dėstyti savo dalyką, jie visiškai nekvalifikuoti, o ta jų neva „kvalifikacija“ man juokinga. Kaip taip įmanoma, kad programavimo studentus moku dėstytojas, kuris apie tą programavimą yra girdėjęs tik iš knygučių? Nesijuokite, tai įmanoma, taip ir yra. Mano dukra studijuoja programavimą, aš matau, kaip jie mokosi ir ko jie mokosi. Aš kaip tėvas ir tuo pačiu aukšto lygio programuotojas, esu labai nusivylęs jos studijomis, matau, kad jos jai nieko gero neduos. O ji mokosi VGTU.

    Paulius:
    May 31, 2010 3:31 pm

    Lyginant Lietuvos aukštųjų mokyklų ir užsienio (iš patirties galiu palyginti su Danijos) matau šias lietuviškų aukštųjų mokyklų ydas:

    * Pernelyg didelis dėmesys fundamentaliesiems mokslams. Nors čia ginčytinas dalykas, šios disciplinos yra svarbios dirbant mokslinį darbą, o privačiame sektoriuje – tikrai ne tokiu lygiu, kaip mokoma mokyklose.

    * Neskiriamas dėmesys komandiniam darbui. Kursinius rašo 1 studentas, egzaminus – 1 studentas, diplominius – 1 studentas. Pabaigęs jis ateina dirbti į įmonę, kur dirba 100 žmonių ir verkia kamputy.

    * Komunikacijos trūkumas tarp dėstytojų. Nors disciplinos yra giminingos (pvz.: programų inžinerija, programavimas ir DB projektavimas), daugeliu atveju dėstytojai nežino nei apie tai, ką dėsto kiti dėstytojai, nei juo labiau apjungia tas disciplinas į bendrus kursinius ar kitokius darbus.

    Kažkada buvau rašęs įrašą ir apie visuomenėje egzistuojančius stereotipus apie aukštąjį mokslą:
    http://lescinskas.lt/aukstasis-mokslas-Lietuvoje-visuomenes-poziuris

    aegis:
    May 31, 2010 5:26 pm

    Lietuvoj visa švietimo sistema kreiva. Tačiau dar kreivesnis tas įsitikinimas, kad po 12tos klasės būtinai reikia stoti į universitetą iškart. Niekur kitur, tik į universitetą, ir ne po metų ar dviejų, o iškart. Kitu atveju tu nevykelis. Blogai yra taip :|

    jonas:
    May 31, 2010 6:28 pm

    Dazniausiai universitetu skundziasi tie, kurie nezino ko nori ir i ji istoja genami bandos jausmo.
    Destytojai dazniausiai prisitaiko prie bendros studentu mases, todel apie ju kvalifikacija spresti sudetinga ir tuo labiau is studentu, kuriu dauguma vietoje to, kad kazka ismoktu, geriau nusirasineja ir paskui skundziasi, kad niekas nemoke.
    Is kitos puses destytojai universiteta pacioj zemiausioj pakopoj, todel juos kaltinti uz bloga darba tas pats, kad norfos pardaveja uz tai, kad prekiu kainos per dideles.

    Egle:
    June 1, 2010 1:45 am

    Pritariu paskutiniam komentarui, nes asmeniskai susiduriau. Po mokyklos teko pavazyneti i uzsieni, net jame pagyventi ir pasakysiu niekas ten nesistebi kai mokytis ateina 30meciai ar dar vyresni. Visai kitas poziuris i zmones, ko Lietuvoje be galo truksta. Cia pirmakursiai netgi daznai destytoju vadinami kvailiukais, o kartais ir net necenzuriskai, tai ka jau galima kalbeti apie normalu dialoga su destytoju apie jo destoma disciplina. KTU informatikams matematika desto tokia Janusauskaite, buvau itin sokiruota jos nesugebejimu suprasti, kad be universiteto egzistuoja ir asmeninis gyvenimas, ir kad paskaitas praleisti galima del sunaus ligos. Darbdaviai supranta, destytoja netik nepaaiskina tavo uzduotu klausimu, bet dar ir sugeba puse paskaitos koneveikti, nes matai mano sunus sirgo.
    Pasakysiu tik tiek nesuprantu, ar Lietuvoje aplamai zmoniu zemas mentalitetas, ar cia yra tik su aukstosiomis Lietuvos mokyklomis, kas nustate, kad studentai yra nezmones. Ir ta iskreipta logika, kad dieniniame gali mokintis tik 18-meciai, nezinau man 26, teko pamatyti daug dalyku ir atvirai pasakius jei kas leistu pakartoti tuos metus nei uz ka vel nesirinkciau po mokyklos iskart eiti studijuoti. Uzsienyje aplamai priimta, kad pabaiges butinai turi bent metus “pailseti”, pakeliauti, padirbeti, o tada apsitrynes, subrendes ir tvirtai nusprendes ko nori eiti mokintis toliau.

    Rapolas:
    June 7, 2010 2:34 pm

    Kiek teko susidurti su dėstytojais Lietuvoj ir Šveicarijoj, tai Šveicarijoje studentas yra toks pats žmogus kaip ir dėstytojas, Lietuvoje gi, studentas yra rakštis dėstytojui. Yra studentas, yra problemos, nėra studento – nėr problemų.

    Bomber:
    June 14, 2010 1:05 pm

    “1. Mes visada klystame
    4. Klaidų yra visada
    8. Kodo rašymas yra tik apie 20% mūsų veiklos” – na apie šiuos dalykus tai šiek tiek ir pasakoja :) Ir praktiškai tenka patirti, rašant atsiskaitymo programas.

    Paulius: “* Neskiriamas dėmesys komandiniam darbui.” – Na ne visur taip. Bent jau mano specialybėj, tai kursinius rašome grupelėmis po kelis žmones.

    O šiaip pagal mane, tai svarbiausia nepatingėti ir siekti daugiau negu universitetas duoda, nes pats asmeniškai daug svarbių dalykų išmokstu ne vien iš dėstytojų, bet ir savarankiškai.

    Evio:
    June 19, 2010 9:29 am

    VU MIF’e per Projektų valdymo paskaitą dėstytojas G. Zlatkus dar ne tokių dalyko išvardino. Taip kad skaitydamas šiuos 10+1 dalykus, aš jau apie tai jau žinojau.

Parašykite komentarą


Powered by WordPress | Designed by: BlueHost Coupon | Compare CD Rates, Online Brokers and Press Release