Pereiti prie turinio

WolfStreet

Nariai
  • Pranešimai

    1
  • Užsiregistravo

  • Lankėsi

  • Atsiliepimai

    0%

Reputacijos išklotinė

  1. Patinka
    WolfStreet sureagavo į Povilasarl Kur stoti norint tapti programuotoju?   
    Tie kas šneka, kad universiteto nereikia programuotojui tai nusišneka. :) Taip viską galima pačiam išmokt, programuot, piešt, skaičiuot, užsienio kalbas, ir t.t. Tai kodėl tada universitetai visam pasauly pilni? Kodėl žmonės ypač užsienį (UK, USA) moka kosminius pinigus, kad galetų mokytis universitet? Kai kurie universitetų dėstytojai visas savo paskaitas į youtube deda, bet vistiek žmonės eina mokytis pas juos, kai viską galima išmokt "youtubej".
     
    Kalbant į temą tai rinkis tik VU ir KTU. Aš pasirinkau VU dėl miesto, nemanau, kad verta peštis, kur geriau. Nes turbūt nei vienas nesimokėm abiejuose universitetuose. Mano nuomonė abu vienodai geri. Bet aš rinkčiaus VU, vien dėl geresnių darbo perspektyvų. Užsienio kompanijos Vilniuje kas met sukuria šimtus darbo vietų. Kaune tikrai mažiau.
     
    Man pačiam teko dirbt keliose įmonėse su 100+ programuotojų ir 1500eur+++ algos vidurkiu , galiu drąsiai sakyt, kad nesutikau ten nei vieno, kuris nebūtų studentas ar baigęs universiteto. :)
  2. Patinka
    WolfStreet sureagavo į wi_lius Kur stoti norint tapti programuotoju?   
    Tu irgi universiteto nebaigęs?
  3. Patinka
    WolfStreet sureagavo į wi_lius Nesimokyti, nesimokyti ir dar kartą nesimokyti   
    Tolimesnis straipsnelis (o gal greičiau esė) yra mano idėjų rinkinys, kurias jau buvau išsakęs įvairiose temose pranešimų pavidalu. Todėl jei jaučiate deja vu, kad tai jau kažkur girdėjote, neišsigąskite – čia ne Matrica glitch'ina, čia tiesiog aš kartojuosi.
     
     
     
     
    Prieš nedaug laiko karts nuo karto vis atsirasdavo temų, kuriose arba buvo diskutuojama apie mokslą, arba jos nejučia nukrypdavo ta linkme. Ir tada galėdavai išvysti LKL visų žvaigždžių dienos scenarijų, kai susikaudavo Ereliai prieš Vilkus. Ir nors aš pagal idėją priklausyčiau Erelių komandai, vis dėl to labiau palaikau Vilkų pusę. Todėl toliau esantis žodžių kratinys, kurį jūs perskaitysite (arba ne), bandys kažkiek užstoti mokyklą, švietimo sistemą ir net patį mokslą.
     
    http://www.part.lt/img/2360a820db7b9c47cf62e143b0222fa1223.jpg
     
    Turbūt pastebėjote, kad pagrindinis argumentas, kodėl mokykla yra nesąmonė, yra toks: kas nors suranda Facebook'e paveikslėlį, kuriame parašyta „Things I didn't learn at school:“. Iš karto galima suprasti, kad žmogus nepagauna mokyklos esmės. Mokykla nėra ta vieta, kuri gimdo visų galų meistrus. Mokyklos funkcija yra suteikti žmogui sveiką protą (ką angliakalbiai įvardintų kaip common sense) ir paruošti jį spręsti problemas. Mokykla suteikia tau žinių bagažą, kuris gal ir nevisais atvejais bus naudingas, bet padarys tave išprususiu. O jie, matai, pradeda šaukti, kad manęs neišmokė to ar ano.
     
    Pakalbėkim apie tai, ko mūsų neišmokė. Mokėti mokesčius? Dar dabar prisimenu, kaip ekonomikos mokytojas pabrėžė, kad atsiskaitymas už komunalines paslaugas nėra mokesčiai. Tai kas iš mokesčių belieka? PVM – sumoki automatiškai paduodamas pinigus kasininkei už prekes. Darbo mokesčiai? Vėlgi, viskuo pasirūpina darbdavys (nebent gauni vokeliais, tai ir ši pareiga nukrenta nuo darbdavio pečių). O jei ir yra koks mokestis, kuris nėra automatiškai įskaičiuojamas, tai dažniausiai gauni nurodymus, kiek, ko ir į kokią sąskaitą pinigų pervesti. Na, bet sutinku, galėtų įtraukti į mokyklos kursą modulį bent vieniems metams „Paying taxes 101“. Kita problema: kaip užvesti mašiną ją stumiant? Įjungi degimą, stumi, įmeti antrą bėgį. Vėlgi, praverstų moduliukas „Jump start a car 101“. Be viso šito, mokykloje niekas neišmoko, kaip pasidaryti namų sąlygom nedidelį branduolinį reaktorių. Visgi būtų pravartu įgauti energetinę nepriklausomybę ne tik nuo Rusijos, bet ir nuo pačios valstybės. „Building nuclear reactor at home 101...“
     
    O dabar apžvelkim nereikalingus dalykus, kuriuos išmokome mokykloje. Na, jei nežadi dalyvauti „Šeši nuliai – milijonas“, tai istorija kaip ir nereikalinga. Jeigu nieko negeri ir nevalgai, tai net bazinės chemijos žinios nėra reikalingos. Jei visą laiką drybsai ant sofos ir nė kiek nejudi ir nepriverti kitų objektų judėti, tai kinematika irgi ne tau. Pitagoro teorema? Taigi galima paimti ir tiesiog išmatuoti įžambinę. Net jei ir reiktų išmatuoti stačiakampio ežero įstrižainę, vis tiek patogiau perplaukti visą jį skersai su metru rankoje. (Išvertus šią pastraipą iš sarkazmo kalbos: gal vis dėl to ne mokykla kalta, kad nedagyvenai [atleiskit už „da“, bet kitaip neskamba] tiek, jog išmoktos žinios taptų naudingos.)
     
    Kita dažna diskusija: teorija vs. praktika. Vis kas nors teigs, kad vietoj universiteto rinkis kolegiją, ten gausi daug praktikos ir bus viskas labai gerai. Gal kas matėt serialą „Didžiojo sprogimo teorija“. Žinot, kodėl Šeldonas išaukština save likusios trijulės atžvilgiu? Nes jis – teoretinis fizikas, o teorija yra aukščiau už praktiką. Praktika seka iš teorijos, o ne atvirkščiai. Teorija apibendrina praktiką. Pirma būna hipotezė, o tik po to ji išbandoma praktiniais bandymais. Pirma būna teorema, o tik po to ji pritaikoma konkrečiam uždaviniui.
     
    Žinoma, nesakau, kad kiekvienam duota suprasti viską. Kai kuriems vis dėl to būtina keliolika kartų viską pritaikyti praktikoje, kol vis sugula į vietas. Bet šioje vietoje noriu pakartoti mintį iš „Daktaro Fausto“, kad kas nesugeba pats – mokosi atmintinai...
     
    Kartais galima aptikti tokį paradoksą. Kai kalba eina apie asmeninį išsilavinimą, tai būtinai atsiras tokių žmonių, kurie teigs, jog nori mokytis tik jam patinkančią sritį ir nieko daugiau. Gink dieve, kad tik nenukryptų kur į šoną. Po to vėl tie patys pradeda aiškinti, kad su kai kurių profesijų žmonėmis (ypač kompiuteristais) negalima rasti bendros kalbos (matai, jie tik apie kompus išmano...) Tada belieka jų pasiteirauti nuomonės apie dvigubus standartus...
     
    Dar keliems sakiniams nušokime į pasaulio istoriją. Kiek žinote žmonių, kurie buvo pagerbti dėl savo nuopelnų mokslui, dėl ypatingų žinių ar atradimų? O kiek žinote ypatingai gerų, tiesiog tobulų mokesčių mokėtojų?
     
    O dabar truputis asmeniškumų. Kaip ir daugelis žmonių, lankiau mokyklą. Kaip ir daugelis žmonių, nemėgau istorijos. Visus tuos metus nuo 6 klasės nesidžiaugdavau, kai reikėdavo mokytis atmintinai datas ir įvykius. Bet dabar dėl to širdies neskauda. Vienintelis dalykas, ko norėčiau, tai kad būtų įmanomas toks žaidimas su laiku: chronologinėje linijoje išdėlioti visus dalykus, ką mano protas mokėjo ir ką sugebėjo tam tikru metu, bei visą šią liniją patraukti atgal laiko atžvilgiu. Kiek tada būčiau visko pasiekęs...
     
    O pabaigai norėčiau baigti svetimais žodžiais, nes pats jau ir taip prisišnekėjau. Paspauskit ant
    ir pasiklausykit žmogaus, kuris turi ilgiausią pergalių grandinę amerikiečių intelektualiniame žaidime Jeopardy (jei automatiškai to nepadarys, pereikit iki 17:28). 
  4. Patinka
    WolfStreet sureagavo į wi_lius Kur stoti norint tapti programuotoju?   
    Man tai šiek tiek kvailai atrodo, kai beveik visi kaip susitarę šaukia, kad universitete visiškai nieko naudingo nemoko, tačiau pateikia absoliutų nulį argumentų ir pavyzdžių.
     
    Aš papasakosiu iš savo patirties. Artėjant bakalauro mokslų pabaigai įsidarbinau į į vieną įmonę praktikai. Vos praėjus savaitei nuo darbo pradžios davė suprogramuoti mikroservisą. Programavom su Scala funkcinio programavimo kalba, su kuria mus supažindino 6 semestre, modulyje „Programavimo kalbų teorija“. Jeigu nebūčiau turėjęs šio modulio, tai tikrai nebūčiau sugebėjęs iš karto programuoti funkciniu stiliumi (be to, funkcinis programavimas nėra viso labo programavimas su funkcijomis, o kur kas daugiau).
     
    Kuriamam mikroservisui reikėjo duomenų bazės pasirinkom NoSQL duomenų bazę. Kadangi apie SQL turėjom visą modulį „Duomenų bazės“ (4 semestras) plius papildomai buvo trumpai aptariamos duomenų bazės daugelyje kitų modulių, tai nekilo klausimų, kas tas SQL ir kas tas NoSQL.
     
    Nori nenori, beveik visi mikroservisai turi kokį nors API, ir dažniausiai tai būna RESTful. Modulis „Saityno taikomųjų programų projektavimas“ buvo būtent į tai ir orientuotas. Čia išmokau, kuo skiriasi RESTful API nuo to, ką kiti laiko RESTful API. Nuo pat pradžių savo komandoj buvau geriausiai suvokiantis REST'ą, kai tuo tarpu kiti kūrė kažką panašaus į RESTful API. Be to, šiame modulyje mums dėstyti ateidavo po programuotoją iš NFQ ir DevBridge – manau, jie turėtų bent kiek nuvokti, ko reikia programuojant tikrame darbe.
     
    Žinoma, kuriant programas reikia parašyti ir keletą automatizuotų testų. Su TDD mus supažindino modulyje, kurį paminėjau ankstesnėje pastraipoje, o konkrečiai rašyti testus ir padirbėti su issue'sų registravimo sistemomis teko 7 semestro modulyje „Programų sistemų testavimas“.
     
    Be abejo, mikroservisas turi sugebėti vienu metu apdoroti keletą užklausų. Su lygiagretumu susipažinom modulyje „Lygiagretusis programavimas“. Ir nors Scala mums leidžia išvengti kai kurių su lygiagretumu susijusių problemų, bet prireikus kažkokios sudėtingesnio lygiagretumo turėčiau šiokį tokį suvokimą, kaip tai spręsti. Be to, per šį modulį teko palyginti, koks skirtumas, kai skaičiavimus leidi ant CPU ir ant GPU.
     
    Vienu metu dirbant mūsų ofise buvo užėjusios kalbos, kad būtų gerai susiburti į burelį ir pasimokyti design pattern'ų – tarkim kiekvienas pasiima po vieną design pattern'ą jį išmoksta ir vėliau pristato kitiems. Dauguma buvo nustebę, kad būtent aš 7 semestre turėjau modulį apie tai – „Objektinis programų projektavimas“ (What?!! Universitete design pattern'ų moko?!!).
     
    Darbe daug tenka dirbti su Linux OS (beveik visos mūsų prižiūrimos mašinos sukasi ant CentOS). Per modulį „Operacinės sistemos“ susipažinom su ne tik kaip veikia operacinės sistemos, bet ir su Linux terminalu bei įvairiomis jo galimybėmis.
     
    Dar turėjau modulį „Informacinių sistemų kūrimas karkasais“. Čia susipažinau su vienu iš PHP karkasu (nors gyvenime neplanuoju programuoti PHP) bei MVC pattern'u. Iš čia susidariau suvokimą, kodėl reikia atskirti duomenis, veiksmus su jais bei duomenų atvaizdavimą ir kaip tai padaryti.
     
    Paskutiniuoju metu prireikė darbe pabraižyti UML diagramų, kad galėtumėm geriau suvokti kaip veikia mūsų prižiūrima sistema ir kokios yra galimos rizikos. Su UML'o diagramomis susipažinome modulyje „Programų sistemų analizės ir projektavimo įrankiai“, bet teko jas panaudoti ir nemažai kitų modulių.
     
    Turėjau pasiėmęs modulį „Kompiuterių tinklų ir interneto sauga“ – teko pačiam palaužyt silpnai apsaugotas svetaines. Dabar man pačiam kuriant programinę įrangą turiu jau šiokį tokį suvokimą, kurios vietos gali būti nesaugios.
     
    Turėjom modulį „Skaitiniai metodai ir algoritmai“. Kaip vėliau supratau, čia buvo lengva įžanga į mašininį mokymą (o dabar mašininis mokymasis yra beveik visur ir kiti iš jo uždirba milijonus).
     
    Buvo modulis „Algoritmų sudarymas ir analizė“ kuriame nagrinėjom įvairius algoritmus, susipažinom su dinaminiu programavimu ir big-O notacija (nors su visu šituo aš jau buvo susipažinęs mokykloje). Galiu garantuoti, kad dauguma tokių savamokslių net neįsivaizduoja, ką reiškia O(n), O(log n) ar O(n^2). Modulyje „Duomenų struktūros“ teko susipažinti su bazinėmis duomenų struktūromis. Tiek bazinių, tiek sudėtingų duomenų struktūrų suvokimas itin svarbus viename iš mano hobių.
     
    Žinoma, turėjom nemažai matematikos ir fizikos. Tiesiogiai šito darbe kaip ir nepritaikiau, nes darbas nelabai su tuo susijęs. Bet mane tiek matematika, tiek fizika domino ir žavėjo nuo mokyklos laikų, o ir matematiką sugebėjau pritaikyti hobyje, apie kurį jau užsiminiau praeitoje pastraipoje.
     
    Labai patiko modulis „Kompiuterinė grafika“. Pakankamai neblogai praplėtė suvokimą, kaip veikia GPU ir kaip vaizdas atsiduria ekrane (tiek 2D, tiek 3D). Modulyje „Robotų programavimo technologijos“ teko sukonstruoti Lego robotą (vėliau teko sudalyvauti darbe vykusiose Lego robotų imtynėse):
    http://www.youtube.com/watch?v=N7RF8DISo1M
     
    Be to, studijų metu teko nemažai pakeliauti. Turėjau gal 8 keliones į užsienį, kurias visas finansavo universitetas plius dar skyrė dienpinigių.
     
    Tas mikroservisas, apie kurį užsiminiau pradinėse pastraipose, buvo mano universitetinės praktikos užduotis. Dabar jis stovi PROD'e ir aptarnauja įmonės klientus.
     
    ----------------------------
     
    Bet šiaip galiu sutikti, kad jeigu darbe reikėtų įdiegti Wordpress ir užmauti skin'ą, kokį dizainą pakarpyti, kavos pataisyti ar mygtukus paspaudinėti, tai visi šie keturi metai būtų visiškai bereikalingi…
×
×
  • Pasirinkite naujai kuriamo turinio tipą...