Nyt sitten tulee ehkä jo hieman unohdetusta aiheesta tekstiä, eli tuosta Winamp-säädöstä. Heti kyllä huomautan että ei se jäädäkseen ole tullut, tuntuu että noita tilaajia/lukijoita tuli lisää kun säätäminen väheni
Nyt vihdoin sain aikaiseksi pusertaa itsestäni tuloksia ajatellen juuri oikeita hakusanoja sitä silmällä pitäen, että yritän saada sql-tietokantaan tungettua noita soittotietoja ja totta kai myös haettua niitä. Tässä olen nyt saanut aikaiseksi sen että manuaalinen syöttö ja haku toiminee, eli proof of concept on ikään kuin itselleni nyt selvillä. Suurin kompastuskivi oli juuri tämä tähän saakka.
Toivottavasti siis piakkoin soittamieni artistien tilastointia saan myös tuonne lisättyä. Mietin vielä että jaksanko väkertää erillisen skriptin jolla saisin tähän asti tekstitiedostoon tungetut biisit ujutettua tietokantaan myös vai alistunko siihen että vain tulevat soitot pääsee tilastoinnin piikkiin. Myöskin, koska soitetusta biisistä kerätään muutakin tietoa kuin tuo bändi ja nimi, saattaisi tuo tietokanta alkaa turpoamaan jos sinne tunkisin myös albumi, kesto ja soittohetki tiedot. Niistä toki saisi mielenkiintoisia tilastoja, luultavasti, jos innostuisin taas kunnolla koo…säätämään.
MySql optimointi ei valitettavasti ole parhaimpia alueitani säätämisen saralla. Se ei ole kyllä edes huonoin, sillä en osaa optimoida tietokantoja lainkaan. Jos vaikka tyytyisi siihen, että jokaisen biisin kohdalla tallennettaisiin vain soittokerrat ja viimeisin soittoajankohta, rivimäärä ei turpoaisi jatkuvasti. Tietenkin biisin kesto täytyisi tallentaa keskiarvolaskentoja varten
Tämä jo liiankin pitkään ikiroudassa ollut projekti näyttäisi heräävän henkiin kuin Siperian mammutit, tosin nyt jo suuremmalla onnistumistodennäköisyydellä. Tähän kun pääsen kotona paneutumaan, eipä lopu tekeminen, into eikä ajantajun hukkaaminen kesken. Lähes yhden hengen sisäpiirivitsinä mietin että ottaisin ohjelm…kooda…säätölomaa viikon, ja mietin sitä jopa ennen tätä erittäin tuoretta “läpimurtoa”. En nyt sentään niin tee.. kai. Sairasloma sopisi kyllä.
Tämäkin merkintä oli lähellä jäädä äsken luonnokseksi tässä kohtaa kun eksyin taas tuon säädön pariin. Ensi kertaan sitten tästä aiheesta.

Tukiopetuslapsi kommentoi:
Hei, jos aiot pitää lomaa, niin kerro vähän etukäteen. Meikälläkin on pari viikkoa käyttämättömiä viime kaudelta ja tämän kauden lomat kokonaan. Synergiaetuja?
Toiseksi, keskimääräisen keston laskemista varten ei tarvitse tallentaa kaikkien soitettujen biisien kestoa. Riittää, kun tallennat johonkin tähän saakka soineiden keskiarvon ja soitettujen biisien määrän. Uusi keskiarvo lasketaan seuraavasti:
t_ka_uusi = ( n * t_ka_vanha + t_nyt) / ( n + 1 )
missä n = soitettujen biisien määrä, t_ka_uusi ja t_ka_vanha ovat biisien keskimääräinen kesto nyt soivan kappaleen jälkeen ja ennen, ja t_nyt on nyt soivan kesto.
Kysy vaan multa.
Kuraattori kommentoi:
Joo enpä mä ihan yhtäkkiä lomia saa edes.
Höpö höpö, ka halutaan laskea listatuista biiseistä eikä pelkästään kaikista. Ei tuo nyt niin isoa overheadia saa aikaan. Algoritmit ja muut on nyt vasta seuraavan kehittelyn aiheena. SQL+PHP-yhteys on nyt vasta selvillä, pitää miettiä tietokantarakenne ja -sisältökin vielä. Kunhan ehdin nukkua ensin.
Tukiopetuslapsi kommentoi:
Jummarsinko nyt oikein? Haluat laskea Winampin soittamien, eli tietokantaan lisättyjen biisien keskimääräisen keston? Niinhän tuo ehdottamani algoritmi juuri tekeekin. Kun tietokanta on tyhjä, on keskimääräinen kesto 0 ja biisien määrä 0. Ekan biisin jälkeen keskiarvo on kyseisen biisin kesto ja n = 1. Tokan biisin jälkeen ka2 = ( 1 * k1 + k2 ) / ( 1 + 1 ), 3. biisin jälkeen, siis n = 2, keskiarvo ka3 = ( 2 * ka2 + k3 ) / ( 2 + 1) ja niin edelleen.
Jos taas haluat kaivaa tietokannasta esim. kaikki soitetut Turmion Kätilöiden biisit, niin sitten on tarpeen tosiaan tallentaa jokaisen soitetun biisin kesto erikseen.
Kuraattori kommentoi:
Juu, tuo toinen vaihtoehto. Ymmärsin kyllä tuon algoritmin, mutta yksi tieto per biisi lisää antaa analysointia varten enemmän pelivaraa ilman kovin suurta lisäkuormaa.