IT-alan työpaikat

Mielestäni myös hyvä miettiä näiden työkalujen vaikutusta laajemminkin, kuin vaan siihen että mietitään miten se tehostaa yksittäisen devaajan arkea. Jos tuotefirma, tuotekehitystiimi (käytän näitä termejä laveasti) voi nopeammin testailla eri vaihtoehtoja kustannustehokkaammin, ja tehdä päätöksiä nopeammin niin silläkin on itsessään suuri lisäarvo. Lead-time alusta-loppuun on paljon muutakin kuin vain se osuus mikä käytetään devatessa, joten jos ei ali-optimoida osa-optimoida niin tässä koko putkessa on mahdollisuuksia. Saada vaikka ei-koodavia rooleja mukaan tiiviimmin prosessia.

Näiden työkalujen avulla voidaan kuitenkin keskittyä paremmin siihen itse arvoa tuottavaan osuuteen - ei siihen miten tietty projekti scaffoldataan, tai miten joku tietty API käyttäytyy tietyssä tilanteessa tmv... vaan sellainen bulkimpi homma voidaan hoitaa nyt nopeammin. Ei siitä saa mitään erityisiä lisäpisteitä että se osuus on tehty ns. luomuna. Täälläkin nostettu esiin, että kyllä sitä sovelluskehityskokemusta tulee olla jotta pystyy arvioimaan tuotoksia ja vielä siinä laajemmasa kontekstissa - itse tuote, ja laajemmin sitten tuoteportfoliossa. Helppoa on vaan generoida kamaa, sama kuin nyt vain kirjoitella menemään - mutta siinä on kuitenkin sen kokonaisuuden ymmärrys ihan avainasemassa eikä se poistu. Työkalut voivat avustaa omaksumaan laajempi kokonaisuuksia helpommmin, tuoda kontekstin paremmin lähelle jne.. mutta sovelluskehitysammattitaidon tarve ei ainakaan tällä hetkellä ole vähenemässä. Hankalin tilanne on varmasti nyt alalle tulevilla, kun tullaan vasemmalta-ja-oikealta ohi näillä työkaluilla, mutta ei vielä osata arvioida sitä tuotosta suhteessa siihen laajempaan arvontuottoon.

Kuten täälläkin monesti todettu, näistä työkaluissa on myös ne heikot puolensa. Cursor, vaikkakin mielenkiintoinen, on sellainen että vaikea nähdä miten sen pystyy esimerkiksi IT-konsulttitalo perustelemaan asiakkaalle kuin asiakkaalle, siellä on yhä hankalia kohtia mm. data residencyn suhteen kun ei voida aukottomasti sanoa että pysyy esim. EU -alueella (tällä hetkellä). Useilla taloilla on sen tyyppisiä asiakkaita, kuten täälläkin todettu, että tämä ei vain ole mahdollista. Uskon toki että noissa kehitystä tapahtuu hyvinkin nopeasti, ja tilanne elää - seuraava "Cursor" on kuitenkin mutkan takana (kilpailija, tai parannettu Cursor itse).

Yksittäiseen työkaluun keskittyminen menee siihen puun tuijotteluun, eikä nähdä metsää puilta.
 
Viimeksi muokattu:
Ja prompt engineerinhän on minusta oltava kyllä koodari tai hommasta ei tule mitään. Ei sillai voi tehdä softaa, että kysellään generaattorilta koodia tai testejä koodille, eikä tajuta, mitä ne oikeasti tekee tai mitä vaikutuksia niillä on kokonaisuuteen.
Mun mielestä yliopistolla ei juurikaan käytetty mitään kirjastoja (monesti edes kielen mukana tulevia) koska haluttiin, että opiskelijat oppivat ne peusteet ensin. Töissä ei sitten kellekään varmaan tulisi mieleenkään kirjottaa omia sorttaus tai logitus algoritmejä ellei olisi joku tosi spesifinen keissi.

Pointti lähinnä että tottakai pitää ymmärtää mitä tehdään, ainakin vielä todella pitkään. Silti asiat voivat tehostua tosi paljon, ja vauhti varmaan vaan kiihtyy koska tämä vaikuttaa kohtuullisen hyvältä problem spacelta jo nykyisille kielimalleille.
 
Mun mielestä yliopistolla ei juurikaan käytetty mitään kirjastoja (monesti edes kielen mukana tulevia) koska haluttiin, että opiskelijat oppivat ne peusteet ensin. Töissä ei sitten kellekään varmaan tulisi mieleenkään kirjottaa omia sorttaus tai logitus algoritmejä ellei olisi joku tosi spesifinen keissi.
Joo, koulussa tosiaan kirjoitellaan jotkut lista-implementaatiot ja sorttausalgoritmit ensin itse, että ymmärretään miten asiat toimii. Noihan on vähän niin kuin koodarin yleissivistystä, joka ois hyvä olla kaikilla hanskassa, mut minusta ei ole sama asia käyttää noita tosi laajasti käytettyjä ja fiksuja kirjastofunktioita kuin repäistä jonkun random jampan stack overflow -koodit omaan pullariinsa tai AI:lta vastaavat tajuamatta mitä ne oikeasti tekee.

Sorttauksia ei oo tarvinnu hirveästi murehtia, mutta lokituksiin tarvinnee aika herkästi pikkaisen koskea, koska hetujen maskauksia tai esim. joitain funktio- tai tietokantaluokkakohtaisia audit-lokituksia (ts. kuka on käyttänyt tai katsonut jotain) ei minusta ihan suoraan paketista saa.
 
Hoitoalalla ei ollut 10v aikana mielekkäitä töitä tarjolla, ja esim viimeksi kun katsoin, röntgenhoitajien työpaikkoja oli 5 haussa, joista 4 oli keikkatyöhön. Töitä hoitoalalla ei siis ole.

Ilmeisesti sama on käymässä it-alalle. Rekryt laitettiin säppiin, ja uusia tekijöitä ei enää oteta alalle.

Vaatimustenmäärittely ja ohjelmistosuunnittelu onnistuu, mutta ei kiinnosta läheskään yhtä paljon kuin ohjelmointi itse. Ilmeisesti ohjelmoijan työ korvataan kielimalleilla viimeistään 1,5v sisällä kun valmistun tietojenkäsittelytieteiden maisteriksi.

Onkos ideoita, mihin kannattaa suunnata seuraavaksi it-alalta, kun ohjelmoijan työt loppuvat samalla lailla kuin hoitoalalla röntgenhoitajan työt? Osaako joku ennustaa, millä alalla olisi ”varmasti” vielä töitä 20v päästä? Ei jaksaisi kolmatta kertaa valita ”varmaa” alaa ja todeta, että töitä ei ole enää tarjolla.
 
Hoitoalalla ei ollut 10v aikana mielekkäitä töitä tarjolla, ja esim viimeksi kun katsoin, röntgenhoitajien työpaikkoja oli 5 haussa, joista 4 oli keikkatyöhön. Töitä hoitoalalla ei siis ole.

Ilmeisesti sama on käymässä it-alalle. Rekryt laitettiin säppiin, ja uusia tekijöitä ei enää oteta alalle.

Vaatimustenmäärittely ja ohjelmistosuunnittelu onnistuu, mutta ei kiinnosta läheskään yhtä paljon kuin ohjelmointi itse. Ilmeisesti ohjelmoijan työ korvataan kielimalleilla viimeistään 1,5v sisällä kun valmistun tietojenkäsittelytieteiden maisteriksi.

Onkos ideoita, mihin kannattaa suunnata seuraavaksi it-alalta, kun ohjelmoijan työt loppuvat samalla lailla kuin hoitoalalla röntgenhoitajan työt? Osaako joku ennustaa, millä alalla olisi ”varmasti” vielä töitä 20v päästä? Ei jaksaisi kolmatta kertaa valita ”varmaa” alaa ja todeta, että töitä ei ole enää tarjolla.
Ei sitä ohjelmoijan työtä olla lähivuosina mihinkään korvaamassa. Niitä kielimalleja ja AI-avusteisia työkaluja kannattaa vain opetella käyttämään siinä työssä, tai jää helposti muista hakijoista jälkeen.
 
Nimenomaan pitää opetella niiden uusien työkalujen käyttöä. AI on avuste työssäsi, ei sen korvaaja. Perustyö muuttuu, mutta näin sitä on reikäkorttiajoista lähtien tapahtunut ja it-alahan on tunnettu siitä, että pysyäkseen mukana, on itsekin pystyttävä muuttumaan.
 
Ilmeisesti sama on käymässä it-alalle. Rekryt laitettiin säppiin, ja uusia tekijöitä ei enää oteta alalle.
Ei rekryt minusta mitenkään säpissä ole ja kyllähän tekijöitä koko ajan haetaan, mutta alalle tuleminen voi olla vaikeampaa kuin joitain vuosia sitten ja junioripestejä, ainakin julkisessa haussa olevia, vaikuttais olevan aika vähän. Juttujen perusteella senioripaikkoihinkin voi olla useampi kymmenen ihan hyvää hakijaa.

Jos et ole vielä hankkiutunut, niin kiireen vilkkaa nyt opiskeluaikana harjoitteluun tai kesätöihin johonkin yritykseen, tekemään jotain oikeaa toimeksiantoa koulun kautta jollekin firmalle tai jotain vastaavaa. Saisit vähän niin kuin jalkaa oven väliin jonnekin. Ilman minkäänlaista relevanttia kokemusta oot valmistumisen jälkeen paljon enemmän kusessa, kun tarvis löytää se eka duunipaikka.

Toinen vaihtoehto edellisen rinnalle on osallistua johonkin open source projektiin tai koodata githubiin (tai muuhun vastaavaan) jotain omaa projektia, jossa voi demota osaamistaan. Mut älä niiden pelkkien koulupapereiden varaan jättäydy, koska niin tulee olemaan vaikeaa saada sitä ekaa pestiä.
 
Eikös meillä ole lama?

Hetki sitten oli 0-korot ja talouskasvua joka mahdollisti investoinnit matalalla kynnyksellä. Kun korot nousevat ja myynti laskee yritykset tietysti sopeutuvat uuteen tilanteeseen ja vähentävät rekryjä.

Uutta teknologiaa kannattaa kyllä ehdottomasti opetella. Jos katon omaa työnantajaa jolla on satojen ihmisten R&D organisaatio niin aika harva työskentelee samojen teknologioiden kanssa kuin mun alottaessa 10+ vuotta sitten (no ehkä jotkut backendit kirjotetaan edelleen Javalla).

Omat laitesalit & VMWare -> AWS / cloud palvelut
Pitkälti manuaaliset päivitykset -> infra koodina ja kaikki automatisoitu
AD -> Entra + Intune
Jne

Kuitenkin edelleen paljon samoja ihmisiä töissä. Ei niitä vaihdettu toisiin, vaan opettelivat uudet teknologiat ja konseptit.

Jos oikeasti mietit vaihtoa niin joku positio hoitotyön ja IT’n välissä saattaisi olla mahdollisuus, esim. tuoteorganisaatio joka tekee softaa / tuotteita hoitoalalle?
 
Omat laitesalit & VMWare -> AWS / cloud palvelut
Tätä siirtymää kyllä tapahtuu nykyään enenevässä määrin myös toiseen suuntaan, minkä Amazon itekin tokas jossain tiedotteessaan (että heidänkin asiakkaillaan kasvava trendi jonkinlaiset hybridiympäristöt, jossa kuormia siirretään kustannussyistä veks pilvestä konesaleihin).

Oma osaaminen aika pitkälti noissa erilaisissa pilviratkaisuissa, mutta miettinyt, ettei haittais kyllä ymmärtää paremmin raudan sekä noiden fyysisten konesaliratkaisujen päälle.
 
Pilvipalvelut ovat usein huippukalliita, joten siksi käsittääkseni pähkinänlaskijoiden niin todetessa siirrytään tarvittaessa takaisin firman tiloissa oleviin palvelimiin.

Ongelmana on, että AI/LLM pöhinä on ihan todella raskasta omasta mielestäni, ja optimitilanteessa en ole sen kanssa missään tekemisissä. Nyt sitten projektikurssilla firmalle kötöstetään jotain LLM-tuubaa, vaatimusmäärittelykurssi on puhdasta LLM-tuubaa jne. jne. Olen jo nyt yli korviani myöten täynnä tätä asiaa, ja jos AI/LLM kanssa työskentely on jatkossa edellytys työllistyä IT-alalle, niin ala lienee nähdäkseni siinä minun osaltani. Uskon, että em. teknologioita käyttäviä innokkaita riittää ihan yli tarpeen, joten ei minun panostani tarvita niiden promptien kehittämiseen.
 
Kyllähän pilvi maksaa, mutta pitää toki vähän miettiä, mistä siinä sit loppuviimein maksaa. Ei ole sama asia ostaa konttorille serveriä tai maksaa Amazonille EC2-koneesta, ja todeta, että tää oma serveri tulee hitokseen halvemmaksi, kun ton EC2-koneen hinnalla saa sit myös aika ison osan juttuja, jotka AWS hoitaa palveluna ja jotka pitäs konttorilla hoitaa ite ja laskea mukaan kustannuksiin (ihan sähköistä lähtien). Kapasiteetti skaalautuu tosi nopsaan, melkein rajattomasti ja pilveen on hitokseen helppo kehittää, järjestää pääsyjä, automatisoida asioita jne., kun kaiken maailman työkalut löytyy valmiina.

Mut AWS:ssäkin kustannukset koostuu sadasta ja tuhannesta pienestä purosta ja niitä voi olla aika vaikea ennakoida. Joka tapauksessa tarvii olla osaamista, että noita kustannuksia osaa hallita fiksusti (kaikenlaiset reserved kapasiteetit esimerkiksi) ja esim. tietoliikenneratkaisuilla saa ammuttua itteensä nilkkaan tosi helposti tietoliikennekustannusten suhteen.

Noi mun edellä mainitsemat talot on tyypillisesti tosi isoja, jotka ajaa jotain satojen virtuaalikoneiden klustereita pilvessä isoilla instansseilla, niin maksaahan tuo ja voi olla tosiaan sit halvempaa ostaa kokonaan oma rauta, jos on osaaminen sellaisen infran ylläpitoon.
 
Ilmeisesti sama on käymässä it-alalle. Rekryt laitettiin säppiin, ja uusia tekijöitä ei enää oteta alalle.

Vaatimustenmäärittely ja ohjelmistosuunnittelu onnistuu, mutta ei kiinnosta läheskään yhtä paljon kuin ohjelmointi itse. Ilmeisesti ohjelmoijan työ korvataan kielimalleilla viimeistään 1,5v sisällä kun valmistun tietojenkäsittelytieteiden maisteriksi.
Ajat on laihat tällä hetkellä monessa paikassa. Korkea korkotaso(laskee kysyntää), inflaatio(vähentää ostovoimaa), covi1d9 aikana kasvaneen kysynnän katoaminen jne. COVID19 aikana kun kysyntä pomppasi moni firma rekrysi olettaen että covid liikevaihto on uusi normaali. Tähän päälle se, että imho. elon muskin aloittama siivoaminen twitterissä johti siihen, että muut teki samaa perässä kuten zuckerberg metan "year of efficiency". Firmat alkoivat höyläämään "läskiä" pois mitä on ajan saatossa kertynyt. Suomessa irtisanomiset/siivoamiset tapahtui viiveellä versus piilaakso. Taitaa kuitenkin olla orastavaa parempaa aikaa edessä nyt versus aikaisempi 12kk?

Ei tulla koodaajia korvaamaan kielimalleilla. AI ei edes kovimpien huhu-ukkojen kuten jensen huangin mukaan korvaa ihmistä. AI avustettu ihminen tosin voi korvata ai avustamattoman kun katsotaan tulevaisuuteen päin.
 
Viimeksi muokattu:
Pilvipalvelut ovat usein huippukalliita, joten siksi käsittääkseni pähkinänlaskijoiden niin todetessa siirrytään tarvittaessa takaisin firman tiloissa oleviin palvelimiin.

Ongelmana on, että AI/LLM pöhinä on ihan todella raskasta omasta mielestäni, ja optimitilanteessa en ole sen kanssa missään tekemisissä. Nyt sitten projektikurssilla firmalle kötöstetään jotain LLM-tuubaa, vaatimusmäärittelykurssi on puhdasta LLM-tuubaa jne. jne. Olen jo nyt yli korviani myöten täynnä tätä asiaa, ja jos AI/LLM kanssa työskentely on jatkossa edellytys työllistyä IT-alalle, niin ala lienee nähdäkseni siinä minun osaltani. Uskon, että em. teknologioita käyttäviä innokkaita riittää ihan yli tarpeen, joten ei minun panostani tarvita niiden promptien kehittämiseen.
Mä tarkastelisin asiaa ehkä vähän laajemmalta kantilta. It-alalla tarvitsee jatkuvasti olla opettelemassa uusia teknologioita ja työkaluja. Myös sellaisia joista ei välttämättä itse niin välittäisi. Jos yksittäinen teknologia kuten LLM:t saa karvat nousemaan pystyyn siinä määrin, että tuntuu ettei ala siksi olisi oikea, niin miten sitten muiden puolipakolla eteen tulevien uusien asioiden kanssa?
 
Ei AI copilotit/cursorit yms. kovin kalliita ole. Cursori jäi alle 20e/kk kun osti palvelun kertamaksulla vuodeksi. Työntekijän palkka, työkone, tilat yms. niin iso kulu että ai-avustimen hinta katoaa kohinaan. Odotusarvo kuitenkin että ai avustin lisäisi työtehoa/lopputulosta enemmän kuin maksaa. Vaikka ai avustin olisi vain parempi google/stackoverflow millä toisinaan saa oikean tiedon nopeammin nenän eteen niin nopeasti tuo 20e/kk on saatu takaisin työtehon parantumisena.

Varmaan microsoft tms. voi tarjota yhtä turvallisen ai avustimen kuin firman muut pilvipalvelut(email, office, videoneuvottelut, github,...) jos yrityksellä on tarve pitää "koodit/tiedot/kyselyt" täysin ja varmuudella salassa. Kryptaus, raudat pilvessä mitä ei jaeta muiden yritysten kesken jne. Samat temput kuin muiden palveluiden kanssa. Startupit kuten cursor voi olla yksityisyyden/läpinäkyvyyden suhteen huonompia kuin microsoft. Toisaalta pikkufirmat voivat edetä joustavammin ja nopeammin kuin isot yritykset.

Jotkin yritykset kuten nvidia ovat opettaneet omilla koodipohjillansa yrityskohtaisen kielimallin. Nvidia käyttää nvidian datalla(koodi, dokumentaatio...) optimoitua kielimallia piirisuunnittelun apuna. Äkkiseltään voisi kuvitella, että jossain kohtaa google, microsoft, apple jne. tuunais kielimallin mikä on optimoitu heidän alustojensa kehitykselle sisältäen dokumentaatio, koodi yms. hienosäädöt.
 
Viimeksi muokattu:
Mä tarkastelisin asiaa ehkä vähän laajemmalta kantilta. It-alalla tarvitsee jatkuvasti olla opettelemassa uusia teknologioita ja työkaluja. Myös sellaisia joista ei välttämättä itse niin välittäisi. Jos yksittäinen teknologia kuten LLM:t saa karvat nousemaan pystyyn siinä määrin, että tuntuu ettei ala siksi olisi oikea, niin miten sitten muiden puolipakolla eteen tulevien uusien asioiden kanssa?

Mielestäni yhtä syöpäistä keksintöä ei ole vielä keksitty. Web 2.0 on tukevasti toisena, virtuaalivaluutat kolmantena.

Webistä ja valuutoista on ollut mahdollista pysyä erossa aiemmin, mutta jos LLM:t nyt pakotetaan kaikkeen, niin missään ei ole enää turvassa.

Eli sillä on väliä mitä keksitään ja tuputetaan, eikä kaikki keksinnöt ja työkalut ole lähelläkään neutraalia tai positiivista.

Ymmärrän, jos oma elintaso riippuu siitä, että em. asioita ei pidä negatiivisina. Don’t look upissakin ihmiset kannattivat asteroidin tulemista sen tarjoamien työmahdollisuuksien vuoksi, vaikka asteroidi johti suoraan uuteen sukupuuttoaaltoon ja ihmissivilisaation tuhoon.
 
Eli sillä on väliä mitä keksitään ja tuputetaan, eikä kaikki keksinnöt ja työkalut ole lähelläkään neutraalia tai positiivista.
Mun mielestä hyvät työpaikat ovat pragmaattisia. Ne asiat mitkä auttavat tekemään paremman lopputuloksen pidetään ja muista luovutaan. Tyytyväiset työntekijät auttavat paremman lopputuloksen tekemisessä versus happamaksi pakotetut. ts. hyvä työpaikka ruokkii myös työntekijöiden tyytyväisyyttä. Koulujutut aika eri asia kuin työelämä. Yrityksiä on joka lähtöön.

Rekryhommissa mukana olleena myönnän suoraan, että vaikeat tyypit saa minulta leiman en suosittele palkattavaksi vaikka olisi kuinka hyvä teknisellä puolella. Tiimit menee yksilön edelle mun kirjoissa. Vaikeus voi ilmeillä monella tavalla. Vaikeakin tyyppi voi olla toisessa ympäristössä helppo tyyppi. Oikea lokero oikeille ihmisille. Ihan turha jotain HC open source+linux niiloa palkata windows+suljettu projektiin jos asenne on että suljettu softa ja windows paskaa. Windows+suljettu nyt vain yksi esimerkki, ei ole tarkoitus tästä aiheesta alkaa vääntämään. Windowsin tilalle voi laittaa AI, pilvi, webbi, embedded tai ihan mikä tahansa teknologia. IT-alan hieno puoli, että yrityksiä ja aloja on kaikenlaisia, etsimällä voi löytää itselle sopivan lokeron. Oikea lokero voi vaatia muuttamista työn perässä.

Jos pystyy olemaan joustava, asenteeton, optimisti,... niin mahdollisuuksia on enemmän kuin jos on pessimistinen, jyrkät ulospäin säteilevät mielipiteet,...
 
Viimeksi muokattu:
Varmaan microsoft tms. voi tarjota yhtä turvallisen ai avustimen kuin firman muut pilvipalvelut(email, office, videoneuvottelut, github,...) jos yrityksellä on tarve pitää "koodit/tiedot/kyselyt" täysin ja varmuudella salassa.
Varmaan kiinnostus kasvaa, tietyillä toimijoilla todennäköisesti paljonkin, kun saavat sen konesalihankkeensa tänne Suomeen maaliin (ts. data pysyy varmasti Suomen rajojen sisällä ja varmaan noi tilat pystyy auditoimaankin). En oo oikein viimeisimmistä käänteistä selvillä, mutta suunnitteilla ilmeisesti joka tapauksessa on.
 
Jos pystyy olemaan joustava, asenteeton, optimisti,... niin mahdollisuuksia on enemmän kuin jos on pessimistinen, jyrkät ulospäin säteilevät mielipiteet,...
Samaa mieltä, ei sellaista yhteen asiaan luutunutta jänkkää jaksa kukaan, joka joutuu tekemään hänen kanssaan hommia pidempään. IT-hommissa on pakko säilyttää tietty plastisuus kaikessa olemisessa ja tekemisessä.
 
Eli tässä on 1,5v aikaa miettiä, mitä opiskella seuraavaksi, kunhan on maisterin paperit kasassa. Jos siis ei ole muuta vaihtoehtoa kuin tuota Web 2.0/LLM/kryptomädätystä sietää, tai jäädä työttömäksi.
 
Eli tässä on 1,5v aikaa miettiä, mitä opiskella seuraavaksi, kunhan on maisterin paperit kasassa. Jos siis ei ole muuta vaihtoehtoa kuin tuota Web 2.0/LLM/kryptomädätystä sietää, tai jäädä työttömäksi.

Aika väkevää settiä, varsinkin kun perse on vielä tukevasti koulun penkillä. Olisikohan pikku asenneremontin paikka?

P. S. Varmaan ekaa törmäsin termiin Web 2.0 tällä vuosikymmenellä.
 
Eli tässä on 1,5v aikaa miettiä, mitä opiskella seuraavaksi, kunhan on maisterin paperit kasassa. Jos siis ei ole muuta vaihtoehtoa kuin tuota Web 2.0/LLM/kryptomädätystä sietää, tai jäädä työttömäksi.
Jos lähdet sillä asenteella liikkeelle, että olet valmis atk-jannu kun paperit on olemassa niin kannattaa jo nyt vaihtaa alaa.

Alallahan tehdään yhtä sun toista ja ymmärrys kaikesta muusta kuin it-asioista on todella arvokasta, mutta sellaisen henkilön työtehtävät ei yleensä ole apinan lailla koodaamista. Itse luulin olevani 15 vuoden kokemuksella puhtaasti järjestelmäasiantuntija, mutta niin tuli jokunen vuosi sitten pomo, joka tuumasi, että "liiketoiminnan ihmiset tekee sun kanssasi mielellään hommia, joten katsottaisiinko mieluummin rooli siitä it:n ja liiketoiminnan välistä kun niitä sopivia tyyppejä ei yleensä ole liikaa".
 
Eli tässä on 1,5v aikaa miettiä, mitä opiskella seuraavaksi, kunhan on maisterin paperit kasassa. Jos siis ei ole muuta vaihtoehtoa kuin tuota Web 2.0/LLM/kryptomädätystä sietää, tai jäädä työttömäksi.
Onhan noita vaihtoehtoja vaikka kuinka paljon. Yhdessä ääripäässä embedded/mikropiirit ja toisessa ääripäässä pilvi. Sitä löytää it-alalta mitä etsii ja kiinnostaa. Mitä nichempi kiinnostuksen kohde niin sitä vaikeampi toki löytää. Voi joutua muuttamaan työn perässä.

Koulu ei varsinaisesti todista muuta kuin kyvystä oppia. IT-alalla/kooderina joutuu koko ajan opettelemaan uutta. Teknologioita tulee ja menee. Joku linux kerneli tosin ollut pysyvämpi kuin vaikka feature puhelin, symbian puhelin, ekat älypuhelimet joihin sai appseja, modernit älypuhelimet teknologiajatkumo. Tähän päälle toki myös kaikki ne hommat jotka eivät ole puhdasta koodaamista tai eivät sisällä lainkaan koodaamista.
 
Viimeksi muokattu:
Eli tässä on 1,5v aikaa miettiä, mitä opiskella seuraavaksi, kunhan on maisterin paperit kasassa. Jos siis ei ole muuta vaihtoehtoa kuin tuota Web 2.0/LLM/kryptomädätystä sietää, tai jäädä työttömäksi.
En tiedä miltä työelämä mielessäsi näyttää, mutta oma työnkuvani ainakin on aikana kaukana tuosta web 2.0, llm ja kryptomädätyksestä. Onkohan sinulla poikkeuksellisen vahva henkilökohtainen pöhinänäkymä? LinkedIn näyttää tuolta, mutta työelämässä sitä on tullut aika vähän vastaan. Editori on fiksumpi ja kielimalli auttaa autocompletessa, mutta edelleen oikea koodaaminen on nopeampaa käsin ja ai-pöhinä lähinnä auttaa niissä hommissa mitkä tuntuu turhilta.

Kryptoista en ole kuullut mitään työn puolesta, paitsi joskus kun pöhinäkerroksesta on kuulunut kyselyä että voidaanko lohkoketjuja jotenkin hyödyntää crud-tyyppisessä sovelluksessa...

Jännityksellä saa odotella tulevaisuutta. Kahdeksan vuotta sitten kaikki paitsi lohkoketjut ovat turhaa ja nyt kaikki paitsi genai on turhaa. Ehkä tällä kertaa mukaan tarttuu edes jotain.
 
Jos lähdet sillä asenteella liikkeelle, että olet valmis atk-jannu kun paperit on olemassa niin kannattaa jo nyt vaihtaa alaa.

Ongelmana on, että jotain pitää yhteiskunnassa tehdä. Joko töitä tai opiskella. Jos ei ole papereita, ei ainakaan saa mitään töitä, joten mieluummin sitä sitten opiskelee, vaikka niillä papereilla ei lopulta tekisikään mitään. Näin ollen ainakin on "hyväksytyssä" asemassa yhteiskunnassa, työttömänä olisi lähinnä hylkiö ja muiden sylkykuppi.

Eli opiskelijana ei ole minkäänlaista järkeä lopettaa opintoja kesken, ellei ole töitä, vaan pitää hoitaa paperit kasaan, jos ei muutakaan keksi. Ja voihan se olla, että valmistumisen jälkeen joskus sitten saa säkällä töitä jossain mahdollisessa nousukausipöhinässä. Lisäksi kun tähän nyt on 2,5v kohta investoitu, ja ollaan jo voiton puolella (jäljellä 1,5v), niin ei sitä kannata enää keskenkään lopettaa. Upotetut kustannukset jne.
 
Ongelmana on, että jotain pitää yhteiskunnassa tehdä. Joko töitä tai opiskella. Jos ei ole papereita, ei ainakaan saa mitään töitä, joten mieluummin sitä sitten opiskelee, vaikka niillä papereilla ei lopulta tekisikään mitään. Näin ollen ainakin on "hyväksytyssä" asemassa yhteiskunnassa, työttömänä olisi lähinnä hylkiö ja muiden sylkykuppi.

Eli opiskelijana ei ole minkäänlaista järkeä lopettaa opintoja kesken, ellei ole töitä, vaan pitää hoitaa paperit kasaan, jos ei muutakaan keksi. Ja voihan se olla, että valmistumisen jälkeen joskus sitten saa säkällä töitä jossain mahdollisessa nousukausipöhinässä. Lisäksi kun tähän nyt on 2,5v kohta investoitu, ja ollaan jo voiton puolella (jäljellä 1,5v), niin ei sitä kannata enää keskenkään lopettaa. Upotetut kustannukset jne.
Voisko niiden töiden löytymistä kenties valmistumisenkin jälkeen edesauttaa, jos hallussa olisi osaamista niitä sen hetkisistä huudossa olevista teknologioista, ja on valmis oppimaan sitten sen seuraavan vastaavan, sen sijaan että suhtautuu uusiin teknologioihin nuivasti jo opiskeluaikana?
 
Eli opiskelijana ei ole minkäänlaista järkeä lopettaa opintoja kesken, ellei ole töitä, vaan pitää hoitaa paperit kasaan, jos ei muutakaan keksi. Ja voihan se olla, että valmistumisen jälkeen joskus sitten saa säkällä töitä jossain mahdollisessa nousukausipöhinässä. Lisäksi kun tähän nyt on 2,5v kohta investoitu, ja ollaan jo voiton puolella (jäljellä 1,5v), niin ei sitä kannata enää keskenkään lopettaa. Upotetut kustannukset jne.
Varmaan jo aikaisemmin käsitelty, mutta iso osa hyödystä mitä opiskellessa saa on suhteet. IT-maailma on pieni paikka. Ovet avautuu paremmin kun on ihmisiä jotka työntää sua eteenpäin. ts. kontakteja kannattaa tehdä ja vaalia maksimit.
 
Varmaan jo aikaisemmin käsitelty, mutta iso osa hyödystä mitä opiskellessa saa on suhteet. IT-maailma on pieni paikka. Ovet avautuu paremmin kun on ihmisiä jotka työntää sua eteenpäin. ts. kontakteja kannattaa tehdä ja vaalia maksimit.

Tiedän, sama se oli hoitoalallakin. Pieni, nurkkakuntainen ympäristö. Vähän hankalaa, kun lähinnä kokee muut ihmiset rasittavina, mutta pakko silti on yrittää.

Voisko niiden töiden löytymistä kenties valmistumisenkin jälkeen edesauttaa, jos hallussa olisi osaamista niitä sen hetkisistä huudossa olevista teknologioista, ja on valmis oppimaan sitten sen seuraavan vastaavan, sen sijaan että suhtautuu uusiin teknologioihin nuivasti jo opiskeluaikana?

Voin pitkällä kokemuksella sanoa, että syvää inhoa herättävät teknologiat eivät ole sellaisia, joiden opiskelusta tulee jotain.
 
Eli tässä on 1,5v aikaa miettiä, mitä opiskella seuraavaksi, kunhan on maisterin paperit kasassa. Jos siis ei ole muuta vaihtoehtoa kuin tuota Web 2.0/LLM/kryptomädätystä sietää, tai jäädä työttömäksi.

Mitä sä tarkalleen tarkoitat tällä? Eli et halua työskennellä noiden teknologioiden tai käsitteiden parissa? Se tuskin on mikään ongelma. Suurin osa IT-alan töistä on ihan varmasti jotein muuta kuin kryptoja tai web 2:ta, mitä jälkimmäisellä nyt sitten tarkoitatkin. Sama koskee LLM:ääkin. Hyvä silti hiukan tuntea aihetta kun ne varmaan jossain tulevat silti vastaan.

Niin, ja mikä noissa siis konkreettisesti sua inhottaa? Osaatko konkretisoida tuota mitenkään?
 
Tiedän, sama se oli hoitoalallakin. Pieni, nurkkakuntainen ympäristö. Vähän hankalaa, kun lähinnä kokee muut ihmiset rasittavina, mutta pakko silti on yrittää.
Ajattelen asian ennemminkin niin, että kun tehdään tiimityötä niin mieluusti suosittelee töihin semmoisia tyyppejä jotka saavat aikaiseksi ja joiden kanssa on mukava tehdä töitä. Hyvin harva on tahallaan ilkeä tai kuppikuntainen. Verkostoituminen kannattaa ettei ole koulun päätyttyä yksin tekemässä kylmiä hakemuksia.

Suosittelen allelinkattua kirjaa. Se voi auttaa suhtautumaan muihin ihmisiin tavalla joka tekee elämästä helpomman. Mulle toi kirja oli 5/5, ehkä muillekin hyvä. Kirjan sanoma pätee niin IT-alalla kuin muuallakin elämässä.
1730036812177.jpeg


 
Viimeksi muokattu:
Elämä on hyvin helppoa siinä mielessä itsellä, että tekemisen puutteesta ja katosta pään päällä ei ole huolta. Eikä tarvitse viettää aikaa sellaisten ihmisten kanssa, joiden kanssa ei halua olla tekemissä. Ei siis tarvitse väkisin tehdä asioita, jotka eivät ole mielekkäitä, eikä tarvitse väkisin niistä oppia pitämään. Suuri osa ihmisistä elää syvässä itsepetoksessa, eikä minulla ole tarvetta olla heidän kaltainen.

Ihmiset ovat kuppikuntaisia siksi, koska he eivät pidä erilaisista ihmisistä, eivätkä halua olla sellaisten kanssa tekemisissä. Ymmärrän tämän hyvin. Lisäksi suurelle osalle muutos on hyvin vastenmielistä. Edellisessä työpaikassa jouduin tekemään checklistin asioista jonka tehdä päivän päätteeksi, jotta kaikki asiat olivat varmasti samalla lailla kuin eilenkin.

Mielestäni puhdas kritiikitön usko kaiken maailman uusiin teknologioihin ei ole tervettä, ja kuten aiemmin sanoin, ymmärrän miksi monet uskovat kritiikittä silti - elintaso riippuu siitä.

Sen näkee sitten, onko ihmisen tehtäviä töitä jäljellä vai ei valmistumisen jälkeen. Toivottavasti jotain mielekästä on riittävissä määrin esim. julkisella tarjolla, että ei tarvitse edes pohtia prompt engineeriksi ryhtymistä.
 
Ei siis tarvitse väkisin tehdä asioita, jotka eivät ole mielekkäitä

Mutta sä et vielä millään tavalla keronut mitään, millaisia asioita et halua tehdä ja miksi. Listasit vain kolme hyvin epämääräistä kattotermiä. Varmaan ymmärrät, että tuo jäi aika epämääräiseksi. Olisi siis kiinnostavaa kuulla, miksi kolme epämääräistä tekkitermiä ovat "syöpäistä keksintöjä" ja et voi niiden parissa työskennellä. Saatko tätä yhtään avattua?
 
Elämä on hyvin helppoa siinä mielessä itsellä, että tekemisen puutteesta ja katosta pään päällä ei ole huolta. Eikä tarvitse viettää aikaa sellaisten ihmisten kanssa, joiden kanssa ei halua olla tekemissä. Ei siis tarvitse väkisin tehdä asioita, jotka eivät ole mielekkäitä, eikä tarvitse väkisin niistä oppia pitämään. Suuri osa ihmisistä elää syvässä itsepetoksessa, eikä minulla ole tarvetta olla heidän kaltainen.

Ihmiset ovat kuppikuntaisia siksi, koska he eivät pidä erilaisista ihmisistä, eivätkä halua olla sellaisten kanssa tekemisissä. Ymmärrän tämän hyvin. Lisäksi suurelle osalle muutos on hyvin vastenmielistä. Edellisessä työpaikassa jouduin tekemään checklistin asioista jonka tehdä päivän päätteeksi, jotta kaikki asiat olivat varmasti samalla lailla kuin eilenkin.

Mielestäni puhdas kritiikitön usko kaiken maailman uusiin teknologioihin ei ole tervettä, ja kuten aiemmin sanoin, ymmärrän miksi monet uskovat kritiikittä silti - elintaso riippuu siitä.

Sen näkee sitten, onko ihmisen tehtäviä töitä jäljellä vai ei valmistumisen jälkeen. Toivottavasti jotain mielekästä on riittävissä määrin esim. julkisella tarjolla, että ei tarvitse edes pohtia prompt engineeriksi ryhtymistä.

Toisaalta myös perusteeton kritiikki menee lokeroon "kokeilematta/maistamatta/kuuntelematta paskaa" osastolle. Nämä AI työkalut ovat hyvä esimerkki, aika monet kritisoi niitä mutta eivät ole edes kokeilleet mikä hyöty niistä on normaaleissa (IT-alan)työtehtävissä.
 
Kannattaisi muutenkin opetella pois mustavalkoisuudesta. Uudesta teknologiasta mikään ei ole 100% hyvää tai huonoa, vaan jotain siltä väliltä.
 
IT alan työt ovat yllättävänkin sosiaalista koodausalan maineeseen verrattuna. Jos ei halua tehdä ihmisten kanssa töitä niin väärä ala alkaa kooderiksi. Vaikka olisi vain murunen nurkassa minimivastuulla niin oman ja naapuritiimien kanssa joutuu kommunikoimaan. Jos haluaa uralla eteenpäin niin vaadittava kommunikaation ja ihmistaitojen määrä kasvaa(projektihallinta, markkinointi, asiakkaat, toisten tiimien tekniset ja manageriaaliset vastuuhenkilöt jne). Harvassa on ne jotka saa yksikseen luolassa koodata.

Kyky oppia muilta/mentoroitavuus ja ottaa vastaan palautetta on myös tärkeä tai aika nopeasti palaa hermot. Tech lead/esimies/asiakas/... usein linjaa jotain käytettävistä työkaluista, teknologioista, teknisestä ja muusta lähestymistavasta. Tulee myös suoraa palautetta 1:1 palavereissa että mitkä asiat menee hyvin ja missä pitäisi parantaa. Naapurikuution asukkikin saattaa sanoa "pahasti" koodiarvioinnissa, tulee reworkki. Designer sanoo, että siirrettävä nappeja 5 pikseliä tai punainen ei ole tarpeeksi punainen. Oma mielipide voi olla, että asiat pitää tehdä tavalla X, mutta yrityksen tai tiimin toimintapa voi olla Y. Siihen on vain sopeudeuttava että tehdään tavalla Y tai pitää olla niin kovat ihmistaidot että käännyttää muut toimintatapaan X.
 
Viimeksi muokattu:
Noihin AI-avustimiin vielä sen verran, että itse käytän kotona Codeiumia. Noin yhtä hyvä kuin Copilot, jota käytin jonkun aikaa, mutta yksityiskäyttäjille ilmainen.

Mutta se, mikä näyttäisi useimmilla unohtuvan on se, että kun tehdään ns. oikeaa koodia, niin eihän siihen AI:n käyttämäänkään koodiin voi sokeasti luottaa. Jos tuotat koodisi AI:lla ja haluat tehdä laadukasta koodia, niin aika kuluu koodin naputtelun sijaan koodin katselmointiin. Simppelissä koodissa tämä on ok, koska sen koodin katselmointi on nopeaa, mutta vähänkin kompleksisemman koodin ymmärtämiseen voi mennä enemmänkin aikaa kuin mitä oman version kirjoittamisessa. Tai sitten koodia ei viitsitä ymmärtää kunnolla ja kun AI ei ihan hanskannut tehtävänantoa oikein...

Tosin pelkään pahoin, että tässä käy kuin aikoinaan kun koodigeneraattoreista oli kova pöhinä. Tulee hirveä kasa koodia, joka on täynnä bugeja, eikä kukaan ymmärrä miten se ylipäätään toimii. Sitten aletaan perkaamaan ja loppujen lopuksi ihmetellään, että laskiko kokonaiskustannukset? Ainakin koodareiden tyytyväisyys laski. Enkä sano, että on 1:1, mutta eka versio koodista on tyypillisessä softaprojektissa 20% kokonaistyöstä. Loput on ylläpitoa. Jos tulevaisuus on sitä, että suurin osa työajasta kuluu AI:n tuottaman koodin debuggailuun, niin tuskin siinä kokonaisuudessa hommat paranee vaikka alussa olisikin kivaa.
 
Noihin AI-avustimiin vielä sen verran, että itse käytän kotona Codeiumia. Noin yhtä hyvä kuin Copilot, jota käytin jonkun aikaa, mutta yksityiskäyttäjille ilmainen.

Mutta se, mikä näyttäisi useimmilla unohtuvan on se, että kun tehdään ns. oikeaa koodia, niin eihän siihen AI:n käyttämäänkään koodiin voi sokeasti luottaa. Jos tuotat koodisi AI:lla ja haluat tehdä laadukasta koodia, niin aika kuluu koodin naputtelun sijaan koodin katselmointiin. Simppelissä koodissa tämä on ok, koska sen koodin katselmointi on nopeaa, mutta vähänkin kompleksisemman koodin ymmärtämiseen voi mennä enemmänkin aikaa kuin mitä oman version kirjoittamisessa. Tai sitten koodia ei viitsitä ymmärtää kunnolla ja kun AI ei ihan hanskannut tehtävänantoa oikein...
Ei yhtään minkään tai kenenkään koodiin pidä sokeasti luottaa. Sitä varten on testit. Ja vaikka testit menisikin läpi, niin ihan normaalia toimintaa katselmoida koodit PR:ssä, oli sen koodin sitten kirjoittanut junnudevaaja, sennudevaaja taikka AI.

Jotenkin tuntuu että AI:ta käytettäessä halutaan aina unohtaa kaikki muut softakehityksen normaalit käytännöt, ja odotustaso on että AI:n pitäisi tuottaa tuotantovalmista koodia nollamuutoksilla. Mielestäni tuo on varsin erikoinen tapa ajatella sitä, kun se AI on vain työkalu muiden joukossa, ja muut normaalit laadunvarmistukseen tähtäävät käytännöt pitäisi joka tapauksessa säilyä vähintään samalla tasolla kuin aiemmin.

Sama juttu tuntuu tosin olevan kaikkialla muuallakin missä ihmistyötä korvataan koneilla (oli AI/ML mukana tai ei). Jotenkin niille koneille halutaan aina määrittää sallittavien virheiden määräksi tasan 0%, vaikka siinä aiemmassa ihmistyön jäljessäkin olisi virheitä 30% ajasta.
 
Viimeksi muokattu:
Kyllähän lähtökohta AI:n koodille on se että sä tiedät tasan tarkasti mitä sä haluat ja pystyt testaamaan AI:n tuotoksen oikeilla parametreillä. AI tosin kirjottaa sulle testitkin mutta pointti lienee selvä. Toisekseen, kyllähän se AI:n auttama koodikin menee Pull Requestina katselmoitavaksi siinä missä täysin ihmisvoiminkin kirjoitettu.

Itse käyttänyt sitä silloin jos ei jaksa/ei ole aikaa alkaa miettimään ratkaisua vaan jos tiedät mitä haluat tehdä niin AI kyllä tekee sen yleensä oikein. Eniten olen käyttänyt sitä bash/jne. skriptien kirjoittamiseen, eli ns. busyworkiin.
 
Viimeksi muokattu:
Ei yhtään minkään tai kenenkään koodiin pidä sokeasti luottaa. Sitä varten on testit. Ja vaikka testit menisikin läpi, niin ihan normaalia toimintaa katselmoida koodit PR:ssä, oli sen koodin sitten kirjoittanut junnudevaaja, sennudevaaja taikka AI.

Jotenkin tuntuu että AI:ta käytettäessä halutaan aina unohtaa kaikki muut softakehityksen normaalit käytännöt, ja odotustaso on että AI:n pitäisi tuottaa tuotantovalmista koodia nollamuutoksilla. Mielestäni tuo on varsin erikoinen tapa ajatella sitä, kun se AI on vain työkalu muiden joukossa, ja muut normaalit laadunvarmistukseen tähtäävät käytännöt pitäisi joka tapauksessa säilyä vähintään samalla tasolla kuin aiemmin.

Sama juttu tuntuu tosin olevan kaikkialla muuallakin missä ihmistyötä korvataan koneilla (oli AI/ML mukana tai ei). Jotenkin niille koneille halutaan aina määrittää sallittavien virheiden määräksi tasan 0%, vaikka siinä aiemmassa ihmistyön jäljessäkin olisi virheitä 30% ajasta.
Nollatoleranssi on tietysti turhan tiukka, mutta mitenkäs tuo oppimisnopeus: junnukoodari vs. koodiavustajatyökalu? Ihminen yleensä muutaman sanomisen jälkeen ei tee enää samaa virhettä (nopeimmat ymmärtää yhdestä), mutta miten pitkä palautelooppi noilla työkaluilla on? Vai onko tämä edes asia mitä pitäisi ajatella? Itteä alkais kyllä jurppimaan jos luonteeltaan samat virheet aina tulis.
 
Nollatoleranssi on tietysti turhan tiukka, mutta mitenkäs tuo oppimisnopeus: junnukoodari vs. koodiavustajatyökalu? Ihminen yleensä muutaman sanomisen jälkeen ei tee enää samaa virhettä (nopeimmat ymmärtää yhdestä), mutta miten pitkä palautelooppi noilla työkaluilla on? Vai onko tämä edes asia mitä pitäisi ajatella? Itteä alkais kyllä jurppimaan jos luonteeltaan samat virheet aina tulis.
Varsinaisestihan se yksittäinen työkalu/malli ei varsinaisesti opi mitään uutta (tai ainakaan suurin osa niistä ei opi). Riippuen työkalusta mitä käytät, se voi toki hyödyntää sitä koodipohjaa kontekstinaan (osa tekee sen hyvin, osa vähän kehnommin), ja siten osata jatkossa paremmin avustaa asioissa joihin liittyvää koodia sulta jo löytyy entuudestaan. Sen lisäksi sillä on väliä mitä ja miten siltä työkalulta pyydät, ja siinä voi myös itse kehittyä paremmaksi, ja siten välttää toistuvia samoja virheitä.

Tällä hetkellä työkalut ja niiden käyttämät mallit kehittyy edelleen hurjaa vauhtia, ja en ainakaan itse miellä niiden kehittymistä oppimisen/palauteloopin kautta, vaan enemmän sen kautta että huomenna tulee aina joku uusi malli, mikä on jollain tavoin parempi kuin se mikä tänään on käytössä.
 
Simppelissä koodissa tämä on ok, koska sen koodin katselmointi on nopeaa, mutta vähänkin kompleksisemman koodin ymmärtämiseen voi mennä enemmänkin aikaa kuin mitä oman version kirjoittamisessa. Tai sitten koodia ei viitsitä ymmärtää kunnolla ja kun AI ei ihan hanskannut tehtävänantoa oikein...
Tämä minusta varsin validi pointti. Omin kätösin tuotetun koodin tajuaa aina paremmin kuin toisten tekemän, kun on joutunut ite miettimään ja tekemään kaikki mikropäätökset toteutukseen liittyen.

Joo, kyllä sen oman koodinsa voi testata, mutta korostunee se ongelma, että kun et oo välttämättä osannu miettiä kaikkia mahdollisia reunakeissejä tai huomioonotettavia asioita, niin et osaa testatakaan kuin sen omassa päässä olevan happy pathin ja ehkä jotain ilmeistä virheenkäsittelyä päälle. Ts. jos ite pitää veikata, niin kyllä AI-koodeista kumpuavat yllättävät bugit voi olla asia, johon pitää jatkossa sit kiinnittää uudella tavalla huomiota, mutta nää varmaan tulee kyllä ilmi tiimeissä, joissa noi vehkeet on pidempään käytössä.
 
Ei yhtään minkään tai kenenkään koodiin pidä sokeasti luottaa. Sitä varten on testit. Ja vaikka testit menisikin läpi, niin ihan normaalia toimintaa katselmoida koodit PR:ssä, oli sen koodin sitten kirjoittanut junnudevaaja, sennudevaaja taikka AI.

Jotenkin tuntuu että AI:ta käytettäessä halutaan aina unohtaa kaikki muut softakehityksen normaalit käytännöt, ja odotustaso on että AI:n pitäisi tuottaa tuotantovalmista koodia nollamuutoksilla. Mielestäni tuo on varsin erikoinen tapa ajatella sitä, kun se AI on vain työkalu muiden joukossa, ja muut normaalit laadunvarmistukseen tähtäävät käytännöt pitäisi joka tapauksessa säilyä vähintään samalla tasolla kuin aiemmin.

Sama juttu tuntuu tosin olevan kaikkialla muuallakin missä ihmistyötä korvataan koneilla (oli AI/ML mukana tai ei). Jotenkin niille koneille halutaan aina määrittää sallittavien virheiden määräksi tasan 0%, vaikka siinä aiemmassa ihmistyön jäljessäkin olisi virheitä 30% ajasta.

En tiedä yhtäkään vakavasti otettavaa substanssiosaajaa, joka väittäisi AI:n olevan jonkinlainen hopealuoti.

Sen sijaan nämä LinkedInissä mellastavat hypepöhinä-generalisti-evankelistat eittämättä pystyvät suoltamaan moista paskaa varmasti aiheesta kuin aiheesta. Aikoinaan offshore-ulkoistamisen piti ratkaista kustannusongelmat, kun Intiasta kuulemma löytyy muutamalla hassulla eurolla loppumaton pooli kovan tason tekijää vaikka keskellä yötä. Tai kun julkipilvipalveluiden piti korvata ihan kaikki datakeskukset ja hyvä ettei sylissä makaavat läppäritkin. Ja mitä näitä nyt on vuosien varrella ollutkaan.
 
Nollatoleranssi on tietysti turhan tiukka, mutta mitenkäs tuo oppimisnopeus: junnukoodari vs. koodiavustajatyökalu? Ihminen yleensä muutaman sanomisen jälkeen ei tee enää samaa virhettä (nopeimmat ymmärtää yhdestä), mutta miten pitkä palautelooppi noilla työkaluilla on? Vai onko tämä edes asia mitä pitäisi ajatella? Itteä alkais kyllä jurppimaan jos luonteeltaan samat virheet aina tulis.

Ihan sama kuka kirjoittaa koodin junnu/sennu/tai AI sulla pitäs aina olla riittävän kattavat yksikkötestit, sekä systeemi- ja integraatiotestit jossa näitä ongelmia jäisi mahdollisimman paljon, mahdollisimman aikaisin kiinni.
 
Hoitoalalla ei ollut 10v aikana mielekkäitä töitä tarjolla, ja esim viimeksi kun katsoin, röntgenhoitajien työpaikkoja oli 5 haussa, joista 4 oli keikkatyöhön. Töitä hoitoalalla ei siis ole.

Ilmeisesti sama on käymässä it-alalle. Rekryt laitettiin säppiin, ja uusia tekijöitä ei enää oteta alalle.

Vaatimustenmäärittely ja ohjelmistosuunnittelu onnistuu, mutta ei kiinnosta läheskään yhtä paljon kuin ohjelmointi itse. Ilmeisesti ohjelmoijan työ korvataan kielimalleilla viimeistään 1,5v sisällä kun valmistun tietojenkäsittelytieteiden maisteriksi.

Onkos ideoita, mihin kannattaa suunnata seuraavaksi it-alalta, kun ohjelmoijan työt loppuvat samalla lailla kuin hoitoalalla röntgenhoitajan työt? Osaako joku ennustaa, millä alalla olisi ”varmasti” vielä töitä 20v päästä? Ei jaksaisi kolmatta kertaa valita ”varmaa” alaa ja todeta, että töitä ei ole enää tarjolla.
En ole röntgenhoitaja, mutta kannattaa olla ihan suoraan yhteydessä sinne yksikköön, jonne töihin haluaisi. Aika suurella todennäköisyydellä kiinnostusta kyllä löytyy. Kaikki paikat eivät todellakaan ole missään julkisessa haussa terveydenhuoltoalalla. Vakivirat yms. ainoastaan ne, jotka laitetaan hakuun ja niissä on joko 1) tiedossa jo kuka valitaan tai 2) oikeasti kova pula tekijöistä.
 
Nollatoleranssi on tietysti turhan tiukka, mutta mitenkäs tuo oppimisnopeus: junnukoodari vs. koodiavustajatyökalu? Ihminen yleensä muutaman sanomisen jälkeen ei tee enää samaa virhettä (nopeimmat ymmärtää yhdestä), mutta miten pitkä palautelooppi noilla työkaluilla on? Vai onko tämä edes asia mitä pitäisi ajatella? Itteä alkais kyllä jurppimaan jos luonteeltaan samat virheet aina tulis.
Nykytilanteessa avustinta voi ajatella parempana google/stackoverflow hakuna joka osaa jossain määrin sopeuttaa generoidun tavaran kontekstiin sopivaksi. Toinen puoli, että avustin osaa kahlata koodia/dokumentaatiota läpi ja vastailla kysymyksiin tai tehdä isoja koodirefaktorointeja. Kaikenlaisen bulkin luominen myös onnistuu kuten yksikkötestien pohjan luominen apia vastaan tai vaikka koodin generoiminen joka käyttää annettua rest apia/sql tietokantaa tms.

AI avustimeen pitää suhtautua kuten kaikkeen muuhunkin koodiin. Automatisoidut testit, ci putki, koodiarvostelut jne. AI-avustin ei ole taikaluoti, mutta voi säästää aikaa ja vaivaa. Alkuvuodesta microsoftilla oli 1.3 miljoonaa maksavaa asiakasta copilotila, kasvua 30% edelliseen kvartaaliin nähden. Tuskin jengi maksais jos ei hyötyä olis. MS:lla kilpailijoita kuten aikaisemmin mainittu cursor(todella hyvä) tai codeium tai lukuisat open source härpättimet jotka ovat vain lokaalisti ajossa.
 
Viimeksi muokattu:
Nykytilanteessa avustinta voi ajatella parempana google/stackoverflow hakuna joka osaa jossain määrin sopeuttaa generoidun tavaran kontekstiin sopivaksi.

Juuri näin. AI ei tietenkään ole henkilökohtainen apulainen, jolle voi kertoa että oikeasti se asia on näin ja sitten se ei tekisi samanlaista virhettä uudelleen. Jonkinlainen muisti ChatGPT:llä jo on, mutta ei ehkä auta tilanteissa jossa ChatGPT latelee ihan puuta heinää jostain asiasta. Pitkälle pääsee jos AI:ta pitää Googlen korvikkeena. Ja aivan kuten Google, voi myös AI antaa tulokseksi välillä ihan soopaa, välillä hiukan virheellistä kamaa ja aika usein menee täysin nappiin ja tulos on valmiiksi pureskellussa muodossa. Sokea luottaminen ei toimi. Ja AI:n kohdalla se lähde ei ole suoraan näkyvissä, joten tuloksen oikeellisuutta ei voi sen osalta luokitella laadullisesti. Googlen kohdalla voi ehkä helpommin karkeasti luokitella: tieteellinen vertaisarvioitu artikkeli Googlen hakutuloksissa tunnetulla sivustolla, vs. Suomi24-postaus.
 
Alla yksi esimerkki vähän monimutkaisemmasta koodista minkä AI osasi luoda ja toimii oikein laakista. Koodin kylkeen tuli myös oikein kattava selitys jota en linkannut postaukseen pituuden vuoksi. Toki voi itkeä että varmasti opetusdatassa nähnyt toteutuksen. Toisaalta kuinka moni tekee jotain täysin uniikkia koko ajan eikä sellaista mitä joku muukin on jo tehnyt? Itse asiassa koko koulujärjestelmä yms. on tapa näyttää ihmiselle opetusdataa,...
could you create c implementation of rasterization with barycentric coordinates without using simd instructions?
Koodi:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

typedef struct {
    float x, y;     // Viewport coordinates
    float u, v;     // Texture coordinates
} Vertex;

typedef struct {
    int width;
    int height;
    unsigned char *data;  // Assume 3 bytes per pixel (RGB)
} Texture;

typedef struct {
    int width;
    int height;
    unsigned char *data;  // Assume 3 bytes per pixel (RGB)
} Framebuffer;

void rasterize_triangle(Vertex v0, Vertex v1, Vertex v2, Texture *texture, Framebuffer *framebuffer)
{
    // Compute bounding box of the triangle
    int minX = (int)floorf(fminf(fminf(v0.x, v1.x), v2.x));
    int minY = (int)floorf(fminf(fminf(v0.y, v1.y), v2.y));
    int maxX = (int)ceilf(fmaxf(fmaxf(v0.x, v1.x), v2.x));
    int maxY = (int)ceilf(fmaxf(fmaxf(v0.y, v1.y), v2.y));

    // Clamp bounding box to framebuffer dimensions
    minX = fmaxf(minX, 0);
    minY = fmaxf(minY, 0);
    maxX = fminf(maxX, framebuffer->width - 1);
    maxY = fminf(maxY, framebuffer->height - 1);

    // Precompute reciprocal of denominator to avoid division in the loop
    float denom = ((v1.y - v2.y)*(v0.x - v2.x) + (v2.x - v1.x)*(v0.y - v2.y));
    if (denom == 0.0f)
        return; // The triangle has zero area, nothing to draw
    float invDenom = 1.0f / denom;

    // For each pixel in the bounding box
    for (int y = minY; y <= maxY; y++)
    {
        for (int x = minX; x <= maxX; x++)
        {
            // Compute barycentric coordinates
            float w0 = ((v1.y - v2.y)*(x - v2.x) + (v2.x - v1.x)*(y - v2.y)) * invDenom;
            float w1 = ((v2.y - v0.y)*(x - v2.x) + (v0.x - v2.x)*(y - v2.y)) * invDenom;
            float w2 = 1.0f - w0 - w1;

            // If point is inside the triangle (all weights >= 0)
            if (w0 >= 0.0f && w1 >= 0.0f && w2 >= 0.0f)
            {
                // Interpolate texture coordinates
                float u = w0 * v0.u + w1 * v1.u + w2 * v2.u;
                float v = w0 * v0.v + w1 * v1.v + w2 * v2.v;

                // Clamp texture coordinates
                u = fminf(fmaxf(u, 0.0f), 1.0f);
                v = fminf(fmaxf(v, 0.0f), 1.0f);

                // Sample the texture
                int texU = (int)(u * (texture->width - 1));
                int texV = (int)(v * (texture->height - 1));

                int texIndex = (texV * texture->width + texU) * 3;
                unsigned char r = texture->data[texIndex];
                unsigned char g = texture->data[texIndex + 1];
                unsigned char b = texture->data[texIndex + 2];

                // Write to framebuffer
                int fbIndex = (y * framebuffer->width + x) * 3;
                framebuffer->data[fbIndex] = r;
                framebuffer->data[fbIndex + 1] = g;
                framebuffer->data[fbIndex + 2] = b;
            }
        }
    }
}
Koodi:
int main()
{
    // Define triangle vertices with viewport and texture coordinates
    Vertex v0 = {100.0f, 50.0f, 0.0f, 0.0f};
    Vertex v1 = {200.0f, 250.0f, 1.0f, 0.0f};
    Vertex v2 = {50.0f, 200.0f, 0.0f, 1.0f};

    // Load or create a texture (example code, texture loading not implemented)
    Texture texture;
    texture.width = 256;
    texture.height = 256;
    texture.data = (unsigned char *)malloc(texture.width * texture.height * 3);
    // Initialize texture data...

    // Create a framebuffer
    Framebuffer framebuffer;
    framebuffer.width = 300;
    framebuffer.height = 300;
    framebuffer.data = (unsigned char *)calloc(framebuffer.width * framebuffer.height * 3, sizeof(unsigned char));

    // Rasterize the triangle
    rasterize_triangle(v0, v1, v2, &texture, &framebuffer);

    // Save or display the framebuffer (example code, saving not implemented)
    // save_framebuffer(&framebuffer);

    // Free allocated memory
    free(texture.data);
    free(framebuffer.data);

    return 0;
}
 
Alla yksi esimerkki vähän monimutkaisemmasta koodista minkä AI osasi luoda ja toimii oikein laakista. Koodin kylkeen tuli myös oikein kattava selitys jota en linkannut postaukseen pituuden vuoksi. Toki voi itkeä että varmasti opetusdatassa nähnyt toteutuksen. Toisaalta kuinka moni tekee jotain täysin uniikkia koko ajan eikä sellaista mitä joku muukin on jo tehnyt? Itse asiassa koko koulujärjestelmä yms. on tapa näyttää ihmiselle opetusdataa,...
Ihan nykyisessä duunissa tullut vastaan aika paljon keissejä Copilotin kanssa ja puutteet useimmiten liittyvät ympäröivään in-house koodiin:
  • tarjottu koodi ei ymmärrä ympäröivän tuotteen tietomalleja
    • generoitu koodi voi yrittää accessoida attribuutteja joidenka nimet kuulostavat oikeahkoilta, mutta eivät ole
  • tarjottu koodi ei käytä sisäisiä kirjastoja asioihin oikein, kun kontekstiin ei saa mahtumaan tarvittavaa domain-ymmärrystä ympäröivästä maailmasta
Muutamia ihan kohtuullisen positiivisesti yllättäviä juttujakin on tullut vastaan Copilotilla. Esimerkiksi keissi jossa kirjoitin in-house kyselykielen parserille / generaattorille yksikkötestejä, ja muutaman kirjoitetun testin jälkeen Copilot alkoi tarjoilla parserin outputtia assertoitaessa ehdotuksena oikean mallisia parsittuja objekteja.

Myös ihan perus refaktoroinnit testatulle koodille toimii hyvin, toisinaan on tullut keissejä jossa jonkun funktion haluttu behaviour on mielessä mutta toteutus on vähän pielessä. On voinut kuvata promptilla että "muuta tämä funktio toimimaan siten, että sitä clientin näkökulmasta kutsutaan näin" ja lopputuloksena on tullut ihan selkeätä toimivaa kamaa.
 
Ihan nykyisessä duunissa tullut vastaan aika paljon keissejä Copilotin kanssa ja puutteet useimmiten liittyvät ympäröivään in-house koodiin:
Olisi mielenkiintoinen päästä kunnolla isommalla koodipohjalla testaamaan copilot vs. cursor vs. o1. Mun varovainen oletus on, että cursori saattais olla parempi kuin copilot ja toisaalta o1 on hyvä etenkin vaikeampien matemaattisen ongelmien purkamiseen niin että purun lopputuloksen voi jollain toisella neuroverkolla muuttaa koodiksi/boiler plateksi.

Oma kokemus on, että enemmän noista ai-härpättimistä on jo nyt hyötyä kuin haittaa. Mielenkiintoista nähdä miten noi kehittyy tulevien vuosien aikana. Loppuvuodellehan openai yrittää saada seuraavaa frontier malliansa ulos ja samaa yrittää myös google geminin kanssa.
 
Viimeksi muokattu:
Oma kokemus on, että enemmän noista ai-härpättimistä on jo nyt hyötyä kuin haittaa. Mielenkiintoista nähdä miten noi kehittyy tulevien vuosien aikana. Loppuvuodellehan openai yrittää saada seuraavaa frontier malliansa ulos ja samaa yrittää myös google geminin kanssa.
Ehdottomasti. Omassa roolissa tulee pääasiassa tehtyä prototyyppejä / PoCeja roadmapilla olevien asioiden esiselvittelyn näkökulmasta ja kyllä tämä on omaa throughputtia nostanut merkittävästi - sellainen ikään kuin asioiden nopeasti kasaan saaminen ja konseptointi nopeutuu kun saa näkyviä asioita nopeammin aikaan. Samassa kontekstissa sellainen aavistuksen throw away -koodaus kuuluu asiaan, johon nää työkalut on ihan otollisia.

Sitten toinen puoli kolikosta on se, että iso osa omasta työajasta on myös muutakin kuin koodamista (arkkitehtuurisuunnitelmia, ja -kuvia, erinäisten vaihtoehtoisten ratkaisujen kuvaamista, speksiä, …) ja kaikkeen tähän ikään kuin teknisen materiaalin tuottamiseen olisi kiva löytää jotain saman kaltaista kilkettä avuksi. Microsoftillahan noita Office Copilot touhuja on jotka tekee jotain, mutta en ole työssä päässyt kokeilemaan.

Olisi mielenkiintoinen päästä kunnolla isommalla koodipohjalla päästä testaamaan copilot vs. cursor vs. o1. Mun varovainen oletus on, että cursori saattais olla parempi kuin copilot ja toisaalta o1 on hyvä etenkin vaikeampien matemaattisen ongelmien purkamiseen niin että purun lopputuloksen voi jollain toisella neuroverkolla muuttaa koodiksi/boiler plateksi.

Näin korporaation ukkelin näkökulmasta tää Copilot on varmaan monille isoille yrityksille helppo valinta, kun taustalla on Microsoft ja heillä on uskottavat lupaukset siitä että omat poropietari-kamat pysyy salassa.
 
Viimeksi muokattu:
Ehdottomasti. Omassa roolissa tulee pääasiassa tehtyä prototyyppejä / PoCeja roadmapilla olevien asioiden esiselvittelyn näkökulmasta ja kyllä tämä on omaa throughputtia nostanut merkittävästi - sellainen ikään kuin asioiden nopeasti kasaan saaminen ja konseptointi nopeutuu kun saa näkyviä asioita nopeammin aikaan. Samassa kontekstissa sellainen aavistuksen throw away -koodaus kuuluu asiaan, johon nää työkalut on ihan otollisia.

Sitten toinen puoli kolikosta on se, että iso osa omasta työajasta on myös muutakin kuin koodamista (arkkitehtuurisuunnitelmia, ja -kuvia, erinäisten vaihtoehtoisten ratkaisujen kuvaamista, speksiä, …) ja kaikkeen tähän ikään kuin teknisen materiaalin tuottamiseen olisi kiva löytää jotain saman kaltaista kilkettä avuksi. Microsoftillahan noita Office Copilot touhuja on jotka tekee jotain, mutta en ole työssä päässyt kokeilemaan.
Mulla puhalsi uutta intoa ai kotiprojekteihin. Montaa juttua ei ole jaksanut alkaa nypläämään mutta nyt kun saa nopeasti aikaiseksi niin kiva naputella. Kotiprojektit voi laskea demo/protojutuiksi joita ei ole ikinä tarkoitus tuotteistaa. Toinen puoli sitä, että matematiikka ei ole tarpeeksi hallussa niin o1 pureskelee asioita todella hyvin ymmärrettävään ja/tai ratkaistuun muotoon.
 

Statistiikka

Viestiketjuista
264 408
Viestejä
4 576 540
Jäsenet
75 453
Uusin jäsen
Kalakissa

Hinta.fi

Back
Ylös Bottom