Kävin äskettäin Java-ohjelmointikurssin jonka osana tein harjoitusprojektina pienen pelin; Laivanupotus-appletin. Nyt kurssi on ohi, ja käteen on jäänyt enemmän tai vähemmän valmis koodi.
Kysymys kuuluukin että miten voisin saada tämän projektin koodin jotenkin hyödynnetyksi? Koodivinkiksi tänne se on kokonaisuutena liian laaja(n. 1500 riviä, eikä kovin paljoa kommentteja), ja projektiksikaan ei ehkä sovi kun ei itsellä enään ole oikein motivaatiota jatkaa sen kehitystä.
Sinänsähän ko koodilla ei ole hirveästi arvoa, mutta tuntuu pöljältä heittää menemään jotain jonka eteen on kuitenkin nähnyt jonkin verran vaivaa. Lisäksi olisi hyvä kuulla muiden ihmisten mielipiteitä koodista, ihan oman oppimisen kannalta. Ja ehkä joku aloitteleva ohjelmoitsia voi katsoa vähän esimerkkiäkin siitä.
No nakkaa projekteihin, mitä se haittaa vaikka et sitä enään päivitä? Laitat vapaalla lisenssillä niin ehkä joku sitä vielä kehittääkin jossain vaiheessa.
Sanoisin, että arkistoi tuo koodisi jonnekin, jos kerta motivaatiota ei ole sen parissa enää työskennellä ja sen haluat säilyttää. Tuohon projektiin varmaan pätee hyvin sanonta, että matka on tärkeämpi kuin itse päämäärä. Eli sen suurin anti lienee sinulle ollut se mitä opit ohjelmoinnista sen avulla, ei se koodi mitä siitä syntyi.
Toki, jos koodissa on jotain osia, joista ajattelet, että voisit käyttää niitä toisessakin projektissa, niin tee vaikka niistä oma pakettinsa. Sitä on sitten helppo hyödyntää toisessakin projektissa.
Jos kommenttia haluat koodista, niin laita koodi nettiin (koulusi varmaankin tarjoaa sivutilaa) ja sitten luot vaikka tänne aiheen, jossa pyydät kommentteja kyseisestä koodista (Vai katsottaisiko tuota pahalla?). Eiköhän muutama ainakin jaksa vilkaista ja sanoa mielipiteensä siitä.
Jos näet, että koodi on hyvää (kannattaa ehkä kysyä kokeneimmilta, että onko näin todellakin) niin lisää vaikkapa Javadocit siihen (nämä tosin siinä luulisi jo olevan, jos kerta koulutyö on kyseessä) ja teet pienen esittelysivun sille nettiin ja laitat myös Javadocit sinne. Ehkä joku sen sieltä saattaisi bongata vaikkapa hakukoneen kautta. Ei sitä kauheasti kannata minnekään mielestäni tyrkyttää.
Omat sivut pystyyn ja sinne taidon näytteeksi arkistoitavaksi.
onko se pelis console vai gui?
zokier kirjoitti:
Sinänsähän ko koodilla ei ole hirveästi arvoa, mutta tuntuu pöljältä heittää menemään jotain jonka eteen on kuitenkin nähnyt jonkin verran vaivaa.
Jos koodaat jatkossakin, niin tulet heittämään pois vielä paljon enemmän koodia. Etenkin opiskeluvaiheessa ohjelman kirjoittamisesta saatu kokemus on arvokkaampaa kuin itse lopullinen ohjelma. Kokemuksen saamiseksi voit myös tehdä niin, että kirjoitat tuon saman ohjelman toiseen kertaan tyhjästä lähtien, niin myöhemmästä koodista tulee paljon parempaa kuin ensimmäisestä versiosta.
Omien opintojeni alussa pyrin päättämään itse harjoitustöitteni aiheet siten, että saisin tehtyä ohjelman johonkin omaan tarpeeseen. Esimerkiksi yliopistolla ensimmäisenä harjoitustyönäni tein ohjelman tiedostojen korjaamiseksi, jota olen käyttänyt useaan otteeseen ohjelman valmistumisen jälkeen. Joillekin toisille harjoitustöille puolestaan ei ole ollut mitään käyttöä kurssin jälkeen. Esimerkiksi tietorakenteiden harjoitustyönä tein verkoliikenteen reititysalgoritmeja simuloivan ohjelman, jota en ole käyttänyt kertaakaan kurssin demotilaisuuden jälkeen. Siitä saatava hyöty oli kuitenkin, että toteutin useita perustietorakenteita (vektori, keko, jono yms.), mistä oppii melko paljon.
Eikä noista varhaisista koodeista ole juurikaan oppimisarvoa toisille. Nyt kun katselen noita ensimmäisten ohjelmieni koodeja, niin niistä löytyy vaikka mitä parannettavaa. Ehkä sillä tavalla niistä voi olla toisillekin hyötyä, että niiden avulla joku toinen voi opetella käsittelemään legacy-koodia ja refaktoroimaan niitä paremmiksi siten että niiden koodista tulee siistimpää.
Mites muuten kouluprojekteja saa oikeasti levitellä? Itsellä ainakin ammattikorkeassa oli tapaus, jossa selkeästi otettiin esille, että kouluprojektit kuuluvat koululle (koulu oli verrattavissa työpaikkaan ja kouluprojekti verrattavissa työaikana tehtyyn työhön).
Eli ennen koodin jakamista, kannattaa ainakin opettajalta kysyä lupa, ihan varmuuden vuoksi.
edit:
Sinänsä koulu ei varmaankaan halua estää koodausta, mutta ei luvan kysyminen varmaan iso homma ole.
Lebe80 kirjoitti:
Mites muuten kouluprojekteja saa oikeasti levitellä? Itsellä ainakin ammattikorkeassa oli tapaus, jossa selkeästi otettiin esille, että kouluprojektit kuuluvat koululle (koulu oli verrattavissa työpaikkaan ja kouluprojekti verrattavissa työaikana tehtyyn työhön).
Harva koulu kuitenkaan maksaa palkkaa opiskelijoille, eli opiskelijat eivät ole työ- tai virkasuhteessa. (eli esim. oppisopimuskoulutus on asia erikseen)
Tällöin tekijänoikeus on oppilaalla, ellei oppilas ole erikseen tehnyt sopimusta asiasta. Toki jos tekemiseen on osallistunut useita henkilöitä, niin silloin tietenkin tekijänoikeus on myös jakaantunut useammalle.
TKTL:llä pitää ohjelmistotuotantoprojektin tapauksessa (4-6 opiskelijan tiimissä tehdään keskikokoinen softa) allekirjoittaa paperit (tässä itse PDF), joissa oikeudet luovutetaan yliopistolle. Muilla kursseilla ei tuollaisia muistaakseni allekirjoiteltu. Yliopiston kanta on siis, että ellei mitään tuollaista allekirjoiteta, niin kaikki oikeudet pysyvät opiskelijalla.
Töissä asia on toki eri. Ymmärtääkseni, kun töitä tehdään työntekijänä, niin kaikki oikeudet menevät työnantajalle. Mutta jos töitä tehdään esim. omalla toiminimellä, niin oletuksena kaikki oikeudet pysyvät tekijällä itsellään, ellei sopimuksessa ole toisin kirjoitettu.
Aihe on jo aika vanha, joten et voi enää vastata siihen.