Selailin läpi Sometun delicious-kirjanmerkkejä, näitä foorumeita ja muutamien jäsenten blogeja, päivittääkseni mieleeni tuntumaa siitä, millaisia asioita sometuun eli siis someen
oppimisen tukena tavataan liittää. Sosiaalisen median välineet, yhdessä puuhastelu (pahoittelut kepeästä sanavalinnasta) ja verkostoituminen nousivat tietenkin esille, mutta paljon harvemmalle maininnalle vaikuttivat jäävän varsinaiset oppimisprosessit itsessään, sekä metakeskustelu oppimisesta.
Sosiaalisen median "perusvälineet" soveltuvat erinomaisen hyvin sellaiseen oppimiseen, jossa pyrkimyksenä saada opetettavat saavuttamaan jokin
tietty taso, mikä sinänsä selittää senkin, miksi esim. ryhmässä Opetuskäyttö useimmin esille nousevat sanat ovat 'wiki', 'yhteisblogi' ja Facebook, kuten viestissä
Sosiaalinen media lukiossa.
Samaisista välineistä erityisesti wiki soveltuu jonkin tuotoksen muodostamiseen yhteisöllisesti, sillä se rakentuu siinä kaikkien osallistujien silmien edessä, mutta entäpä sama toisinpäin eli valmiin tuotoksen purkaminen
alkutekijöihinsä?
Tämä ajatus tuli mieleeni tuossa taannoin, kun eteeni ajautui muhkea paketti ohjelmointikoodia (satoja tiedostoja, paljon rivejä). Ohjelmistojahan on siinä mielessä helppo rakentaa, että ensin opetellaan suunnittelemaan, sitten toteuttamaan ja sitten voidaankin jo mennä tekemään asiakasanalyysi, jotta tiedetään mitä pitää tehdä, luodaan suunnitelma ja sitten toteutetaan suunnitelma. Hirmu helppoa noinpäin.
Ohjelmiston, sovelluksen tai tietojärjestelmän toteutuksen ja suunnittelun aikana voi käyttää runsaassa määrin sosiaalista mediaa avukseen ja varmaan arvaattekin, että ohjelmointi on yksi niistä aiheista, josta keskustelua ja yhteisöjä löytyy paljon.
Mutta entäpä jos oppimistarpeeksi ilmentyykin valmiin ohjelmiston opettaminen itselleen, jotta sitä voi alkaa jatkokehittämään (esim. työtilanteessa)? Otetaanpa tähän väliin pieni katkelma koodista (satunnainen koodinpätkä Koders.com:sta):
int indexEndFirstHeader = CGWHttp::find_in_string(strPacket,"\r\n", false,0);
string strFirstHeader = strPacket.substr(0, indexEndFirstHeader);
char * zBuf = new char [strFirstHeader.length() + 1];
strcpy(zBuf, strFirstHeader.c_str());
Oletettakoon, että ohjelmoija, jonka pitäisi alkaa jatkokehittämään jotain ohjelmistoa, on jo niin kokenut, että käytetyn ohjelmointikielen syntaksi, konventiot, varatut nimet, yms. ovat jo täysin tuttuja, mutta itse ohjelmisto pitäisi mallintaa takaisin sellaiseen muotoon, jossa se yleensä suunnitteluvaiheessa on, eli kaavioiksi, relaatioiksi, sanalistoiksi, vaatimusmäärittelyiksi, jne. Tässä kuvitellussa tapauksessa mitään kaavioita ei edes olisi, koska ohjelmiston alkuperäinen kehittäjä ja hänen jälkeensä kädenjälkiään jättäneet ovat olleet niin kokeneita, etteivät he sellaisia kaavioita tai muutakaan dokumentaatiota tulleet tuottaneeksi.
(Edellisestä voi johtaa sivujuonteen artikkeliin
"Why the Vasa Sank: 10 Problems and Some Antidotes for Software Pro..., jota ei kuitenkaan tämän viestin kannalta ole välttämätöntä lukea.)
Jos tätä "alkutekijöihin" purkamista ei tehdä, on ohjelmoija koko koodin seassa pelmaamisen ajan eräänlaisessa viidakossa, jossa ei aina voi olla aivan varma siitä, mitä milloinkin tulee eteen ja mitä heijastevaikutuksia milläkin muutoksella on. Jos hän lisäksi haluaa noudattaa
"Tietotekniikan ammattilaisen etiikan ohjeistoa" ja samantapaista, mutta laajempaa ACM:ohjeistoa
"Software Engineering Code of Ethics and Professional Practice", hän todennäköisesti kokee merkittävää tuskastuneisuutta tehtävää kohtaan, jos hän ei pysty tarkastelemaan ohjelmistoa useilla erilaisilla abstraktion tasoilla, vaan on aina "nenä kiinni koodissa".
Verratkaa tätä vaikkapa
johonkin artikkeliin, jossa on käytetty runsaasti lähdeviitteitä. Lähdeviitteiden avulla, sekä lähdeviitteiden lähdeviitteiden avulla ja lähdeviitteiden käsittelemien aiheiden ja käsittelytapojen perusteella on mahdollista sijoittaa tuo artikkeli ja jopa sen yksittäiset osaset osaksi jotain laajaa merkitysten verkostoa (vertaa esim. DBPedian muihin tietokantoihin
linkittymiseen ja Facebookin uuteen
Like-nappulaan).
Ohjelmistojen ns. takaisinmallinnukseen (disassembling, reverse engineering) on olemassa valmiita ohjelmistojakin. Kyseinen takaisinmallinnus olisi aina idempotentti eli muodostettu formaali malli olisi "aina sama riippumatta siitä, suoritetaanko se kerran vai useamman kerran". Artikkelille ei samanlaista automatisoitua takaisinmallinnusta voi tehdä, jos haluna on saavuttaa
hienojakoinen ymmärrys, sillä sanojen merkitykset ovat aina sidoksissa myös lukijan omiin mielen skeemoihin ja sisäisiin muistin rakenteisiin.
Artikkelin takaisinmallintamisessa on usein paljon helpompi lohkoa pieniä palasia, jolloin sosiaalisen median hengessä kukin purkaja voisi keskittyä omaan lohkoonsa, joista sitten koostettaisiin yhteinen näkemys, jota sitten jatkojalostetaan. Tällä tavoinhan, ainakin teoriassa, toimivat esim. avoimien yliopistojen verkkokurssien opintopiirit.
Sanon "ainakin teoriassa", koska tiukan aikarajan ollessa puitteissa yksi parasiitti tai lusmu pilaa helposti koko työn. Itseasiassa, eivät ne verkkokeskustelut avoimien yliopistojen kurssien yleisillä keskustelufoorumeilla niin erityisen aktiivisia ole. Asenne "kunhan läpi pääsee" on aika yleinen, sekä joskus ilmenevä "kunpa tuo hikari ei pääsisi läpi".
Sinänsä, juuri tämän osallistuvan osallistumattomuuden vuoksi voisi kysyä sitäkin, että otetaanko somevälineet liiaksikin, kuten englantilaiset saattaisivat sanoa: "for granted"?
Palaan vielä kertaalleen ohjelmiston takaisinmallintamiseen, sellaiseen tilanteeseen jossa automaattitoimista takaisinmallinnusohjelmistoa ei olisi saatavilla tai mahdollista käyttää. Tällöin se ymmärrys pitäisi jollakin tapaa itselle muodostaa. Jos ohjelmisto olisi avointa lähdekoodia, voisi se olla kaikkien ymmärtämisessä avustajien tarkasteltavana, mutta enpä jos tämä ei olisi mahdollista?
Varsinainen kysymykseni kuuluukin, onko sosiaalinen media käyttökelpoinen jonkin (minkä tahansa) laajan asian alkutekijöihin purkamisessa ja sitä kautta laajan ymmärryksen muodostamisessa kysyjäyksilön mieleen?
"Pieniä kysymyksiä" on helppo esittää ja niihin saa todennäköisemmin vastauksen, vaikkei olisikaan 300 000 seuraajaa Twitterissä, mutta entä "isot kysymykset"?
Siis.. kuka viitsisi kanssamiettiä kanssasi? Linkkejä Wikipediaan osaa heittää kuka vaan ja fraasikoneita löytyy melkein joka taloudesta, mutta entä uudet, pohdinnan kautta muodostetut avusteet?