User:Mkabanen

From ICO wiki
Revision as of 11:08, 6 November 2012 by Mkabanen (talk | contribs)
Jump to navigationJump to search

Erialatutvustuse aine arvestustöö

Autor: Mattiko Kabanen, Esitamise kuupäev: 5. november 2012


Põgusalt infotehnoloogiast hüdrograafias

Essee

Vaatasin sügissemestri aine "Õpingukorraldus ja erialatutvustus" loengute salvestusi. Mõned neist olid minu jaoks huvitavad ja informatiivsed, osad mitte. Kuna mul on eelnev töökogemus antud valdkonnas olemas, siis otsustasin pigem kirjutada natuke oma tööst. Lühidalt kirjeldan ka üht hiljutist projekti, mis vähemasti minu jaoks oli huvitav. Proovin anda põhjenduse, et mis selles töös oli paeluvat. Edaspidises viitan aeg-ajalt mõnele eelmainitud videoloengule, kui leidsin seal midagi, mis minu arvates teemaga seostub.

Veidi tausta. Ma olen olnud palgaline arendaja kuus ja pool aastat ühes väikeses infotehnoloogiafirmas, osakonnas C2IS(command and control information systems). Enne seda olin proovinud kätt vabakutselisena(freelancerina). Meie kompanii tegeleb igasuguste IT projektidega millest jõud üle käib. Mõningate mööndustega võib väita, et ühine nimetaja nendel ettevõtmistel on GIS, ehk siis me tegeleme geoinfosüsteemide arendusega. Siinkohal tuleb meelde Andres Septeri[1] toodud jaotus infotehnoloogide spetsialiseerumistasemete kohta. Minu praeguses töökohas on see jaotus väga horisontaalne. Arendaja peab oskama lisaks programmeerimisele ka süsteemi administreerida, anda tootetuge jne. Tootetoe kohta võin öelda, et see oli minule kunagi üks kõige vastumeelsemaid töid. Pidasin seda ajaraiskamiseks. Ajajooksul tuli arusaamine, et klienti nõustades saad ise, kui programmi looja, väga palju teada tehtud vigadest. Seda just kasutajaliidese kujundamise, aga ka sisulise poole osas.

Üks projekt on meil pidevas(peaaegu) töös ja selle raames me anname regulaarselt välja ka uusi rakenduse versioone. Tegelikult on selleks rakenduste komplekt, mis koosneb hüdrograafia tarkvara järeltöötlusprogrammist ja mõõdistusandmete reaalajas vastuvõtuprogrammist. Selle rakenduse põhikasutajaks on Veeteede Ameti (edaspidi VTA) hüdrograafid.

Lähemalt ülalmainitud projektist. Selle aasta aprillis sai VTA enda käsutusse uue katamaraan-ujuk tüüpi mõõdistuslaeva “Jakob Prei“ [2]. Võib küsida, et mis on sel sündmusel seost infotehnoloogiaga. Tegelikult üsna palju. Enamikel hüdrograafialaevadel on peal seade – sonar – millega on võimalik merepõhja sügavusandmeid saada. Siin pole ruumi kirjeldamaks kaasaegse paljukiirelise sonari tööpõhimõtet, aga absoluutselt võimatu on ilma infotehnoloogia vahendeid rakendamata sellisest aparaadist saadud toorandmeid kuidagi kasutada. Et üldse mingit mõistlikku andmepaketti kokku panna, on vaja kolme seadme - HRP(kõikumise ja liikumise andur), GPSi(navigatsioon) ja sonari(sügavuspunktid) – andmestikku. Ja need andmed peavad olema ajaliselt sünkroonis. Lühend GPS on igaühele tuttav, sonaritest on ehk samuti kuuldud, aga HRPga tavaelus just kokku ei puutu. Sisuliselt on tegemist seismograafi „sugulasega“. Programmeerija jaoks on HRP lihtsalt must kast, mis annab laeva kõikumise kohta infot sagedusega 15 Hz ja teeb seda suure täpsusega. Sama kehtib ajamõõtmise kohta. Näiteks tavaelus tundub olevat ajanihe üks sekund väga tühine ühik. Merepõhjamõõdistuse kontekstis on sekundiline ajanihe andmestikus sisuline katastroof. Vees liigub helilaine umbes 1500 m/s. Võib teha jämeda arvutuse mõistmaks kui väike ajaviga põhjustab juba 10cm sügavusmõõtmise vea. Sonar mõõdabki tegelikult mitte sügavust, vaid aega, mis kulub rõhulainel edasi-tagasi käimiseks anduri ja merepõhja vahel.

Minu esmane ülesanne antud projektis oli teha juba olemasoleva tarkvara jaoks moodul uut tüüpi sonari andmeformaadi lugemiseks ja andmete interpreteerimiseks. Samas tuli erinevatelt allikatelt saadud info kokku panna nii, et sellest tekiks mingi hüdrograafias kasutatav andmestik– sügavuspunktide massiiv, mille igal elemendil on lisaks muudele atribuutidele küljes nii õige sügavus ja koordinaadid. Selle ülesande teostamiseks sai projekteeritud nn adaptermoodul, mis „tõlkis“ uue formaadi olemasolevale tarkvarale arusaadavasse vormi. Tundub lihtne. See osa oligi. Kuid vastuvõetud andmete interpreteerimine oli paras kunst, sest ainult programmeerimisoskusest siin ei piisa, vaid vaja on teada ka natuke merefüüsikat ja paljukiirelise sonari tööpõhimõtet. Just see tööpõhimõte oli alguses üsna segane. VTAs kasutusel olevad kodumaised sonarid(nende üheks peaarhitektiks on olnud Tallinna Tehnikaülikooli professor Ilmar Arro), on teise ehitusega ja juba olemasolevate teadmistega nende sonarite kohta ei olnud peaaegu midagi peale hakata. Aga, valmis see asi sai ja töös see on ka.

Teadaolevalt kõik, kes Eestis kasutavad Resoni[3] sonareid, kasutavad ka selle firma poolt produtseeritud tarkvara nii andmete vastuvõtuks kui ka järeltöötluseks. Miks mitte meie kliendid? Praktikute väitel on kodumaine toode lihtsalt tõhusam. Kuna meil on väga hea koostöö VTA hüdrograafidega, siis on tagaside igasuguste tootevigade ja puuduste kohta alati operatiivne. Siinkohal ei saa ma ka nõustuda Andres Septeri[1] loengus toodud väitega, et riigisektoris on kõik mitte-infotehnoloogia inimesed juhmid. Ei ole kõik juhmid. See oleneb suuresti millise riigisektori alamsektoriga kokku puutuda. On väga asjalikke ja innovatiivseid inimesi.

Töös kastutatud programmeerimiskeel oli C. Tegelikult on suur osa meie tarkvara tehtud puhtas C-keeles. Teisalt vaatasin huviga Janika Liivi ettekannet[4] kus ta rääkis suure vaimustusega programmeerimiskeelest Ruby. Ma väga ei jaga seda vaimustust. Minule teadaolevalt on Ruby interpreteeritud keel[näit. 5], samalaadselt Pythoni ja Javaga. Interpreteeritud keel on aeglane. Kindlasti on Ruby omal kohal veebirakendustes, kuid sel ei saa olla kohta programmis, mille efektiivsus on otseselt seotud suure hulga andmete vastuvõtmise, salvestamise, interpreteerimise ja esitamisega ning seda enam-vähem ühel ajal. Kõik sõltub kontekstist. Huvipakkuv oli Liivi väide küsimuste vooru ajal, et ainuke keel milles ta on tõsisemalt programmeerinud, on Ruby. Seega, selle poole pealt oli käsitus suhteliselt ühekülgne. Ma ei ole kasutanud Rubyt, aga ei saa kuidagi eitada, et näiteks Pyhton on mingi skripti kiireks kirjutamiseks väga mugav ja tõhus.

Minu projektis arendatud tarkvara töökeskkond on Linux. Niipalju kui ma olen näinud ja kogenud saan olla täiesti nõus Andres Septeri väitega[1], et kui IT ettevõte pakub mingit tõsist teenust, siis selle teenuse kandjaks on alati Unixi/Linuxi keskkond. Kõik meie firma poolt pakutavad teenused, mis on „tõsised“ töötavad Linuxis. Windowsi kasutamine ei ole end õigustanud(välja arvatud administratsiooni sülearvutis). Siinkohal on huvitav, et eelmainitud sonareid tootev Kanada firma Reson teeb oma riistvara tugiprogramme ja rakendusprogramme ainult Windowsi keskkonna tarbeks.

Mis on üldse kogu selle sügavusandmestiku kogumise mõte? Lihtsalt vastates on üheks oluliseks tulemuseks võimalikult täpne rahvusvahelistele standarditele vastav merekaart. Seda nii digitaalselt(näit WMS teenusena) kui ka füüsiliselt, paberkandjal. Võimalik, et digitaalselt peaks varsti saama ka tavakasutaja neid andmeid veebilehitsejaga vaadata(küll natuke „nuditud“ kujul, aga siiski). Teise näitena väljunditest võib tuua merepõhja 3D-mudeli genereerimise.

Mis mind selle sonari liidestamise projekti puhul köitis? Kui nüüd järele mõelda, siis seal sai kasutada kogu oma teadmiste pagasit(nii vähe-palju kui seda praeguseks kogunenud on). Mulle meeldib, et töö lõpptulemus on reaalselt vajalik ja kasulik asi. Ehkki mulle meeldisid väga firma Ignite videoloengus toodud mängulised näited agiilse arenduse kohta(iseorganiseeruv süsteem), ei ole mina vaimustuses flashil põhinevate mängude programmeerimisest. Samuti arvan nende toodud näite kohta ülipopulaarsest vihaste lindude(Angry Birds) mängust. Jah, seal läheb vaja füüsikat ja matemaatikat, aga rakendus on „asi iseeneses“ - reaalmaailma väljundit ei ole. See on aga minu subjektiivne arvamus.

Viited: 1. http://echo360.e-uni.ee/ess/echo/presentation/966dadd1-3b21-40d7-9a11-845aa847d9e8 2. http://www.postimees.ee/827618/galerii-hudrograafialaev-jakob-prei-nimetati-teenistusse/ 3. http://www.reson.com/products/seabat/seabat-7125/ 4. http://echo360.e-uni.ee/ess/echo/presentation/80a857ef-5014-4df3-9e12-a70a02425401 5. http://www.techotopia.com/index.php/What_is_Ruby%3F 6. http://echo360.e-uni.ee/ess/echo/presentation/77c4e5d0-5aee-4dc6-8875-3dd00b8028a8


Vastused küsimustele.

Küsimus A.

K:Kaua on võimalik arvestust teha?

Vastus

Õigus kordusarvestusteks kehtib kuni ülejärgmise semestri punase joone päevani. Kokku peaks leppima ainet andva õppejõuga. Reeglina annab õppejõud enne kordusarvestusele lubamist täiendavaid iseseisva töö ülesandeid. Kordusarvestus tuleb registreerida õppeosakonnas.( Allikas: Õppekorralduse eeskiri ) Kordussooritusele pääsemiseks on vaja sellele registreeruda, mida saab teha ÕIS-i kaudu, klikates enda andmete lehel lingile “Kordussooritused”. Kordusarvestuste tähtajad määrab ainet õpetav õppejõud kooskõlas õppeosakonnas koostatud soovitusliku ajakavaga. Kui olen riigieelarvelisel (RE) kohal, siis maksab kordussoorituse riik. Kui olen REV kohal siis on korvdsarvestus tasuline. Tasu suurus kehtestatakse rektori käskkirjaga. Hetkel on selleks kehtestatud tasu 14.2 €, mis tuleb maksta EITSA kontole; arve leian ÕIS-ist peale sooritusele registreerumist. (Allikad: Õppekorralduse eeskiri punktid 5.4.4, 5.2.7, 5.2.8, 5.2.8,1 )

Küsimus 1.

Teisel või kolmandal õppeaastal avastad, et teine õppekava sobib paremini ja sa otsustad õppekava vahetada. Millised on tegevused ja mis ajaks tuleb need teha, et vahetada õppekava?

Vastus

Õppekava ja/või õppevormi vahetamise taotlemiseks esitab üliõpilane/ekstern hiljemalt 1 tööpäev enne semestri punase joone päeva IT Kolledži õppeosakonda rektori nimele vabas vormis kirjaliku avalduse. Õppekava vahetuse korral lisatakse avaldusele nimekiri õpisooritustest, mille arvestamist uue õppekava osana taotletakse.(Allikas:Vastuvõtueeskiri p 5.2.1)