Galluppia?

DeetäJaSympatiaa

Minkälaista sakkia täällä oikein on?

Milloin törmäsit eka kerran koodaukseen?
- 1985, näin kun serkku koodaili C-16 koneella (olin 11v)

Milloin koodasit itse eka kerran?
- 1989 kun sain oman Atari ST koneen (olin 15v)

Mikä oli ensimmäinen kieli millä koodasit?
- ST Basic / GFA-Basic

Milloin aloit opiskella koodausta koulussa?
- 1999 (Jyväskylän AMK), opiskelin ihan muuta alaa aiemmin.

Milloin koodasit ammatiksesi?
- 2006

Kuten näkyy, koodaus oli pitkään itsellä pelkästään harrastus, en uskonut että siitä tulisi edes amatti. Töihin IT-alalle pääsin kun tein oman web-sivun 2006 ja minuun otettiin yhteyttä. Palkka oli pitkään aika paska, mutta nykyään ok. Myös (ex) Logica otti yhteyttä web-sivuni kautta, mutten sinne mennyt töihin, joten oman web-sivun pystyttäminen kannattaa :)

Minun neuvo nuoremmille on että ei liian isoa palkkavaatimusta alussa, työ opettaa enemmän kuin 1000 kertaa kouluihin nähden. Kun työvuosia ja kokemusta kertyy niin palkkakin kasvaa.

Työ vaatii omistautumista alalle. Itsellä kiinnotus ollut "aina" jo ennen ensimmäistäkään koodiriviä. Särin pentuna kaikki Nindendo pelikoneet siksi koska halusin "laajentaa" pelejä omaksi mielekseni, mutta perseelleenhän ne meni =D

Koodailen edelleen työni ohessa harrastuksena, koska työ ei anna tarpeeksi haasteita ja tekisi mieli korjata työnpaikan puutteita, lisähintaan :)

Haaveena olisi oma yritys, omat tuotteet ja oma visio. Mutta en ole myyntimies :/ Työn kautta oppii silti businesta, ihmisiä yritysten takanakin on. Noh.. aika näyttää?...

Pääkielet millä koodannut aikajärjestyksessä?
- ST-Basic (harrastus)
- GFA-Basic (harrastus)
- QBasic (harrastus)
- C/C (opiskelu, harrastus)
- Delphi (Pascal) (harrastus, ex-työ)
- Visual Basic v6 (ex-työ)
- Java (opiskelu)
- C# (ex-työ)
- PHP (töissä)
- JavaScript (töissä)
- Vala (harrastus)
- D (harrastus)

17

320

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • koodausta-nähty

      En ole koskaan harrastanut koodausta, eli salakirjoitusta, mutta Pikku Jättiläisessä ja Antero Vipusessa sitä näin jo 1960-l. lopulla.

    • plus4

      Commandore 16:ssa oli kyllä huomattavasti Vic-20:iä ja C64:ää kehittyneempi basic-tulkki. Muuten laite sisaruksistaan poikkeavine liitäntöineen ja oheislaitteineen oli tuhoontuomittu jo syntyessään.

    • Kylle

      Ohjelmointiin törmäsin ensimmäisen kerran joskus kymmenvuotiaana. En silloin tosin ymmärtänyt siitä juurikaan, ja pelkästään muuttujien arvoalueet olivat minulle käsittämättömiä. Muutaman vuoden päästä, keväällä 2013, päätin alkaa opetella Pythonia. Se tuotti tulosta, ja siitä ohjelmointiharrastukseni alkoikin. Alan koulutusta ei ole, ja ikääkin vain 17, mutta kirjoja lukemalla ja itse tekemällä oppii aika paljon.

      Python
      Java
      Html/JavaScript
      Java (taas)
      C /Java
      C

      Kuten on huomattavissa, minulla kesti jonkin tajuta, mitä haluan oikeasti tehdä. Kielet vaihtelivat usein, enkä hallinnut mistään juuri perusteita enempää. Jossain vaiheessa löysin C , joka tuntui heti omalta, ja sillä olen pääasiassa ohjelmoinut nyt kolmisen vuotta. Käytän edelleen silloin tällöin myös Pythonia ja Javaa, en tosin mihinkään suurempaan projektiin.

      Ja itsehän siis ohjelmoin, en koodaa. (Vihaan tuota sanaa, tulee mieleen nämä "opi koodaamaan 24 tunnissa Scratchissa"-systeemit. Niillä ei ole mitään tekemistä ohjelmoinnin kanssa, ne ovat vain loogiseen päättelyyn perustuvia pelejä.)

      • tarpeeksi-ikää

        Kun jossain on tuputettu ohjelmointia oppiaineeksi peruskouluun (ilmeisesti jotkut Nokia-huumassa sinnittelevät on niin hulluja), niin juttusi oivallisesti kertoo, ettei ala-asteikäinen ainakaan ole kypsä ymmärtämään mistä ohjelmoinnissa on kysymys.


      • DeetäJaSympatiaa

        Hei! Lykkyä tykö ja jatka opiskelua oma-aloitteisesti ja mene kouluun, sieltä saa muutakin opiskeltavaa, toki joista opiskelusta voi olla hyötyä. Se minkä itse opin vasta töissä oli versiohallinta, opettele käyttämään myös Gitiä ja Svn;ää, tiedät mitä koodailussa tarkoittaa esim. pull request, merget sun muut jne. Isommissa työpaikoissa koodaillaan ryhmissä ja silloin versiohallinta on pakollinen ominaisuus. Tämä versiohallinta oli ehkä isoin puutos minkä opin vasta työpaikan kautta.


    • pcmuseo

      Milloin törmäsit eka kerran koodaukseen?
      1986 Mikrobitti
      Samalla törmäsin myös vuokaavioon.

      Milloin koodasit itse eka kerran?
      1987 C-64

      Mikä oli ensimmäinen kieli millä koodasit?
      M$ Basic V2

      Milloin aloit opiskella koodausta koulussa?
      1990 Kivistön yläaste (Basic)

      Milloin koodasit ammatiksesi?
      1998

      Kielet about kronologisessa järjestyksessä:
      Basic
      Logo
      Pascal
      C
      Konekoodi Z80 (käännettiin käsin ruutupaperilla asseblerista konekoodiksi MPF-1:lle)
      C
      Java
      Visualbasic
      Assembler
      matlab
      IEC61131-3

      • DeetäJaSympatiaa

        Hardcore äijä :)

        Aikoinaan Atari ST:llä yritin Motorola MC68000 assembleria mutta yritykseksi jäi, hommasin GFA-Basic Compilerin joka käänsi konekoodiin suoraan, se riitti :) Se nopeusetu oli uskomaton miten käännetty koodi toimi verrattuna tulkattuun. Mutta ei GFA-Basic ollut mitenkään hidas itsekkään, se käänsi koodin jotenkin Javan tapaan tavukoodiin jota se suoritti. Jos GFA-Basicin tiedoston avasi teksti-editoriin, se oli pelkkään siansaksaa, ei ollut ASCII-tekstiä suinkaan.


      • DeetäJaSympatiaa

        Tai siis ASCII oli itseään, mutta koodi ei ollut luettavassa muodossa suoraan toisessa editorissa. Nykyään kannattaa myös tutustua UTF-8 ja UTF-16 koodauksiin, UTF-8 on suoraan ASCIIsta laajennettu, erikoismerkit on enemmän kuin tavun ä ö jne.. UTF-16 vaatii aina 2 tavua per merkki jne. Näiden kanssa joutuu taistelemaan edelleen joskus, vanhemmissa sydeemeissä täällä on esim. ISO-8859-1 koodaus jne. Kyriillisisissä merkeissä on omat sotkunsa, parasta kun unohtaa kaikki vanhat ja yrittää päästä UTF-8 koodaukseen kaikissa tapauksissa, mutta näiden tuntemisesta on apua.


      • pcmuseo
        DeetäJaSympatiaa kirjoitti:

        Hardcore äijä :)

        Aikoinaan Atari ST:llä yritin Motorola MC68000 assembleria mutta yritykseksi jäi, hommasin GFA-Basic Compilerin joka käänsi konekoodiin suoraan, se riitti :) Se nopeusetu oli uskomaton miten käännetty koodi toimi verrattuna tulkattuun. Mutta ei GFA-Basic ollut mitenkään hidas itsekkään, se käänsi koodin jotenkin Javan tapaan tavukoodiin jota se suoritti. Jos GFA-Basicin tiedoston avasi teksti-editoriin, se oli pelkkään siansaksaa, ei ollut ASCII-tekstiä suinkaan.

        Ei niin hardcore kuin hardware :)
        On hieman jännä muistella nuota parin kymmenen vuoden takaisia asioita, ja minusta kun piti tulla sulautetun eletroniikan suunnittelija, mutta tulikin FW-koodari.
        Alkupään projetit on näköjään jo obsolete statuksella.
        https://goo.gl/5r2KPu
        Tuohon tuli suuniteltua uusi piirilevy, kun siihen piti saada lisättyä sarjaportti ja LON -liitäntä.
        http://www.enerlon.com/JobAids/Toshiba Neuron Data book.pdf
        (Lopputyönä oli sittemin tuo LON -optiokortti ajureineen. CPU:na i80c251)

        Seuraavana oli tohtori Tuomisen puulaakin lukuun jokin voimanmittauslaite, joka jutteli PC:lle sarjaportin kautta. Käyttöliittymänä kolme nappia ja kaksi neljän digitin 7-segmentti LCD:tä ICM7211 näytönohjainten perässä.
        Prossuna AT89c2051, jossa RAM -muistia huimat 128 tavua. Tohtorin puulaaki on näemmä hieman kasvanut sitten vuoden 1998.
        http://www.pohjalainenyrittaja.fi/epaper_new/20161108/16.pdf

        Myöhemmin sitten jatkanut tuon sulautetun homman kanssa Esim. Oma osuus häivähdykseltä kohdassa 4:32. T50D oli eka liikkuvan työkoneen ohjaus, jonka tein kokonaan itse.
        Tuota mallia rakennetaan Turussa. Tai ainakin tehtiin silloin 15vuotta sitten.
        https://youtu.be/qTr6aXdxz74
        Sen jälkeen olen ollut tuotekehityksessä 100%, eli suorat asiakaskontaktit on jäänyt hieman vähemmälle.

        Joitain speciaalihommia on sittemmin tullut tehtyä viimeisin:
        http://www.skaala.com/ilmanvaihtoikkunat.html
        Tuonne FW, jonka kautta voidaan käyttää IEC61131-3 kääntäjää sitten varsinaisen sovelluksen tekemiseen.

        t:p


      • pcmuseo
        pcmuseo kirjoitti:

        Ei niin hardcore kuin hardware :)
        On hieman jännä muistella nuota parin kymmenen vuoden takaisia asioita, ja minusta kun piti tulla sulautetun eletroniikan suunnittelija, mutta tulikin FW-koodari.
        Alkupään projetit on näköjään jo obsolete statuksella.
        https://goo.gl/5r2KPu
        Tuohon tuli suuniteltua uusi piirilevy, kun siihen piti saada lisättyä sarjaportti ja LON -liitäntä.
        http://www.enerlon.com/JobAids/Toshiba Neuron Data book.pdf
        (Lopputyönä oli sittemin tuo LON -optiokortti ajureineen. CPU:na i80c251)

        Seuraavana oli tohtori Tuomisen puulaakin lukuun jokin voimanmittauslaite, joka jutteli PC:lle sarjaportin kautta. Käyttöliittymänä kolme nappia ja kaksi neljän digitin 7-segmentti LCD:tä ICM7211 näytönohjainten perässä.
        Prossuna AT89c2051, jossa RAM -muistia huimat 128 tavua. Tohtorin puulaaki on näemmä hieman kasvanut sitten vuoden 1998.
        http://www.pohjalainenyrittaja.fi/epaper_new/20161108/16.pdf

        Myöhemmin sitten jatkanut tuon sulautetun homman kanssa Esim. Oma osuus häivähdykseltä kohdassa 4:32. T50D oli eka liikkuvan työkoneen ohjaus, jonka tein kokonaan itse.
        Tuota mallia rakennetaan Turussa. Tai ainakin tehtiin silloin 15vuotta sitten.
        https://youtu.be/qTr6aXdxz74
        Sen jälkeen olen ollut tuotekehityksessä 100%, eli suorat asiakaskontaktit on jäänyt hieman vähemmälle.

        Joitain speciaalihommia on sittemmin tullut tehtyä viimeisin:
        http://www.skaala.com/ilmanvaihtoikkunat.html
        Tuonne FW, jonka kautta voidaan käyttää IEC61131-3 kääntäjää sitten varsinaisen sovelluksen tekemiseen.

        t:p

        Kas tulikin T60:n video oikea olisi tämä:
        https://youtu.be/sK1UVFKL3e0
        Kohta edelleen sama.


    • likomärkäkorva

      Minä meinasin sanoa osaavani PHP kielen, mutta sitten katsoin mitä siinä oikein tulee luvanneeksi, ja päätinkin että sanon, vaan sanonkin että olisi mukava jos sitä joskus osaisi, python ja linux olis kanssa mukava osata. Sama pää, kesät talvet, ei siitä mitään tuu.

      PHP PITÄÄ SISÄLLÄÄN TÄMÄN
      Luokkia 537kpl
      Vakioita 1735kpl
      Funktioita 5074kpl
      Menetelmiä 5507kpl
      Ominaisuuksia 389kpl
      Muuttujia 21kpl

      PYTHON 3 SISÄLTÄÄ
      Attribuuttit 875kpl
      Exceptions 255kpl (Vierheiden käsittelijät)
      Vakioita 119kpl
      Luokkia 740kpl
      Funktioita 2946kpl
      Macroja 40kpl
      Menetelmiä 3986kpl
      Modulleita 322kpl
      Tyyppejä 54kpl
      Muuttujia 74kpl

      BASH SHELL SISÄLTÄÄ VÄHINTÄÄN TÄMÄN
      Builtins 59kpl (Sisäiset komennot, bg, alias, dirs, . . . .)
      Funktioita 108kpl (kill-word, yank, set-mark, . . . )
      Parametrejä 18kpl ($@, $?, $#, . . .)
      Muuttujia 144kpl (BASH, ENV, HOME, . . . . )
      Varattuja sanoja 21kpl (case, done, else . . . .)

      • Kkxlxmxlzlz

        Niin, eihän se osaaminen ulkoa muistamista tarkoita. Kunhan osaa etsiä sopivan luokan, metodin tai muuttujan dokumentaatiosta.


      • DeetäJaSympatiaa

        PHP voi olla asetuksista riippuen vähän liiankin "löysä" kieli. Esim. törmäsin tapaukseen missä unohdin lainausmerkit merkkijonsta $x = merkkijono, kun olisi pitänyt olla $x = "merkkijono", tuo meni ihan huutaen läpi ja koodi vielä toimi???? Minua ihan pelotti tuo tapaus miten PHP tunnisti merkkijonon itsekseen joka näytti koodissa ihan vakiolta PHP:n tapaan käsitellä asiat vakiona.

        PHP on minusta v-tun helppo kieli. Mikä itseä ärsyttää PHP:ssa on löysä tyypitys muuttujissa, kannasta dataa haettaessa on aina vähän epävarma olo, onko data kokonaisluku, liukuluku, merkkijono vai jotain ihan muuta, null? Jotta voin olla varma asiasta, teen aina typecastin $m = (int)$row["id"]; että voin olla 100% varma että kyseessä on integeri, tulos on nolla 0 tai jokin muu luku, kun tiedän että sinä pitää tulla integer.

        Minusta kielissä pitäisi aina olla voimakas tyypitys muuttujien suhteen, suoraan sanottuna kyrsii nämä löysästi tyypittävät kielet kuten PHP ja JavaScript. TypeScript yrittää muuten korjata tätä ongelmaa, joka on periaatteessa tyypitetty JavaScript kielenä.


      • DeetäJaSympatiaa kirjoitti:

        PHP voi olla asetuksista riippuen vähän liiankin "löysä" kieli. Esim. törmäsin tapaukseen missä unohdin lainausmerkit merkkijonsta $x = merkkijono, kun olisi pitänyt olla $x = "merkkijono", tuo meni ihan huutaen läpi ja koodi vielä toimi???? Minua ihan pelotti tuo tapaus miten PHP tunnisti merkkijonon itsekseen joka näytti koodissa ihan vakiolta PHP:n tapaan käsitellä asiat vakiona.

        PHP on minusta v-tun helppo kieli. Mikä itseä ärsyttää PHP:ssa on löysä tyypitys muuttujissa, kannasta dataa haettaessa on aina vähän epävarma olo, onko data kokonaisluku, liukuluku, merkkijono vai jotain ihan muuta, null? Jotta voin olla varma asiasta, teen aina typecastin $m = (int)$row["id"]; että voin olla 100% varma että kyseessä on integeri, tulos on nolla 0 tai jokin muu luku, kun tiedän että sinä pitää tulla integer.

        Minusta kielissä pitäisi aina olla voimakas tyypitys muuttujien suhteen, suoraan sanottuna kyrsii nämä löysästi tyypittävät kielet kuten PHP ja JavaScript. TypeScript yrittää muuten korjata tätä ongelmaa, joka on periaatteessa tyypitetty JavaScript kielenä.

        Javascriptissä on tuota ongelmaa korjattu myös työkaluissa, että kyllähän sitä React komponenteissa on ne prop typesit määriteltynä.

        Kyllähän sitä sitten jQuery ajoista saakka kun teki komponentteja niin sitä sitten kirjoitti tarkistusta tähän tapaan:

        'if (!Number.isInteger(input) || !Sanitize.range(input, min, max))
        ' throw new RangeError();


      • likomärkäkorva
        DeetäJaSympatiaa kirjoitti:

        PHP voi olla asetuksista riippuen vähän liiankin "löysä" kieli. Esim. törmäsin tapaukseen missä unohdin lainausmerkit merkkijonsta $x = merkkijono, kun olisi pitänyt olla $x = "merkkijono", tuo meni ihan huutaen läpi ja koodi vielä toimi???? Minua ihan pelotti tuo tapaus miten PHP tunnisti merkkijonon itsekseen joka näytti koodissa ihan vakiolta PHP:n tapaan käsitellä asiat vakiona.

        PHP on minusta v-tun helppo kieli. Mikä itseä ärsyttää PHP:ssa on löysä tyypitys muuttujissa, kannasta dataa haettaessa on aina vähän epävarma olo, onko data kokonaisluku, liukuluku, merkkijono vai jotain ihan muuta, null? Jotta voin olla varma asiasta, teen aina typecastin $m = (int)$row["id"]; että voin olla 100% varma että kyseessä on integeri, tulos on nolla 0 tai jokin muu luku, kun tiedän että sinä pitää tulla integer.

        Minusta kielissä pitäisi aina olla voimakas tyypitys muuttujien suhteen, suoraan sanottuna kyrsii nämä löysästi tyypittävät kielet kuten PHP ja JavaScript. TypeScript yrittää muuten korjata tätä ongelmaa, joka on periaatteessa tyypitetty JavaScript kielenä.

        '''''''Esim. törmäsin tapaukseen missä unohdin lainausmerkit merkkijonsta $x = merkkijono, kun olisi pitänyt olla $x = "merkkijono", tuo meni ihan huutaen läpi ja koodi vielä toimi????'''''''


        Tuon $x muuttujan määrittely rivillä 3 pitäisi antaa virheilmoitus, ellet ole aiemin (rivi 2) alustanut muuttujaa vakioksi.

        Eli jos jätämme rivin 2 pois, suoritus pysähtyy riville 3, virheen vuoksi. Eli miten se nyt on tuon väittämäsi kanssa.

        1. <?php
        2. const merkkijono = 12;
        3. $x = merkkijono;
        4. $y = "merkkijono";
        5. echo $x;
        6. echo $y
        7. ?>


        PHP Notice: Use of undefined constant merkkijono
        PHP Huomautus: Määrittelemättömän vakion "merkkijono" käytöstä

        Tietysti nämä huomautukset voidaan sulkea pois niin ettei niitä näytetä, jolloin se ei ole ympäristön vika ettei käyttäjä asiaa korjaa.


      • likomärkäkorva kirjoitti:

        '''''''Esim. törmäsin tapaukseen missä unohdin lainausmerkit merkkijonsta $x = merkkijono, kun olisi pitänyt olla $x = "merkkijono", tuo meni ihan huutaen läpi ja koodi vielä toimi????'''''''


        Tuon $x muuttujan määrittely rivillä 3 pitäisi antaa virheilmoitus, ellet ole aiemin (rivi 2) alustanut muuttujaa vakioksi.

        Eli jos jätämme rivin 2 pois, suoritus pysähtyy riville 3, virheen vuoksi. Eli miten se nyt on tuon väittämäsi kanssa.

        1. <?php
        2. const merkkijono = 12;
        3. $x = merkkijono;
        4. $y = "merkkijono";
        5. echo $x;
        6. echo $y
        7. ?>


        PHP Notice: Use of undefined constant merkkijono
        PHP Huomautus: Määrittelemättömän vakion "merkkijono" käytöstä

        Tietysti nämä huomautukset voidaan sulkea pois niin ettei niitä näytetä, jolloin se ei ole ympäristön vika ettei käyttäjä asiaa korjaa.

        PHP:ssä nyt laitetaan devausvaiheessa kaikki warningit päälle asetuksiin, olioita tyypitetään Interfaceilla ja funktioit kirjoitetaan muotoa sum(float $a, float $b) {return $a $b; }


      • likomärkäkorva
        M-Kar kirjoitti:

        PHP:ssä nyt laitetaan devausvaiheessa kaikki warningit päälle asetuksiin, olioita tyypitetään Interfaceilla ja funktioit kirjoitetaan muotoa sum(float $a, float $b) {return $a $b; }

        php.ini tiedostossa määritellään näytetäänkö virheet vai:
        display_errors = Off


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Aivosyöpää sairastava Olga Temonen TV:ssä - Viimeinen Perjantai-keskusteluohjelma ulos

      Näyttelijä-yrittäjä Olga Temonen sairastaa neljännen asteen glioomaa eli aivosyöpää, jota ei ole mahdollista leikata. Hä
      Maailman menoa
      80
      2809
    2. Pelotelkaa niin paljon kuin sielu sietää.

      Mutta ei mene perille asti. Miksi Venäjä hyökkäisi Suomeen? No, tottahan se tietenkin on jos Suomi joka ei ole edes soda
      Maailman menoa
      295
      1626
    3. Mikä saa ihmisen tekemään tällaista?

      Onko se huomatuksi tulemisen tarve tosiaan niin iso tarve, että nuoruuttaan ja tietämättömyyttään pilataan loppuelämä?
      Sinkut
      246
      1527
    4. Minkä merkkisellä

      Autolla kaivattusi ajaa? Mies jota kaipaan ajaa Mersulla.
      Ikävä
      87
      1371
    5. IL - VARUSMIEHIÄ lähetetään jatkossa NATO-tehtäviin ulkomaille!

      Suomen puolustuksen uudet linjaukset: Varusmiehiä suunnitellaan Nato-tehtäviin Puolustusministeri Antti Häkkänen esittel
      Maailman menoa
      401
      1349
    6. Nyt kun Pride on ohi 3.0

      Edelliset kaksi ketjua tuli täyteen. Pidetään siis edelleen tämä asia esillä. Raamattu opettaa johdonmukaisesti, että
      Luterilaisuus
      396
      1273
    7. Esko Eerikäinen tatuoi kasvoihinsa rakkaan nimen - Kärkäs kommentti "Ritvasta" lävähti somessa

      Ohhoh! Esko Eerikäinen on ottanut uuden tatuoinnin. Kyseessä ei ole mikä tahansa kuva minne tahansa, vaan Eerikäisen tat
      Suomalaiset julkkikset
      38
      1027
    8. Kiitos nainen

      Kuitenkin. Olet sitten ajanmerkkinä. Tuskin enää sinua näen ja huomasitko, että olit siinä viimeisen kerran samassa paik
      Tunteet
      2
      999
    9. Hyväksytkö sinä sen että päättäjämme ei rakenna rauhaa Venäjän kanssa?

      Vielä kun sota ehkäpä voitaisiin välttää rauhanponnisteluilla niin millä verukkeella voidaan sanoa että on hyvä asia kun
      Maailman menoa
      329
      854
    10. Miksi Purra-graffiti ei nyt olekkaan naisvihaa?

      "Pohtikaapa reaktiota, jos vastaava graffiti olisi tehty Sanna Marinista", kysyy Tere Sammallahti. Helsingin Suvilahden
      Maailman menoa
      254
      832
    Aihe