Eclipse 3.6 Helioksen myötä kehitysympäristö on taas parempi

Eclipsestä julkaistiin jokin aika sitten 3.6-versio eli tällä kertaa tuttavallisemmin Helios, joka jälleen tekee kehitysympäristöstä asteen paremman. Suuria muutoksia ei hyväksi havaittuun kaavaan ole tehty, vaan uudistuksina löytyy pieniä, mutta hyödyllisiä lisäominaisuuksia. Tarkemman listauksen uusista ominaisuuksista löytää Helioksen About-sivulta What’s New -osiosta (ja netistä: JDT ja platform), mutta tässä muutamia poimintoja.

  • Lisäosien asennus Eclipse Marketplacesta: Tarvittavien lisäosien asennus on nyt helpompaa Eclipsen sisältä löytyvän Marketplacen kautta. Hakusana ja pari kliksautusta, entisen update siten syöttelyn asemasta. Harmillisesti kaikki laajennukset eivät uutta tapaa vielä tue.
  • Web Tools Project sai tuen Java EE 6 -teknologioille kuten Servlet 3.0, JSF 2.0, JPA 2.0 ja EJB 3.1. (Jos niitä vielä pystyisi oikeasti toteutuksessä käyttämäänkin)
  • Formatoinnin kontrollointi: Window > Preferences > Java > Code Style > Formatter > On/Off Tags -kohdasta voi nyt kytkeä päälle annotaation, jolla voi disabloida koodin formatoinnin haluamalleen koodiblokille
  • ”rawtypes” -merkki @SuppressWarnings annotaatiolle: Kääntäjä tekee eron ilmoitettujen varoitusten osalta raw typen käytön ja geneeristen unchecked -operaatioiden osalta.
  • Export All: Formatterin asetuksista voi nyt viedä kaikki käyttäjän määrittelemä asetukset, ja ne voidaan tuoda kerralla. Kätevää, kun Eclipse tulee muutamia kertoja vuodessa asennettua uudestaan.
  • Pakettien nimien lyhenteet: Java-näkymissä voi lyhentää kustomoitavilla säännöillä pakettien nimet. esim. org.eclipse.ui={UI}, org.eclipse.ui.texteditor={T} ja org.eclipse.ui.internal.texteditor=[iT]. (Preferences > Java > Appearance > Abbreviate package names)
  • Lokaalin historian tyhjennyksen voi disabloida: Lokaalin historian kokoa siivotaan aina Eclipsen sammutuksen yhteydessä, mutta sen voi nyt disabloida. Tällöin historian koko kasvaa rajattomasti. (Preferences > General > Workspace > Local History)

Uusi Eclipse on nyt ollut muutaman viikon käytössä ja ihan toimivalta se edelleen vaikuttaa. Kenties hieman myös nopeampi kuin edellinen, ta sitten vain uusi asennus luo hyvää mielikuvaa. Asennuksessa tosin taas meni aikaa säätäessä kaikki kuten aikaisemmin ja Marketplace auttoi hieman lisäosien suhteen, mutta turhan vähän. Samalla vaihdoin Subclipsen käyttöön, joten Maven2-projekien tuonti versionhallinnasta oli kätevämpää. Laitoinpa samalla myös Atlassian Connectorit, jotka vaikuttavat ihan käteviltä. JBossin työkaluista piti tosin asentaa Nightly Build -versiot.

Firefox 4 Beta 1 esittelee tulevaa edistystä

Firefox 4:sta on julkaistu ensimmäinen Beta-versio, joka esittelee kaivattuja uudistuksia luotettavaan selaimeen. Selaimen 4-sarja tuo uudistuksia sekä käyttöliittymään että taustalle ja näkyvimpänä uudistuksena on välilehtien siirtyminen osoitepalkin yläpuolelle, johon liittyen esitettiin jokin aika sitten myös hyvä perustelu.

Heti ensimmäisenä Firefox 4 Beta 1:sta käytettäessä huomaa uuden version vikkelyyden, jonka jälkeen 3-sarja tuntuu kuin ajaisi traktorin perässä moottoritiellä. Muita selkeästi näkyviä uudistuksia on muun muassa Windows 7:ssa parantunut kuvakkeen ja välilehtien toiminta, muuttunut lisäosien ja laajennusten hallinta, OS X:llä tuki Core Animaatiolle, natiivituki WebM-videoformaatille ja parantunut CSS3 ja HTML5 tuki. Lisäksi tulevia ominaisuuksia oli vielä työn alla. Julkaisutiedoista voi lukea, että tunnettuja ongelmia on vielä muutamia, kuten Windowsissa on ongelmia näytönohjainten kanssa ja Mac OS X:ssä välilehdet eivät näytä kivoilta yläpuolella.

Jos Beta versioiden mahdollista epävakautta ei lasketa mukaan, joka itselle ilmeni sinisenä ruutuna, on Beta- ja muiden epävirallisten versioiden puutteena laajennusten toimivuus, joihin joutuu vähintäänkin käyttämään Add-on Compatibility Reporter -lisäosaa, jonka avulla ne saa aktivoitua ja testattua. Ainakin mozvoikko eli suomen kielinen oikolukusanasto -lisäosa näytti toimivan kuten aikaisemminkin Mac OS X:ssä ja Windowsissa, mutta jostain syystä Firefoxin 4b1 -lähdekoodeja vasten käännettynä ks. lisäosa ei toiminut.

Usein aikaisemman version lisäosat toimivat myös uusimmissa versioissa, mutta Firefox 4:n osalta ainakin kätevä käyttäjien skriptien ajamiseen käytettävä Greasemonkey-lisäosa ei toimi enää laajennusten hallinnan muutosten takia. Ilmeisesti sen voi ”korvata” Jetpackilla, joka mahdollistaa lisäosien toteuttamisen käyttäen HTML:ää, CSS:ää ja JavaScriptiä kuten Chromen ja Safarin kanssa. Nopeasti testasinkin Jetpack SDK:ta lisäosien toteuttamiseen, mutta eipä Helvetireader-skriptin korvaaminen oikein onnistunut kelvollisesti.

Mozillan on tarkoitus tuoda uusia Beta-versioita muutaman viikon välein, aikaisemman kuukausien asemasta, joten selaimen kehitystä kohti valmista voi seurata vaiheittain. Web-kehittäjille 4-sarja tarjoaa paljon uudistuksia, mutta totuushan on, että sovelluskehitys kulkee pitkään vielä vanhan teknologian päällä. HTML5:sta, JSF 2:sta ja muusta kivasta saa vain unelmoida, mutta koska Internet Explorerin ohella Firefox on niitä selaimia, joita asiakkaat ”tukevat”, tulevaisuus näyttää nopeammalta. Firefox 4:n Release Candidate -versiota voi ilmeisesti odotella lokakuussa ja viimeisteltyä versiota marraskuussa.

Harmillisesti Beta-versiota testatessa tuli taas tehtyä perinteiset, sillä nopealla testauksella pääsi jo ”tottumaan” uusiin ominaisuuksiin ja etenkin nopeuteen. Pitää miettiä alkaisiko sitä käyttämään pääselaimena Firefoxin Beta-sarjaa vai Chromea, joka vaikuttaa aika lupaavalta pienen etsikkoajan jälkeen. Voikkoa ei tosin Chromeen taida saada. Tai sitten Safaria, johon ilmeisesti saisi VoikkoSpellServicen kautta, jos sen nyt saisi OS X:llä toimimaan, myös oikoluvun.

Voikko 3.0 ja mozvoikko-laajennus

Voikosta julkaistiin toukokuun lopussa 3.0 versio, jossa ei varsinaisesti ole mozvoikon käyttäjälle näkyviä muutoksia, mutta taustalla on tapahtunut muun muassa kehitystä kohti muiden kuin suomen kielen tukemista. Ainakin saamen kielen oikoluku olisi jollain tasolla jo toimiva HFST-backendin kautta samoin kuin suomen kielen Omorfi-morfologia ja uuden kokeellisen Lttoolbox-backendin kautta useampiakin kieliä.

Mutta pysytään vielä kuitenkin vakaasti suomessa, ja koska virallinen mozvoikko-laajennus kulkee jälkijunassa Voikon kehitykseen verrattuna, käänsin mozvoikosta OS X:lle uuden version Voikon 3.0:sta vasten käyttämällä sekä perinteistä Suomi-malaga 1.6:sta että HFST-backendia. Hyvinhän ne näyttivät toimivan ja nyt vielä ilman libiconvia. Epäviralliset versiot sekä OS X:lle että Windowsille löytyvät omalta sivultaan. Pitää vielä ehtiessä kääntää Windows-versio Visual Studiolla, jolloin se olisi ”oikein” käännetty. Suomi-malaga ja Omorfi/HFST -morfologioita tukeva versio on vain OS X:lle ja HFST:n saa käyttöön VOIKKO_DICTIONARY=hfst ympäristömuuttujalla.

PPC-version osalta Voikon kääntäminen iBookilla onnistui kyllä ihan jees, mutta kun mozvoikkoa yrittää ristiinkääntää Intel-koneella, jää homma siihen. Virheilmoitus on lyhyesti ”darwin.o, unsupported encoding in FDE”, joka ei paljon auta. Pitäisi varmaan yrittää vanhemmalla XCodella tuota tai jotain, kun olen kuitenkin PPC-version aikaisemmin onnistuneesti kääntänyt.

Kokeilin myös VoikkoSpellServiceä eli OS X:n oikolukukomponentin kääntämistä, mutta en vieläkään ymmärrä, miten sen saa muka toimimaan. Vaikka kaikki kääntyi XCodessa ihan hyvin, eikä Consoleen tullut mitään virheilmoituksia, ei suomea näy oikoluvun valinnoissa. Edes virallista palikkaa en saa toimimaan, mutta Soikon vastaava palikka kyllä toimii. Ei voi ymmärtää.

Golf, tuo herrasmiesten taitolaji

Nyt kun opiskelut ovat jääneet taakse, on hyvää aikaa aloittaa uusia harrastuksia kuten golf, jonka jälkeen ajankäytöllisiä ongelmia ei olekaan. Siis sitä ongelmaa, mihin kaiken opiskelulta jääneen ajan käyttäisi. Vaikka golf on periaatteeltaan suhteellisen yksinkertainen laji, on se käytännössä kaukana siitä ja jo kohtalaisen svingin, eli lyönnin, saavuttamiseksi saa tehdä töitä. Mutta kun lyönti onnistuu ja pallo kiitää kaaressa pitkälle greeniä, on tunne mahtava. Tähän kun lisätään vielä 18 reikää ja vajaat neljä tuntia bägin kanssa kävelyä, on hyvä ajanviete valmis.

Sain valmistujaislahjaksi lahjakortin Golfin peruskurssille Kytäjä Golfiin, jossa PGA Pro Antti Vaalas opasti lajin saloihin kolmena opetuspäivänä ja yhtenä pelipäivänä, jolloin kierrettiin 9 reikää. Lisäksi pakettiin kuului neljä pelilippua, Kytäjä Golf Ry:n vuosijäsenyys ja tietenkin Green Card alkutasoituksella 54. Kurssin jälkeen lyönnit jo osuivatkin kohtalaisella onnistumisprosentilla väylälle, joten ehkä tästä pelistä jotain tulee muutakin kuin nurmipinnan moukarointia.

Golf on lajina maineeltaan suhteellisen elitistisessä asemassa, ja ei se toki aivan niitä edullisimpia harrastuksia ole, mutta alkuun pääsee kohtalaisen huokealla. Kentän kiertäminen kustantaa muutamasta kympistä vajaaseen sataan euroon per 18 reikää vieraspelaajan green fee -maksulla, mutta rangelle pääsee palloa hakkaamaan jo muutamalla eurolla per kori. Kun tähän lisätään varusteiden kuten käytettyjen mailojen, golfbägin ja mukavien pelivaatteiden hankinta, on alkupanostus muutamassa satasessa.

Itse ostin parilla kympillä työkaverin vanhat aloittelijamailat (puolikas setti), joilla pääsee hyvin alkuun ja niiden kaveriksi Niken Sasquatch Tour Carry -bägin, jolla mailoja on mukava kentällä kanniskella. Lisäksi golf-etikettiin kuuluu hieman siistimmät vaatteet kuin farkut ja t-paita, joten kaupasta lähti mukaan myös pari pelipaitaa ja housut, jotka ovat puuvillavaatteisiin verrattuna paljon paremmat. Lisäksi ostin Eccon Casual Cool II -golfkengät, joilla kentällä on mukava kävellä. Kuten kaikissa urheilulajeissa, on lajin harrastaminen paljon hauskempaa kunnon varusteilla ja välineillä, joilla siitä nauttii.

Peruskurssin jälkeen olen nyt käynyt muutaman kerran rangella hakkaamassa palloa ja ehkä se lyönti alkaa sieltä löytymään. Perustekniikka on tiedossa, mutta sen toteuttaminen onkin sitten toinen asia. Kropassa on turhan paljon jäykkyyttä rentoon heilahdukseen. Toiveita kuitenkin on, sillä opettaja totesi hyvin muutamalle kurssilla perusteita kertaavalle, että eihän golfissa muuta olekaan kuin perusteita. Tietenkin lyöntiin vaikuttaa moni asia, mutta kaikki lähtee hyvästä otteesta ja heilahduksesta.

Jos lyöntitekniikassa ei mitään mystillistä ole (karkeasti sanottuna), niin vastaavasti mailojen valinnassa ja tekniikassa sitä löytyy, ainakin mitä golf-aiheisia foorumeita lukee. On nostokulmaa, lapakulmaa, offsettiä, bouncea, varren jäykkyyttä, taipumaa, svingipainoa ja valettua tai taottua lapaa ja vaikka mitä nyanssia. Aloittelijan onkin hyvä vakiinnuttaa ensin oma svingi, kuin sännätä kauppaan ostamaan satojen eurojen mailasettejä. Perusrautasetillä pärjää alkuun mainiosti ja puumailat usein vain sekoittavat lyönnin. Tietenkin pitkillä väylillä avaus esimerkiksi puukolmosella tuo pallon todennäköisesti lähemmäs lippua kuin raudalla huitaisu. Draiverin hankinta aloittelijalle on kuulemma aika turhaa.

Oma kotikenttä löytyy siis nyt Kytäjältä Hyvinkään kupeesta, johon on hieman ikävän pitkä matka Helsingistä, noin kolme varttia, mutta lähiseuduilta löytyy kyllä useita kenttiä joilla käydä kiertämässä ja lyöntiä treenaamassa. Löfkulla Golfin range on tullutkin jo testattua ja Paloheinä Golf on myös lähellä. Kotikentällä olisi vain se etu, että siellä range on nurmikolla ja pallot ilmaisia. Kytäjä on kyllä yksi Suomen hienoimmista golf-kentistä kahdella 18 reiän kierroksella, mutta niin on hintakin komea. Vuokrapelioikeus kustantaisi loppukaudeksi jotain 900e tietämillä ja green fee kierrokselta on 90e. Ei sillai, ettäkö edes tasoitus tuonne riittäisi, mutta eiköhän se edes hieman niiden neljän puolikkaan kierroksen aikana laske.

Nyt vain pitäisi luottaa siihen, että Suomen kesässä on paljon aurinkoisia päiviä siten, että osan niistä voi käyttää pyöräilyyn ja loput golffiin. Rangelle voi sentään lähteä hieman heikommassakin säässä ja näin alkuun se tosiaan on tarpeen. Harmillista vain, että on ilmeisesti enemmän sääntö kuin poikkeus, että rangella on matot, eikä nurmikkoa, josta pallon lyönti vastaisi enemmän pelitilannetta.

Päivän linkit 12.6.2010

Macbook ja kiintolevyn ääntely

Alkaa jo hieman usko teknologiaan loppumaan, kun uusi kiintolevy jatkoi kliksutteluaan siitä mihin entinen levy jäi. Klik… klik… klik.. ja smartctl -a /dev/disk0 | grep Load_Cycle_Count arvo jatkoi vaan kasvamistaan. 22 tuntia levy käynnissä ja 814 sykliä kasvaen muutamalla per minuutti. Ei hyvä, ei todellakaan. Seagaten levyille kerrottuna raja-arvona 600 000 sykliä lähestyisi samalla tahdilla pelottavan nopeasti.

Ongelma ei kuitenkaan ole uusi ja Google tarjosikin syyksi kiintolevyn yliaggressiivisen energiasäästön, joka siis laittaa lukupäät parkkiin turhan tiheästi. Ongelma esiintyi alkuun Seagate Momentus 7200.4 GFO levyllä, joka lopulta äityi ääntelemään enemmänkin ja jumitti konetta parin sekunnin katkoin, mutta jatkui myös uuden Western Digital Scorpio Blue (WD5000BEVT) levynkin osalta ensin hitaammin, mutta kiihtyvällä tahdilla. Voi vitjat, mitä teknologiaa.

Ratkaisuna on levyn energiasäästön säätäminen vähemmän aggressiiviseksi, joka onnistuu esimerkiksi hdparm-ohjelmalla Linuxissa, mutta eihän Macille tietenkään sitä löydy. Onneksi asetusten muuttaminen onnistuu hdapm-ohjelmalla, joka on OS X:lle tehty komentorivityökalu energiasäästö (APM) tasojen asettamiseksi.

Ja kas, hdapm disk0 max -komennon jälkeen levyn kliksuttelu loppui täysin. Nyt vielä hdapm-binäärin sijoitus /usr/local/bin ja hdapm.plist -tiedoston sijoitus /Library/LaunchDaemons -hakemistoon ja ratkaisu ongelmaa oli valmis. Nyt asetus pitäisi määräytyä aina käynnistyksessä ja sen voi tarkistaa Consolesta, josta pitäisi löytyä rivi ”Setting APM level to 0xfe: Success”.

Nettikeskusteluiden perusteella ei oikein saa selvää, onko ongelma Applessa (Late 2008 Macbook) ja itse päivitetyn levyn firmwaren epäsopivuudessa vai missä, mutta tärkeintä on, että ongelma on ainakin tältä erää toivottavasti ratkaistu. Samanlaista ja äänekkäämpääkin ongelmaa Apple korjasi Mid 2009 Macbook Pro:n levyjen osalta, mutta Apple Discussions -palstan juttujen perusteella ongelma koskettaa kaikkia itse päivitettyjä levyjä, joissa ei ole sisällä Applen firmwarea ja ongelma olisi EFI:n versiossa 1.7.

Seagate Momentus -levyn osalta oli lisäksi ”ongelmana” OS X:n Sudden Motion Sensorin ja levyn G-Force Protectionin yhteistoiminta, jota uumoiltiin ongelman lähteeksi, mutta pmset -a sms 0, eli sensorin poiskytky ei naksutteluun vaikuttanut. Nyt uudessa WD:n levyssä ei omaa putoamissuojaa ole, joten sensorin voi taas kytkeä päälle.

Pitäisikö Web-sovelluksilla olla yhtenäinen tyyli ja logiikka?

Nykyään suuri osa sovelluksista toimii Web-selaimissa ja sovellusten osalta on havaittavissa siirtymää työpöydältä Web-sovelluksiksi, jolloin aikaisemmin suhteellisen samanlailla toimivat ja näyttävät käyttöliittymät muuttuvat monimuotoisiksi. Web-maailmassa ei ole yhtenäistä tapaa toteuttaa asioita, vaan jokainen suunnittelija tekee kuten parhaimmakseen näkee ja sovellusten ulkoasut vaihtelevat suuresti. Perinteisten työpöytäsovellusten osalta eri sovellukset toimivat suurin piirtein samoilla periaatteilla ja toimintopainikkeet sekä näyttävät samoilta että löytyvät tutuista paikoista.

Usability Post kysyykin, pitäisikö Web-sovelluksilla olla yhtenäinen käyttöliittymä, eli ulkoasu näyttäisi ja toimisi visuaalisesti samoilla periaatteilla, kuten työpöytäsovelluksissakin eri käyttöjärjestelmissä sovellukset ovat usein yhtenäisiä keskenään. Tutut toiminnot näyttäisivät samoilta eri Web-sovellusten välillä, kun nyt painikkeiden ja komponenttien ulkoasut vaihtelevat enemmän tai vähemmän eri sovellusten välillä.

On totta, että sitä toivoisi sovellusten toimivan edes suurin piirtein samoilla periaatteilla, ettei aina tarvitsisi arpoa miten asiat nyt tässä toimivatkaan, mutta yleisesti ottaen on vaikea nähdä, että eri Web-sovellukset näyttäisivät peruspiirteiltään samanlaisilta, toimisivat samalla tavalla tai käyttäisivät samoja komponentteja. Web on visuaalisesti toinen maailma verrattuna työpöytäsovelluksiin, joka myös heijastuu sovellusten toimintoihin. Webin osalta ei oikeastaan odoteta, että eri sovellukset näyttäisivät yhtenäisiltä, vaan ollaan jo totuttu, että jokaisen sovelluksen kohdalla pitää aina oppia uudestaan perustoiminnot ja logiikka. Onneksi suunnittelijat tekevät sovellukset usein helposti opittaviksi ja joissa asiat toimivat kuten niiden olettaa toimivan. Tai ainakin näin haluaisi uskoa, sillä todellisuus on välillä aivan jotain muuta.

Kun asiaa ajatellaan pienemmällä skaalalla, olisi sovelluskehittäjällä hyvä olla karkealla tasolla välineet yhtenäisen käyttöliittymän toteuttamiseksi, ainakin saman asiakkaan sovellusten osalta. Toki usein saman kehittäjän sovelluksissa toistuvat samat ratkaisut ja uudestaan käytettävät palikat, joilla yhtenäisyyttä syntyy kuin itsestään. Miksi keksiä asioita uudestaan, kun ne ovat jo kerran toteutettu, ellei asiaa keksi ”paremmin”. Suunnittelun ja ratkaisujen avuksi löytyy myös apuvälineitä, joilla visuaalista ilmettä ja sovellusmaista toimintaa voidaan tukea.

Webissä ei ole yhtä ja oikeaa tapaa toteuttaa asioita, vaan monet ratkaisut ovat yhtä hyviä. Mallia voi ottaa esimerkiksi useilta suunnittelumalli-sivustoilta kuten UI Patterns, YPatterns ja UI Pattern Factory. Lisäksi erilaiset komponenttikehykset kuten JQuery UI ja Java EE -maailmassa RichFaces ja PrimeFaces tarjoavat omia ehdotuksiaan toiminnoille. Vaihtoehtoja on monia ja lopputulos on usein eri ratkaisujen yhdistelemistä, jolloin sovellus koostuu useista erilaisista käyttöliittymäratkaisuista. Harvoin eri valmiiden ratkaisujen mallit toimivat suoraan omiin tarpeisiin nähden ja niitä joudutaan vähintäänkin visuaalisen ilmeen osalta virittelemään.

Koska Web perustuu pohjimmiltaan HTML:ään ja CSS:ään, voidaan valmiita komponentteja yleensä muokata ulkoasultaan tarpeiden mukaan ja soveltaa toisaalla havaittuja hyviä asioita. Esimerkiksi Web-sovelluksen käyttöliittymää varten voidaan soveltaa Cappucino tai Sproutcore -kehysten Creative Commons Attribution Share-alike -lisenssin alaisuudessa olevia Ace- ja Aristo-teemoja, jotka näyttävät siisteiltä ja tarjoavat yhtenäisen ulkoasun eri komponenttien välille.

Molemmat teemat näyttävät nykyaikaisilta ja niillä on enemmän yhteistä kuin eroa, jonka voi todeta lyhyestä vertailusta. Enemmän teemojen toiminnasta saa selville, kun vierailee teemojen demosivuilla. Sproutcoren Ace-teemasta on havaittavissa yhtäläisyyksiä OS X:n Aqua-teemaan ja SproutCoren kehitys onkin Applen sponsoroimaa. Cappucinon Aristo-teema ei ole niin silmiinpistävä kuin Ace, keskittyy näyttämään hyvältä sekä Windowsissa että OS X:ssä ja sopii paremmin vakavampiin sovelluksiin.

Molempien teemojen soveltuvuus omaan käyttötarkoitukseen riippuu toteutettavasta sovelluksesta, mutta niistä voi ainakin ottaa hieman mallia, miltä peruskomponentit voisivat näyttää. Cappucinon Aristo-teema on hieman helpommin otettavissa testiin ja se on saatavissa PSD -kuvina ja kolmannen osapuolen CSS 3 toteutuksena. Sproutcoren Ace-teema löytyy vastaavasti vain sprite-kuvina, joten teemaus pitää hoitaa itse loppuun, mutta se tarjoaa kattavamman valikoiman eri komponentteja ja malleja.

Ikävä tosiasia valitettavasti on, että sovelluksen ulkoasun eteen joudutaan aina askartelemaan enemmän tai vähemmän. Esimerkiksi jos sovelluksessa otetaan käyttöön jokin valmis komponentti, pitää sen ulkoasua joko muokata vastaamaan muuta sovellusta, tai käyttää valittua kirjastoa kaikilta osin jokaisen komponentin kanssa, jolloin eroavaisuuksia on mahdollisimman vähän. Valituista ratkaisuista riippuen tämä on enemmän tai vähemmän helppoa. Esimerkiksi JQuery UI:n komponenteille voi määritellä haluamansa ulkoasun kätevästi Theme Rollerin avulla, mutta vastaavasti samanlainen teemanrakentaja tarvittaisiin myös RichFaces-komponenteille, joiden teemaus on suhteellisen työlästä ja osittain arpapeliä. Muutenkin aina tuntuu, että useat valmiit ratkaisut eivät toimi kuten niiden haluaisi toimivan, eikä niitä usein voi myöskään helposti muokata riittävällä tasolla.

Kaikenkaikkiaan Web-käyttöliittymä voi näyttää upealta, jos siihen viitsii panostaa, mutta Web-sovelluksilla ei mielestäni tarvitse olla yhtenäisiä periaatteita. Web on monimuotoinen ja asiat saavat toimia, kuten ne parhaimmikseen näkee, kunhan ne silti toimivat loogisesti ja ymmärrettävästi. Toki yhtenäiset ratkaisut helpottavat käyttäjän elämää. Toisaalta Webin käyttöliittymät eivät helposti vertaudu perinteisiin työpöytäsovelluksiin, ainakaan nykyisillä teknologioilla ennen HTML5:n ja CSS 3:n yleistymistä, joten sallittakoon niille myös omat tyylinsä, kunhan ne ovat hyvällä maulla toteutettuja.

Pitääkin tässä edistää työlistalle hautautunutta tehtävää jalostaa omaa visuaalisesti yksinkertaista komponettiteemaa eteenpäin ja rakentaa vastaava teemaus myös RichFaces-komponenteille, jolloin asiakkaan sovellus saisi vielä nykyistä yhtenäisemmän ulkoasun.