Pereiti prie turinio

Julinho

Nariai
  • Pranešimai

    60
  • Užsiregistravo

  • Lankėsi

  • Atsiliepimai

    0%

Reputacijos išklotinė

  1. Patinka
    Julinho sureagavo į Arvis Kur stoti norint tapti programuotoju?   
    Kažkada esu sakęs tai, kad yra skirtumas kur bendrauju su baigusiu mokslus žmogumi ir kur ne (čia pabrežiu, kad ne su visais taip), dabar pvz baigęs aukštąjį mokslą (informatika), galiu kurtis savo įmonė (pvz programavimo paslaugų ir samdyti žmones), nes buvo modulis ekonomikos (ar pnš.), o tenais praplėtė akirati apie visokius verslo nuansus ir pnš. Paskaitose dalyvavo verslininkai kurie pasakojo savo sėkmės ir nesėkmes atvejus. Laboruose kūrėme netikrą įmonę ir pnš. Ko gero tai galiu išmokti savarankiškai, bet tikriausiai užtrukčiau daug ilgiau negu univere dėsto ir ne viską supratęs, neturėčiau ko paklausti. Aš net univere sugebėjau įveikti panišką bijojimą kalbėjimą prieš auditoriją ir pnš. Nes buvo tokios paskaitos kur tai mokino. Išmokau pasakoti normaliai, ko nemokėjau tiesiog. Univeras tiesiog tave kaip asmenybe patobulina. Ir parodo kelią, kurio gali žengti, jeigu neesi apsisprendęs, įstojau į informatikos inžineriją, nes norėjau kažką su geležimi daryti, o gavosi taip, kad labai užkabino programavimas univere ir tapau programuotojų.
    P.S. o kalbant į temą, tai KTU paskutiniu metų žiauriai tobulina savo IR sritį, pradėjo mokinti programuoti C# nuo pirmo kurso.
  2. Patinka
    Julinho 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…
  3. Patinka
    Julinho sureagavo į Steeler Kur stoti norint tapti programuotoju?   
    Jei rimtai žiūri į visą šį reikalą, tai VU arba KTU.
     
    Nesuprantu, kodėl neįrašei VU IT(informacinės technologijos). Pats studijuoju šia studijų kryptį, esu nepaprastai patenkintas. Studijos yra labai geras dalykas, bet tik tuo atveju, jei tu moki tas žinias pasiimti. Kas sako, jog nėra ten ko eiti, ir panašiai, tai mano spėjimu priežastys yra: arba dėl to, kad jie patys ten nieko nesimokė, arba pasirinko prastą universitetą, arba įstojo ne ten, kur jiems vieta. Žinoma būna išimčių, bet tai vienetiniai atvejai, tačiau, ir tuomet, vargu ar studijos pakenktų.
     
    Mano pasirinkimų sąrašas prasidėjo taip:
     

    VU PS(programų sistemos)
    VU IT(informacinės technologijos)
    VU INFO(informatika)

    Na, po to jau kiti universitetai.
     
    Kitas dalykas, esu labai patenkintas, kad neįstojau į PS. Programų sistemos yra, na, tiesiog, populiarus dalykas ir tiek. Nei jis geresnis už kitus, nei prastesnis. Reikia labai gerai suprasti ko tu nori iš studijų, tada suprasi ir ką rinktis, o ne rinktis tai, ka rėkia kiti. Kiek pastebėjau, kuo skiriasi šis dalykas nuo IT iki šiol, tai pirmam pusmety jie turėjo daug praktikos iš Assembly programavimo bei kompiuterių architektūros, kai mes tuo tarpu turėjom ir praktikos, kurios tokiam dalykui tikrai gana, jei nesigilini iš esmės, ir teorijos, kuri buvo labai naudinga, kad suprastum esminius dalykus. Toliau, IT studijų kryptis yra naujausia, dėl to tikrai nedrįsčiau sakyti, jog ten kažkas pasenę, ar panašiai. Tarkim jau pirmais metais turime OOP su Java, džiaugiuosi, kad daug mokomės apie UNIX'ines sistemas, programinom ir su C, yra dalykai ir kaip duomenų struktūros, kur moko rašyti efektyvų kodą ir t.t.
     
    Kodėl dar apsimoka rinktis IT. Studijų programa trunka 3,5 metų įskaitant 0,5 metų praktiką. Jei neklystu, programa įkurta 2010m., be to bendradarbiaujant su "Barclays", galbūt, dėl to ir jaučiasi, jog daugiau mažiau viskas "šviežia".
     
    Trumpai tariant bei kalbant apie šias tris kryptis, siūlau rinktis IT dėl to, ką minėjau, PS tuo atveju, jei nori daug laiko skirti mokslams, ten turėsi pasinerti į programavimą, hardware'ą, ar kur kitur, giliau, nei kiti, tačiau stipriai svarstytina, ar tai naudinga, o INFO tuo atveju, jei myli matematiką - programavimas / matematika.
     
    Pastaba. Eidamas į universitetą žinojau, jog tai nėra vieta, kur kepami programeriai. Tiesą sakant, gavau daugiau, nei tikėjausi, bet dėl to, jog turėjau tikrai tvirtus programavimo pagrindus eidamas ten. Man tai vieta, kuri turimas žinias tikrai tvirtai sustiprino, taip pat ir suteikia galimybes tas žinias plėsti toliau. Tereikia noro ir pačio darbo. Mano akimis, tai galimybė. Arba ja imi ir pasinaudoji, arba ieškai savo kelių.
     
    Prašau, atsižvelk į tai, jog tai yra mano nuomonė ir viską sakau iš savo perspektyvos. Tikėkimės, tai kažkam padės priimti keletą rimtesnių sprendimų.
  4. Patinka
    Julinho sureagavo į TNGrawer S-90 Prie kompo   
    Prašom: http://lemona.lt/index.php?page=item&i_id=27323 DIN (arba kitaip - MIDI) į 3,5mm. Gali ieškoti DIN -> RCA (pas mane toks prie Korvet).
  5. Patinka
    Julinho sureagavo į Eimutis Structruos duomenys funckijoje c++   
    kadangi artist yra masyvas prie artist nurodyk masyvo indeksus, sioje vietoje:
     
    if(artist > did)
    {
    did = artist;
    }
    if(artist < maz)
    {
    maz = artist;
    }
  6. Patinka
    Julinho sureagavo į Haliucinas 2011 VBE Pirštinės   
    Tai čia sprendimas trivialus, yra n+k būtų padaryt praktiškai tą patį. Vienas iš kitokių kelių, vietoj bool'o galėjai panaudotos pirštinės numerius nuliais užpildyt ir jos nebeskaičiuotų. Tas bool'as šiuo atvėju kaip flagas nurodantis, praleist pirštinę jei su ja pora jau sudaryta.
  7. Patinka
    Julinho sureagavo į Haliucinas 2011 VBE Pirštinės   
    Bandyk taip:
    Pridėk į struktūrą naują kintamąjį

    struct Pirstines { //failo skaitymui int Sk1; // Vieta pirmam skaičiui iš failo int Sk2; // antram skaičiui int Sk3; // trečiam skaičiui bool used; };
    Skaityme visur jį inicializuok

    for(int i = 0; i < n; i ++) { fd >> A[i].Sk1 >> A[i].Sk2 >> A[i].Sk3; A[i].used = false; }
    Ir tikrinant poras, jau panadotas išmesk

    if(A[i].Sk3 == A[j].Sk3 && A[i].Sk1 == m && A[j].Sk1 == m && A[i].Sk2 != A[j].Sk2 && (!A[i].used && !A[j].used)) { b++; A[i].used = true; A[j].used = true; break; }
  8. Patinka
    Julinho sureagavo į Haliucinas 2011 VBE Pirštinės   
    Yra viena pirštinė 3 2 25 ir dvi 3 1 25, 3 1 25. Tavo PirstiniuPoros f-ja padaro iš trijų pirštinių dvi poras. Suradus porą nutrauk ciklą ir viskas turėtų būt gerai.

    if(A[i].Sk3 == A[j].Sk3 && A[i].Sk1 == m && A[j].Sk1 == m && A[i].Sk2 != A[j].Sk2) { b++; break; }
  9. Patinka
    Julinho sureagavo į iPauL PAgalbos Dėl WIFI užrakinimo.   
    Pasispausk ant bevielio ryšių tvarkymo ir ten ištrink, tada kai naujai pasijungsi, prašys slaptažodžio
    http://prntscr.com/3da1s8
  10. Patinka
    Julinho sureagavo į babunas C++ help   
    pas tave begalinis ciklas gaunasi, po pirmos iteracijos cikle did reikšmė bus lygi 1 (14-13), o po antros jau minusine (1-13) ir t.t. todėl nieko ir neišveda.
     
    Aš taip daryčiau:

    int main() { int a,b; int dbd; // dižiausias bendras daugiklis int did, maz; cout<<"iveskite skaiciu a ir b"; cin>>a>>b; if(a == b){ dbd = a; } else if(a > b){ did = a; maz = b; } else if(b > a) { did = b; maz = a; } bool do_ation = true; dbd = did; while(do_ation) { if((did % dbd == 0 && maz % dbd == 0) || dbd == 0) { do_ation = false; break; } else dbd--; } cout<<dbd; }
  11. Patinka
    Julinho sureagavo į s1lenc3 C++ Uždavinys.   
    = - sutaupai 4byte nekurdamas papildomo int. Turek tai omeny, good programming practice. :)
×
×
  • Pasirinkite naujai kuriamo turinio tipą...