Kurssin viimeisimmän version löydät täältä: O1: 2024
Luku 1.1: Kurssin esittely
Tästä sivusta:
Pääkysymyksiä: Mistä tässä kurssissa on kysymys? Miten kurssilla toimitaan?
Mitä käsitellään? Kurssin tavoitteita, osasuorituksia, toimintatapoja, arviointia ja tiedotus- ja neuvontakanavia.
Mitä tehdään? Luetaan. Tutustutaan kurssin keskustelupalstaan.
Suuntaa antava työläysarvio:? Puoli tuntia tai alle.
Pistearvo: A5.
Oheisprojektit: Ei ole.
Johdanto
Tervetuloa Ohjelmointi 1 -kurssille!
Tässä kurssimateriaalissa, jonka ensimmäistä lukua nyt luet, yhdistyvät oppikirjaa vastaava lukemisto ja harjoitustehtävät. Materiaali sijaitsee oppimisympäristössä nimeltä A+, jota käytämme tehtävien palauttamiseen ja arviointiin.
Tervetuloa Ohjelmointi 1 -kurssille!
Tässä kurssimateriaalissa, jonka ensimmäistä lukua nyt luet, yhdistyvät oppikirjaa vastaava lukemisto ja harjoitustehtävät.
Kurssimme verkossa tarjoama aineisto on sen verran monimuotoista, ettei sitä saa mielekkäällä tavalla esille Aallon yleiseen MyCourses-järjestelmään. Kurssimateriaali sijaitsee siis tässä oppimisjärjestelmässä nimeltä A+, jota käytämme myös tehtävien palauttamiseen ja arviointiin.
Tälle kurssille ei tarvitse eikä voi ilmoittautua Oodissa. Riittää kun ilmoittaudut kurssin etusivulla A+:ssa.
Kurssin tavoitteet
Hyvin laveasti sanottuna kurssin tavoitteet ovat seuraavat.
Kurssin jälkeen toivottavasti:
- olet tullut tulokseen, ettei ohjelmointi ole ihan typerää touhua, ja
- osaatkin ohjelmointia ainakin jonkin verran.
Jotta näiden tavoitteiden ymmärtäminen olisi mahdollista, poiketaan hetkeksi itse aiheeseen ja palataan sitten kurssijärjestelyihin.
Ohjelmointi on tietokoneohjelmien laatimista, mutta mitä ovat ohjelmat? Ja mikä lasketaan tietokoneeksi?
Ohjelmat tietokoneissa
Erilaisia laitteita
Tietoteknisiä laitteita luokitellaan usein:
- yleiskäyttöisiin tietokoneisiin (general-purpose computer), jollaista voi käyttää erilaisiin tarkoituksiin (esim. pöytätietokoneet, läppärit),
- sulautettuihin järjestelmiin (embedded system) eli laitteisiin, joilla on yksi tai muutama tarkoitus ja joissa on sisäänrakennettu tietokone (esim. kulkuneuvot, pankkiautomaatit, pesukoneet, tulostimet, robotit, monet lelut).
Molemmanlaisten laitteiden toiminta perustuu siihen, että tietokone suorittaa ohjelmia (program), jotka ohjaavat järjestelmää toimimaan halutulla tavalla. Tällä kurssilla keskitymme yleiskäyttöisiin tietokoneisiin, mutta samat pääperiaatteet toimivat myös sulautetuissa järjestelmissä.
Entä kännykät?
Ovatko matkapuhelimet yleiskäyttöisiä tietokoneita vai sulautettuja järjestelmiä? Millä perusteella? Mieti itse ja selvitä halutessasi internetistä, mitä asiasta on sanottu.
(Kurssimateriaalin harmaareunuksisissa laatikoissa, kuten tässä, on lisämateriaalia, jonka ohittaminen ei haittaa kurssisuoritusta. Esimerkiksi äskeinen on täysin vapaaehtoinen harjoitus, josta ei saa pisteitä mutta josta voi vaikka oppia jotain.)
Erilaisia ohjelmia
Useimmille suomalaisille tuttu ohjelmatyyppi on sovellusohjelma eli sovellus (application; erityisesti mobiililaitteiden yhteydessä nykyään usein suomeksikin "applikaatio"). Sovellus tarjoaa käyttäjälle tiettyyn aihepiiriin liittyviä palveluita. Tekstinkäsittelyohjelma, tietokonepeli ja WWW-selain ovat esimerkkejä sovelluksista.
Sovellusten ohella muita ohjelmatyyppejä ovat:
- Ohjelmakirjasto (software library) eli valikoima yleiskäyttöisiä osaohjelmia, joita voi hyödyntää eri ohjelmien toteutuksessa.
- Ajuriohjelma (driver), joka ohjaa tietyn oheislaitteen käyttöä.
- Käyttöjärjestelmä (operating system) kuten Windows, Linux tai macOS, joka hallinnoi laitteistoresursseja ja tarjoaa loppukäyttäjälle mahdollisuuden käynnistää haluamiaan sovelluksia.
Tällä kurssilla keskitymme sovellusohjelmiin: harjoitustehtävissämme esiintyvät esimerkiksi seikkailupeli, kokemuspäiväkirja ja kaupunkilaisten muuttokäyttäytymistä simuloiva ohjelma. Sovellusten laatimisessa käytämme apuna valmiiksi laadittuja ohjelmakirjastoja. Ajuriohjelmia ja käyttöjärjestelmiä emme suoranaisesti käsittele, mutta kurssilla opitut yleiset ohjelmointikäsitteet ovat sovellettavissa niissäkin yhteyksissä.
Ohjelmien ja ohjelmoinnin luonteeseen palaamme materiaalin seuraavassa luvussa 1.2. Jatketaan nyt kurssiesittelyä.
Kurssin tavoitteet uudestaan
Kurssin tavoitteena on siis, että oppisit laatimaan ja muokkaamaan pienehköjä sovellusohjelmia kuten pelejä tai kirjanpito-ohjelmia. Lisäksi toivomme, että huomaat, että moinen voi olla sekä hauskaa että hyödyllistä!
Kuten kurssin nimestäkin huomaa, ei tämä ensimmäinen ohjelmointikurssi yksinään tee kenestäkään ohjelmoinnin mestaria, vaikka konkreettisia taitoja jo saavutetaankin. Tämä kurssi on tarkoitettu ensimmäiseksi osaksi ohjelmoinnin perusopintoja.
Esitiedot
Kurssi ei edellytä esitietoja ohjelmoinnista.
Englanninkielinen materiaali
Tästä materiaalista on olemassa myös englanninkielinen versio. Kuitenkin jos osaat suomea, kannattaa käyttää tätä suomenkielistä materiaalia, joka on testatumpi ja sieltä täältä aavistuksen verran laajempi.
Suomenkielinenkin materiaali kyllä esittelee myös englanninkieliset termit.
Tietokoneen ja Aallon tietojärjestelmien käytön perusteet pitää osata: webin selaaminen, sähköposti, yliopiston Linux-koneiden peruskäyttö. "Mikä on tiedosto?", "Mikä on kansio/hakemisto?", jne.
Tietokoneen käytön perusteet pitää osata: webin selaaminen, sähköposti ja oman työympäristön perusasiat, oli ympäristönä sitten Linux, Windows tai macOS.
Vaikka kurssin ensisijainen opetuskieli on suomi, niin jonkinmoinen englannin kielen taito tulee tarpeeseen. Moniin esimerkkeihin ja tehtäviin liittyy englanninkielisiä dokumentteja. Tämä heijastaa sitä, että ohjelmointi on kansainvälinen ala ja monet aiheeseen liittyvät web-sivustot ja työkalut ovat englanniksi. Yritysten ohjelmointiprojekteissa myös hyvin usein käytetään englantia.
Yksinkertaisesta koulutason matematiikasta on apua yksittäisissä kohdissa kurssia, mutta vaatimukset eivät tältä osin ole suuret.
Osasuoritukset
Kurssiin kuuluu kolme osasuoritusta, joista kaksi ensimmäistä kytkeytyvät yhteen:
- Harjoitustehtävät ovat kurssin ylivoimaisesti tärkein osa. Tehtävistä saa arvosanan 0–5, joka on samalla myös arvosanasi koko kurssista. Kurssin läpäiseminen edellyttää hyväksyttyä arvosanaa harjoitustehtävistä eli vähintään ykköstä.
- Tämän oppimateriaalin luvuista kerätään lukukohtaista palautetta eli ajankäyttöarvio sekä askarruttamaan jääneitä kysymyksiä, mielipiteitä yms. Tämä on pakollinen osa kurssia!
- Lopuksi pitää täyttää kurssipalautekysely, jossa arvioidaan kurssia kokonaisuutena ja joka julkaistaan oppimateriaalin lukuna numero 13.1. Myös kurssipalautekysely on pakollinen.
Alla on kerrottu lisää harjoitustehtävistä ja lukukohtaisesta palautteesta. Kurssipalautekyselystä muistutetaan vielä erikseen aikanaan.
Kurssilla ei ole tenttiä.
Oppimateriaali ja harjoitustehtävät
Tehtävineen ja liitteineen materiaali kattaa koko kurssisisällön. Kurssilla ei ole muuta oppikirjaa. Joitakin kirjaehdotuksia on erillisellä Kirjoja ja linkkejä -sivulla.
Kurssin harjoitustehtävät on upotettu tähän oppimateriaaliin. Tulet tehneeksi ne samalla kun perehdyt oppimateriaalin lukuihin.
Kurssisisältö jakautuu kierroksiin ja tasoihin, mistä lisää seuraavaksi.
Kierrokset
Tehtävät jakautuvat ajallisesti kierroksiin 1–12; kierroksella 13 on vain kurssipalautekysely eikä varsinaisia tehtäviä. Jokaisella kierroksella on määräaika, deadline, johon mennessä kierroksen suoritukset on palautettava.
Ensimmäisen kierroksen deadline on ke 19.09.2018 klo 12:00 päivällä. Seuraavien kierrosten määräajat ovat yleensä viikon välein edellisestä. (Kuitenkaan keskiviikkona 21.11.2018 ei sulkeudu mitään kierrosta, vaan silloin on mahdollisuus työstää isompaa tehtäväkierrosta pidempään.) Kaikki määräajat ovat näkyvillä A+:ssa.
Deadline
Ensimmäinen kalmanlinja on jo 19.09.2018 Huomaa, että jo ensimmäisen kierroksen tehtäviin menee kyllä aikaa. Kannattaa varata noin tusinan verran tunteja kierroksen läpikäymiseen, mieluummin varmuuden vuoksi ylikin!
Tehtäväkierrokset 1–12 avataan heti kurssin alussa. Kierroksen 13 kurssipalautekysely avataan 12. kierroksen sulkeuduttua joulukuussa.
Pisteet ja tasot
Kunkin kurssimateriaalin luvun alusta löytyy merkintä sen pistearvosta: kirjain A, B tai C sekä luku, esim. "B50".
Kirjain kertoo mille tasolle tuon luvun tehtävät kuuluvat:
- A-tason tehtävät opettavat ja arvioivat kurssin vähimmäistavoitteisiin liittyviä asioita ja ovat kaikille pakollisia.
- B-tason tehtävät eivät ole pakollisia mutta ovat erittäin suositeltuja kaikille, jotka aikovat ottaa jatkokursseja.
- C-tason tehtävät ovat vapaaehtoisia mutta hyödyllisiä ja tarkoitettu niille, jotka haluavat oppia mahdollisimman paljon. Monet niistä ovat myös oikein kivoja.
Tasokirjaimen perässä on enimmäispistemäärä, jonka kyseisestä luvusta yhteensä voi saada. Esimerkiksi tämän esittelyluvun alussa lukee "A5", joten sen lukemalla ja siihen liittyvään pieneen tehtävään oikein vastaamalla saa viisi A-tason pistettä. Tehtävä on tuolla alempana.
Työläämmistä tehtävistä saa yleensä enemmän pisteitä kuin vähemmän työläistä saman tason tehtävistä. Korkeampien tasojen tehtävät eroavat alempien tasojen tehtävistä aihepiireiltään, työmäärältään ja/tai vaikeusasteeltaan.
Materiaali sisältää myös lisätreenitehtäviä ja haastetehtäviä; ne ovat täysin vapaaehtoisia eivätkä tuota tehtäväpisteitä.
Alla on kaavio tehtävien sijoittumisesta kierroksille. Kuten siitä huomaat, A-pisteitä on tarjolla vain alkupään kierroksilla ja C-pisteitä loppupäässä. Käytännössä kurssin pakollinen osa tulee suoritettua syyslukukauden ensimmäisinä kuukausina.
Kaaviosta käy ilmi sekin, että materiaalissa on enemmänkin kierroksia kuin 13. Nuo myöhemmät kierrokset liittyvät keväiseen kurssiin CS-C2120 Ohjelmointistudio 2, joka jatkaa suoraan siitä, mihin tämä kurssi päättyy.
Tehtävien palauttaminen ja automaattinen arviointi
Tehtävät palautetaan selaimen avulla. Palautuslomakkeet löytyvät oppimateriaalin sisältä.
A+ arvioi palautuksesi lähes kaikkiin kurssin tehtäviin automaattisesti ja antaa välittömän palautteen. Monet tehtävistä ovat pisteytettyjä ohjelmointitehtäviä. Niistä saat pisteitä sen perusteella, toimiiko tehtävän ratkaisuksi laatimasi ohjelma tehtävänannon mukaisesti.
A+:n tarkastus on pikkutarkka, ja sinulta edellytetään huolellisuutta. Hyvänä puolena — jos tuo edellinen nyt oli huono — A+ on valmiina päivin öin, nopea ja tasapuolinen.
Pisteytetyille tehtäville on määritelty enimmäismäärä palautusyrityksiä. Tehtävän luonteesta riippuen yritysten määrä on jotakin kolmen ja kymmenen väliltä. Paras ennen määräaikaa tehty palautus jää voimaan.
Tehtävien esimerkkiratkaisut julkaistaan A+:ssa aina välittömästi kunkin kierroksen sulkeutumisen jälkeen. Koska moniin tehtäviin ei ole yhtä ainoaa oikeaa ratkaisua, oman ratkaisun vertaaminen esimerkkiratkaisuihin on usein opettavaista, myös silloin kuin sait tehtävän ratkaistua.
Tämä ei ole vitsi
Varaudu tekemään töitä! Ajoissa!
Valtaosa harjoitustehtäväpisteistä tulee soveltavista tehtävistä, joissa laadit itse ohjelmia. Näihin tehtäviin menee huomattavan paljon aikaa. Tehtäviä ei kannata jättää deadlinea edeltävään iltaan, tai aikataulun kanssa käy helposti hyvinkin köpelösti. Silmäile tehtäväkierroksia etukäteen, laadi ajankäyttösuunnitelma ja aloita mahdollisimman aikaisin.
Tehtäväpisteiden vahvistaminen ja lukukohtainen palaute
Tämän sivun ja kaikkien muidenkin kurssimateriaalin lukujen lopuissa on palautelomake. Näihin lukukohtaisiin lomakkeisiin vastaaminen on pakollinen osa kurssia: tehtäväpisteet luvusta eivät tule voimaan ennen kuin olet vastannut lukukohtaiseen palautelomakkeeseen!
Homma toimii näin:
- Luet luvun ja teet siihen liittyvät tehtävät. A+ arvioi vastauksesi ja ilmoittaa, paljonko pisteitä olet saamassa.
- Täytät lukukohtaisen palautelomakkeen. Sinulta pyydetään palautteena ainakin arviota käyttämästäsi ajasta. Tällä on sama määräaika kuin kierroksella muutenkin!
Pistetilannesivusi A+:ssa osaa huomioida myös palautelomakkeet. Sivulta näkyy, jos jokin lukukohtainen palautelomake on täyttämättä.
Kysymykset ja palaute huomioidaan!
Toivottavasti kirjoitat sanallista palautetta mahdollisimman monesta luvusta. Palautteen ei tarvitse olla mielipide vaan se voi olla myös jokin kysymys kurssin sisällöstä, pohdinta omasta oppimisesta tms.
Emme suinkaan heitä kysymyksiäsi ja kommenttejasi Mappi Ö:hön. Luemme ne kaikki ja käytämme niitä kurssin aikana sekä tulevien kurssiversioiden suunnittelussa.
Yleiset ja muuten mielenkiintoiset kysymykset poimitaan (anonyymisti) viikkokoosteisiin, joita julkaistaan kurssimateriaalin yhteydessä jo tämän saman syksyn aikana.
Viikkokooste julkaistaan aina tehtäväkierroksen sulkeuduttua. Koosteissa vastataan opiskelijoiden lähettämiin kysymyksiin, selvennetään aiheita, joista on pyydetty lisäselvennystä, ja tarjotaan syventävää materiaalia. Teiltä kerätyt viestit vaikuttavat näihin kaikkiin.
Tehtäväpisteet ja arvosana
Kurssiarvosana (0–5) määräytyy tehtävien perusteella.
- Tekemällä melkein kaikki A-tehtävät saat ykkösen.
- Kakkonen ja kolmonen edellyttävät myös B-tehtävien tekemistä.
- Tekemällä vielä lisäksi C-tehtäviä saat nelosen tai viitosen.
Sama tarkemmin taulukossa:
Arvosana | Taso A | Taso B | Taso C | Kuvaus |
---|---|---|---|---|
1 | 1900 | — | — | Vähimmäistavoitteet saavutettu. |
2 | 2000 | 400 | — | |
3 | 2000 | 700 | — | Vastaa suunnilleen jatkokursseille riittävää osaamistasoa. |
4 | 2000 | 700 | 450 | |
5 | 2000 | 700 | 700 | Tätä enempää pisteitä ei tarvitse viitoseen. |
maksimi | 2100 | 805 | 800 | Eli ihan jokaista pistettä joka tehtävästä ei tarvitse kerätä. |
Esimerkiksi saadaksesi kurssiarvosanan 4 sinun pitää siis tehdä:
- vähintään 2000 pisteen edestä A-tason tehtäviä...
- sekä vähintään 700 pisteen edestä B-tason tehtäviä...
- sekä vähintään 450 pisteen edestä C-tason tehtäviä...
(Lisäksi pitää täyttää lukukohtaiset palautelomakkeet niistä luvuista, joista teit tehtäviä, ja kurssipalautekysely joulukuussa.)
Tehtäväarvosana siis muodostuu hieman mutkikkaasti, mutta onneksi löydät ajantasaisen raportin osasuorituksistasi pistetilannesivultasi.
Jos A-pisteitä puuttuu, voi niitä korvata "yksi yhteen" -tyyppisesti B- tai C-pisteillä. Jos B-pisteitä puuttuu, niitä voi korvata C-pisteillä. Pistetilannesivusi osaa näyttää tällaiset korvaamiset automaattisesti.
Tentti (vain Aallon ulkopuolisille opiskelijoille)
Jotta kurssista voi saada yliopiston kurssisuorituksen, täytyy osallistua kurssin loppupuolella kokeeseen eli tenttiin. Tentin voi tehdä joko muussa oppilaitoksessa, jossa osallistuja opiskelee, tai Aalto-yliopiston tiloissa. Omassa oppilaitoksessa suoritettavaa koetta varten tarvitaan "kotikoulusta" vastuuhenkilö, joka voi valvoa suorituksen ja toimittaa tenttipaperit Aaltoon. Tarkempi ohjeistus tästä tiedotetaan myöhemmin syksyllä.
Jos haluat vain oppia ohjelmointia eikä tarvetta yliopiston kurssimerkinnälle ole, ei tenttiä tarvita.
Parityöstä
Harjoitukset saa tehdä yksin tai pareittain.
Yksinkin on siis lupa tehdä, jos haluaa, mutta yhteistyössä pääsee kommunikoimaan parin kanssa ja joutuu jäsentämään ajatuksiaan paremmin. Yksi havaitsee virheitä, jotka toiselta jäivät huomaamatta. Sosiaalinen paine estää liian laiskottelun.
Suosittelemme parityötä, jos sinulla on siihen mahdollisuus. Yhteistyössä pääsee kommunikoimaan parin kanssa ja joutuu jäsentämään ajatuksiaan paremmin. Yksi havaitsee virheitä, jotka toiselta jäivät huomaamatta. Sosiaalinen paine estää liian laiskottelun.
Aiemman vuoden kurssilainen kommentoi:
Parityöllä tarkoitamme siis materiaaliin perehtymistä ja tehtävien tekemistä yhdessä. Tehtävien tai kierrosten jakaminen osiin kaverin kanssa on kiellettyä.
Tehtävää palauttaessasi valitse, palautatko tehtävän yksin vai parin kanssa. Paria voi vaihtaa kurssin aikana mutta ei kesken yksittäisen tehtävän. Kun olet kerran palauttanut jonkin tehtävän joko yksin tai tietyn parin kanssa, niin mahdolliset myöhemmät korjauspalautukset samasta tehtävästä pitää tehdä samalla kokoonpanolla.
Kurssimateriaalin lukujen lopuissa olevat palautekyselyt ovat henkilökohtaisia, eli niihin ei voi tehdä paripalautusta. Kurssin lopussa järjestettävä palautekysely on myös henkilökohtainen.
Kannattaa etsiä työpari heti kurssin alussa. Voit käyttää apuna kurssin sähköisiä keskustelufoorumeita, joista lisää ihan kohta tällä sivulla. Aiemmalta osaamistasoltaan sinua vastaava pari lienee paras vaihtoehto.
Pohtikaa ja keskustelkaa. Laatikaa ohjelmia yhdessä päättämällänne tavalla; kumpikin vuorollaan voi toimia kirjurina. Molempien työparin jäsenten on oltava perillä kaikista parin tuottamista ratkaisuista.
Moni on kurssin yksinkin suorittanut, joten ei parityö ehdoton edellytys onnistumiselle ole.
Myös isommalla porukalla opiskelu ja ajatustenvaihto on sallittua, kunhan kukin pari tai opiskelija tuottaa omat ratkaisunsa. Esi-isäsikin kertoo:
Jos säpsähdit mainintaa kuuden tunnin tehtävästä, niin voit lohduttautua sillä, että sellaisia on luvassa vasta myöhemmin. Pienemmistä lähdetään liikkeelle. Yhteistyössä on silti voimaa.
Itsestäänselvyyksiä
Harjoitustehtävien ratkaisujen tai niiden merkittävien osien kopiointi toisilta opiskelijoilta tai muualta ei ole sallittua. Samoin kiellettyä on pisteiden hankkiminen yrittämällä harhauttaa automaattista tarkastusjärjestelmää.
Kopioimisella ja muilla väärinkäytöksillä on seuraamuksia Aallon säädösten mukaisesti. Opiskelijoiden kirjoittamia ohjelmia tutkitaan myös tässä mielessä.
Opiskelun tueksi: harjoitusryhmät, keskustelufoorumit ym.
Oppimateriaaliin ja sen sisältämiin tehtäviin paneutumisessa kunkin opiskelijan oma panos on keskeinen. Tuemme kuitenkin opiskelua usealla eri tavalla. Viikkokoosteet jo tulivat mainittua yllä; lisäksi tarjolla on runsaasti harjoitusryhmiä, muutama luento sekä sähköisiä foorumeita.
Harjoitusryhmät
Kurssin assistentit eli assarit päivystävät harjoitusryhmissä Aalto-yliopistolla Espoossa kaikkina arkipäivinä kurssin aikana. Tarkempi aikataulu ja paikat löytyvät erilliseltä sivulta. Osa ryhmistä on avoimia myös MOOC-opiskelijoille (jotka pääsevät fyysisesti paikalle).
Kurssin assistentit eli assarit päivystävät harjoitusryhmissä Maarintalolla kaikkina arkipäivinä kurssin aikana.
Ensimmäinen harjoitusryhmävuoro on heti ensimmäisen kurssin avaavan luennon jälkeen. Näitä assaripäivystyksiä järjestetään kymmeniä tunteja viikossa. Tarkempi aikataulu ja paikat löytyvät erilliseltä sivulta.
Harjoitusryhmiin ei ole erillistä ilmoittautumista, vaan voit käydä niissä vapaasti. Ryhmissä ei myöskään ole tiettyä asialistaa, jonka kaikki käyvät läpi samaan tahtiin. Voit tulla ryhmään lukemaan materiaalia ja tekemään tehtäviä omaan tahtiisi ja kysyä assarilta, kun et omin neuvoin pääse eteenpäin.
Osassa harjoitusryhmistä saat neuvontaa myös ruotsiksi. Nämä ryhmät on merkitty viikkoharjoitussivulle.
Luennot
Kurssilla on kolme luentoa, jotka on tarkoitettu lähinnä Aallon paikallisille opiskelijoille. Ne eivät ole välttämättömiä, ja verkossa oleva oppimateriaali kattaa kurssin koko sisällön. Tarkemmat tiedot ja luentomateriaali löytyvät erilliseltä luentosivulta.
Kurssilla on kolme luentoa:
- Ke 12.09.2018 on avausluento, joka esittelee kurssin käytäntöjä sekä ohjelmoinnin perusteita ja työkaluja.
- Seuraavalla viikolla on luento toisen kierroksen pääteemasta (olio-ohjelmointi).
- Joulukuussa on kurssin päätöstilaisuus: ihmetellään opiskelijoiden laatimia hienoja ohjelmia, jaetaan pieniä palkintoja virtuaalirobottiturnauksen voittajille ja esitellään jatkokursseja.
Tarkemmat tiedot luentosivulla.
Keskustelua ja uutisia: Piazza
Piazza on WWW-selaimessa toimiva keskustelufoorumi, jossa kurssillamme on oma palsta. Piazzassa voit esimerkiksi kysyä asioita henkilökunnalta tai muilta opiskelijoilta. Vastaus tulee yleensä viimeistään vuorokauden päästä. Tällä foorumilla voit myös käydä muuta kurssiin liittyvää keskustelua. Henkilökunta julkaisee Piazzassa ajankohtaistiedotteita (jotka tulevat myös kurssin etusivulle A+:ssa).
Pääset Piazza-järjestelmään A+:n valikon linkistä. Suora osoite on tämä:
Jotta Piazza tulee heti edes vähän tutuksi, tehdään pieni harjoite.
A+ esittää tässä kohdassa tehtävän palautuslomakkeen.
Tarkista myös Piazza-asetuksesi!
Kannattaa käydä tarkistamassa asetukset Piazzan oikean yläkulman rataskuvakkeesta. Voit kyllä jättää tämän tekemättäkin, mutta silloin Piazza lähettää sinulle sähköposti-ilmoituksia uusista viesteistä kurssifoorumilla oletusarvoisesti varsin lyhyin väliajoin. Asetuksista voit esimerkiksi harventaa ilmoitustahtia.
Vaihtoehtoinen keskustelukanava: Telegram
Piazza on kurssin ensisijainen keskustelupalsta ja paikka esittää tehtäviin liittyviä kysymyksiä, mutta Piazzan ohella kurssilla on myös Telegram-palvelussa ryhmä nimeltä aalto-o1, jolla käydään reaaliaikaista keskustelua kurssiin liittyen. Telegram-ryhmässä ei ole virallista henkilökuntapäivystystä, mutta osa kurssihenkilökunnasta ja opiskelijoista hengailee siellä ja vastauksia lyhyihin kysymyksiin on mahdollista (takeettomasti) saada nopeastikin.
Voit asentaa Telegram-sovelluksen tai käyttää sitä suoraan selaimen kautta. Kirjautuminen vaatii puhelinnumeron.
Kurssin Telegram-keskusteluryhmään pääset tästä linkistä:
Henkilökunta
Vastaava opettaja Juha Sorva
Juha vastaa kurssin suunnittelusta, oppimateriaalista, tiedotuksesta, viikkokoosteista ja luennoista.
Juha on tavattavissa luentojen yhteydessä sekä erikseen sähköpostitse sopimalla Tietotekniikan talon huoneessa A137.
Sähköposti: juha.sorva@aalto.fi
Pääassistentti Timi Seppälä
Timi ohjaa assistentteja ja vastaa ohjelmointitehtävien automaattisen arvioinnin suunnittelusta ja toteutuksesta sekä ylläpitää kurssia täällä A+-oppimisympäristössä.
Timi on tavattavissa vetämiensä harjoitusryhmien yhteydessä ja erikseen sähköpostitse sopimalla Tietotekniikan talon huoneessa A145.
Sähköposti: timi.seppala@aalto.fi
Assistentit
18 kurssiassistenttia eli "assaria" auttavat opiskelijoita harjoitusryhmissä. He ovat: Tuomas Aarnio, Ella Anttila, Sebastian Berner, Henri Gröhn, Emma Honkamaa, Tobias Jern, Oskari Järvinen, Aura Kiiskinen, Eetu Laine, Joona Lillfors, Anna Müller, Kalle Mäkelä, Juhani Numminen, Valtteri Nurminen, Viljami Nurminen, Rune Pönni, Tatu Timonen ja Juuso Vilppula.
Assarit myös arvostelevat osan harjoitustehtävistä sekä hoitavat sekalaisia muita tehtäviä. Kunkin assarin harjoitusryhmäajat löytyvät harjoitusryhmäsivulta.
18 kurssiassistenttia eli "assaria" auttaa opiskelijoita harjoitusryhmissä Aalto-yliopiston tiloissa. He myös arvostelevat osan harjoitustehtävistä sekä hoitavat sekalaisia muita tehtäviä. Kunkin assarin harjoitusryhmäajat löytyvät harjoitusryhmäsivulta.
Avoimen kurssin henkilökunta
Kurssista tarjotaan samanaikaisesti myös puhtaasti verkossa järjestettävä versio, MOOC, joka on avoinna muillekin kuin Aallon omille opiskelijoille. Avoimen kurssiversion opettajat ovat Otto Seppälä (otto.seppala@aalto.fi) ja Juha Sorva (juha.sorva@aalto.fi).
Kurssista tarjotaan samanaikaisesti myös puhtaasti verkossa järjestettävä versio, MOOC, joka on avoinna muillekin kuin Aallon omille opiskelijoille.
Avoimen kurssin opettajat ovat Otto Seppälä ja Juha Sorva. Otto vastaa avoimen kurssiversion erityisjärjestelyistä, ja häneen voi olla yhteydessä asioissa, jotka liittyvät MOOC:in suoritusmerkintöihin tms.: otto.seppala@aalto.fi
Tervetuloa vielä kerran!
Me kurssihenkilökunnan jäsenet pyrimme näkemään vaivaa, jotta kurssi onnistuisi. Toivottavasti jaksat myös panostaa kurssiin, vaikka se onkin työläs ja haastava!
Yhteenvetoa
- Kurssin pakolliset osasuoritukset ovat: harjoitustehtävät, lukukohtainen palaute sekä kurssipalautekysely.
- Kurssimateriaaliin perehtyminen ja siinä olevien harjoitusten
tekeminen on ylivoimaisesti tärkein kurssin osa.
- Kurssiarvosana tulee suoraan harjoitustehtävien perusteella, kunhan palauteosiot on hoidettu. Ensimmäinen palauteosio on tuossa alla.
- Kurssi tähtää käytännön ohjelmointitaidon kehittämiseen. Valtaosa tehtäväpisteistä tulee soveltavista ohjelmointitehtävistä.
- Harjoitusryhmät, keskustelufoorumit, luennot ja viikkokoosteet tukevat tehtävien tekemistä.
- Ensimmäinen deadline on pian!
- Etsi itsellesi työpari.
- Tämän materiaalin kierrokset 1–13 liittyvät Aallon Ohjelmointi 1 -kurssiin, joka tarjotaan avoimena nimellä Ohjelmoinnin MOOC.
- Kurssin pakolliset osasuoritukset ovat: harjoitustehtävät, lukukohtainen palaute sekä kurssipalautekysely. Virallisen todistuksen saaminen MOOC-kurssista edellyttää lisäksi tentin läpäisyä.
- Kurssimateriaaliin perehtyminen ja siinä olevien harjoitusten
tekeminen on ylivoimaisesti tärkein kurssin osa.
- Kurssiarvosana tulee suoraan harjoitustehtävien perusteella, kunhan palauteosiot on hoidettu. Ensimmäinen palauteosio on tuossa alla.
- Kurssi tähtää käytännön ohjelmointitaidon kehittämiseen. Valtaosa tehtäväpisteistä tulee soveltavista ohjelmointitehtävistä.
- Keskustelufoorumit tukevat tehtävien tekemistä. Tarjolla on myös viikkokoosteita sekä Aallossa paikallisesti harjoitusryhmiä ja luentoja.
- Ensimmäinen deadline on pian kurssin alun jälkeen!
Palaute
Huomaathan, että tämä on henkilökohtainen osio! Vaikka olisit tehnyt lukuun liittyvät tehtävät parin kanssa, täytä palautelomake itse.
Tekijät
Tämän oppimateriaalin kehitystyössä on käytetty apuna tuhansilta opiskelijoilta kerättyä palautetta. Kiitos!
Kierrokset 1–13 ja niihin liittyvät tehtävät ja viikkokoosteet on laatinut Juha Sorva.
Kierrokset 14–20 on laatinut Otto Seppälä. Ne eivät ole julki syksyllä, mutta julkaistaan ennen kuin määräajat lähestyvät.
Liitesivut (sanasto, Scala-kooste, usein kysytyt kysymykset jne.) on kirjoittanut Juha Sorva sikäli kuin sivulla ei ole toisin mainittu.
Tehtävien automaattisen arvioinnin ovat toteuttaneet Riku Autio, Jaakko Kantojärvi, Teemu Lehtinen, Timi Seppälä, Teemu Sirkiä ja Aleksi Vartiainen.
Lukujen alkuja koristavat kuvat ja muut vastaavat kuvituskuvat on piirtänyt Christina Lassheikki.
Muiden lukujen lopuissa on lisäyksiä tähän tekijäluetteloon.