MeeskondX: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mnaris (talk | contribs)
No edit summary
Habel (talk | contribs)
 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==Essee==
===Liikmed===
(projektijuht)<br>
Eda Post<br>
Raudo Lepik<br>
Mart Naris


Esimeses loengus räägiti IT kolledžist üldiselt. Räägiti võimalustest minna edasi magistriõppesse. Tutvustati seadusandlikku raamistiku ning seda, kust võib otsida ITK-sse tulles (ning üldse kõrgharidussüsteemiga liitudes) endale võetud kohustuste kohta infot. Räägiti tähtaegadest ning akadeemilisest kalendrist. Soovitati probleemide tekkimisel kohe ühendust võtta õppeosakonnaga ja soovitatavalt kas ise kohale minnes või helistades. Tutvustati kooli õppekeskkonda. Räägiti sellest kust on võimalik saada üldist infot nii kooli kui tudengieluga seonduvalt. Raamatukoguks on TTÜ raamatukogu. Seal viibides on võimalik kasutada ka TTÜ litsentsi suuremate teaduskirjanduse andmebaasidesse sisenemiseks. Paluti anda tagasisidet õppekeskkonna paremaks muutmiseks. Tutvustati stipendiumi saamise võimalusi ning räägiti e-õppest ning e-õppe keskkondadest.
==Retsensioonid==
Teise loengu külalislektorid olid Skype helpdeskist.  Räägiti sellest mis on helpdest ning miks valida töö selles valdkonnas. Põhiliste plussidena toodi välja võimalust teisi inimesi aidata ning IT alaste teadmiste pidevat praktiseerimist ja seeläbi kogemuste omandamist, mis võimaldab hiljem karjääriredelil kõrguste poole püüdlemist. Tutvustati vajalikke isikuomadusi nagu näiteks hea suhtlemisoskus ja organiseerituse armastus. Räägiti helpdeski töö ülesehitusest, ning kiideti Skype töökeskkonda ja näidati sellekohast videot. Ärgitati tööle kandideerima. Tundub, et Skype väga poolekohaga inimestest huvitatud ei ole, mis teeb raskeks õpingute kõrvalt seal töötamise. Skype töökeskkond on väga rahvusvaheline ka Eestis, mis tähendab, et inglise keel on töökeeleks, samas selgitati, et vähem inglise keelt oskavatel inimestel ei tasu karta kuna töökeskkond soodustab just keele kiiremini selgeks saamist. Palgad Skypes on „konkurentsivõimelised“.
[https://wiki.itcollege.ee/index.php/Talk:MeeskondX Link]
Kolmanda loengu külalislektor oli programmeerija firmast Toggle. Loeng algas innustava kõnega neile, kes võib olla kooli tulles ei jaganud nii palju programmeerimisest. Seejärel räägiti, millega programmeerija peab arvestama tegeledes kasutajatega - ei tohi kasutajatele öelda, mida ta ei tohi teha, sest kasutajatele see ei meeldi ja ta proovib ikka seda teha veel suurema tõenäosusega. Samuti tuleb rakenduste puhul rakenduse tegijal võimalikult suur hulk erinevaid kasutajapoolseid käike ette näha, sest kindel on, et kasutajad ei käitu ühte moodi ja sageli ka mitte ratsionaalselt. Räägiti versioonihaldamisest. Selgitati suurfirmade struktuure pentoboxi näitel (kasutatavad programeerimiskeeled, kasutatavad andmebaasid jne). Tutvustati päris toredalt Ruby keelt. Soovitati valida kuuluvuse tunde saavutamiseks mingi programmeerimiskeel, millele keskenduda, aga olla alati avatud ka „teistsugusele“. Siis räägiti hästi palju feministliku värki ning tutvustati liikumist Ruby on Rails.
Neljanda loengu külalislektor rääkis IT tööturust. Ühe esimese asjana soovitati mitte tööle minna riistvaraga tegelevate firmade klienditeenindajana. Eriti soe koht peaks olema äriIT-s. Võrreldi töötamist riigisektoris ja erasektoris. riigisektori eelistena toodi välja vaba aja rohkus ja võimalus riigi rahade eest saada erinevaid koolitusi. Erasektori eelistena toodi välja võimalust ennast teostada ning suuremad palganumbrid. Erasektoris soovitati tööd otsida pigem väikestes start-up´ides kus on suurem võimalus leida innovaatilist töökeskkonda. 
Viienda loengu külalislektor oli pikalt olnud freelancer ning pidanud suhteliselt palju erinevaid ITga seotud ameteid. Tutvustati süsteemiadministraatori ja arendaja ameteid suhteliselt negatiivsete stereotüüpide näitel – administraatorid on ülekaalulased noliferid oma suurde serverite keskel ja arendajad vaesed liinitöölised. Ärgitati koguma oskuseid ja tegelema pigem sellega mis endale meeldib, mitte olla nii kinni kohe peale kooli tööle minemises ja „raha teenimises“. Samas on ka freelanceri amet suhteliselt stressirohke kuna puudub kindel sissetulek. Lektor soovitas tööle minnes mõelda, et kas palka ja muid hüvesid mitte arvestades töö ka sind moraalselt rahuldab – tähendab, et kas sa tegeled karma mõttes õige asjaga. Et olla valmis muutusteks ITs üldiselt tuleb oma teadmisi laiendada (mitte olla kinni kindlates oskustes/teadmistes).
Kuuendas loengus tutvustati Ignite OÜd. Tegemist on tarkvaralahendusi pakkuva ettevõttega. Koosseisu kuuluvad nii arendajad, analüütikud kui ka inimesed majandusest ja turundusest. Tutvustati töökeskkonda, mis nende sõnul väga avatud ja sõbralik. Firma eeliseks peetakse efektiivselt töötavaid meeskondi, kes suudavad klientidele lisaväärtust toota. Praktiseeritakse paindlikke tarkvaraarendus metoodikaid. Eeskujuks agiilse tarkvaraarenduse manifest, mida ka lühidalt tutvustati. Selle puhul toimub dokumentatsioon töö käigus ja põhirõhk on just „loomisel“. Räägiti meeskonnatöö olulisusest mängude näitel ning milline peaks olema IT spetsialist tööandja seisukohalt (sarnaselt varasematele loengutele peeti oluliseks head suhtlemisoskust ja soovi ennast teostada).
Seitsmenda loengu teemaks oli testimine. Kõigepealt räägiti testimisega seotud müütidest ja üritati neid ümber lükata. Seejärel toodi näiteid väikestest tarkvara (koodi) vigadest, mis läksid maksma müstilisi summasid. Üldiselt mida varem viga avastatakse, seda odavam on parandamine. Tutvustati testimise liike ja vastandati neid (põhilised vastandamise argumendid olid seotud sellega, kas kood on testijale näha või mitte ja kas eeldatakse testimisobjektist varasemaid teadmisi või mitte). Räägiti ka testijaks olemise miinustest (üldiselt ei suhtuta sinusse hästi kuna räägid karmi tõde). Tutvustati kvaliteeti ja selle mõistet (kvaliteet on usaldusväärsus) ning seotust testimisega - testimine ei loo kvaliteeti vaid kontrollib kas kvaliteet on olemas.
Kaheksanda loengu külalislektor rääkis tehnoloogiast haiglas, kus selle peamisi eesmärke on vähendada ajakulu (suurendada efektiivsust). Samuti patsientide elu mugavamaks tegemine. Toodi näide tehnoloogia uuendamise kasumlikkusest elektrienergia kokkuhoiu põhjal Eesti haiglasüsteemis. Tutvustati Eesti haiglaid ühendava võrgusüsteemi ülesehitust ning erinevaid käimasolevaid projekte (IPadi kasutuselevõtt, kiipkaardisüsteem jne). Tööandja seisukohalt leiab lektor, et pigem huvitutakse tööturul konkreetsetest oskustest kui diplomitest/ kraadidest/ hinnetest. Sarnaselt eelmistele loengutele kinnitati ka selles, et innovatsiooni leiab rohkem siiski väikeettevõtetes ning, et esimese töökohana oleks just see parim. Tööd tuleks teha eesmärgiga saada ise rohkem teadmisi ja kogemusi. Rõhutati järjekordselt dokumenteerimise olulisust ning meeskonnatöö olulisust.


==Projekt==
===Kirjeldus===
Loome veebipõhise IRC kliendi. Rakendus koosneb kahest suuremast osast:
*veebiliides mille abil saab mugavalt sõnumeid lugeda/saata
*universaalne teek mis oskab IRC serveriga ühendust võtta ning sõnumeid vahetada


==Küsimus A==
==Analüüs==
===Millega on tegemist?===
Meie meekond loob IRC (Internet Relay Chat, eesti keeles
rühmadiskussioon internetis) protokolli kasutava klientprogrammi, millega saab
ühenduda avalike IRC kanalitega (jututubadega) ja reaalajas tekstisõnumeid
vahetada. Klientprogramm jookseb kasutaja veebilehitejas.
===Milleks seda vaja on?===
Nagu näitasid kogemused IT Kolledži esimesel kursusel
õppides, ei tule Skype intensiivsemate grupivestluste reaalajas
sünkroniseerimisega alati toime. Meie loodav IRC klient on suunatud eelkõige
suhtlemiseks 10–100 inimesega rühmades ning see pakub loodetavasti
usaldusväärsemat lahendust ka aeglase ja/või ebastabiilse internetiühenduse
puhul. Lisaks ei vaja see arvutisse eraldi tarkvara paigaldamist, kuna veebilehitseja
on kõigi arvutis juba olemas.
===Kuidas me selle tööle paneme?===
Klientprogramm kasutab jututoaga ühendumiseks IRC RFC 1459
protokolli üle TCP tunneli. Töötleme eraldi igat vastuvõetud sõnumit ning
vastavalt protokollile kas näitame seda sõnumit kasutajale või saadame
serverile vastuse. Programmi kasutamine toimub veebiliidese kaudu. Veebiliidese
realiseerime kasutades võimalikult palju CSS3 ja HTML5 elemente. Kindlasti saab sellega vahetada tekstisõnumeid, näha kasutajate nimekirja
ning nende tüüpi, aga kaalume ka lisavõimalusi, näiteks failivahetust.
Kasutatavad tehnoloogiad on C#, ASP.NET, Javascript, CSS3
ja HTML5.
Eeldatavalt on probleemsemad osad see, mis puudutab
sõnumite saatmist ja vastu võtmist ning serveriga ühenduse hoidmist (et sõnumid
„teel“ kaotsi ei läheks), samuti kasutajaliidese graafiline pool.
Lahenduse realiseerimise käigus ehitame valmis kaks suuremat osa. Üks on universaalne teek mis tegeleb võrguühendusega serveri ja kliendi vahel. Ühenduse loomiseks tuleb ette anda mõned konfiguratsiooni parameetrid. Teegile saab ette anda enda poolt defineeritud sündmuse halduri mis kutsutakse välja igakord kui saabub sõnum serverist. Sinna alla ei kuulu süsteemsed sõnumid (näiteks ping). Ise sõnumeid saates tuleb välja kutsuda teegi sendMessage meetodit. Lisaks on teegil hulk avalikke parameetreid mis täidetakse serveriga/kanaliga ühendumisel(serveri nimi, online kasutajate arv, kanali teema…).
Tervet RFC 1459 protokolli plaanis implementeerida ei ole. Ainult vajalikud osad, et serveriga ühendust hoida ning sõnumeid saata.
Teine suurem sõltumatu osa on veebiliides. Lehe avamisel tuleb ette aken kuhu saab sisestada serveri aadressi, pordi, kanali nime ning kasutaja enda nime. Edasi ühenda nuppu vajutades ühendatakse kanalisse ning sõnumeid hakatakse edastama. Ekraani parempoolses ääres on loend kasutajatest kes kanalis sees on. Sõnumeid saab saata ekraani allosas olevast teksti kastist. Kanali teemat näidatakse üleval osas. Teema peale vajutades muutub tekst muudetavaks ning peale uue teksti sisestamist saab sellest uus kanali teema.
Tööjaotus rühma liikmete vahel pole veel otsustatud.
===Programmi tuumikfunktsioonid:===
·        mugav veebiliides,<br>
·        saab saata ja vastu võtta tekstisõnumeid,<br>
·        saab vaadata, kes on kanalis online,<br>
·        näeb ka kasutajaid, kes on eemal (away),<br>
·        saab näha, mis õigused kasutajatel on (kas ta on admin, tavakasutaja jne),<br>
·        kanalile saab panna pealkirja (teema),<br>
·      laialdasemalt kasutatavad käsud on implementeeritud (nimekiri käskudest täpsustub töö käigus).<br>
===Programmi võimalikud lisafunktsioonid:===
·        see võiks olla ka mobiiliga kasutatav,<br>
·        võiks töötada ka brauseriga Internet Explorer,<br>
·        võiks toetada mitme kanaliga ühendamist (eri kanalid oleks eri vahelehtedel (tabides)),<br>
·        võiks olla võimalik faile saata,<br>
·        võiks näidata emotikone,<br>
·        võiks olla võimalus privaatvestluseks,<br>
·        võiks olla tehisintelligentne partner, kellega rääkida, kui kedagi teist kanalis parasjagu pole (nn chatterbot).<br>
<br>Kliendi veebilehitseja ja serveri vaheline ühendus võiks olla lahendatud kasutades websocket protokolli. Samas peaks kindlasti olema ka fallback vanematele veebilehitsejatele millel see tugi puudub.
Võiks olla SSL tugi turvaliselt serveriga ühendumiseks.
[[Category:Programmeerimine CSharp keeles]]


Kukkusid arvestusel läbi. Kuidas edasi? Kaua on võimalik arvestust teha? Kellega kokkuleppida, et arvestust teha? Kuidas toimub järelarvestusele registreerimine? Mis on tähtajad? Palju maksab, kui oled riigieelarvelisel (RE) kohal? Palju maksab, kui oled riigieelarvevälisel (REV) kohal?
==Prototüüp==
[http://enos.itcollege.ee/~habel/IrcConnector.zip Solution(35mb)]
===Mis tehtud on===
*TCP kiht serveriga ühendumiseks
*Tähtsamad IRC protokolli osad on implementeeritud
*Lihtne veebiliides IRC kasutamiseks. Saab saata sõnumeid, näha kes online
*Võimalus kasutada veebiliidest kui bouncer-na. Ehk siis kanalist ei logita välja peale browseri akna sulgemist. Funktsionaalsuse sisselülitamiseks tuleb veebilehe logimise aknas teha linnuke StayLogged ette. Järgmine kord lehele tagasi tulles, on kasutaja juba sisselogitud
===Mis veel teha on===
*TCP kihile parem veahaldus
*Veebiliidest disainida
*Bouncer funktsiooni edasi arendada, et näeks ka ajalugu mis vahepeal juhtunud on
*Olenevalt ajast lisada analüüsis mainitud lisafunktsioone


==Vastus==
Hetkel on võimalik projekti testida ka [http://meeskondx.azurewebsites.net/account/Login Azures]
Kuna tegemist on ka testkeskkonnaga ning versioonid muutuvad mitu korda päevas võib müstilisi erroreid seal näha


Et aine sooritatud saada tuleb teha kordusarvestus. Õigus kordusarvestusteks kehtib kuni ülejärgmise semestri punase joone päevani. Kokku tuleb leppida ainet lugeva õppejõuga, kes määrab kordusarvestuste tähtajad (mis on kooskõlas õppeosakonnas koostatud soovitusliku ajakavaga). Järelarvestusele registreerimise viisi määrab ainet lugev õppejõud. Tähtaeg on kindel aeg, mille saabudes peab olema arvestuse saamiseks vajalikud kriteeriumid täidetud, vastasel juhul (ja mõjuva põhjuseta) on tulemuseks „mittearvesatud“. Kordusarvestus RE kohal ei maksa midagi, REV kohal 14,2 €.
==Valmis projekt==
 
[http://enos.itcollege.ee/~habel/IrcConnector_stable.zip Link]
 
 
==Küsimus 5==
 
Millised võimalused on minna akadeemilisele puhkusele teisel õppeaastal? Mis tegevused tuleb selleks teha? Kui pikk on maksimaalne puhkuse aeg? Kuidas toimub puhkuse lõpetamine? Kuidas toimub puhkuse varasem lõpetamine? Kas puhkuse ajal saab deklareerida õppeaineid? Kas saab teha järele eksameid ja arvestusi?
 
==Vastus==
 
Võimalused on minna akadeemilisele puhkusele tervislikel põhjustel – kuni kaheks aastaks; Eesti kaitsejõududesse teenima asumiseks – kuni üheks aastaks;  Lapse hooldamiseks – kuni lapse kolme aastaseks saamiseni; Muudel põhjustel – kuni üheks aastaks. Selleks tuleb teha avaldus rektori nimele ja lisada akadeemilise puhkuse liigile vastav nõutud dokument (meditsiiniasutuse tõend; kutse kaitseväe tegevteenistusse; lapse sünnitunnistus).  
Hiljemalt akadeemilise puhkuse lõpu kuupäevaks tuleb esitada avaldus akadeemilise puhkuse lõpetamiseks või pikendamiseks, vastasel juhul lõpetatakse see automaatselt akadeemilise puhkuse viimasele semestrile järgneva semestri punase joone päevaks ja üliõpilane eksmatrikuleeritakse õpingutest mitteosavõtu tõttu.  
Üliõpilasel, kes on akadeemilisel puhkusel lapse hooldamiseks on õigus osaleda õppetöös esitades ainete deklareerimiseks kirjaliku taotluse õppeosakonda hiljemalt semestri punase joone päevaks, teistel põhjustel akadeemilisel puhkusel olijad aineid deklareerida ei saa. Eksameid ja arvestusi saab järgi teha.
 
[[Category:Erialatutvustus 2012]]

Latest revision as of 19:51, 8 January 2015

Liikmed

(projektijuht)
Eda Post
Raudo Lepik
Mart Naris

Retsensioonid

Link

Projekt

Kirjeldus

Loome veebipõhise IRC kliendi. Rakendus koosneb kahest suuremast osast:

  • veebiliides mille abil saab mugavalt sõnumeid lugeda/saata
  • universaalne teek mis oskab IRC serveriga ühendust võtta ning sõnumeid vahetada

Analüüs

Millega on tegemist?

Meie meekond loob IRC (Internet Relay Chat, eesti keeles rühmadiskussioon internetis) protokolli kasutava klientprogrammi, millega saab ühenduda avalike IRC kanalitega (jututubadega) ja reaalajas tekstisõnumeid vahetada. Klientprogramm jookseb kasutaja veebilehitejas.

Milleks seda vaja on?

Nagu näitasid kogemused IT Kolledži esimesel kursusel õppides, ei tule Skype intensiivsemate grupivestluste reaalajas sünkroniseerimisega alati toime. Meie loodav IRC klient on suunatud eelkõige suhtlemiseks 10–100 inimesega rühmades ning see pakub loodetavasti usaldusväärsemat lahendust ka aeglase ja/või ebastabiilse internetiühenduse puhul. Lisaks ei vaja see arvutisse eraldi tarkvara paigaldamist, kuna veebilehitseja on kõigi arvutis juba olemas.

Kuidas me selle tööle paneme?

Klientprogramm kasutab jututoaga ühendumiseks IRC RFC 1459 protokolli üle TCP tunneli. Töötleme eraldi igat vastuvõetud sõnumit ning vastavalt protokollile kas näitame seda sõnumit kasutajale või saadame serverile vastuse. Programmi kasutamine toimub veebiliidese kaudu. Veebiliidese realiseerime kasutades võimalikult palju CSS3 ja HTML5 elemente. Kindlasti saab sellega vahetada tekstisõnumeid, näha kasutajate nimekirja ning nende tüüpi, aga kaalume ka lisavõimalusi, näiteks failivahetust. Kasutatavad tehnoloogiad on C#, ASP.NET, Javascript, CSS3 ja HTML5. Eeldatavalt on probleemsemad osad see, mis puudutab sõnumite saatmist ja vastu võtmist ning serveriga ühenduse hoidmist (et sõnumid „teel“ kaotsi ei läheks), samuti kasutajaliidese graafiline pool. Lahenduse realiseerimise käigus ehitame valmis kaks suuremat osa. Üks on universaalne teek mis tegeleb võrguühendusega serveri ja kliendi vahel. Ühenduse loomiseks tuleb ette anda mõned konfiguratsiooni parameetrid. Teegile saab ette anda enda poolt defineeritud sündmuse halduri mis kutsutakse välja igakord kui saabub sõnum serverist. Sinna alla ei kuulu süsteemsed sõnumid (näiteks ping). Ise sõnumeid saates tuleb välja kutsuda teegi sendMessage meetodit. Lisaks on teegil hulk avalikke parameetreid mis täidetakse serveriga/kanaliga ühendumisel(serveri nimi, online kasutajate arv, kanali teema…). Tervet RFC 1459 protokolli plaanis implementeerida ei ole. Ainult vajalikud osad, et serveriga ühendust hoida ning sõnumeid saata. Teine suurem sõltumatu osa on veebiliides. Lehe avamisel tuleb ette aken kuhu saab sisestada serveri aadressi, pordi, kanali nime ning kasutaja enda nime. Edasi ühenda nuppu vajutades ühendatakse kanalisse ning sõnumeid hakatakse edastama. Ekraani parempoolses ääres on loend kasutajatest kes kanalis sees on. Sõnumeid saab saata ekraani allosas olevast teksti kastist. Kanali teemat näidatakse üleval osas. Teema peale vajutades muutub tekst muudetavaks ning peale uue teksti sisestamist saab sellest uus kanali teema. Tööjaotus rühma liikmete vahel pole veel otsustatud.

Programmi tuumikfunktsioonid:

· mugav veebiliides,
· saab saata ja vastu võtta tekstisõnumeid,
· saab vaadata, kes on kanalis online,
· näeb ka kasutajaid, kes on eemal (away),
· saab näha, mis õigused kasutajatel on (kas ta on admin, tavakasutaja jne),
· kanalile saab panna pealkirja (teema),
· laialdasemalt kasutatavad käsud on implementeeritud (nimekiri käskudest täpsustub töö käigus).

Programmi võimalikud lisafunktsioonid:

· see võiks olla ka mobiiliga kasutatav,
· võiks töötada ka brauseriga Internet Explorer,
· võiks toetada mitme kanaliga ühendamist (eri kanalid oleks eri vahelehtedel (tabides)),
· võiks olla võimalik faile saata,
· võiks näidata emotikone,
· võiks olla võimalus privaatvestluseks,
· võiks olla tehisintelligentne partner, kellega rääkida, kui kedagi teist kanalis parasjagu pole (nn chatterbot).

Kliendi veebilehitseja ja serveri vaheline ühendus võiks olla lahendatud kasutades websocket protokolli. Samas peaks kindlasti olema ka fallback vanematele veebilehitsejatele millel see tugi puudub. Võiks olla SSL tugi turvaliselt serveriga ühendumiseks.

Prototüüp

Solution(35mb)

Mis tehtud on

  • TCP kiht serveriga ühendumiseks
  • Tähtsamad IRC protokolli osad on implementeeritud
  • Lihtne veebiliides IRC kasutamiseks. Saab saata sõnumeid, näha kes online
  • Võimalus kasutada veebiliidest kui bouncer-na. Ehk siis kanalist ei logita välja peale browseri akna sulgemist. Funktsionaalsuse sisselülitamiseks tuleb veebilehe logimise aknas teha linnuke StayLogged ette. Järgmine kord lehele tagasi tulles, on kasutaja juba sisselogitud

Mis veel teha on

  • TCP kihile parem veahaldus
  • Veebiliidest disainida
  • Bouncer funktsiooni edasi arendada, et näeks ka ajalugu mis vahepeal juhtunud on
  • Olenevalt ajast lisada analüüsis mainitud lisafunktsioone

Hetkel on võimalik projekti testida ka Azures Kuna tegemist on ka testkeskkonnaga ning versioonid muutuvad mitu korda päevas võib müstilisi erroreid seal näha

Valmis projekt

Link