BEAWorld-ilt veel, hilinemisega

Agenda:

  • Ikka veel uus ja palju tõotav: RFID
  • Juba vana nali: SOA
  • Ka kõva sõna: IMS ning SIP

Ikka veel uus ja palju tõotav: RFID
RFID on asi, millest juba aastaid räägitud, pidevalt vihjatud kui millelegi äärmiselt suure potentsiaaliga leiutisele või lahendusele, kuid tegelikkuses siiski veel mitte nii laialt levinud. Jutt on siis väikestest Radio Frequency Identificator-itest, kes veel pole kuulnud. Pisikesed kiibid, mis sisaldavad infot ning mis, kas saadavad seda välja või annavad seda päringu peale. Kiipidega saab erinevaid jubinaid märgistada ning siis mingi süsteemi abil neid trackida või muud sarnast korraldada. Põhimõtteliselt on võimalik nende abil kõike teha. Inimese fantaasial pole ju piire. Siiski on rohkem mõeldud kiibid sellisteks “Big brother” tüüpi tegevusteks nagu näiteks kauba (mis vabalt võib ka inimene olla) jälgimine jms. Näiteks vagunil on RFID tag ja iga kord kui ta sõidab lugeja juurest läbi, tehakse kanne automaatselt mingisse süsteemi. Samuti võiks seda kasutada poes triipkoodi asemel. Kogud kauba korvi sõidad lugeja vahelt läbi ning saad tšeki.

Continue reading “BEAWorld-ilt veel, hilinemisega”

Tühikud vs Tabid

Meil oli siin “väike” fleim tabide ja tühikute teemal ja sellega selgus, et inimesed ei saa päris hästi aru, mis värk nende tabide ja tühikute segamisega on.

Paljud väitsid, et tabidega ei saagi normaalselt treppida, et kõik läheb kohe katki. Mina väidan, et kui tabe õigesti kasutada, siis ei teki mitte mingeid probleeme. Asi on selles, et tabe peab kasutama ainult treppimiseks ja mitte mingil juhul joondamiseks.

Kõige lihtsam on seda seletada pildiga.
See on originaal, tabi laius on 4:

ts4.png

Kaks pilti, tabi laiusega 2:
ts2.png
ja 8:
ts8.png
Funktsioonide kirjeldused:

  • omgsobadstyle – Tabe ja tühikuid on kasutatud igal pool segamini.
  • badstyle – Tabe on kasutatud nii palju kui võimalik aga täpsem joondamine on tehtud tühikutega.
  • goodstyle – Tabe on kasutatud ainult treppimiseks. Joondamiseks kasutatakse ainult tühikuid.

Piltidelt on näha, et kui kasutada tabe nii nagu ette nähtud (goodstyle), siis ei lähe koodi formaat katki ja iga progeja näeb koodi nii nagu ta silmadel mugav on. MOTT.

Kui nüüd aus olla, siis olen ise rohkem tühikumees, põhjusel, et ükski editor ei tee vahet treppimisel ja joondamisel ja seetõttu peab seda käsitsi tegema. Mulle lihtsalt ei meeldi, kui tabe kiusatakse ja hea fleim kulub alati ära :)

PS. Kui kedagi huvitab, kuidas saab vim’i panna tabe näitama, siis selleks on parameeter listchars. Antud näidetes siis “set listchars=tab:>-“.

SVG kui joonistamisvahend

Põhjustatuna sellest, et SVG (Scalable Vector Graphics) pole kahjuks eriti tuult tiibadesse saanud, siis ei saa teda kasutada vektorgraafika avalikuks esitlemiseks. Seda lihtsal põhjusel, et enamik inimesi lihtsalt ei näe seda. Osalt nokk kinni, saba lahti probleem.

Vähene tugi brauserites aga ei tähenda, et SVG oleks halb formaat vektorgraafika kirjeldamiseks ja tegelikult on olemas ka mitmeid SVG rasteriseerijaid. Seetõttu olen igasugu piltide “joonistamiseks” SVG-d kasutanud ja need teistele näitamiseks rasteriseerinud. Et siis põhimõtteliselt kasutan SVG-d kui vektrograafika joonistamise teeki. Kuigi see võib esmapilgul tobe tunduda, siis minu jaoks on selleks palju erinevaid põhjuseid:

  • Ma ei pea õppima ühtegi vektrograafika teeki. SVG teadmisest on mul igas keeles kasu. Ja kuna ma teen piltide genereerimist väga harva, siis on see argument seda enam kaalukam.
  • Päeval kui SVG popiks muutub võin rasteriseerimise etapi ära jätta.
  • Päeval kui SVG popiks muutub tunnen ma SVG-d.
  • Ma saan SVG-d käsitsi “debugida” – näiteks värve või joone jämedust muuta.
  • Ma saan suvalises vektrograafika programmis keeruka pildi valmis joonistada ja hiljem seda programselt muuta. SVG on ju XML. Mis paneb mõtlema, et äkki oleks siin ka XSLT-st kasu? Peab proovima.

Muideks, viimane punkt näitab, et läbi SVG on võimalik disaineri ja progeja koostöö vektorgraafika genereerimisel. Näiteks disainer joonistab ilusa diagrammi valmis, sina ainult muudad numbreid ja pikkusi. Ja kui veel kaugemas tulevikus SVG-d otse veebilehel kasutada, siis saab ühe CSSiga ka diagramme värvida. Arvan, et disainer oleks õnnelik.

Nagu ikka viimasel ajal, olen ka selleks arenduseks Ruby-t kasutanud. Abiks on teek nimega Ruby/SVG, mis on küll suhteliselt lihtne ja kõiki SVG võimalusi temaga kasutada ei saa – näiteks gradientidest olen puudust tundnud. Rasteriseerimiseks olen kasutanud BatikSVG-d, viimane on küll Java teek/rakendus, aga see mind ei häiri.

Kindlasti on sellisel lähenemisel miinuseid, aga mina olen senimaani sellega rahul olnud.

Füüsilised asjad lihtsalt on lahedamad?

Ühel päeval tabas meid kõiki vaimustus, kui nägime unit testide tulemusi tšekiprinteril. Selles oli midagi väga lahedat, kui testi tulemused printeri kräginal termotrükis paberile ilmusid. Isegi vaatamata sellele, et teste on ainult üks.testitulemused paberil
Ja kui kedagi huvitab siis unittestimise teegiks kasutasin CuTest-i. Põhjus on lihtne – kuna käesoleval raua api ei käitu päris nii nagu peaks, pidin tegema natuke portimistööd ja CuTest oli lihtsalt kõige väiksem teek mis ma leidsin.