14. Jan 2022 |

IADB IT-süsteemide arendus – 5. semestri lõpp

Lõputöö ja ettevõttepraktika on veel jäänud.

5. semester on nüüd lõppenud. Tundub uskumatu aga kooli lõpetamiseks on teha veel ainult Ettevõttepraktika (ICY0017, 24 EAP) ja lõputöö (6 EAP). Praktikakohta mul veel ei ole nagu siit võib näha aga otsin.

Sel semestril sai tehtud 7 ainet. 4 neist kohustuslikud, 3 valikained. Kokku 36 EAPd. Alljärgnevalt tehtud ained arvestuse saamise järjekorras.

Valikust võib aru saada, et valikuga on tegelikult üsna kitsas käes ja arvestades minu huvisid – teha valmis midagi tehnilist, praktilist ja töötavat – on vaba ja valikainete osas… no ei olegi ju midagi.

Alljärgnevalt kasutan aegajalt sõna “moodulisse”, mis tähendab, et õppekava on jaotatud mooduliteks. Kooli lõpetamiseks peab saama kõikides moodulites nõutud punktid täis ja siis validki lihtsalt midagi, mis seal moodulis on parajasti pakkumisel.

Füüsika mittefüüsikutele (NSO0160, 3 EAP, kohustuslik)

Õppejõud emeriitprofessor Sirje Keevallik. Arvestuse saamiseks on vaja teha kaks kontrolltööd, mille tulemuste summa annaks > 50%. Kontrolltööd sisaldavad (vähem) ülesannete lahendamist ja (rohkem) teooriat. Kuigi füüsika võib tunduda hirmutav, siis tegelikult ei ole seda ainet põhjust karta.

Kui kontrolltööd ebaõnnestuvad, siis oli lisaks veel eksami võimalus.

Veebihalduskeskkonnad (ICD0020, 6 EAP, valikaine)

Kuna mul oli vaja valikainete moodulisse millegi eest 6 EAP saada, siis sügissemestrit arvestades olin kahe vahel – inglise keel või see aine. Jäin selle juurde.

Õppejõud Meelis Antoi, kes ühtlasi on IADB õppekava programmijuht. Minu jaoks oli see ilmselt kõige lihtsam aine seni. Sisuks oli teha localhostis ühesuguse välimusega veebileht Drupalis, Joomlas ja WordPressis. Seejärel anti kooli poolt igale tudengile üks VPS, kuhu oli installitud Debian 9 ning omaltpoolt oli vaja installida php, mysql, apache ja enda localhostis valmistatud WordPressi leht sinna ümber tõsta. Pärast “läbijalutuse” formaadis tööde ettenäitamist  oligi arvestus käes.

VPSi andmine kooli poolt oli muidugi tore üllatus. Ma arvan, et mingi pisikese Ubuntuga purgi, mis oleks avalik, võiks kõik tudengid 1. semestri esimesel päeval saada endale haldamiseks 🙂

Automaattestimine (ICD0004, 3 EAP, programmerimise moodul)

Arvestatud sain 9. detsembril. Tegemis on valikainega programmeerimise moodulis. Õppejõud German Mumma. Väga kasulik aine ja hea õppejõud, nii et kindlasti soovitan. Töökeel on Java ning õppetöö väga praktiline – ehk korrektsel viisil testide kirjutamine + giti korrektne kasutamine. Teemadeks TDD, unit testing, integration testing, UI testing (Selenide). Testmise õppimiseks kasutasime Restful-booker API, OpenWeatherMap API, The Internet UI vaateid.

Koormustestimist ja performance testimist kahjuks ainesse ei mahtunud aga see huvitanuks mind ka.

Pisut raskemaks muutis aine asjaolu, et mul on Maveniga vähe kokkupuudet (nt konfi kirjutamine ja sõltuvuste valimine/haldamine) ja Javat seni üldse suhteliselt vähe kirjutanud aga sai hakkama ikka. Toetava ainena Märt Kalmo ainele oli sellest kindlasti palju abi.

Keskkonnakaitse ja säästev areng (YTG0060, 3 EAP, kohustuslik)

Õppejõud Üllar Rammul. See on õppekavas kohustuslik aine, mis on erialast tõesti täiesti eemal (ei ole kuidagi IT) aga sellegipoolest ma arvan, et see on täiesti õige aine täiesti õigel kohal. Lisaks suurepärane õppejõud ja väga hästi läbi viidud kursus.

Lai silmaring on hea ja see on puhtalt silmaringi aine.

Programmeerimine C# keeles (ICD0008, 6 EAP, kohustuslik)

Õppejõud Andres Käver. Arvestatud 22. detsembril. Millegipärast on see jätkuvalt väga krõbe aine, kuigi C# olen praeguseks juba päris palju kirjutanud. Ma ei ole lõpuni aru saanud, mis selle aine nii keeruliseks teeb, et nii vähe inimesi (41%) selle aine sooritatud saab.

Kõik, mida oli vaja teha aine läbimiseks, on siin lehel kirjas: 5 kodutööd ja eksam (1h teooriat, kuni 11h ülesande jaoks).

Veebirakendused Java baasil (ICD0011, 6 EAP, kohustuslik)

Õppejõud Märt Kalmo. Arvestatud 7. jaanuaril. Õppeaine sisuks on Java võimalusi ja tehnoloogiaid kasutades pisikeste back-end funktsionaalsuste teostamine. Rakenduseks oli pisike mõne tabeliga andmebaas, millega sai API endpointide kaudu suhelda. Front-endi ei teinud. Tehnoloogiad millega tutvuti: Servlet, Jdbc, PostgreSql, HsqlDb, Gradle, Spring Core,  Spring Mvc, JSR 303, JPA, Spring Security.

Mulle väga meeldib Märt Kalmo õpetamise stiil ja õppetöö korraldus: loeng → praktiline harjutus → iseseisev hindeline ülesanne (koos avatud testidega, mida saab lahendamise ajal kasutada) → vajadusel praktikum/konsultatsioon, kui iseseisva tööga kuskil tõrkeid tekib.

Samuti meeldib mulle väga tema lähenemine selles osas, et tähtis ei ole, et sa oskad mingit asja mingit moodi teha, vaid et sa saad aru (ja oskad selgitada), miks mingit asja üht või teist viisi tehakse (või ei ole hea mõte teha). Eesmärk on saada aru, mis on mingi asja mõte. Kui see lähenemine sobib, siis tema ained tõenäoliselt meeldivad.

Aga… edasises elus üldiselt on selle tulemusena raskem, kui saad aru, kui vähe inimesed üldiselt nii mõtlevad – et miks nad mingeid asju teevad või mis on nende asjade tegemise mõte 🙂

ICY0012 Infosüsteemide analüüs ja projekteerimine (6 EAP, toetav)

Kuna toetavate ainete moodulisse oli millegi eest 6 EAP vaja saada, siis jäin selle aine juurde. Marko soovitas ka seda ainet. Õppejõud on hinnatud õppejõud Nadežda “Nadya” Furs, keda väga palju kiidetakse. Semestri jooksul oli vaja esitleda kaks grupitööd – üks traditsioonilise ja teine agiilse osa kohta – ja see oligi kõik. Aine teemades oli päris suur ülekate Paul Leisi “Tarkvaratehnika” ainega, mida võtsin 4. semestril.

1. May 2020 |

Java: Erindid ja veahaldus, erindite mähkimine

Väike läbikirjutus endale ja võibolla on kellegi veel abiks.

Checked exceptions (kontrollitud erindid) – on mõtet püüda ja lahendada

Näiteks faili lugemise (readAllFiles) puhul programm ei kompileerugi enne kui pole veahaldusega tegeletud (peab panema try-catch sisse).

„Checked“ – kontrollitakse kompileerimise käigus ning sellega peab kohe tegelema (või selle erindi meetodi deklaratsioonis ära märkima, et see meetod võib erindi visata ( …method() throws Exception {… ).

Continue reading “Java: Erindid ja veahaldus, erindite mähkimine”

28. Feb 2020 |

Õppimisest (2. semestri 5. nädala lõpus)

Ma olen alati õppinud selle mõttega, et loomult pigem mitte-andeka kuid tööka (jah, ma teen kõvasti tööd) inimesena ma protsessi käigus otsin oma vaimse võimekuse piire. See aitab asja huvitavana hoida. Kui õigeid asju teha, siis kohati jõuad päris lähedale 🙂 Ceslava Kairane rääkis ühes praksis meile, et vaimse võimekuse piiriga on see jama, et see nihkub edasi. See mõte on mulle ka meeldinud ja mulle tundub, et see peab ka paika. Et kus arvasid piiri olevat, sealt tegelikult saab veel edasi. Hetkel ei leia viidet sellele, et kui inimene ütleb, et “ta enam ei jõua”, siis tegelikult ta alles 20% peal.

Java õppejõud Märt Kalmo tõi loengus hea paralleeli programmeerimise õppimise ja spordi (ja ka muusikalise instrumendi õppimise) vahel. Et soorituse tehnikat sa ei harjuta ülesandega (kõrgushüppe kõrgus või muusikapala), mille keerukus on võimekuse piiril või üle selle. Selles mõttes mulle meeldib väga Helsinki Ülikooli Java kursus (14 nädalat), kus liigutakse päris algusest ja tõesti päris väikeste sammudega. Enamvähem nii, et igat liigutust tõesti harjutad iga nurga alt läbi ja iga asi (erindid, failist lugemine, objekt jne) on päris omaette peatükk. Ma teen neid “Soome Java” ülesandeid (tänaseks üle 200 pushi ja üle 100 lahendatud ülesane) enda päris kooli Java kodutööde soojenduseks, et need päris ülesanded siis käte värinal avada 🙂

Eks paistab, kuidas ma sellest Javast läbi rooman. Ahjaa. Üks asi, mis ma olen endale aegajalt meelde tuletanud on see, et oluline on, et uudishimu ei kaoks. Sest see on kõige hullem asi, kui inimesel ei ole huvi ja uudishimu maailma vastu.