sunnuntai 16. helmikuuta 2014

ICT4TN003-12: Paketoimista Ubuntulla

Tällä kertaa tehtävänä metapaketin tekeminen, pakettivaraston tekeminen repreprolla ja skriptin paketoiminen. Vapaaehtoisena lisähaasteena repreprolla tehdyn varaston allekirjoittaminen. Tällä kertaa käytössä Netcieliltä vuokrattu ranskalainen virtuaalipalvelin, jossa käyttöjärjestelmänä Ubuntu 13.04. Yhteys serveriin Windows 7 -läppärin PuTTY:llä.

Aloitetaan opettajan ohjeiden mukaan asentamalla equivs.

sudo apt-get update
sudo apt-get install equivs

Asennus sujui hyvin. Ja sitten tekemään metapakettia, joka asentaa suosikkiohjelmani. Paremman ajatuksen puuttuessa, päädyn geo-ip:hen. Ensin tehdään paketti:

equivs-control lasse-geoip.cfg
sudo nano lasse-geoip.cfg

Sitten editoidaan cfg-tiedosto tällaiseen kuntoon:


Ja sitten varsinainen rakentaminen:

equivs-build lasse-geoip.cfg

Ja eipä onnistunutkaan vaan tuloksena on valituksia: "badly formatted heading line", "found blank line where expected first heading" ja niin edelleen. Käydäänpä katsomassa miltä se cfg-näyttikään... Korjailen sen perusteella, mitä virheilmoitusket saattaisivat tarkoittaa, mutta lopputulos on sama. Otan alusta asti uudestaan, mutta ei auta aina vaan tuloksena on samankaltainen litanja virheitä:


En ymmärrä vastoinkäymisiä, sillä vastaava onnistui tunnilla käyttämälläni live-CD:llä ilman ongelmia. Päätän jättää harjoituksen tällä erää tähän ja palata siihen vanhalla, tutulla ja turvallisella testikoneella.

* * *

Ja nyt jatkuu! Tällä kertaa alustana edellisistä tehtävistä tuttu HP-torni ja käyttöjärjestelmänä Ubuntu 12.04 LTS live-CD:ltä ajettuna. Tällä se ainakin tunnilla onnistui...

Eli sitten vaan tuttuja komentoja syöttämään. Tällä kertaa päätän tehdä ainakin teoriassa hyödyllisen paketin, joka asentaa Linuxiin "ampin", että saadaan LAMP (Linux-Apache-MySQL-PHP). Laiskuuttani ajan kaikki komennot sudona.

su sudo

apt-get update

apt-get install equivs

...jota ei kuitenkaan löydy, joten edetään kuten aiemmassa tehtävässä hakemalla universe-repository:

sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse"

apt-get update

apt-get install equivs

Nyt onnistui! Sitten tehdään paketti:

equivs-control lasse-lamp.cfg

sudo nano lasse-lamp.cfg

Päivitetään tiedosto näyttämään tältä:



Sitten rakennetaan:

equivs-build lasse-lamp.cfg

Ja ladataan lintian testaamista varten:

apt-get install lintian

Testataan:

lintian lasse-lamp_0.1_all.deb

Lintian valittaa sähköpostiosoitteesta, jonka jätin oletukseksi. Kun taas korjaan siihen oman osoitteeni ja poistan #-kommentointimerkin, equivs-build ei suostu rakentamaan pakettia vaan valittaa "trailer linen" väärästä formaatista. Tyydyn lopulta siihen versioon, josta lintian valittaa. Se kuitenkin syntyi, enkä testaamisella pääse virheestä eroon.

Seuraavaksi kokeillaan paketin asennusta:

gdebi -n lasse-lamp_0.3_all.deb

gdebiä ei tietenkään koneella ole, joten se on vielä asennettava:

apt-get install gdebi

Ja sitten alkaa tapahtua! Ohjelmat asentuvat nätisti, ainoa katko on MySQL:n pyyntö saada salasana.

Seuraavana tehtävänä reprepron käyttö. Sekin pitää aluksi asentaa:

apt-get install reprepro

Sitten ohjeiden mukaisesti teen kansion conf ja sinne tiedotston distributions. Se sisällöksi seuraavaa:



Sitten vaan varsinainen rakennus:

reprepro includedeb lammas lasse-lamp_0.3_all.deb

Ja valmista tulee!

Sitten vielä skriptin paketoiminen, siten että se on asennettuna kaikkien käyttäjien käytettävissä. Teen nimellä tiedot.sh yksinkertaisen skriptin työskentelykansion ja vapaan levytilan näyttämiseen. Se sisältö on:

pwd
df

Ja tälle ajo-oikeudet:

chmod 755 tiedot.sh

Sen jälkeen ajan equivsin tehdäkseni tästä paketin:

equivs-control tiedot.cfg

Sen sisältöä muokkaan aiemmin oppimani mukaan:



Sitten ajan buildin:

equivs-build tiedot.cfg

Ja asennan paketin kokeeksi:

gdebi -n tiedot_0.1_all.deb

Ja se olikin sitten siinä!


Lähteet:

sunnuntai 9. helmikuuta 2014

ICT4TN003-12: Rosvoja ja kunnon kansalaisia

Tällä kertaa tehtävänä on ratkaista HoneyNetin Scan of the Month 15 ja selittää omin sanoin yksi OWASP Top 10 -listan hyökkäyksistä. Aloitetaan HoneyNetistä. Opettajan suosituksen mukaisesti teen harjoituksen Ubuntu (12.04 LTS) live-CD:llä. Koneena aiemmissa tehtävissä kuvattu HP.

Lataan tar-paketin. Sen jälkeen tarkistan oikean komennon purkamiseen:

tar --help

Ja sitten itse purkaminen:

tar -xf honeynet.tar.gz

Tuloksena on honeynet-niminen kansio. Sitä ei tosin pääse heti lukemaan, joten joudun muuttamaan oikeuksia:

sudo chmod 755 -R honeynet

Kansiosta löytyy yhden levyosion sisältävä dd-tiedosto. Tässä kohdassa joudun hakemaan apua Googlen kautta, sillä en ottanut tunnilla ylös, millä työkaluilla tuon kimppuun kannatti käydä, kun ajattelin löytäväni tiedon kuitenkin netistä. Löydän Googlella erään aikaisemman kurssin ratkaisun ja luen varovaisesti alusta vain sen verran, että pääsen eteenpäin. Tarvittava ohjelma on Sleuth Kit.

Sen asennus ei kuitenkaan onnistu ennen kuin olen ajanut seuraavan komennon. Ohje tähänkin löytyi eräästä kurssiblogista tai oikeastaan siinä linkatusta Ask Ubuntu -sivusta:

sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main universe restricted multiverse"

Tämän jälkeen ohjelmistolistan päivitys, jossa kestää tällä kertaa tavanomaista huomattavasti pidempään, mutta sen jälkeen Sleuth Kit asentuu mutkitta.

sudo apt-get install sleuthkit

Ohjeiden mukaan puran paketista poistetut tiedostot ja muut tiedostot. Koska en kuitenkaan oikein keksi miten edetä tämän jälkeen, käyn kurkkimassa kansioihin. Aloitan ensin poistetuista tiedostoista. Sieltä löydän lk.tgy-paketin sekä kansiot etc ja $OrphanFiles. Kansioista en löydä mitään kiinnostavaa, joten tarkastelen paketin sisältöä komennolla:

lz lk.tgy

Sen sisältö näyttää sen verran epäilyttävältä, että kyseessä lienee rootkit. Tiedostonimet viittavaat yhteydenpitoon (ssh), nuuskimiseen (sniffer) ja piilotteluun (cleaner). Ajattelen käydä tutkimassa lokitiedostoja, mutta niitä ei löydy paketista. README-tiedosto paljastaakin, että ne ovat olleet osiolla, jota ei ole sisällytetty tehtävään.

Koska en osaa oikein tehdä muutakaan, katson, miten muut ovat tehtävässä edenneet. Aiemmin käymissäni blogeista toisessa on käytetty vastaavia keinoja kuin itsekin käytin, mutta perusteellisemmin ja taitavammin. Toisessa taas on käytetty Autopsyn selainpohjaista käyttöliittymää, mutta päädytty samaan tulokseen, eli tuon lk.lgz-paketin ihmettelyyn.

Pitää ehkä joskus tarttua johonkin toiseen Scan of the Monthiin, nyt kun on vähän enemmän ymmärrystä siitä, mistä aloittaa ja miten edetä.

Mutta nyt OWASP:in kimppuun. Luettuani tiivistelmät kaikista läpi, valitsen tarkempaan tarkasteluun A2:n (Broken Authentication And Session Management). Tämä kohta koskee uhrin istunnon kaappaamista, joka on mahdollista, jos käytettävän palvelun tietoturvassa on sopiva aukko. OWASP:in mukaan täysin pitävän istunnonhallinnan rakentaminen on vaikeaa.

Tällaisille murroille ovat alttiita esimerkiksi ne palvelut, joissa istuntotunnukset on huonosti salattu, helposti arvattavissa tai jopa suoraan url:ssa näkyvissä. OWASP:issa on havainnollinen esimerkki:
  1. Uhri on kirjautuneena lentoja myyvälle sivustolle.
  2. Hän näkee tarjouksen ja päättää lähettää sen sähköpostitse ystävälleen kopioimalla url:n (http://www.example.com/sale/saleitemsjsessionid=2P0OC2JSNDLPSKHCJUN2JV?dest=Hawaii).
  3. Kaveri avaa linkin ja onkin yhtäkkiä kirjautuneena sivustolle, jonne uhri on jo aiemmin tallentanut luottokorttinumeronsa. 
Toinen mahdollinen aukko voisi olla se, että istunto ei vanhene. Uhri esimerkiksi käy julkisella tietokoneella kirjautumassa johonkin palveluun eikä lopetettuaan kirjaudu ulos vaan ainoastaan sulkee selaimen. Hyökkääjä voi tulla vaikka tunnin päästä koneelle ja havaita, että istunto on yhä auki.

Lähteet Honeynet-tehtävään:

keskiviikko 5. helmikuuta 2014

ZaggKeys ja miten opinnot ovat edenneet

Ajattelin tässä blogissa esitellä välillä myös hyviksi havaitsemiani tuotteita, ainakin niissä tapauksissa, kun kyseessä on joku iPhonea eksoottisempi tuote. Tämä homma on hyvä aloittaa vuodenvaihteessa hankkimallani ZaggKeys Folio for iPad Airilla.

Yksinkertaistettuna: ZaggKeys tekee iPadista miniläppärin. Hiirtä (tai mitään korviketta) ei tietenkään ole, mutta normaali iOS:n kosketusohjaaminen toimii normaalisti. Ostin saksalaisen version, joka toimii kätevästi "suomalaisena" pienin varauksin: Z ja Y -näppäimet ovat väärillä paikoilla, vaikka toki toimivat normaalisti (tämän voisi tietysti korjata, jos uskaltaisi repiä napit irti ja vaihtaa niiden paikkoja). Menikä sekavaksi? Siis, suomalaisen näppäimistö kirjaimen Y paikalla on näppäin Z, jota painamalla tulee kuitenin Y. Eli jos ei kirjoittaessa tuijottele sormiaan, ei tämä ole mikään ongelma. Lisäksi Å-napissa on "u mit umlaut".

Numpadia ei näppäimistössä ole, mutta sen sijaan F-näppäimien paikalla on mukava kokoelma pikanäppäimiä: navi-nappi, lukitus, undo, redo, virtuaalinäppäimistö esiin/pois, copy, paste sekä äänenhallinta. Lisäksi näppäimistössä on aivan oma akkunappi, jonka painamisen jälkeen kyseisen napin ledi välähtää 1-4 kertaa kertoen akun varauksen. Valmistajan mukaan akun pitäisi kestää kuukausia, eikä minulla ole toistaiseksi perusteita epäillä tätä.

Fyysisesti laite on, joistain netti kommenteista poiketen, erittäin laadukkaan oloinen. Näppäimistöä on miellyttävä käyttää ja iPad asettuu tukevasti paikalleen. Kaksi pientä miinusta: Laitteen irroittaminen ei ole yhtä kätevää kuin kiinnittäminen, mutta jos kynsiä ei ole syöty aivan loppuun, oppii tämänkin melkon nopeasti. Toinen liittyy tasapainoon: avatessa kantta "liikaa" tietyn kohdan jälkeen iPad-puoli painaa enemmän kuin näppäimistö, jolloin laite kellahtaa kumoon. Jos tähän ei osaa varautua, voi se pahimmillaan johtaa yhdistelmän putoamiseen lattialle.

Yksi tärkeimpiä syitä siihen, että päädyin ZaggKeysiin oli taustavalaistu näppäimistö. Valaistusta voi kaiken lisäksi säätää. On/off-säädön lisäksi tarjolla on seisemän eri värivaihtoehtoa ja kolme kirkkausvaihtoehtoa. Tämän pitäisi riittää vaativampaankin tarpeeseen, vaikka noin monipuolinen valikoima onkin monelle lähinnä lelu.

Suurin miinus koko laitteessa liittyy Applen tarkoituksellisiin tai tarkoituksettomiin rajoituksiin. Eli näppäimistöllä on mahdollista käyttää vain tiettyjä toimintoja ja näppäimistöoikoteitä. Ärsyttävimmät puutteet ovat sovellusten välillä hyppiminen ja Safari-sivujen selaus nuolinäppäimillä.

Mutta kokonaisuutena ZaggKeys on todella upea ja käyttökelpoinen lisälaite markkinoiden parhaaseen tablettiin. Sata euroa on paljon, mutta jos pädillä kirjoittaa muutakin kuin satunnaisesti urleja tai FB-statuksia, on kyseessä kannattava sijoitus.

Ja samaan hengenvetoon iso kehu ZaggKeysin kanssa erinomaisesti pelaavalle Textastic-sovellukselle: vähäisellä testauksen perustella erittäin käyttökelpoinen sovellus kevyeen koodailuun. Esimerkiksi nettisivupäivitykset onnistuvat vaivattomasti ssh-yhteyden kautta.

Ja ne opinnot? Syksyllä tuli suoritettua Haaga-Heliassa tietokantojen ja ohjelmoinnin peruskurssit. Molempien tentit ovat tosin vielä edessä, koska olin tenttiviikon aikaan lomalla.

Code Academyssä edistyminen on ollut vaisumpaa. Naksuttelin läpi PHP-kurssin, koska sille tuntui olevan niin paljon tarvetta varsinaisessa työssäni, mutta kurssi oli niin perusasiaa, ettei siitä juurikaan ollut apua.

Isoin ja haastavin juttu syksyn aikana on ollut uuden teeman tekeminen Vihreän Langan Drupal-pohjoisille verkkosivuille. Tämä työ on jo pitkällä, mutta matkaa maaliin vähintään yhtä paljon.

Tänä keväänä Haaga-Helia jatkuu ohjelmistokehityksellä ja käyttöliittymillä sekä Langan verkkoprojekin kannalta hyödyllisellä Linux palvelimena -kurssilla, jonka tehtävien vastauksia onkin tässä blogissa jo julkaistu. Code Academy jäänee vähemmälle, mutta Langan verkkoprojektin ohessa jatkan PHP:n ja Drupalin itseopiskelua.

lauantai 1. helmikuuta 2014

ICT4TN003-12: Linux-palvelimen kuormittamista

Tällä kertaa harjoitellaan koneen kuormituksen ja tilan arviointi. Läksynä on viisi tehtävää, joista ensimmäinen on kuormitustietojen kerääminen munin-ohjelmalla. Koneena edellisestä tehtävästä tuttu HP-harjoituskone, jossa AMD Sempron LE-1300 -prosessori ja 1,8 gigatavua muistia sekä viime viikon tehtävässä asennettu LAMP.

Aloitetaan asentamalla munin:

sudo apt-get install munin

munin-check

Tämän jälkeen tulee useita virheilmoituksia tiedostojen ja kansioiden vääristä omistusoikeuksista. Korjaan ne käsin yksi kerrallaan, jonka jälkeen testaan muninia Firefoxin kautta osoitteessa localhost/munin. Ja sehän toimii!



Sitten stressaamaan!

sudo apt-get install stress

Päätän aloittaa prosessorilla:

stress -c 1

top näyttää, että vahnha prosessori on kovilla:



Testataan seuraavaksi muistin kuormittamista komennolla joka käynnistää neljä prosessia, jotka kukin vievät 256 megatavua muistia:

stress -m 4



Kuten kuvasta näkyy muistin rasittaminen aiheuttaa huomattavaa rasitusta myös prosessorille. Kokeillaan viimeiseksi kovalevyn rasittamista seuraavalla komennolla. Tässä yhteydessä on syytä varmistaa, ettei käytä kaikkea jäljelläolevaa levytilaa, eli kannattaa ensin varmistaa (df -h) vapaana olevan tilan määrä.

stress -d 1

Tämä ei aluksi onnistunut (virheilmoituksena "permission denied"). Google-haku osoitti, että muilla on ollut vastaava ongelma ja se ratkeaa yksinkertaisesti antamalla komento sudo:na:

sudo stress -d 1

Tällä kertaa käytin monitorointiin iotop-ohjelmaa:



Loppuhuipennuksena vielä 90 sekunnin yhteisrasitus:

sudo stress -c 1 -m 4 -d 1 -t 90s



Testien jälkeen muninin keräämissä kuvaajissa näkyy jo jotain elämää, mutta koska aika-akseli on lyhimmilläänkin (päivä) niin pitkä, on tietojen tarkempi tarkastelu hyvin vaikeaa. Siirrytään siis viimeiseen tehtävään ja katsotaan, jos se aikana muniniin kirjautuisi jotain käyttökelpoisempaa.

Ja yksinkertainen esimerkki lokeista. Apachen lokitiedostojen reaaliaikainen seuraaminen onnistuu komennolla:

tail -F /var/log/apache2/*log

Seuraavassa kuvassa näkyy kolme tapahtumaa. Ylimpänä näkyy, että kello 12.05.21 on otettu yhteyttä osoitteesta 192.168.100.23. IP-osoitteen jälkeen tulevat kaksi viivaa tarkoittavat, ettei yhteydenottajasta ole tarkempia tunnistetietoja (RFC 1413 ja HTTP Authentication).



Sen jälkeen tulee päivämäärän ja kellonajan sisältävä timestamp. Seuraavaksi on vuorossa yhteydenottajan antama vaatimus halutuista tiedoitsa, eli tässä tapauksessa halutaan näkyviin "juuri" tai etusivu (/) käyttäen HTTP-protokollaa.

Seuraavat numerot (304 ja 210) ovat HTTP-koodit, joista ensimmäinen kertoo, että kyseessä on muokkaamaton sivu ja jälkimmäinen ilmeisesti sen, että yhteys on muodostettu uudelleen, mitä ikinä se tarkoittaakaan.

Loppuosa on sen verran omituinen, etten osaa sanoa, miksi siinä mainitaan käyttämäni Chromen lisäksi Mozilla ja Windows NT. Ilmeisesti kyse on siitä, että selain ei kerro ainoastaan mikä se on vaan myös mille eri selaimille sopivia muotoiluja se ymmärtää.

Kuvan toinen ja kolmas rivi liittyvät samaan yhteydenottoon. Yritin iPhonellani avata tiedoston /pitsa.html, jota (kuten hyvin tiesin) ei serverillä ole. Kakkosrivin tiedot ovat error.log-tiedostosta, josta näkyy, että osoitteesta 192.168.100.28 tehtyyn yhteydenottoon on jouduttu vastaamaan "File does not exist". Viimeinen rivi on saman tapahtuman kirjaus access.log-tiedostossa. Se on muuten vastaava kuin ensimmäinen pöytäkoneeltani sivuston juureen otettu yhteys, mutta HTTP-koodit ovat toiset: 404 (file not found) ja 502 (bad gateway).

Käydään lopuksi vielä kurkistamassa, miltä munin näyttää:


Suurta eroa kuormitustestin ja muun käytön ei pääsääntöisesti näy, tai sitä ei pysty näin epätarkassa tarkastelussa näkemään. Prosessorin käyttöasteessa näkyy sentään selvä ero, sillä vihreä "järjestelmäkäyttö" on ollut korkeimmillaan juuri silloin, kun ajoin stress-testejä.

Lähteet:

lauantai 25. tammikuuta 2014

ICT4TN003-12: LAMP-asennus

Blogi herää pitkän tauon jälkeen henkiin ja syynä on uusi kurssi, jonka tehtävät suositeltiin tehtävän tällä tavoin julkisesti. Eli tästä se taas alkaa.

Tehtävänä on ratkaista aiemmin käydyn kurssin (Työasemat ja tietoverkot) Linux-koe. Suoritan tehtävän vanhalla, nurkassa pölyttyneellä HP-pöytäkoneella, jota käytin jo aikanaan harjoitteluun tuolla samaisella kurssilla. Otin koneen käyttöön "uutena" ja asensin siihen live-CD:ltä Ubuntu 12.04 LTS -käyttöjärjestelmän. Myöhemmin, ehkä jo aika pian, tarkoituksenani on hankkia itselleni virtuaaliserveri paitsi tällaiseen treenailuun myös olutblogin uudeksi (=joustavammaksi) alustaksi.

Asentamisen jälkeen pikainen testailu osoittaa, että tehtävän ensimmäinen osio on suoritettu, sillä samalla asentuivat nettiselain (Firefox)  ja tekstinkäsittelyohjelma (LibreOffice Writer). Asennuksen aikana annettu WLAN-salasana oli tosin unohtunut uudelleenkäynnistyksen aikana, joten se piti antaa vielä uudestaan. Muuten kaikki toimi suoraan aivan kuten pitikin. Esimerkiksi näppäimistön kieliasetus oli pysynyt tallessa.

Seuraavaksi päästäänkin itse asiaan eli tekemään asennuksia ja laittamaan asetuksia terminaalin kautta näpyttelemällä. Aloitetaan käyttäjätunnuksien luonnilla, joka onnistuu komennolla:

sudo adduser evahak

Sitten vain annetaan mahdolliset lisätiedo ja lisätään samalla logiikalla myös kolme muuta käyttäjää. Tämän jälkeen voidaan tarkastaa käyttäjät komennolla:

cat /etc/passwd

Pitkän listan lopusta löytyvät juuri tehdyt käyttäjät tietoineen.

Yksinkertainen shell-skripti, joka näyttää vapaan levytilan sekä ip-osoitteen, onnisttu kirjoittamalla:

nano mystatus

Tämän jälkeen kirjoitetaan itse skripti:

#!/bin/bash
# Shows the amount of free disc space and IP-address
df -h
ifconfig

Ja tallennetaan painamalla Ctrl+X ja sen jälkeen Y. Tämän jälkeen annetaan muillekin oikeudet lukea tai ajaa kyseinen skripti:

chmod 755 mystatus

Sitten siirretään tiedosto kaikkien saataville:

sudo mv mystatus /bin

Ja koska ei ole mitään syytä olla tähtäämättä huipputulokseen, asennetaan vielä Apache, MySQL ja PHP. Varmistetaan aluksi, että koneella on tiedot uusimmista versioista kirjoittamalla:

sudo apt-get update

Lyhyen ajon jälkeen jatketaan varsinaiseen asennukseen:

sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install apache2
sudo apt-get install php5
sudo service apache2 restart

Tämän jälkeen Firefox löytää "It works!" -sivun, kun osoitteeksi kirjoittaa localhost. Jatketaan vielä PhpMyAdminin asennuksella näiden ohjeiden mukaan:

sudo apt-get install phpmyadmin
sudo nano /etc/apache2/apache2.conf

Lisätään tiedoston loppuun rivi:

Include /etc/phpmyadmin/apache.conf

Ja käynnistetään Apache vielä kerran uudelleen:

sudo service apache2 restart

Ensi viikolla taas lisää tätä. Sitä ennen ehkä muuta lätinää opintojen etenemisestä.

Lähteet:

sunnuntai 17. helmikuuta 2013

Minä ja internet

30 vuotta on aikamoinen rajapyykki. Yhden määritelmän mukaan internet sai alkunsa, kuten minäkin, alkuvuodesta 1983.

TCP/IP-protokollan isäksi kutsuttu Vint Cerf muisteli vajaa vuosi sitten Wiredissä hetkeä jolloin interrnet sai alkunsa, kun ARPANET siirrettiin yhä käytössä olevaan TCP/IP:hen. Samaan ajanjaksoon liittyy myös intrenetin avaaminen kaupalliseen käyttöön. On aika vaikea kuvitella, millainen internet nykyisin olisi ja olisiko sillä ollut yhtä suuri vaikutus, jos näitä kahta askelta ei olisi otettu tai jos ne olisi otettu vasta joskus paljon myöhemmin.

Rehellisyyden nimissä internetin synnyn voi ihan yhtä hyvin ajoittaa muutamaan muuhunkin ajankohtaan, joista selvin lienee Arpanetin käynnistäminen lokakuussa 1969. Mutta tämän kirjoituksen analogian kannalta leikitään nyt edes hetki, että tuo 1983 oli internetin alkuhetki.

Internet kehittyi aluksi, kuten minäkin, nopeasti ja hiljaisesti. Tai no ehkä vanhempani ja myöhemmin perhepäivähoitajat ja eräs seurakuntakerhon ohjaaja olisivat toista mieltä tuosta hiljaisuudesta, mutta kovin isoa jälkeä en maailmaan jättänyt. Eikä jättänyt internetkään.  Tai jätti, mutta se jälki ei ollut vielä näkyvissä.

1990-luvun puolivälin paikkeilla internet murtautui lopulta kaikkien tietoisuuteen ja monien, kuten myös minun, käyttöön. Touhutessani Nummelan yläasteella ja viereisessä uimahallissa internet aloitti omat, epäkypsään elämänvaiheeseen kuuluvat värikkäät kokeilunsa. Minä ja internet teimme paljon yhdessä (Kinonetti-leffasivusto never forget), mutta paljon teimme myös erikseen.

Vuosituhannen vaihtuminen oli meille molemmille käännekohta, eräänlainen point of no return. Minulla ei ehkä ollut omaa Y2K-ongelmaani, mutta vanhempieni avioeron ja täysi-ikäisyyden saavuttamisen myötä aloin vähitellen elää omaa vapaata ja riippumatonta elämääni. Internethän oli ottanut oman irtiottonsa vanhempiensa hallinnasta jo paljon aiemmin.

2000-luvun ensimäisellä vuosikymmenellä, minä ja koko muu ihmiskunta olemme opetelleet elämään kaikkialla olevan ja kaikkialla vaikuttavan internetin kanssa. Toiset ovat omaksuneet uuden teknologian nopeammin ja toiset hitaammin. Itse olen opiskelujen, työn ja yleisen teknologiakiinnostuksen vuoksi ollut vahvassa etukenossa.

Vihdoin 2010-luvulla alkaa vähitellen näyttää siltä, että nettiä käytetään kaikkialla huviin ja hyötyyn iästä riippumatta. Entistä monipuolisemmat päätelaitteet ja niiden nopeasti kehittyvät verkko-ominaisuudet syrjäyttävät nopeasti paperituotteita esimerkiksi junissa ja ravintoloissa. Internet alkaa olla vakiintunut aikuinen, kuten minäkin kiitos vaimon, koirien, vakituisen työpaikan ja asuntolainan.

Onko maailma siis valmis?

tiistai 5. helmikuuta 2013

Opiskelu: Alku aina...

Opintoja on nyt takana vajaa kuukausi. Aika on ollut innostavaa mutta raskasta. Olen oppinut paljon uutta ja alkanut vähitellen hahmottamaan, kuinka paljon uutta on vielä oppimatta. Toisaalta ajankäyttöni on mullistunut totaalisesti: lähden töihin tuntia aiemmin kuin ennen ja palaan koulusta kotiin yli kolme tuntia aiempaa myöhemmin. Mutta ainakin toistaiseksi tämä vapaa ajan ja oppimisen vaihtokauppa on tuntunut kannattavalta.

Haaga-Heliassa tietojenkäsittelyn opinnot alkavat aivan alusta, mikä on itseni kaltaiselle aloittelijalle tarpeellista, mutta tarkoittaa samalla myös sitä, että ryhmämme hajoaa heti alkuunsa. Yhdet saavat monta kurssia kuitattua suoraan käytännön osaamisellaan, toiset aiemmilla opinnoillaan ja kolmannet saavat suorittavat alusta alkaen jokaisen kurssin. Itse kuulun sekä toiseen että kolmanteen ryhmään, sillä saan Haaga-Helian medianomitutkinnolla kuitattua lähinnä opintojen loppupään vapaavalintaisia opintoja. Aloitan siis alusta, mutta maali on ehkä hieman lähempänä kuin muilla samalta viivalta lähtevillä.

Alkuvaiheessa käyn kolmea kurssia: orientaatio ICT-alaan, työasemat ja tietoverkot sekä tietotekniset välineet. Näistä kolmesta ainoastaan työasemat ja tietoverkot tuntuu innostavalta ja tarpeelliselta: Linux-asennusta, Unix-komentoja, laitteisto-oppia ja niin edelleen. Onneksi kurssi on myös tämän kevään kursseista pisin ja laajin.

Orientaatiokurssi on varmasti hyvä niille, joilla on kulunut pidempi aika aiemmista opinnoista. Itse koen kurssin melko tarpeettomaksi ja erityisesti aivan liian venytetyksi. Tietotekniset välineet tarkoittavat lähinnä MS Office -ohjelmia ja varsinkin asiakirjastandardien opetteleminen tuntuu aivan yhtä turhauttavalta kuin silloin vuosia sitten. Enkä saa kurssia edes korvattu, koska tällä kertaa "mennään syvemmälle".

Toisella opintourallani Code Academyssä asiat sujuvat kevyemmin ja nopeammin. JavaScript-kurssilla mentiin heti asiaan ja vähitellen tahti on alkanut kiihtyä, minkä ansiosta aletaan päästä perusteista käytännössä hyödynnettäviin asioihin. Samalla tehtävistä on tullut hieman työläämpiä, minkä vuoksi niitä ei voi enää niin helposti suorittaa muutamassa minuutissa muiden hommien ohessa vaan niihin on oikeasti varattava hieman aikaa.

Siitä huolimatta Code Academyn opetusmetodi tuntuu hyvältä itseni kaltaiselle itsenäiselle, hieman lyhytjänteiselle oppijalle. Ei lainkaan luentoja vaan alusta alkaen harjoituksia ja tekemistä - sopivissa annoksissa. Lisäksi pistesysteemi kannustaa edistämään opintoja päivittäin. Ensimmäisen testin perusteella ainakin aloittelija saa Code Academyn foorumilta nopeasti asiantuntevaa apua.

Odotan mielenkiinnolla Haaga-Helian ohjelmointikurssia, jotta pääsen vertailemaan näitä kahta kovin erilaista metodia. Toistaiseksi kokemani Haaga-Helian pintaraapaisut Unix-komentoihin, PHP:hen ja HTML:ään eivät lupaa hyvää, sillä kyseessä on ollut mekaaninen kopioiminen paperilta ruudulle.

Kolmas opintoura, työhön soveltaminen ja työssä oppiminen, on vielä jäissä, sillä en ole vielä oppinut oikeastaan mitään, jota voisin soveltaa työssäni. Tuntuu kuitenkin siltä, ettei sellainen tilanne välttämättä ole enää kovin kaukana.