19.09.2006 10:12 0 kommenttia
Hetkeksi kuoli tämäkin blogi, kun kesäloma iski päälle. No, nyt on kesälomat taakse jäänyttä elämää ja kelitkin alkavat jo näyttää syksyn merkkejä.
Kesäloman jälkeen on kyllä jo tullut kovasti töitäkin tehtyä. Selkeästi suurin projekti oli Verkkoveräjän konvertoiminen käyttämään täysin UTF-8 -merkistöä. Tämä meni kyllä yllättävänkin jouhevasti ja sama homma pitäisi vielä tehdä jossain vaiheessa Verkkolehdellekin.
UTF-8 "siirtymässä" tuli huomattua lähinnä sellainen asia, että vaikka UTF-8 pitäisi olla sähköposteissa jo ihan normaalia tavaraa (ja mielellään oletusmuoto mielestäni), niin kovinpa monissa postiohjelmissa ja postipalvelimissakin vielä on onglemia näiden kanssa. Jo vuonna 1998 on annettu suositus, että kaikkien postijärjestelmien pitäisi tukea UTF-8 merkistöä, mutta eipä näemmä vieläkään ole kaikkia päivitetty 2000-luvulle. Eniten ongelmia tuntuu olevan Webmail-sovelluksissa.
Ehkä suurin syy UTF-8:n toimimattomuuteen on tietotekniikan "amerikkalaisuus". Jotenkin kun tuntuu siltä, että sikäläisille kehittäjille tuntuu aivan käsittämättömältä ajatus siitä, että maailmassa käytetään kenties muitakin kuin heidän kielessään tarvittavia merkkejä. Suomessakin UTF-8 on oikeastaan ainoa järkevä merkistömuoto, jos pitää oikeasti yhdellä merkistöllä hoitaa kaikki meidän viralliset kielemme, eli suomi, ruotsi ja saame.
Veräjä siirtyi myös välineistämme ensimäisenä uuteen versionumerointiin. Muutkin välineet siirtyvät tähän tulevien päivitysten yhteydessä ja jatkossa tämä numerointi kuvaa paremmin tehtyjä muutoksia. Koska kaikista muutoksista ei lähetetä uutisviestiä, niin aloitan välineiden muutoslokien julkaisemisen tämän sivun alisivulla "Muutosloki". Eli jatkossa kun versionumero hypähtää ja uutispostia ei kuitenkaan tule, voi tuolta sivulta käydä katsomassa mitä oikein on muuttunut.
|
15.06.2006 12:33 0 kommenttia
Jatkuvasti kehittyvän softan tekeminen on mielenkiintoista. Haastavia tilanteita tulee vastaan varsinkin silloin, kun pitää lähteä muuttamaan jotain hyvin vanhaa toiminnallisuutta. Eihän siinä mitään, jos voisi vain tylysti sanoa: "Nyt muuttuu tämä näin ja vanha tapa lakkaa toimimasta.". Homma ei vain noin useinkaan mene, vaan ohjelmoijana on vain harrastettava uskomatonta "koodiakrobatiaa" ja löydettävä keinot muuttaa toiminnallisuutta rikkomatta liikaa vanhaa.
Tällä meidän Verkkoveräjällämme on jo hyvin pitkä historia. Alunperin tätä lähdettiin tekemään hiukan toisenlaisiin tarkoituksiin, kuin mihin tätä nykyään käytetään. Koko ohjelmakoodi on uudistettu pariinkin kertaan, mutta tietokannassa on paljon sisältöä, joka on sinne syötetty jo ensimmäisen version kautta. Ja tuota sisältöä ei haluta millään muutoksilla rikkoa.
Hyvin tämä veräjä on kuitenkin nykyisiinkin "vaatimuksiin" venynyt ja juuri olen saamaisillani valmiiksi oikeastaan viimeiset ja vaikeimmat muutokset aivan veräjän alkuajoista juontaviin ratkaisuihin joista "aika on jo hiukan ajanut ohi". Matkan varrella on kyllä paljon opittu ja oikeasti on joutunut miettimään haastavia ratkaisuja.
Parhaimmillaan ohjelmointi on erittäin luovaa työtä.
|
23.05.2006 12:24 0 kommenttia
Me olemme jo vuosia kehittäneet työvälineitämme suurinpiirtein seuraavanlaisella prosessilla:
1. Jostain ("kentältä" tai sisäisesti) tulee kehittämisidea
2. Arvioimme idean toteuttamiskelpoisuuden
3. Mikäli idea on toteuttamiskelpoinen, aloitetaan sen parissa työskentely
4. Työn aikana testaillaan täällä meillä sisäisesti
5. Kun toteutus on "riittävän valmis ja toimiva" julkaistaan se kaikkien käyttöön
6. Toteutuksesta saadaan lisää palautetta ja asioita muutetaan sen mukaan
Tämä malli on enimmäkseen toiminut erittäin hyvin ja pääasiassa näin edetään jatkossakin. Tuo mahdollistaa pienten ja selkeiden muutosten saamisen nopeasti käyttöön, mutta suurempien ja epävarmempien kanssa tulee hiukan ongelmia. Niinpä tuohon kohtien 4. ja 5. väliin lisätäänkin jatkossa tarvittaessa kohta 4.1, joka tarkoittaa laajemmalla joukolla testaamista.
Laajemmalla joukolla tarkoitetaan tässä tapauksessa muita kuin meidän toimistollamme olevia ihmisiä, eli siis sopivaa vapaaehtoisjoukkoa käyttäjistämme. Näin on tavoitteena saada palautetta tehokkaammin, sillä oma porukkamme on välillä niin kiireistä, että jotkut uudistukset vain makaavat jonossa, kun ei kenelläkään ole aikaa niitä tarpeeksi testata. Lisäksi näin on mahdollista testata myös kokeellisempia ominaisuuksia laajemmalla joukolla. Näitä ei uskalla nimittäin suoraan heittää vain käyttöön, sillä kun "kissa on kerran päästetty säkistä ulos, niin sitä ei sinne saa helpolla takaisin". Tällä siis tarkoitan sitä, että käyttöön asti päästetyistä toteutuksista on vaikea päästä eroon, vaikka ne olivat huonojakin.
Käytännössä tämä laajennettu testaus hoidetaan siten, että asennamme palveluistamme erilliseen osoitteeseen testiversiot. Tässä osoitteessa on käytettävissä aina viimeisimmät kehitysversiot, mikä voi tarkoittaa välillä sitäkin, että joukossa voi olla puolivalmiita ominaisuuksia. Testiversiot suljetaan erillisten tunnusten ja salasanojen taakse. Tämä lähinnä siksi, että hakukoneet eivät suotta tuonne mene ja jotta hiukan tiedämme ketkä testaajiamme ovat. Tuolla pyritään myös estämään se, että kukaan ei rakenna testiversioon mitään oikeaa sisältöä. Testiversiolle ei nimittäin anneta mitään takuuta sen suhteen, jos se sattuu syömään sinne syötetyt tiedot ja siinä sivussa naapurin kasvimaankin. Tunnuksia sinällään jaetaan varsin vapaasti kaikille kiinnostuneille.
|
17.05.2006 13:54 0 kommenttia
En ole tätä blogia heti alkuunsa hylännyt, vaan olen vain rakennellut erästä uutta moduulia (esitysmoduuli ainakin työnimeltään), mietiskellyt hiukan kesän huoltotoimia ja niiden aikataulutusta sekä etsiskellyt tietoa uuden palvelinkoneen hankkimiseksi. Kuten jo aikaisemmin kirjoittelin, niin ei tunnu olevan helppoa löytää varmatoimista ja laadukasta laitteistoa. Varsinkaan kun edessä on "sukupolvihyppy" (32-bittisestä 64-bittiseen).
Tuo esitysmoduuli on sellainen idea, joka on ollut jo pitkään mielessä, mutta toteutukselle ei ole vain löytynyt sopivaa saumaa. Eli ideana on tehdä systeemi, jolla voi näppärästi tehdä hiukan PowerPoint-diashown kaltaisen esityksen suoraan webbityökalulla ja selaimella katseltavaksi. Esityksen sisältö kirjoitetaan suoraan yhtenä "pakettina" ja sinne vain merkitään tietyt osat (esim. diojen otsikot) hyvin yksinkertaisilla merkinnöillä, joista järjestelmä sitten "vääntää automaagisesti" diat esitykseen.
Miksi tehdä tällainen, kun on jo olemassa PowerPoint? No, tässäpä vaikka muutamia syitä:
- Kaikkialla ei ole PowerPoint käytettävissä
- PowerPoint (tai OpenOffice) on suhteellisen raskas käynnistää esitysten katselemiseksi
- Edellisistä syistä PowerPoint ei ole hyvä webbiformaatti, silti tällainen diashow-muoto olisi tarpeellinen joidenkin asioiden esittämiseen
- Hyvin pieni joukko todella tarvitsee kaikkia PowerPointin ominaisuuksia
- Kokeilunhalu ja "oma lehmä ojassa" (olen visioinut tällaista työkalua omaan käyttööni)
Kun alkujärkytyksestä tuon esityksen rakentamistavan kanssa toipuu, niin toivottavasti käyttäjät löytävät tästä mielestäni tärkeimmäin ominaisuuden, eli esityksen rakentamisen sisältökeskeisesti. Liian usein sisältö jää jalkoihin (tai ainakin aikaa tuhrautuu), kun käyttäjällä on samanaikaisesti hirveästi "säädettävää" esim. fonteissa yms. Katsotaan kuinka tämä "kuningasajatus" tästä aukeaa kunhan saan tästä kommentteja useammilta käyttäjiltä.
Tuota esityksen näyttämisosaa tehdessä tuli taas revittyä hetki hiuksia päästään. Tein nimittäin kaiken "niin kuin se pitääkin tehdä" (eli html- ja css-speksien mukaan). Tämäpä tietenkin kostautui, kun tuli aika testata tätä (jostain kumman syystä) eniten käytetyllä selaimella. Sehän teki kaiken aivan väärin ja rumasti. Sanomattakin lienee selvää, että kaikki muut selaimet näyttivät kaiken täysin oikein heti kerralla. No, hetken kiroilun jälkeen ei auttanut kuin alkaa vääntämään rumia "purkkaa ja kuminauhaa"-virityksiä, jotta tuon sai näkymään siedettävästi tuollakin kapistuksella. Välillä menee hermo tähän webbikehittämiseen ja lähes aina syyllinen on yksi ja sama. Tuntuu myös, että turha puhua Web 2.0:sta, kun Web 1.0:kin tuntuu olevan vielä rikki.
|
04.05.2006 13:36 0 kommenttia
No nyt sitten aloitin "tuomiopäivänkoneen" rakentelun. Eli kun seuraavan kerran jotain poksahtaa palvelimilla, niin saadaanpahan ainakin tietoa asiasta kulkemaan käyttäjille, eikä heidän tarvi elää epävarmuudessa.
Tällaisen koneen rakentelu on sinällään huvittavaa, että oikeasti toivoo ettei tuota konetta koskaan tarvi käyttää, mutta silti sellainen on hyvä rakentaa. Vähän samanlainen tunne varmaan, kuin kylmän sodan aikaan atomipommisuojia suunnitelleilla insinööreillä. ;-)
Kone tuohon tarkoitukseen on rakenneltu tuolla nurkassa lojuvista vanhoista osista. Se riittää tällaiseen käyttöön hyvin, mutta käyttöjärjestelmän ( CentOS Linux) asennus ei meinaa vain onnistua ihan ilman mutkia. Vika ei missään nimessä ole Linuxissa, vaan vanhoissa cd-rom-asemissa ja epäyhteensopivissa tallennusmedioissa. Kaikki asemat kun eivät lue eri asemilla ja eri medioille poltettuja levyjä. Ärsyttävää.
Ärsyttävää on myös nykyinen tietokoneraudan kehitysvauhti. Olen nimittäin etsiskellyt tietoa uuden palvelinkoneen hankkimiseksi verkkoveräjälle (meidän aktiivisimmin käytetty sovelluksemme). Nyt käytössä olevat koneemme ovat kaikki samanlaisia kokoonpanoja ja osoittautuneet erittäin vakaisi. Mutta niitä ei enää ole saatavissa ja edessä on muutenkin siirtyminen 64-bittiseen aikaan.
Hirveä työ on kyllä yrittää löytää luotettava 64-bittinen emolevy. Google on toki etsinnässä hyvä apuväline, mutta eri tietolähteitä selailemalla tulee vain paha mieli. Näyttää nimittäin olevan enemmän tai vähemmän pikkuvikoja eri valmistajien tuotteissa. Ja kaikkiin on yleensä ohjeena "päivitä firmware".
Kyllä todellakin näyttää olevan totta se, että pahinta mitä koneiden luotettavuudelle on tapahtunut, on flash-muistin keksiminen.
|
|
|

|
|
|
- Kokonaan uuden version kehittely
- "Julkaise kaikki"- ja "Julkaise alikappaleet"-toiminnot
|
|
310.5 kt 25.07.2006 15:24
|
|
49.6 kt 25.07.2006 15:24
|
|
|