Tuesday 2 November 2010

Huono arkkitehtuuri

Vuodenvaihde lähestyy. Viime vuodenvaihteen eläneet tietävät mitä tämä tarkoittaa. Aivan, vuodenvaihteessa 2008->2009 Yool syntyi internettiin, Webs-palveluun (ex-freewebs). Silloin kaikki oli vielä helppoa, ei tarvinnut osata edes html:ää ja nettiin sai... ei nyt kauniit, mutta lukukelpoiset sivut. Vuodenvaihde 2009->2010 muutti taas kaiken. Yhtäkkiä omiin, henkilökohtaisiin standardeihini nousivat mm. PHP ja jonkinlainen lukukelpoinen, selkeä ja helposti toteutettava ulkoasu. Tämä kaikki onnistui mbnetissä.

Uuden vuodenvaihteen myötä suunnittelen taas uutta uudistusta. Sivustojen (Yool & Pröng) käyttäjille sen ei pitäisi näkyä muuten kuin paljon parantuneena käyttökokemuksena. Kuten tiedätte, on Pröngin luonnoskommenttisysteemi ollut puoli-valmis koko elämänsä ajan. Tämä johtuu huonosta arkkitehtuurisuunnittelusta pröngin kasauksen alkuvaiheessa. Huomasin myös eräänä päivänä että A) Yoolin Vaihda Salasanaa - sivu on rikki. Latasin sivun ftp:llä työpöydälle ja yritin puukottaa sitä toimivaksi, huonolla menestyksellä.

Nämä molemmat (ja muutama muukin) ongelmat johtuivat siis typerästä arkkitehtuurista. Lähdekoodi on kauniissa sekamelskassa. Kyseessä on siis ns. CoolBasic-syndrooma: minulla ei ollut mitään tietoa siitä mitä mikin muuttuja Yoolin salasananvaitosivun lähdekoodissa tekee, mistä se on lähtöisin ja mihin se menee. Helpompaa on siis suunnitella kaikki (jälleen :)) alusta ja kunnolla.

Niinkuin taisin sanoa, ainakaan Yool 4.1 ei tule kokemaan suuria ulkoasumuutoksia. Toki jos joillain on hyviä ideoita, olen avoin ajatuksille. Pröngin ulkoasu pysyy myös entisenlaisena. Siellä lähinnä yhdenmukaistan tyylejä, säädän uudelleenohjauksia ja toteutan ehdotettuja ominaisuuksia (kuten: "sen sijaan että hakisi luonnosta 111212, sivusto ymmärtää hakuIDllä 212 että haetaan sitä luonnosta").

Pröng tulee kokemaan suuria arkkitehtuurisia muutoksia. Rakennan uuden systeemin PHP5:n olioilla, samasta syystä kuin C++aa suositaan enemmän kuin C:tä (täällä, kappaleessa The Procedural Way, koodiin asti, selitetään mielestäni melko kivasti A) miksi oliot ovat äärettömän kivoja B) miksi tämä vuodenvaihdepäivitys tulee molemmille sivustoille), ja todennäköisesti perustan ikiomaan tietokantaani Pröngtaulun.

Tämä, Pröngin perustaminen tietokantataulun päälle, tarkoittaisi sitä että joutuisin sorvaamaan tiedonsiirtosysteemin koti.mbnet.fi/pilpo/Luonnokset - hakemiston ja feuer.viuhka.fi/prong - hakemiston (joka, osta tie, ei ole vielä olemassa!) välille. Syy sille etten voi vain kopioida luonnokset säilövää hakemistoa mbnetistä viuhkaan on, että A) luonnokset eivät ole tietokannassa, jossa niiden käsittely olisi helppoa, vaan ne ovat tekstitiedostoja, ja B) nämä tekstitiedostot eivät ole täysin yhteensopivia nykyisenkään pröngin kanssa.

Yoolin konepellin alaisista uudistuksista taas... En usko että niitä on kovin paljon ja kummallisia. Siellä vain selkeytän koodia. Nykyisessäkään Yoolissa ei ole niin paljon typeriä ratkaisuja, että niiden määrällä voisi perustella päivitystä. Yoolissa hiertää enemmän koodin lukukelvottomuus.

YHTEENVETO: Molemmat sivut päivittyvät, ja deadline on tällä hetkellä vuodenvaihteessa. Ulkoasupäivityksiä ei kannata odottaa, ellei niistä erikseen vihjata. Pröngin toimivuus paranee ja Yoolin huolimattomuusvirseitä korjataan.

No comments:

Post a Comment