Palautteen yhteenveto
Kurssipalautteen antoi 60 opiskelijaa.
Tämän ja aiemmilta kursseilta saadun palautteen perusteella Tasks-tehtäviä 2 (tietokannan suunnittelu) ja 5 (tietokantojen teoria) parannetaan ensi lukuvuotta varten. Suunnitelmana on muuttaa tehtävä 2 ohjelmointitehtäväksi, jolloin siihen pystyy toteuttamaan paremman automaattisen tarkastuksen, sekä parantaa tehtävän 5 materiaalia ja tehtävänantoja niin, että tehtävä olisi selkeämpi.
Palautteessa on nostettu esille, että kurssimateriaali ei käsittele joitakin SQL-kyselyn osia, kuten EXISTS, UNION ja INTERSECTION. Sinänsä näitä avainsanoja ilman pystyy ratkaisemaan kaikki kurssin tehtävät ja tulee muutenkin toimeen SQL-kyselyjen suunnittelussa, mutta kuitenkin olisi hyvä käsitellä myös nämä kurssilla, mikä tulee tapahtumaan tulevaisuudessa.
Kokonaisuutena vaikuttaa siltä, että kurssi on nykyisellään melko toimiva. Kurssin formaattin ei ole tulossa suuria muutoksia, mutta materiaalia ja tehtäviä kehitetään palautteen perusteella.
Numeerinen palaute
Arvioi seuraavia väitteitä (1 = täysin eri mieltä, 5 = täysin samaa mieltä):
- Osaamistavoitteet olivat selvät: 4.52
- Toteutustapa tuki oppimistani: 4.43
- Materiaalit tukivat oppimistani: 4.22
- Arviointi mittasi oppimistani: 4.33
Kurssin raskaus (1 = turhan kevyt, 5 = turhan raskas):
- Työmäärältään opintojakso oli: 2.95
Kurssin kokonaisarvosana:
- Minkä arvosanan annat kurssille kokonaisuutena? 4.37
Sanallinen palaute
Miten kehittäisit kurssia?
- Hyvät on materiaalit, jos eläkeukkokin saa vitosen => olisipa ollut yhtä laadukasta oppimateriaalia silloin kun isoisä lampun osti. Tasks 2:ssa (tietokannan suunnittelu) vaatimuskenttien kokoa voisi suurentaa. Vähän hankala kirjoitella niihin, kun pitää välillä rullata sivua ja välillä milloin mitäkin tehtäväkenttää. Kaikki saisi suunnilleen mahtua näkymään ilman kenttien rullailua. Sama juttu SQL-trainerissa, jossa kentän korkeus ei riitä, jos pitkät kyselyt haluaa rytmittää lukukelpoisiksi useammalle riville. Yhtenä pötkönähän ne suunnilleen mahtuu, mutta helpompi niitä on aloittelijan ratkaistessa hahmottaa rivinvaihtojen kera. Tietokannan sisällön muuttamisen käytännönharjhoitukset jäi vähän vähiin => SQL traineriin mukaan pari INSERT- ja UPDATE-harjoitusta, niin ei jää luetun tiedon varaan että mitenkä ne ne toimii. Sitten vielä tasks 1:stä saatava pistemäärä on suhteettoman suuri sen jälkeen kun SQL-traineria on tahkonnut pari päivää ja kyselyt alkaa sujua. Vastaavasti tasks 5 (tietokantojen teoria) on vaikea ja sitä vastaavaa teoriaosuutta saa tankata aika moneen otteeseen ennen kuin kaikki tehtävät ratkeaa oikein. Pistejako noissä kahdessa (1 ja 5) voisi olla toisinpäin.
- I would add more visualizations for joins and other concepts, although those can be found on the internet.
- Jonkilaisia opetusvideoita/vast. omatoiminen on haastellinen mielestäni näissä koodaus asioissa, voisi olla edes jotain ohjaus/kysymys mahdollisuuksia.
- Toinen ja kolmas normaalimuoto oli sivuutettu kurssimateriaalissa yhdellä lauseella, mutta silti tuntui, että ne olisivat olleet kurssilla opittavia asioita, koska niistä kysyttiin Tasks-tehtävässä. Eli ehkä nämäkin käsitteet voisi avata materiaalissa kunnolla (tarvittaessa viitaten ulkoisiin lähteisiin) tai sitten vaihtoehtoisesti poistaa ne tehtävistä.
- Harjoituksissa enemmän Pythonia.
- Olisi kivempi, jos toisen osan tehtävien automaattinen tarkistus olisi parempi; se usein antoi täydet pisteet selvästi väärille vastauksille, mikä johti epävarmuuteen vastausten pätevyydestä.
- Task-tehtävistä Tietokantojen teoria -osion suorittaminen oli vaikeaa oppimateriaalin pohjalta. Tätä ei helpottanut, sivulla ei nähnyt, mihin oli jo vastannut oikein, vaan alkoi epäillä kaikkia vastauksiaan. Tätä osiota voisi siis parantaa.
- Nothing comes to mind, making sqltrainer more visually pleasing
- Jonkinlainen varoitus olisi paikallaan, että esim. SQL Trainer-tehtävissä 96 ja 97 tarvitaan kurssimateriaalin ulkopuolisia asioita
- Some of the earlier assignments took almost no time or thought at all to complete.
- Ei kehitysehdotuksia.
- Tehtäviä varten materiaalissa pitäisi olla tosi paljon erilaisia esimerkkejä. Voisi olla esim. case-esimerkkejä. Voisi olla kiva, jos olisi esim SQL-Trainerin tyyppisesti jokin tehtävänanto, joka materiaalissa selkeästi ratkaistaan. Näitä pitäisi olla tosi paljon. Lisäksi luentoja pitäisi olla enemmän kuin aloitusluento. Löysin sattumalta kevät 2021 luentotallenteet ja ne olivat iso apu. Keväällä 2021 Tasks-tehtävät olivat kuitenkin erilaiset ja Tasks-tehtävien kanssa olinkin erityisen hukassa. Tasks-tehtävissä pitäisi mielestäni koodauksen ja SQL:n yhdistämisessä olla edes jokunen lämmittelytehtävä alkuun. Nyt ensimmäinen tehtävä vaadittavine hakuineen oli todella vaikea.
- Toteutus mielestäni onnistunut. Onneksi discordissa Joel auttoi nopeasti aina kun oli kysyttävää.
- More examples
- selkeämmät määritelmät. Nyt materiaalit eivät tunnu vastaavan tehtävistä nouseviin kysymyksiin juri ollenkaan
- Consider using the A+ system from Aalto. That way the materials and tasks can all be on the same page. More exercises involving inserting data into a DB with Python would be nice. Or generally more Python tasks.
- I would add more videos to explain some tasks
- Paljon on puhuttu Pythonin vs. Javan käyttämisestä kontrollikielenä moduuleissa (joissa sql:ää käytetään upotettuna kielenä). Parantaisin ohjeistusta näin: (1) Jos olet suorittanut Pythonin, niin käytä mieluummin Pythonia. (2) Jos olet suorittanut Javan, niin 2a. Kurssin ohjeet ovat Pythonilla, joten lienee helpompi käyttää Pythonia. Tätä ei kuitenkaan kannata todeta yliolkaisesti, vaan suositus on, että opiskelet samalla ainakin Python mooc peruskurssin aivan alkuaskelia mooc materiaaleista, jotta kokonaisuus selkiytyy. 2b. Jos ehdottomasti haluat käyttää Javaa ja se luonnistuu sinulta näissä tehtävissä, niin käytä vaan.
- Kurssimateriaali voisi paikoittain vastata paremmin vaatimuksia.
- Kurssi oli kokonaisuutena hyvä ja kiinnostava ja opettaja oli Discordissa hyvin tavoitettavissa. SQL-trainerin tehtävät oli opettavaisia, kun systeemissä pystyi tekemään omia kokeiluja ja rakentamaan kyselyä vaiheittain; oli siis oppimiselle edullista, että vastauskertoja ei ollut rajoitettu. Myös Task-tehtävät olivat hyödyllisiä. Ja kurssimateriaali verkkosivulla oli hyvä ja havainnoillinen. Ilman Discordin kautta saatuja vinkkejä (vanhoista ja uusista keskusteluista) olisin kuitenkin ollut paljon paljon heikommilla ja saanut huomattavasti vähemmän tehtäviä ratkaistua. Samoin olisin ollut paljon paljon heikommilla jos ei olisi ollut tuota oman testaamisen ja hakemisen mahdollisuutta eli mahdollisuutta korjata ja lähettää vastaus aina uudestaan. Loppupään SQL-tehtävät kävivät myös huomattavan vaikeiksi. Olen sillä taustalla liikenteessä, että olen käynyt pari ohjelmoinnin peruskurssia Pythonilla (AMK ja LUT). Tällä osaamisella oli joitakin välejä, joihin saattoi välillä pudota, kun ei ole sellaista yleistä ATK-osaamista, kuten MS DOS:n käyttö. Tässä auttaisi, jos niitä apuvideoita, joita Discordista voi löytää, jos osaa sieltä etsiä, saisi jotenkin heti alussa paremmin esille. Toinen kehittämiskohde -subjektiivinen mielipiteeni- koskee MongoDB:tä. Aika tympeää opetella jotain kokonaan uutta kokonaisuutta pelkästään sen dokumentaatiosta, joka on paikoin vaikeatulkintaista. Eli siinä olisi ollut motivationaalista hyötyä, jos asiasta olisi ollut vaikka joku video. Ai niin, se vielä, että alikyselyasiaa olisi voinut avata vähän enemmän sekä aloitusvideolla että verkkomateriaalissa. Alikyselyjä on paljon erilaisia, mutta niitä on aika vaikea jäsentää. Eli siihen olisin kaivannut opetusta, että millaisia erityyppisiä alikyselyjä voi olla, ja miten niiden koodia oikein jäsennellään. Mutta siis olen tyytyväinen kurssiin; se täytti tarkoituksensa.
- Haastavimmat SQL-trainer tehtävät vaikuttivat kohtuullisen haastavilta ratkaistaviksi pelkästään kurssimateriaalin perusteella. Niiden ratkaisemiseksi voisi tarjota joitain yleisiä periaatteita (, jos sellaisia on olemassa). Muuten materiaalit ja tehtävät olivat mielestäni sopivan haastavia, mutta kuitenkin sellaisia, että niistä selviää. Lisäksi ensimmäisen Task-tehtävän kanssa oli aluksi haasteita, jotta sai tietokannan toimimaan Pythonin kautta. Tästä voisi lisätä esim. Taskin omalle sivulle myös lyhyen opastusvideon, jollainen kylläkin löytyi Discord-kanavalta.
- Loppuihin task tehtäviin olisi hyvä saada video-ohjeistus
- Lisään esimerkkejä tasks tehtäviä varten olisi kiva mutta on ihan hyvä siten miten kaikki on tehty nyt myös
- Tehtäviä tukevaa aineistoa voisi mahdollisesti olla laajemmassa määrin.
- 100 SQL exercises: some hints when code incorrect?
- SQL-trainer järjestelmässä olevat tehtävät olivat todella hyviä, mutta kehittäisin task-järjestelmän tehtäviä. Tehtävänannot olivat hieman epäselviä. SQL:n liittämistä esim pythoniin olisin toivonut enemmän.
- SQLTrainer tehtävät tehtävän 70 jälkeen olivat hyvin haastavia. Niihin olisin kaivannut tukea/vinkkiä
- Yksin tehdessä vaikeammat SQL-tehtävät olivat välillä haastavia ja 10 niistä jäi tekemättä. En tiedä olisiko vihjeet hyvä asia tähän, kun kumminkin tarkoitus on oppia.
- Jotain vinkkejä olisi voinut olla vaikeimpiin hakukyselyihin. Nyt ne jäivät kokonaan tekemättä kun ei keksinyt.
- Ehkä enemmän esimerkkejä, siitä miten voi soveltaa tekniikoita tai enemmän teoriasta.
- SQL Trainer on hyvä järjestelmä, mutta kun puolet kurssin pisteistä on sen ja itse kurssimateriaali sivun varassa, on vaikea saada vaikeimpia tehtäviä tehtyä. Ja mikäli haluaisin vain tietää jonkin tehtävän vastauksen (samalla toki luopua toivosta saada kyseisestä tehtävästä piste) sitä mahdollisuutta ei ole.
- Olen käynyt vähän matkaa kurssia Jyväskylän yliopiston puolella ja siellä aloitettiin kurssi teoriasta. Pidän parempana lähestymistapana tehdä ensin SQL kyselyitä ja tutustua relaatiomalliin, kuin mikä JYssä oli. Tämän kurssin tehtävät ja materiaali olivat erinomaiset. Ehkä alkuluennolla oltaisiin voitu käydä hieman tarkemmin kurssin tavoitteet ja pyrkiä motivoimaan vielä lisää.
- Vähän lisää syvemmän tason esimerkkejä auttamaan vaikeampien tehtävien kanssa. Videot tietokantojen toteutuksesta käytännössä olisi mukava.
- Joidenkin task-tehtävien tarkastukseen toivoisi enemmän läpinäkyvyyttä. Etenkin Tietokannan suunnittelu -tehtävän ohjeistus jätti liikaa tulkinnanvaraa eikä tarkastuksen kriteereitä avattu tarpeeksi. Kyseinen tehtävä sinänsä hyvä ja mielenkiintoinen.
- Hyvä kurssi. Ei tule mitään parannettavaa mieleen. Tietokantojen teoria osio oli mielestäni hieman vaikeaselkoinen, mutta tämä johtuu todennäköisesti siitä etten ole lukenut lukio-tason matematiikkaa.
- Perhaps add more videotutorials.
- Kurssilla voisi olla SQL Trainer tyyppinen sovellus missä voi helpommin käyttää SQL:ää. Esim voisi tehdä helposti jonkun taulun ja kirjoittaa sitä kautta hakuja ja muita. 60-100 SQL kysymyksiin olisi voinut olla enemmän apua.
- Lisää videoita
- Ei erityisemmin tule mieleen kehitettävää.
- + SQLite on hyvä valinta. + Pienet koodaustehtävät olivat todella käytännöllisiä. Pelkkä SQL saattaisi jättää oppilaalle epäselväksi, miten teoriasta päästään käytännön ohjelmointiin. + SQL Trainer on erittäin viihdyttävä. Indeksien tärkeyttä voisi ehkä painottaa vielä enemmän. Jos mahdollista, olisi kiva jos SQL Traineriin lisättäisiin tehtäviä, joissa annetaan taulu ja kysely, ja tehtävänä on luoda indeksejä niin, että kyselystä tulee tehokas. Tai pelkkä taulu, ja tehtävänä olisi luoda sekä kysely että indeksit. En juurikaan lukenut materiaalia, joten siitä ei ole kommentteja.
- Kurssin sql tehtävissä voisi olla laajempi määrä varioaatiota. Nyt 100 melko samanlaista tehtävää tuntuu melko puuduttavalta.
- Perhaps more video lectures could have been helpful in some of the assignments.
- Ehkä materiaalissa voisi olla vielä jokin yhteenveto tai sivu jossa kootaan eri komennot. Nyt joihinkin asioihin palaaminen oli hieman hakemista kun suoraan sisällyksen otsikoista ei enää muistanut, että missä kohtaa “tämä tietty juttu” mainittiin. Toki tälläisen muistilapun olisi voinut myös kirjoittaa itsellekin siinä kaiken lomassa. Noin muutoin materiaali siis oli oikein hyvä, sopivasti esimerkkejä mutta kuitenkin melko tiivis ja selkeä ja hyvin jäsennelty.
- SQL Trainerin kanssa on helppo jäädä jumiin eri tehtävisää. Sitä voitaisiin jollain tapaa helpottaa.
- Suurin osa materiaalista tuntui hyvin käsiä heiluttelevalta. Teoria itse tietokantojen toiminnasta oli mielestäni hyvin puutteellista; tiedän miten tehdä toimivia SQL-kyselyitä, mutta minulla on vain hämärä käsitys miksi ja miten ne toimivat. Miten indeksit oikeasti toimivat? Miten ne kannattaa muodostaa tietokannoissa joissa on esim. monen suhde moneen? Mitkä seikat hidastavat kyselyitä? Jne jne… Tuntuu että tiedän juuri ja juuri miten käyttää tietokantoja, mutta jos joutuisin käyttämään niitä oikeassa projektissa, törmäisin ongelmiin koska en tiedä mitä tietokanta oikeasti tekee. Tietokantojen teoria -luku on mielestäni hyvin heikko. Luvussa annetaan kasa määritelmiä mutta niitä ei juurikaan avata, eikä niistä näytetä mitään varsinaisia tuloksia tai todistuksia. Luvun tehtävissä myös kysytään 2. ja 3. normaalimuodosta, mutta luvussa selitetään vain 1. ja Boyce-Codd normaalimuodot. Ilman aiempaa matemaattista taustaani olisin todennäköisesti ollut hyvin eksyksissä kyseisen luvun suhteen.
- Tasks tehtävät aavistuksen liian soveltavia
- Osassa SQL-tehtävistä kysely “SELECT * FROM Taulu;” tuotti virheilmoituksen “Kyselysi palautti liian monta saraketta” tms. Olisi hyödyllistä pystyä käyttämään tämän tyyppistä kyselyä harjoitusmielessä ja katsoa, mitä se palauttaa. Loppupään tehtävissä se olikin mahdollista, mutta osassa tehtävistä minun piti luoda vastaavat taulukot SQLite-tulkkiin, jotta pystyin vapaasti tutkimaan erilaisia kyselyvaihtoehtoja.
- Kaikkia SQL käskyjä joilla osa tehtävistä olisi ratkennut helpommin ei oltu kerrottu. Toki Googlailemalla löytyi helposti.
- Transaktioista olisi voinut selittää yksityiskohtaisemmin, miten ne toimivat, kun kerran Tasks-tehtävässä piti niiden toimintaa ymmärtää. Materiaalista en itse ihan tajunnut, miksi ne toimivat niin kuin toimivat. Myös indeksit jäivät materiaalin pohjalta vähän epämääräisiksi. Mielestäni jos tehtävässä pitää selittää miksi jokin toimii, materiaalissa pitäisi olla kerrottu siitä tarpeeksi yksityiskohtaisesti.
- I think the course was perfect to teach the basics of the databases.
- Tekisin englannin kielisen version.
- hyvä kurssi, en keksi parannettavaa
- Komentoja, jotka helpottavat tehtäviä, voitaisiin edes mainita nimeltä kuten Exist ja Union.
- Kurssi toimi mielestäni hyvänä johdantona tietokantojen ja SQL-kielen perusteisiin. Sivuston rakenne oli hyvä ja materiaali selkeää ja helppolukuista. Materiaalia olisi voinut olla hieman enemmänkin, joskin ymmärrettävästi sen tekeminen vie aikaa.
- Esimerkkejä SQL-toteutuksista voisi olla vielä enemmän (esim. isompia kokonaisuuksia)
- Lisää selityksiä sqltraineriin siitä, miten päädytään johonkin mallivastaukseen (varsinkin myöhempiin tehtäviin)
- Hyvä kurssi. Tehtävät olivat alkuun helppoja jotta saatiin kerättyä vähän rutiinia ja sitten vaikeutuivat. Tehtävien pähkäily oli erittäin tehokasta opiskelua. SQL:stä jäi mielestäni puuttumaan mm. UNION ja INTERSECTION. Lisäksi erilaiset JOINit (LEFT, RIGHT, INNER, OUTER, CROSS, SELF) olisi voinut vielä vääntää rautalangasta esimerkkien ja Venn-diagrammien kera. Mielestäni kurssilla olisi voinut käsitellä vaikkapa lisämateriaalina enemmän erilaisia tietokantoja ja millaisia käytetään mihinkin sovellukseen. Toki on loogista että sql on pääosassa, mutta kurssin nimi oli kuitenkin tietokantojen perusteet eikä sql:n perusteet. Tietokantojen teoria osuudessa pitäisi mielestäni esittää täsmällisemmät määritelmät relaatiooperaatioille. Olin myös erittäin tyytyväinen ohjaukseen discordissa.
Muita huomioita
- Erinomainen kurssi kaiken kaikkiaan! Mukavan joustava ja mielenkiintoinen. Itsensä tarkistavat tehtävät joita saa kokeilla rajattomasti ovat aina mukavia.
- Materiaali oli erittäin laadukas.
- Tasks tehtävien aloittaminen oli haastavaa
- SQL-trainerin tehtävät olivat erinomaosia ja tukivat oppimista!
- Projektiluontoiset tehtävät ovat tämän kurssin parhaita tehtäviä. Näitä kannattaa vaalia tällä ja muillakin kursseilla. Hyvää kesän jatkoa.
- Tämä oli oikein hyvä ja aiheeseen innostava kurssi! Toteutus tuki omaa oppimistapaani erinomaisesti.
- SQL Trainer on mainio järjestelmä, jossa oli ilo tehdä tehtäviä. Vain yksi pieni käytettävyysparannusehddotus SQL Traineriin: sarakkeiden nimet näkyviin tulostaulukossa. Tämä auttaisi monimutkaisten JOIN:ien korjailussa :) Kiitos kurssista!
- Olisin kaivannut lisää matematiikkaa ja tietokantojen teoriaa. Nyt tietokantojen teoria -osiota on aika vaikeaa ymmärtää, sillä niitä tietoja ei aktiivisesti treenata tai käytetä missään muualla. Itselleni olisi myös ollut helpompaa ymmärtää esim. miten monen taulukon kyselyt toimii jos olisin alusta asti nähnyt miten liitokset toimivat matemaattisesti.
- Ei muita huomioita.
- Thank you for this great course!
- Iso kiitos nopeasta ja hyvästä avusta discordissa! Tykkäsin kurssista kyllä ja tehtäviä oli tarpeeksi eikä liikaa