Mikseri on musiikkiyhteisö,
jossa voit kuunnella, ladata ja arvostella suomalaista musiikkia,
lisätä rajattomasti biisejä, luoda oman artistisivun, kerätä arvosteluja ja faneja

Ladataan

Vastaa Aloita uusi keskustelu

 
Kirjoittaja Satunnaisuus ohjelmoinnissa


geeli
4260 viestiä

#1 kirjoitettu 22.07.2020 21:44

Ohjelmoinnissa pystytään helposti tuottamaan satunnainen luku, jolle voidaan määrittää arvo tietyltä väliltä. Yksinkertaisin luku on väliltä 0-1 ja erilaisilla kertoimilla tuota lukua voidaan tarkentaa (huom. Javassa, Pythonissa tämä on tehty helpommaksi/paremmaksi). Yleensä tarvitaan vain yksinkertaista matemaattista funktiota, siis.

Annan tästä esimerkin:

import random

print(random.randint(0,9))

Kyseinen koodi on Pythonia ja se siis tulostaa satunnaisluvun tuolta "parametreiksi" annetulla väliltä. Saa kokeilla, jos osaa ajaa Python-koodia.

Nyt voidaan siis arpoa, osuuko esim. koripallon heitto koriin. Jos heittäjän taidot ovat 86/100, niin voidaan ottaa satunnaisluku (väliltä 0-100. You with me on this one?) ja jos tuo luku on > 86, niin heitto menee ohi, mutta jos se on < 86, niin heitto menee koriin. Simppeliä ala-aste-matematiikkaa! Heitto uppoaa keskimäärin todennäköisyydellä 0,86 eli 86% .

Tämän pohjalle saakin jo aika hyvän pelin aikaan ilman mitään grafiikkaa tosin...

^ Vastaa Lainaa


geeli
4260 viestiä

#2 kirjoitettu 22.07.2020 21:48

Eli tässä vähän ohjelmoinnista. Sattui tulemaan mieleen. Tämän pohjalta olisi helppo, kun osaan jo vähän, alkaa työstämään montaakin arvontaan liittyvää ongelmaa. Kyseessä on se, että en viitti tähän käyttää aikaa enempää. Unelmana mulla olisi päästä oppimaan lisää johonkin asialliseen projektiin johonkin yritykseen. Ehkä joskus sellaiseen pääsen tai ehkä joskus koodaan jotain, jolla todistan osaamiseni ja saan lopulta työpaikan tältä alalta...Tai sitten en ja koodailu jää tietoteknikseksi kuriositeetiksi, jota teen työ ohella ja harrastuksena...

^ Vastaa Lainaa


geeli
4260 viestiä

#3 kirjoitettu 23.07.2020 11:15

Ei taida ottaa hirveesti tuulta alle tää ketju

^ Vastaa Lainaa


geeli
4260 viestiä

#4 kirjoitettu 23.07.2020 20:19

Tää onkin mielenkiintoinen aihe...Sovellan tässä koodinpätkässä satunnaislukugeneraattoria ja todennäköisyyksiä:

[kuva]

Lyhyt ohjelma, jonka kirjoitin. Nyt jos ajetaan tätä, niin tuo luku, 86, määrittää kuinka todennäköisesti ainakin 8,6 heittoa kymmenestä menee sisään. Tämän tarkemmin tai teoreettisemmin en osaa pulmaa avata.

Voitaisiin myös korvata tuo luku muuttujalla:

skill = 86

ja ensimmäinen if-lause, muotoon:

if(throw < skill):

Eli voi ihan käytännössä kokeilla muuttaa tuota lukua...Tällainen. Teoriaan voi aina mennä syvemmälle. Mä toin asiat nyt ihan käytännössä näkyviin...

Jos haluaa, oikeasti, kokeilla, niin tähän kun syötät koodin, niin sen voi ajaa:

https://repl.it/repls/...

Se, miten satunnaisluvun luominen tapahtuu, on asia, jota en osaa täysin nyt selittää. Kuitenkin tuo koodinpätkä tuntuu toimivan, jos sitä kokeilee. Välillä tulee "8/10" ja joskus "10/10" ja harvemmin esim. "6/10" (jos skill = 86)...

^ Vastaa Lainaa


geeli
4260 viestiä

#5 kirjoitettu 23.07.2020 20:22

Ja tässä aika hyvä sivu satunnaisuudesta:

https://www.random.org/

^ Vastaa Lainaa


AnttiJ
Aimo Annos
&
Rytmi-Veikot

7403 viestiä

#6 kirjoitettu 24.07.2020 09:51

Eikös ruletissa pitäisi olla niin, että punainen/musta ja parillinen/pariton vaihtoehto pitäisi olla aina melko lailla 50/50?

Olen kerran ollut Tanskassa ihan oikeassa kasinossa, jossa iso raha vaihtoi sukkelaan omistajaa. Koska itse pelasin vain saamillani "starttirahoilla" (oli 90-luvun alussa muistaakseni n. 400 mk eli rapiat 60 €) minulle jäi aikaa katsella miten ihmiset siellä käyttäytyivät. Rulettipöytien yläpuolella oli isot näytöt, joista voi seurata voittaneita numeroita muistaakseni 10 kierrosta taakse päin.

Yksi tyyppi juoksenteli pöydästä toiseen merkkaamassa vihkoonsa voittaneet numerot ja pelasi ilmeisesti vain silloin, kun jossain pöydässä toteutuneet numerot poikkesivat merkittävästi todennäköisestä toteutumisestaan. Sen muistan, että seuraamassani pöydässä tuli yhdessä vaiheessa 7 mustaa numeroa peräkkäin. Silloin kävi mielessä, että voisi olla viisasta sijoittaa rahat punaiselle, vaikka voittokerroin ei niin hirveän suuri olekaan. Vaan enpä pistänyt ...ja seuraava olisi muuten ollut punainen.

Eikös tuossa satunnaisuus vaikuta todennäköisyyteen? Todennäköisyyden toteutuminen saattaakin kai pahimmillaan vaatia aika lailla toistoja jotta satunnaisuuden vaikutus kumoutuu. Vai miten se nyt onkaan?

------------------------

Jospa palataan korikseen. Erittäin hyvä vapaaheittäjä vetää vaparit sisään lähes 90% osumatarkkuudella. Todellisuudessa jossain matsissa menee sisään 100% (kuten Toni Ilmosella aikanaan useassakin pelissä) ja jossain toisessa pelissä vain 60%. Saattaa mennä aika monta matsia ennen kuin todennäköisyys eli 90% toteutuu kumulatiivisesti (vaan ei ottelukohtaisesti kuin sattuman oikusta).

Tästä syystä vapariprosentit lasketaan vain niiltä pelaajilta, jotka ovat suorittaneet tietyn vähimmäismäärän vapaaheittoja. Vapareiden osumatarkkuuteen vaikuttaa monta satunnaista tekijää: pelaajan kulloinenkin peliaika (riittävä tuntuma vs. väsymys), kulloinenkin pelikunto (täysin terve vs. joku pienempi vamma), vaparitilanteen paineisuus (esim. ratkaisuheitto, koti/vierasyleisön vaikutus) ja niin edelleen. Näyttäisi olevan niin, että riittävässä toistomäärässä satunnaiset tekijät alkavat lopulta kumota toisiaan ... ehkä?

Jotenkin satunnaisuus ja todennäköisyys näyttäisivät olevan naimisissa keskenään. Satunnaisuus näyttäisi vaikuttavan todennäköisyyteen, mutta vaikuttaako todennäköisyys satunnaisuuteen? Eipä taida vaikuttaa ainakaan laatimassani koriscasessa: pelaaja voi joutua pelaamaan monta matsia liian isoja minuutteja pelikaverin loukkaantumisen vuoksi vaikka todennäköinen vaparien osumatarkkuus on alle 90%, minkä saavuttaminen edellyttäisi sopivaa pelirasitusta eikä ylikuormitusta.

Eiköhän joku kaiva esille miten tämän asian kanssa oikein on.

^ Vastaa Lainaa


geeli
4260 viestiä

#7 kirjoitettu 24.07.2020 11:54

Mielenkiintoista, että löytyy tällaisia satunnaisuuden sovellusalueita, kuten just ruletti ja pokeri. Satunnaisuus on tosi hyvä ja tehokas työväline videopelejä suunniteltaessa. Nopan heitto pelissä voidaan korvata lyhyellä koodin pätkällä tai sanotaanko jopa "algoritmilla".

Ehkä on vähän huijausta korvata jossain koripallopelissä satunnaislukugeneraattorilla se heiton onnistuminen, joka oikeasti ja realistisesti vaatii aina taitoa. Ero oikeaan koripalloon onkin valtava.

Mutta jokin nopan heittoon perustuva peli on tosi helposti muunnettavissa ohjelmaksi/peliksi. Esimerkiksi Yatzy, jossa heitetään viittä noppaa kerrallaan ja kerätään sitten pisteitä muuntuu peliksi helpohkosti. Pisteiden laskenta onnistuu myös hyvin ohjelmoimalla, jopa paremmin kuin käsin kirjoittamalla pisteet ylös.

Roolipeleissä satunnaisuus on myös isossa "roolissa", heh, siinä, että osuuko esim. lyönti tai miten vakavasti se vaikuttaa vihuun...Tai muutenkin esim. strategiapeleissä...

Olen itse hahmotellut ja jopa koodannut koripallopeliä, jossa pelin kulku perustui näihin todennäköisyyksiin ja pelaajien taitoihin. Peliä jaksoin koodata, mutta se oli lopulta tekstipohjainen, vain, ja siksi ajattelin, että ei se oikein yleisöön vetoa. Olen kuitenkin kuullut, että moni pelintekijä tekee näitä prototyyppejä, kuten tämä koripallopeli, paljon ja sitten joskus saa aikaan jonkin oikean ja toimivan pelin niiden pohjalta. Pelejä oon muutaman tehnyt, mutta kaikki taitaa olla vielä prototyyppi asteella. Ja by the way, koris on mulle tuttu laji koska oon pelannut sitä junnuna..

^ Vastaa Lainaa


veezay
bassofriikki
7701 viestiä
Luottokäyttäjä

#8 kirjoitettu 24.07.2020 11:59

geeli kirjoitti:
Nyt voidaan siis arpoa, osuuko esim. koripallon heitto koriin. Jos heittäjän taidot ovat 86/100, niin voidaan ottaa satunnaisluku (väliltä 0-100. You with me on this one?) ja jos tuo luku on > 86, niin heitto menee ohi, mutta jos se on < 86, niin heitto menee koriin. Simppeliä ala-aste-matematiikkaa! Heitto uppoaa keskimäärin todennäköisyydellä 0,86 eli 86% .

niinkin simppeliä, että ehtojen pitäis olla <= 86 (inklusiivinen) ja > 86 (eksklusiivinen). muuten jää kokonaan määrittelemättä, mitä tapahtuu, jos tulokseksi tulee 86 joka ei ole <86 eikä >86.

IT kirjoitti:
Mutta jos tuo on satunnaislukugeneraattori, niin tuottaako se nuo luvut tuolla todennäköisyydellä?

¤¤¤ Ja lopuksi, mua kiinnostaa tuossa sun esimerkissä tämän satunnaislukugeneraattorin toiminta, joka kuitenkin tuottaa probabilistisen eli todennäköisyyksiin perustuvan lopputuloksen kun yksittäinen heitto toistetaan riittävän monta kertaa...

riippuu siitä miten se on toteutettu. monet ohjelmalliset satunnaislukugeneraattorit on pseudosatunnaisia, joissa annetaan siemenluku jonka perusteella seuraavat luvut generoidaan yleensä bitshiftaamalla lukujonoa joillakin ehdoilla. seuraava luku tuntuu satunnaiselta, mutta on deterministinen. näillä generaattoreilla on oma "pituutensa", jonka jälkeen samat luvut toistuvat uudelleen peräkkäin, eikä kaikki luvut välttämättä esiinny jonossa samalla todennäköisyydellä.

jotta jokaisella ohjelman suorituskerralla saataisiin uusi satunnainen lukujono, siemenluku annetaan generaattorille jostain alati muuttuvasta ja kohtuullisen satunnaisesta asiasta joka tietokoneella on käytettävissä, kuten kellonaika. parempia ideoita siemenluvun saamiseksi on esimerkiksi jonkun fyysisen anturin mittaaman suureen "desimaalit" tai kameran kennossa esiintyvä kohina. niitä vois toki käyttää sellaisenaankin satunnaislukuina, jos niitä ei tarvi ihan uskomattoman nopeasti suuria määriä.

^ Vastaa Lainaa


geeli
4260 viestiä

#9 kirjoitettu 24.07.2020 12:10

veezay kirjoitti:
muuten jää kokonaan määrittelemättä, mitä tapahtuu, jos tulokseksi tulee 86 joka ei ole <86 eikä >86.


Aivan. En tullut ajatelleeksi. Tossa mun koodissa siis olisi mahdollisuus 1/100, että generoidaan juuri luku 86.

Tällainen bugi siis löytyi. Onneksi ei oltu viety ohjelmistoa vielä eteenpäi asiakkaalle asti.

Testaaminen on muuten erittäin tärkeä asia ohjelmistosuunnittelussa. Testataan ohjelmallisesti ja myös usein käyttäjäkeskeisesti.

^ Vastaa Lainaa


veezay
bassofriikki
7701 viestiä
Luottokäyttäjä

#10 kirjoitettu 24.07.2020 12:13

geeli kirjoitti:
Aivan. En tullut ajatelleeksi. Tossa mun koodissa siis olisi mahdollisuus 1/100, että generoidaan juuri luku 86.

1/101. sanoit arpovasi luvun väliltä 0-100. vaihtoehtoja on silloin 101.

^ Vastaa Lainaa


geeli
4260 viestiä

#11 kirjoitettu 24.07.2020 12:16

Jep jep. Oikeassa olet jälleen...ja minä väärässä...

^ Vastaa Lainaa


veezay
bassofriikki
7701 viestiä
Luottokäyttäjä

#12 kirjoitettu 24.07.2020 12:46 Muok:24.07.2020 12:49

geeli kirjoitti:
Jep jep. Oikeassa olet jälleen...ja minä väärässä...

ei hätää, sitä sattuu.

IT kirjoitti:
Ja eikös suurin osa näistä softapohjaisista satunnaislukugeneraattoreista (RNG) olekin pseudosatunnaisia?

joo, tosin useimpiin käyttötarkoituksiin ne on "tarpeeksi satunnaisia". jos teet musasoftassa white noisea, joka on käytännössä satunnaislukuja peräkkäin, se kuulostaa tarpeeksi kohinalta ilman mitään toistoa, sävelkorkeutta tai erityistä äänenväriä.

Silloin ne on ainakin periaatteessa esim. hakkeroitavissa, jos oikein käsitin...

ennustettavissa? toki, mutta sun pitää käytännössä selvittää koko RNG:n lukujono ennen kuin voit millään varmuudella ruveta arvailemaan seuraavaa lukua, ja sun pitää myös olla varma siitä, että siemenlukua ei oo muutettu siinä välissä. noi lukujonot on tyypillisesti vähintään 4 miljardin luvun pituisia, joten siinä touhussa voi mennä hetki.

Mutta sulla kun tuntuu olevan aiheesta enemmänkin tietoa, niin mikä on sun mielestä satunnaisuuden ja todennäköisyyden suhde just esim. tällaisissa esimerkeissä kun tässä ketjussa on tullut vastaan?

Voiko joku satunnainen tapahtuma olla myös tietyllä tavalla todennäköinen, esim. juuri niin että ruletissa on tietty todennäköisyys jollekin tapahtumalle pitkässä juoksussa, mutta kun tarkastellaan yksittäisiä tapahtumia, niin ne onkin enemmän satunnaisia? Vai onko?

kun puhutaan aidosti satunnaisista systeemeistä, yksittäisiä tapahtumia on mahdoton ennustaa (joskus arvaus voi mennä oikein, mut ennustaminen on mahdotonta), ja tarpeeksi monta kertaa toistettaessa niistä muodostuu tasainen jakauma kaikille lopputulemille, ja niiden esiintymisjärjestyksessä ei ole mitään patternia. satunnaisuuden toteaminen vaatii yleensä tosi pitkän tarkastelujakson.

yks ihmistä hämäävä piirre satunnaisuudessa on muun muassa se, että jos heität kymmenen kertaa peräkkäin kruunan, se tuntuu epäsatunnaiselta, ja "seuraavaks on varmasti ihan pakko tulla klaava!", mut se on ihan yhtä satunnainen tulos kuin mitkä tahansa muutkin tulokset, jos kyseessä on reilu kolikonheitto.

^ Vastaa Lainaa


veezay
bassofriikki
7701 viestiä
Luottokäyttäjä

#13 kirjoitettu 24.07.2020 14:19

IT kirjoitti:
Mut siitä jännä tuo satunnaisuuden ja todennäköisyyden symbioosi on, että vaikka et voikaan ennustaa yhtä yksittäistä tapahtumaa, tiedät sen tapahtuman todennäköisyyden, ja silloin sulla on käytössä todennäköisyysjakauma... Jolloin voit käyttää tätä informaatiota päätöksenteon apuna pitkässä juoksussa...

nii, siitä ei vaan täydellisen satunnaisuuden kohalla oo mitään hyötyä, kun kaikki vaihtoehdot on yhtä mahdollisia. sekin ilmenis vasta kun toistokertoja on ihan vitullinen [tekninen termi] määrä.

Tosta englannin "pattern" sanasta vielä jota käytit, niin musta se on oikein hyvä sana, jolle vain ei tunnu löytyvän eksaktia suomenkielistä vastinetta... [...] Onko sulle tuttu Sapirin - Whorfin hypoteesi? [...] Mutta pointti siis, että äidinkielikin vaikuttaa siihen tapaan, jolla ihmiset lähestyvät todellisuutta...

ei oo tuttu, enkä lukenu kovin syvällisesti. mulle on luontevinta käyttää jotain englanninkielistä vakiintunutta sanaa jos sille ei oo mitään yksiselitteistä käännöstä. aika usein tietokone- tai etenkin ohjelmointikontekstissa mä ajattelen asioita mieluummin englanniksi, koska suomeksi käännetyillä käsitteillä ei vaan tahdo olla samaa yhtä hyvin aukeavaa merkitystä.

^ Vastaa Lainaa


AnttiJ
Aimo Annos
&
Rytmi-Veikot

7403 viestiä

#14 kirjoitettu 24.07.2020 14:57

Pattern ... minulle tulee ensiksi mieleen rumpukomppien rakentelu.

^ Vastaa Lainaa


geeli
4260 viestiä

#15 kirjoitettu 24.07.2020 17:09

Mä en hirveesti päässy opiskellessa sisään matematiikkaan. Kylhän siel kaikennäköstä kurssia oli. Ehkä jossain yliopistolla, mut ei oikeestaan hirveesti AMK:ssa opeteta edes matematiikkaa. Tai nykyään ainakaan.

Joitakin kiinnostaa kyllä ja oppivatkin. Mun mielestä opetuksessa on vähän sellainen trendi ollut, että paljon opiskelijoita ja kaikille sitten sitä matikkaa ja fyssaa ja kemiaa jne. Kun jotkut on aidosti sellaisia, että ei ne opi, vaikka mikä olisi. Sen takia joskus kannattaa miettiä sitäkin, että mikä kiinnostaa.

Ohjelmoinnissa mun pitäis opetella syvällisesti näit frameworkkeja eli sovelluskehyksiä sekä muita edistyneitä työvälineitä niinku Unity tai Unreal Engine tai Godot. Front-end devaaja tarvitsee osaamista tietysti HTML, CSS ja JavaScript eli ainakin React tai vastaava. Back-end saisi osata Springiä, MySQL:ää tai vastaavaa, Laravel:a, Node.js:ää, Pythonia eli ehkä jotain Djangoa. Näitä vaaditaan et saisi työpaikan siis "koodarina". Onneksi on muitakin töitä olemassa, koska en mä näitä opi varmaan koskaan.

Matematiikkaankin voi erikoistua. Minä halusin aina oppia koodaamaan ja tietämään tietokoneista paljon.

^ Vastaa Lainaa


geeli
4260 viestiä

#16 kirjoitettu 24.07.2020 17:25

Se, että en opi matematiikkaa johtuu mielestäni itseni kohdalla (ja monen muun, jotka lopulta päättää olla opettelematta niitä asioita) aika lailla siitä, et mä opin hitaasti. Sitten opettaja alkaa katselemaan kelloaan ja minä jatkan vaikka valot sammuu luokasta. Aika on tiukasti rajattu nykyään, koska aika on rahaa ja se pitää vahvasti paikkansa...

^ Vastaa Lainaa


veezay
bassofriikki
7701 viestiä
Luottokäyttäjä

#17 kirjoitettu 24.07.2020 18:07

geeli kirjoitti:
Mä en hirveesti päässy opiskellessa sisään matematiikkaan. Kylhän siel kaikennäköstä kurssia oli. Ehkä jossain yliopistolla, mut ei oikeestaan hirveesti AMK:ssa opeteta edes matematiikkaa. Tai nykyään ainakaan. [...] Matematiikkaankin voi erikoistua. Minä halusin aina oppia koodaamaan ja tietämään tietokoneista paljon.

ohjelmoinnissa on kuitenki loppujen lopuks tosi yksinkertaisista asioista kyse. iso osa on perinteistä "pitääkö tää paikkansa" -logiikkaa ja monimutkaisempiin matemaattisiin prosesseihin löytyy usein joku kirjasto tai valmis funktio jostain. riippuu aika paljon siitä mitä haluaa koodata, et tarviiko jotain perusasioita kuten pythagoraan lausetta tai trigonometriaa tietää. jos ymmärtää valitsemansa kielen syntaksin ja sen käyttämiä perusdatarakenteita, pääsee jo hyvin alkuun.

^ Vastaa Lainaa


geeli
4260 viestiä

#18 kirjoitettu 24.07.2020 18:11 Muok:24.07.2020 18:13

Thanks, IT. Kiitoksia tästä.

Oikein hyviä neuvoja.

Koulutushan on aina vaan hyvästä, mutta se ei välttämättä sellaisenaan anna valmiuksia itse työskentelyyn. Aion tehdä tuon testin. Ja mietin et mihin suuntaan osaamista olis kaikista järkevin kehittää.

Täytyy myöntää et en oo ihan ilman duuniakaan ollut ja sen takia oonkin vähän kehittynyt asiakaspalvelussa, jossa onkin jo paljon enemmän ainakin niitä matalan kynnyksen työpaikkoja.

geeli muokkasi viestiä 18:12 24.07.2020

Ja veezayltä tuli kans hyvä kommentti just ku kirjotin tätä äsken...

^ Vastaa Lainaa


geeli
4260 viestiä

#19 kirjoitettu 24.07.2020 18:40

veezay kirjoitti:
ohjelmoinnissa on kuitenki loppujen lopuks tosi yksinkertaisista asioista kyse. iso osa on perinteistä "pitääkö tää paikkansa" -logiikkaa ja monimutkaisempiin matemaattisiin prosesseihin löytyy usein joku kirjasto tai valmis funktio jostain. riippuu aika paljon siitä mitä haluaa koodata, et tarviiko jotain perusasioita kuten pythagoraan lausetta tai trigonometriaa tietää. jos ymmärtää valitsemansa kielen syntaksin ja sen käyttämiä perusdatarakenteita, pääsee jo hyvin alkuun.


Ohjelmointi on helpompaa oppia kuin syvällinen korkeakoulun matematiikka.

Hieman yllättäen huomasin myös saavani keskimääräistä parempia numeroita viestinnästä (sekä vieraat kielet että äidinkieli).

Ohjelmointi syventää perus tietotekniikan asioita aika paljon. Mulla tuli myös seinä vastaan laiteläheisen ohjelmoinnin suhteen. En oppinut sitä millään. Käytin 3 tuntia siihen ja poistuin tietokoneluokasta ja päätin unohtaa koko asian. Ykkösellä läpi tuo pakollinen kurssi...

Tietoliikenteen puolella on lisää opeteltavaa myös. Tämä myös sen takia, että opiskelin itse Ohjelmistotekniikkaa. Tuolla voisi olla jotain mielenkiintoista ja sellaista, mitä voisi opetella. Esim. asennukset ja verkon "conffaukset".

Mut joo...aina voi kehittyä ja kehittää itseään...en sitä mene kieltämään...ja opetelkaa ihmeessä koodaamaan. Sitä ei vaan välttämättä kannata lähteä tekemään työkseen, jos ei ole nopeahko oppimaan asioita...

^ Vastaa Lainaa


geeli
4260 viestiä

#20 kirjoitettu 24.07.2020 18:54

Ja jatketaan vielä opiskelusta.

Kun aloitin...osaaminen oli: juottaminen, elektroniikan perusteet, c-ohjelmoinnin perusteet, sähkötekniikka, fysiikkaa, matikkaa, html, css, Linuxin asentaminen

Kun valmistuin, osasin: ohjelmoinnin perusteet (kielillä java, python, c, c++, C#, php, ruby), UNIX-/Linux-perusteet ja Linuxin jatkokurssi, olio-ohjelmoinnin perusteet (java), käyttöjärjestelmän toiminnan perusteet, käyttäjäkeskeinen testaus, tietokantojen muokkaaminen ja rakentaminen (MySQL, Hibernate), Git, Scrum ym. projekti- ja tiimityöskentely, ja mitä näitä nyt on...(ei jaksa kirjottaa enempää, mutta "you get the picture"...

Eli kyllähän opin vaikka mitä...pointti on ollutkin, että...et saa töitä tällä osaamisella...vielä...ja tässä pitääkin olla kärsivällinen, koska tiedän, että parempaa on tulossa...meinaa vaan menettää toivonsa, kun olin ollut monta vuotta työttömänä. Nyt siis töissä...ja lomalla...

^ Vastaa Lainaa


AnttiJ
Aimo Annos
&
Rytmi-Veikot

7403 viestiä

#21 kirjoitettu 24.07.2020 19:39

geeli kirjoitti:
Ja jatketaan vielä opiskelusta.

Kun aloitin...osaaminen oli: juottaminen, elektroniikan perusteet, c-ohjelmoinnin perusteet, sähkötekniikka, fysiikkaa, matikkaa, html, css, Linuxin asentaminen

Kun valmistuin, osasin: ohjelmoinnin perusteet (kielillä java, python, c, c++, C#, php, ruby), UNIX-/Linux-perusteet ja Linuxin jatkokurssi, olio-ohjelmoinnin perusteet (java), käyttöjärjestelmän toiminnan perusteet, käyttäjäkeskeinen testaus, tietokantojen muokkaaminen ja rakentaminen (MySQL, Hibernate), Git, Scrum ym. projekti- ja tiimityöskentely, ja mitä näitä nyt on...(ei jaksa kirjottaa enempää, mutta "you get the picture"...

Eli kyllähän opin vaikka mitä...pointti on ollutkin, että...et saa töitä tällä osaamisella...vielä...ja tässä pitääkin olla kärsivällinen, koska tiedän, että parempaa on tulossa...meinaa vaan menettää toivonsa, kun olin ollut monta vuotta työttömänä. Nyt siis töissä...ja lomalla...


Duoda, duoda ... sinähän osaat vaikka mitä! Samalla kun teet henkilökohtaisen SWOT-analyysin, niin uhraa pari minuuttia myös sen pohtimiseen voisiko taidoistasi olla hyötyä sellaisissa töissä, joita et ehkä ole vielä ajatellut osana urapolkua.

^ Vastaa Lainaa


geeli
4260 viestiä

#22 kirjoitettu 24.07.2020 19:57

Kiitoksia myös kommentista Anttij:lle...Täytyypä tosiaan tehdä tuota analyysiä, kuten IT ehdotti...

^ Vastaa Lainaa


AnttiJ
Aimo Annos
&
Rytmi-Veikot

7403 viestiä

#23 kirjoitettu 24.07.2020 21:22

IT kirjoitti:

Voisin kuvitella, että töitä löytyisi helpommin erikoistumalla johonkin tiettyyn taikka pariin tiettyyn ohjelmointikieleen, jotka juuri nyt ovat nosteessa... Olemalla jokapaikan höylä on se vaara, että osaa vähän kaikkea muttei mitään syvällisesti...

Mutta jos tuo lainaus kuvastaa sun osaamista, niin ehdottomasti musta ainakin tuntuu siltä, että sun pitää hankkia syvempää osaamista kapeammalta alueelta kohdennetusti... Sä tuotat mahdolliselle työnantajalle enemmän lisäarvoa osaamalla jonkin asian erittäin hyvin kuin olemalla sellainen jokapaikan höylä, joka osaa vähän kaikkea muttei mitään syvällisesti...



Tuossa on selvä pointti: jos tähtää huippukoodariksi, niin asia on varmaankin juuri noin ja yllä oleva on helppo allekirjoittaa.

Mutta jos mennäänkin reilusti sivuladulle, niin ajaudutaan vähän siihen mistä kirjoitin aiemmin: voisiko riittävän mielenkiintoinen urapolku IT:n parissa ollakin jossain muualla kuin esimerkiksi peli- tai ohjelmistotalossa?

Kun hakeutuu ns. tavallisen yrityksen palvelukseen IT-tehtävien pariin, saattaakin käydä niin, ettei yhden ohjelmointikielen syvällistä osaamista edellytetä koska sille ei ole mitään käyttöä. Aika monessa firmassa IT-sektorilla käytetään kymmeniä eri ohjelmistoja, jotka saattavat olla peräisin kymmeniltä eri ohjelmistotoimittajilta; osa suoraan kaupan hyllyltä ja osa asiakkaalle tehtyinä tai räätälöityinä. Tällöin oman IT-henkilöstön laajemmasta perusymmärryksestä on yleensä enemmän hyötyä kuin kapeasta erikoisosaamisesta.

Työnjakohan on usein se, että syvällistä erikoisosaamista ja mm. ohjelmistojen muutostöitä ostetaan ulkopuolelta ja oma väki vastaa lähinnä tavallisista käyttö-, ylläpito- ja tukitehtävistä, joissa monipuolisella perusosaamisella on ns. sosiaalista tilausta. Tällöin riittää kun ymmärtää esimerkiksi sen miten joku ohjelma toimii, miten sitä ajetaan ja mihin se pystyy. Silloin ei tarvitse tietää pilkulleen miten ao. ohjelman koodaus on tehty. Myös mm. IT-ostojen kilpailutus, ostoprosessin hallitseminen ja ulkoistukset ovat ihan oma taiteenlajinsa.

Kaatuneen oman sähköpostiserverin ylösajon vaatiman komentoketjun hallitseminen voi jossain kohtaa olla isonkin yhtiön yksi tärkeimmistä osaamisalueista juuri sillä hetkellä. Riittää mainiosti, että tietää miten serveri saadaan uudelleen käyttöön vaikkei ymmärtäisikään syvällisesti miten serverin ohjelmisto on rakennettu.

Mutta jos haluaa palavasti koodariksi, niin sitten pitää olla sitä syvällistä osaamista jota tavallisten yritysten IT-osastoilla ei juurikaan enää ole koska ohjelmointityöt ostetaan ulkoa. Veikkaan kuitenkin, että kilpailu on veristä koska koodaus on juuri niitä tehtäviä, jotka eivät vähimmässäkään määrin ole paikkariippuvaisia. Mm. Venäjältä ja Intiasta taitaa saada kovatasoista osaamista eikä työn hintakaan päätä huimaa. Hyville koodareille löytyy aina paikkoja ... mutta muille välttämättä ei.

^ Vastaa Lainaa


geeli
4260 viestiä

#24 kirjoitettu 25.07.2020 18:14

Tein nyt jonkinlaisen henkilökohtaisen SWOT-analyyysin. Kirjasin siihen vahvuuteni, heikkouteni, mahdollisuuteni ja uhkat. Tein myös toisen lyhyen analyysin otsikolla "Konkreettiset henkilökohtaisen kehittymisen alueet".

Jätän nää nyt vähän hautumaan. Palaan varmasti näihin, kun tulee lisää ajatuksia. Ja täydennän analyysejä.

Kokemusta voi hankkia siis töistä, koulusta tai täysin omatoimisesti.

Mulla on juuri tuo asia tyypillistä, että osaan perusteita ja sitten se vahva ja erikoistunut osaaminen puuttuu. Löytyi kuitenkin hyviä kohteita ja työtehtäviä, joihin voin tarmoa suunnata. Esim. pelaaminen ja blogin pitäminen. Kirjoittaminen. Ohjelmointi, Pelien suunnittelu ja web-sivujen tekemisen harjoittelu.

Omatoimisesti on vaan vähän rajattua. Ehkä paremmin oppii töissä ja koulussa.

Oli kiva tehdä tämä lyhyt analyysi. Se ainakin kasasi mun ajatuksia.

^ Vastaa Lainaa

Vastaa Aloita uusi keskustelu