Kysymyksiä ja vastauksia, kevät 2023

Tähän on koottu opiskelijoiden ensimmällä viikolla esittämiä kysymyksiä. Aikaisempiin kysymys-vastaus-palstoihin pääset tästä.

Kysyminen

Klikkaa Lisää kysymys ja laita kysymyksesi Q-kohdan perään.

Vastaajat

Vastaajille: Kirjoita nimimerkkisi ja nimesi tähän, ja merkitse vastauksesi perään sitten aina nimimerkkisi.

  • AJL: Antti-Jussi Lakanen
  • VL: Vesa Lappalainen
  • MR: Mikko Röyskö, Jypelin ja ComTestin ylläpitäjä, ohj2 ohjaajana keväällä.
  • ji: Jonne Itkonen

Kurssin suorittaminen

Q: Suoritetaanko koe sähköisesti?
Q: Päteekö tämän vuoden tentissä sama kuvaus mitä q/a sivuilla on? Eli puolet sähköisenä ja puolet paperilla yms?

A: 90% varmuudella kokonaan sähköisesti mutta vielä on vähän epäselvää onko etänä vai läsnä. Ilmoitan heti kun tiedän. -AJL

Q: Demoissa on tehtäviä, joissa asetetaan omalle suoritukselleen mukautetut pisteet. Tarkistaako joku nämä arviot ja korjaa "oikeiksi"?

A: Niihin tehdään pistotarkastuksia, mutta missään tapauksessa kaikkia vastauksia kaikilta emme pysty käymään läpi. -AJL

Q: Voiko demotehtäviä tehdä omalla nopeudella, eli vaikka kaikki tehtävät ensimmäisen kuukauden aikana, mikäli on jo aiempaa kokemusta ohjelmoinnista? Vai pitääkö odottaa seuraavaan viikkoon kunnes pidetään luento kyseisestä aiheesta?

A: Voit tehdä, mutta lopulliset demotehtävät julkaistaan aina tasan viikkoa ennen deadlinea. Demotehtäviin saattaa ennen sitä tulla muutoksia tai korjauksia. Tehtäviä voi tulla lisää tai tehtäviä voi poistua. Tehdessäsi tehtäviä ennen virallista julkaisua, ota tekemästäsi koodista aina varmuuskopio omalle tietokoneellesi. -AJL

Q: Avasin tämän kurssin TIM-kurssi etäopiskeluna-sivun ja siellä luki näin: Ilmoittaudu kurssin TIMin demokertojen sivulla haluamaasi demoryhmään. Ymmärsin luennon perusteella että demojen läpikäynnit eivät olisi pakollisia, mutta meniköhän minulta jotain ohi ja ehtiiköhän asian vielä korjata? Mielelläni demotilaisuuksiin osallistuisin, mutta päivätyö valitettavasti estää moisen.

A: - Demotilaisuuteen osallistuminen on vapaaehtoista. Tilaisuuden voi katsoa nauhalta, katselulinkki on kurssin kotisivulla. -AJL

Q: Mitä ovat PP-pisteet (omissa tiedoissa)?

A: Myöhemmin kurssilla järjestetään ns. PP-ryhmiä ("Pahasti pihalla") jossa on tarkoitus kerrata asioita jos joku asia on jäänyt epäselväksi. Noista erikseen laadituista PP-tehtävistä saa noita PP-pisteitä. -AJL

Q: Onko pelin tekemiseen jonkinlaisia rajoitteita?

A: Ei varsinaisesti muuta kuin että on käytettävä kurssin työkaluja (C#, Jypeli), ja tietysti harkan vaatimusten on muutoin täytyttävä. -AJL

A: Ei saa hyötyä pisteiden muodossa. Elämä ei ole pisteiden vaan tietojen ja taitojen keräämistä varten. Jokainen tehty tehtävä kasvattaa tuota pääomaa. -VL

Q: Onko aiempia harjoitustöitä nähtävillä jossain? En tiedä mistä aloittaisin harjoitustyöni kanssa.

A: - Koodeja ei ole näkyvillä, mutta toivottavasti esittelyvideosta olisi vähän apua ideointiin. -AJL

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

"Q-kohta" ei auennut "Lisää kysymys" -painikkeen painamisen jälkeen. (Chrome & Edge) Varsinainen kysymys: Onkohan jostain nähtävissä yhteenvetoa suoritettujen demojen pisteistä ja suoritusten etenemisestä? Välillä ollut itselleni vähän epäselvää, että onko järjestelmään tallentunut suoritus vai ei.

Kyllä kaikki on tallentunut, kunhan muistat painaa Aja/Tallenna-painiketta. Yhteenveto näkyy Omat tiedot -sivulla demojen deadlinen jälkeen. Nyt pitäisi editoinninkin toimia. -AJL

21 Jan 23 (edited 21 Jan 23)

Sama homma kun ylemmässä kysymyksessä, mutta varsinainen kysymys: Voiko demotehtäviä palauttaa "takautuvasti"? Eli jos esimerkiksi palautan tämän viikon pakolliset tehtävät määräaikaan 23.1. mennessä, voidaanko silti demo1 vapaaehtoisia tehtäviä hyväksilukea vaikka palauttaisin ne esim. ensi viikon lopulla?

Kaikilla yhden viikon demotehtävilllä on sama deadline. -AJL

21 Jan 23 (edited 21 Jan 23)

Työkaluista

Q: Onko avoimen yliopiston opiskelijoille mahdollisuuksia käyttää näitä apuohjelmia kuten esimerkiksi jetbrainia?

A: Tähän on tulossa sellainen järjestely, että avoimen opiskelija pyytää englanninkielisen opiskelijatodistuksen (linkki tulee myöhemmin), jonka voi sitten liittää JetBrainsin hakemukseen. Infoan tästä lisää kun yksityiskohdat on selvillä. -AJL

Q: Mistä tietää, onko GIT-asennus kokonaisuudessaan mennyt oikein Applen laitteella toimiessa?

A: Jos komentoriviltä annettu git ttulostaa ohjeita. - VL

Q: Miksi VSCode ei ole tuettujen työkalujen listalla? Olisi ilmainen myös avoimen puolen tekijöille ja toiminnallisuus varmasti riittävä.

A: - No periaatteessa voit kyllä käyttää sitä jos haluat. Kokeilinpa tuossa juuri ja Tasohyppelypeli näyttäisi pyörähtävän ainakin Windowsilla. Emme ehdi ylläpitää materiaalia monelle eri IDE:lle, joten siksi tällä kertaa on valittu Rider. -AJL

Q: Selviääkö kurssista, vaikkei osaisi käyttää komentoriviä kovinkaan tehokkaasti?

A: - Selviää. -AJL

Q: Miten avoimen opiskelija liittyy Teamsiin? Ei ole @jyu.fi sähköpostia. Ohjaukset/ Harjoitustyönsuunnitelma

A: -

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Eri kielistä

Q: Mitä kieltä käytitte ohjelmoinnin opiskeluun?

A: 80-luvun alussa: Basic, Fortran, Pascal, konekieli. - VL
A: C++, Java, Flash ActionScript ja monia muita. -AJL
A: Basic, Forth, Pascal, C, Common Lisp, C++, Python ja vähän konekieli. -ji

Q: Onko nähtävissä selkeää trendiä joidenkin tiettyjen ohjelmointikielien suosiossa juuri nyt tai lähitulevaisuutta ajatellen?

A: Jep, funktionaalisuutta tulee lisää. Kielet näyttää menevän ulkoasulta Swiftin ja Rustin kaltaisiin suuntiin. -ji

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Kurssin sisällöstä

Q: Jos kurssilla olisi yksi asia mihin pitäisi kiinnittää erityistä huomiota jonka koet tärkeäks, mikä se olisi?

A: -

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Jypeli

Q: Miten pääsen Jypelissä eroon virheestä Error CS1038 #endregion directive expected

A: - Sulla lienee jossain kohtaa koodia #region (jonka perässä lukee että mikä kyseisen "alueen" nimi on), ehkä ennen using-lauseita? Tuo haluaa kaverikseen aina #endregion-sanan joka päättää tuollaisen alueen. -AJL

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Yleistä ohjelmoinnista

Q: Onko sinulla tietoa uramahdollisuuksista, joissa voisi yhdistää osaamista sekä markkinoinnista että ohjelmoinnista?

A: Rajattomat! - VL

Q: Onko teillä kirjasuosituksia ohjelmointiin liittyen?

A: Lue ihan aluksi tuo kurssin "luentomoniste". Se on sentään 300 sivua tulostettuna. Sitten voit ostaa Kyppö & Westerholm Java-kirjan Ohj2 kurssia ja Javaa varten. Kotisivuilla kyllä pitäisi olla linkkejä materiaaliin. - VL

Q:Oletteko kokeilleet OpenAI Codex:ia ja koetteko sen hyödylliseksi?

A: TL;DR; Noilla työkaluilla voi hypätä oppimisen ja kokeilun ilon yli ymmärtämättömyyden ja osaamattomuuden suohon, joten ovat kivoja jos jo osaat, mutta mahdollisesti vaarallisia, jos et osaa.

En ole kokeillut Codexia, mutta ChatGPT3:a, johon tuo perustuu, olen käyttänyt. ChatGPT4:ää en ole päässyt kokeilemaan, mutta sillä tehtyjä ohjelmointikokeiluja olen ihastellut ja kauhistellut videoilta. Samoin tuon ChatGPT3:n kanssa tehdyt omat kokeilut ovat ihastuttaneet ja kauhistuttaneet. Nuo ovat hienoja ja tuohon päin mennään, halutaan tai ei. Jos ei osaa ohjelmoida, noiden avulla saa helposti näyttäviä tuloksia asioista, jotka ovat jo tunnettuja ja osattuja. En ole nähnyt yhtään mitään uutta syntyvän noilla. Tuon Codexin esimerkkivideon pelikin on niiiiin vanhaa ja miljardiin kertaan tehtyä, että vielä nopeammin sen saa valmiiksi hakemalla vaikka GitHubista avoimen toteuksen etsi-toiminnolla. (LLM:n toiminnasta ois kiva olla olemassa lyhyt kuvaus täälläkin.)

Kuka tahansa hieman ohjelmoinut, esim. te tämän kurssin jälkeen, kirjoittaa tuon pelin koodin käsin, osa jopa nopeammin kuin ensin englanniksi tai suomeksi kuvailemalla. Kannattaa katsoa syntyvän ohjelmakoodin määrää ja mitä siinä sanotaan verrattuna ohjeen verbaalisuuteen.

Toinen asia, mikä näissä jää näkemättä, on tuon syntyneen tuloksen kehittäminen ja korjaaminen. Entäs jos siellä on virhe? Entäs jos pitäisi saada useampia asteroideja peliin ja alus liikkumaan vähän järkevämmin? Jos joku tietää näistä muutoksista kokeiluvideoita tai on itse kokeillut, mielelläni kuulen kommentteja. Omissa kokeiluissa olen eri kerroilla saanut eri vastaukset samoihin kysymyksiin, mikä on LLM:lle ominaista, muttei oikein kiva asia ohjelmoidessa.

No, nää tulee yleistymään ja hyvä niin. Se auttaa ihmisiä, jotka ei osaa vielä ohjelmoida, hyödyntämään ohjelmointia ongelmanratkaisussa. Ohjelmankehitysympäristöön lisättynä nämä auttavat paljon tylsien asioiden tekemisessä, tosin siinä auttaa myös fiksumpi ohjelmointikieli ja fiksummat kirjastot, kehykset, yms.

Mutta silti tarvitaan niitä ihmisiä, jotka ymmärtävät mitä tekoäly tuotti ja osaavat korjata sen, sekä jo suoraan tehdä asiat paremmin. Te olette opiskelemassa tätä taitoa. -ji

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Henkilökohtaista opettajalle

Q: Hei, olisko mahdollista saada ohjaajille yhteinen sähköpostisosoite mihin voisi lähettää kysymyksiä ohjausaikojen ulkopuolella?

A: -

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Lajittelemattomat

Q: Mistä olette itse saanut koodauskokemuksenne?

A: Koodaamalla - VL

Q: Toinen, jos vahingossa esitietokyselyyn vastasi vahingossa, että ei halua osallistua tutkimukseen, mutta oikeasti haluaisi, miten toimia?

A: - Kokeilepas pystytkö vielä muuttamaan sitä. -AJL

Q: Voiko pelkillä ohjelmointi 1 -kurssin tiedoilla jatkaa suoraan ohjelmointi 2 -kurssille?

A: Ilman muuta. Jos ei voisi, olisi se sanottu kurssien riippuvuuksissa :-) Mutta jos Ohj1 arvosana on 1/5, niin silloin on syytä kertailla aika paljon, eli Ohj1 tavoitteeksi kannattaa ottaa paljon enemmän. - VL.

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

Ohjeita

Lisää kysymys

**Q:** ⁞

#- {.answ}
**A:** -

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.