28.2.2017

Pohdinta: Ajanhallinta


Opintojen näkökulmasta minulla ei ole ongelmia ajanhallinnan kanssa, paitsi ehkä satunnaisesti. Välillä tulee joitain asioita lykättyä tarpeettomasti kauemmaksi, mutta usein saan kuitenkin annetut tehtävät tehtyä määräajassa. Toisaalta kirjoitan tätäkin tehtävää vain siksi etten jaksanut lähteä kaikkiin tapahtumiin hakemaan leimoja, vaan lykkäsin aina välillä leimojen keräämistä ja lopulta en voinutkaan kerätä tarvittavaa määrää.
Ajanhallinnan kannalta voisin koittaa aikatauluttaa paremmin sellaisia hetkiä jolloin teen vain opintoja eteenpäin, enkä sortuisi pelaamaan videopelejä tai katselemaan elokuvia. Ainakin itse koen saavani aikaan enemmän kun keskityn intensiivisesti vain yhteen asiaa ja työstän sitä eteenpäin tekemättä muuta. Toisaalta välillä tulee sellaisiakin hetkiä milloin monen asian tekeminen yhtä aikaa tai asiasta toiseen meneminen auttaa selvittämään asioita joissa olen jumittanut aiemmin.

Tällä hetkellä edessäni on seuraavanlaisia deadlineja: Käsiteanalyysin alustukseen valmistautuminen (3.3.), YLEn vaalikoneeseen vastaaminen ja ehdokasvideot (5.3.) ja Ohjelmointi 1 demo 8, projektin esittely ja debuggausnäyte (6.3.). Näihin deadlineihin valmistautumiseen ei mielestäni auta muu kuin tarttua härkää sarvista ja ruveta töihin. Todennäköisesti tulen tekemään hommat siinä järjestyksessä missä inspiraatio hommat sanelee.

Ajanhallinnan kanssa voisin kehittyä siltä kantilta, että saisin työt tehtyä niin aikaisin, että niiden uudelleen tekemiselle riittäisi tarvittaessa aikaa. Myöskin olisi hyvä mikäli saisin projektien työmäärää tehtyä eteenpäin myös pienissä osissa, eikä kaikkea työtä kerralla kahvin voimalla.


- Tatu Toikkanen

27.2.2017

Käsiteanalyysi: Avoin lähdekoodi

Tässä käsiteanalyysissä tutkitaan avointa lähdekoodia sen määritelmän ja siihen liittyvien lisenssien ja yhteisöjen näkökulmasta. Ensimmäiseksi avaamme avoimen lähdekoodin määritelmää, jonka jälkeen kerromme lisensseistä ja niiden luomista vapauksista ja vastuista. Lopuksi pohdimme avoimen lähdekoodin yhteisöjä ja niiden merkitystä.

        Avoimen lähdekoodin ohjelma (Open-source software, lyh. OSS), kutsutaan joskus myös free softwareksi, on ohjelma jonka “käyttämistä ei keinotekoisesti rajoiteta mitenkään” (Ingo 2005, 21) ja jonka lähdekoodi on avoimesti luettavissa, muokattavissa ja kopioitavissa. Ingo (2005) mainitsee Open Source -yhteisön aatteesta myös, että jokaisella on oikeus käyttää toisten koodia omissa ohjelmissaan. GNU-projektin internetsivuilla avoimen lähdekoodin ohjelman vapaudesta annetaan käsite “‘free’ as in ‘free speech’, not as in ‘free beer’” (Free Software Foundation. 2016). Tämä tarkoittaa siis käytännössä sitä, että avointa lähdekoodia tulisi tulkita käyttäjän vapautena suorittaa, kopioida, jakaa, opiskella, muokata ja parantaa ohjelman koodia, eikä vain mahdollisuutena saada ilmainen ohjelmisto. 

        Avoimeen lähdekoodiin liittyvät hyvin läheisesti erilaiset lisenssit, joilla ohjelmoijat voivat rajoittaa muiden oikeuksia käyttää ohjelmiaan ja lähdekoodejaan. Lisenssit suojaavat ohjelmistoa sillä niillä voidaan rajoittaa kopiointia, muokkaamista ja uudelleen julkaisua, eikä esimerkiksi jokin kaupallinen toimija voi lisenssin sen kieltäessä suoraan kopioida avoimen lähdekoodin ohjelmistoa omaan tuotteeseensa. Yksi tällaisista lisensseistä, joista Ingo (2005) kirjoittaa teoksessaan, on GNU General Public License eli GNU GPL, jonka on kehittänyt Free Software Foundationin perustaja ja GNU Projectin isä Richard M. Stallman (Free Software Foundation. 2007). GPL-lisenssiin liittyy myös vahvasti FSF:n luoma laillinen käsite copyleft, joka antaa lisenssinhaltijoille ja loppukäyttäjille oikeuden jonkun ohjelman tai siitä johdetun toisen teoksen uudelleenkäyttöön, muokkaamiseen ja kopioimiseen, kunhan samat oikeudet periytyvät myös seuraaville, kun ohjelmaa kopioidaan tai jaetaan (Dixon 2004, 22). Näiden lisenssien merkitys on toisaalta olla myös turvaamassa kehittäjän ja käyttäjän oikeuksien lisäksi lähdekoodin avoimuutta ohjelmiston kehittyessä. 

        Free Software Foundation on vain yksi lukuisista esimerkeistä siitä, miten tärkeää yhteisöllisyys on avoimelle lähdekoodille. Monen avoimen lähdekoodin projektin taustalla työskentelee yhden ohjelmoijan sijaan yhteisö, jonka koko voi vaihdella pienestä suureen. Samoin yksi yhteisö tai projekti voi joko keskittyä yhteen asiaan, kuten Linux-kerneliä ohjelmoivat henkilöt, tai työskennellä useamman ohjelman parissa, kuten esimerkiksi Mozilla-projektissa (Firefox, Thunderbird) (Mozilla Foundation. 2017). Ilman samanmielisiä yhteisöjä meillä tuskin olisi mahdollisuutta valita niin laajasta valikoimasta avoimen lähdekoodin ohjelmistoja kuin nyt on, sillä esimerkiksi Debianin, Ubuntun ja LibreOfficen kehitys on pääasiassa jonkin yhteisön vastuulla. 

        Näistä havainnoista olemme päässeet siihen lopputulokseen, että avoimella lähdekoodilla on saatu paljon aikaan ja Open Sourcen ideologia kerää ihmisiä yhteisen asian äärelle. Yksi suurimmista saavutuksista lienee Linux, johon pohjautuvat käyttöjärjestelmät ovat palvelinpuolella yleisin valinta (Ingo 2005, 21; Q-Success. 2017).


Tatu Toikkanen & Jesse Kiilamaa,  27.2.2017, versio 1.2


Lähteet: 


Dixon, R. 2004. Open Source Software Law. Artech House, Boston. 

Ingo, H. 2005. Avoin elämä : näin toimii Open Source. Omakustanne, Espoo. 

Free Software Foundation. 2007. GNU General Public License. Katsottu 9.2.2017. https://www.gnu.org/licenses/gpl-3.0.en.html 

Mozilla Foundation. 2017. History of the Mozilla Project. Katsottu 10.2.2017. https://www.mozilla.org/en-US/about/history/details/ 

Free Software Foundation. 2017. Staff and Board. Katsottu 9.2.2017. 

Q-Success. 2017. Usage of operating systems for websites. Katsottu 10.2.2017. https://w3techs.com/technologies/overview/operating_system/all 

Free Software Foundation. 2016. What is free software? Katsottu 9.2.2017. http://www.gnu.org/philosophy/free-sw.html