Developing a mobile blogclient with Breeze

breeze similator with mloggerI’m one of those crazy gadget-loving freaks that are eagerly awaiting the arrival of the Palm Pré. One of the reasons I’m that exited about that device is the development-stack. Applications are written on the Mojo-framework: html+css+js plus a great API to interface with the OS and hardware. But the Pré isn’t available yet and there’s nothing more to do then drooling over the specs, the pics and the vids. Or is there?
Actually there are more companies betting on html+css+js-stack as mobile application development platform; the mobile version of Google Gears allows you to download web-applications to run locally (which is a slightly different approach, but with approximately the same result). And another giant, Nokia, has its Web Runtime for S60 5th edition devices, which seems to follow the W3C widget-specs to some extend (they can be tested as Opera widgets).
The issue with both environments however, is the lack of an API to interface with the phone. And that is not the case for my latest crush; Cascada Mobile‘s Breeze. Breeze provides you with a simulator (or Eclipse-plugin) and a simple javascript API to access o.a. storage, contacts, camera, gps and network off course. It compiles your applications into J2ME midlets, which can then be distributed via breezeapps.com and installed on a whole bunch of J2ME handsets (Nokia, Blackberry, LG, Samsung, Sony Ericsson, …).
I’ve played around with Breeze, building a prototype of a blogging-client (ugly and wordpress-only for now, source here) and it really is great fun to develop applications that way. And it works too; the first draft of this post was written using it on my Nokia E61i. How I love the smell of my own dogfood in the evening!
Powered by mlogger

5 reasons why the NMBS should have an API

nmbs should have an apiThis weekend I joined the Facebook-group “NMBS should have an API”. The NMBS (or SNCB, for the route planner) and Infrabel (for railtime) have data available that is very relevant for their customers, but this does not really translate in great applications, does it? Wouldn’t it be better for public companies such as the NMBS to focus on exposing their data/ business logic and less on the presentation, allowing 3rd parties to connect to their API’s to create innovative new applications?
Just image what kind of sexy, useful applications that could be created this way. Here’s 5 to start with:

  • A mobile application that can
    • plan your rail-travel based on your current GPS-position and the destination you enter
    • adapting your route while “on rails” in case of delays of current or next train
  • A Netvibes-widget containing basic route planner and railtime funcionality. Netvibes is great by the way, their widgets can be deployed in Netvibes, iGoogle, Live.com and standalone on any site, but also on your Mac OS X and Vista desktop. I build a very simple LinkedIn widget almost a year ago. It’s actually little more then a wrapper around their mobile site, but according to the Netvibes stats it’s installed by more then 1200 users. Great potential!
  • mytrain.be: a personalized website for daily commuters:
    • register and select the train(s) you use on what days of the week
    • receive warnings by mail/ sms in case of delays
    • automatically propose alternative routes in case of delays
  • A sexy mashup of real-time train info and Google Maps, as already seen on http://swisstrains.ch/ (great to look at, not sure it’s that useful though)?
  • A trainusers-application integrating into social websites, allowing you e.g. to hook with fellow-travelers on Twitter or Facebook while on rails?

So indeed, NMBS and Infrabel, give us API’s and enjoy the great stuff that’ll be build on it. And if you’re reading this and you would like to use or develop applications based on such data, join that Facebook group!

Ook funky muziek is wiskunde

Muziek is wiskunde, dat had ge al horen waaien. Maar daarbij gaat het niet alleen over Bach, maar ook over de funky shit. Kijk, luister, Ik zal het U bewijzen!

“Unwind Yourself” van Marva Whitney (1969) + “For the love of money” The O’Jays (1974)

= “Hear the drummer get wicked” van Chad Jackson (1990)

In 1987 melkte Mark the 45 King “Unwind Yourself” overigens al uit op zijn “The 900 number”. Maar die baslijn van de O’Jays, magistraal toch? Nog eentje dus!

“For the love of money” The O’Jays + “Apache” van de Incredible Bongo Band (1973)

= Young MC “Know how” (uit 1988, met een lijntje Isaac Hayes)

= ook “Fools Gold” van de Stone Roses (uit 1989)

Over Michael Viner, de man achter die Incredible Bongo Band, valt overigens heel wat te vertellen; hij was medewerker van Robert Kennedy, A&R manager bij MGM, (muziek-)producent van een weirde B-film en van die biopic over Oscar Wilde én is tegenwoordig vooral een omstreden uitgever van roddelboeken. Genoeg over Viner, maar de ritme-sectie doet op die cover van Apache wel heel erg z’n best om Funky Drummer van James Brown te hernemen, niet?
Soit, ga nu en dans, bijvoorbeeld op die wicked drummer;


En als ze U vragen wat ge aan het doen bent: wiskunde tiens!

Tomorrow’s phone, now!

palm preAs every boy could tell you, it’s our toys that keep us kind of young. Because of that and as I work for a telco, I can’t but regularly buy a new phone.  Over the years I’ve had a.o. a Nokia 7110, a Sony-Ericsson T68i, a Qtek 9100 and I currently own a secondhand Nokia E61i. But time flies and my E61i is aging fast (maybe if I wouldn’t drop it that often …), so in a few months time I’m buying a new smartphone. Time to start shopping for pics, specs and reviews!
Smetty recently asked for advice on this topic as well, she was thinking about the Nokia E71 as a cheaper alternative to the iPhone 3G. But I won’t be buying Apple’s must-have gadget any time soon; although it has some superb features (OS, browser and that multi-touch interface), it lacks a real keyboard, has not tethering and doesn’t allow applications running in the background. And last but not least; the platform is far too closed to appeal to an open standards and open source minded wannabe-geek like me. All Windows Mobile-based devices are banned from my shortlist as well; I really don’t like the OS and its GUI, it feels too much like Windows 3.11 to me.
I’ll probably end up buying either the Nokia E71, a HTC Dream (the Google-phone) or the Palm Pré. So let’s do a pro&con-list, comparison-tables are always fun, no?

Nokia E71HTC DreamPalm Pré
Pro
  • Symbian is a proven OS
  • Lots of great software
  • Great battery life (1500mAh battery and only QVGA)
  • Builds on Nokia’s experience with the E61(i)
  • It’s a bit smaller then my E61i (which is … biggish)
  • Has tethering
  • Google Android is a Linux based OS
  • Google is an important player, lots of companies will be releasing Android-based phones in the coming months
  • HTC is one of the greatest cellphone manufacturers, they have loads of experience. My Qtek 9100 was a HTC-device as well.
  • Higher screen resolution (HVGA)
Con
  • Symbian feels old and is not always that reliable on my E61i (why does it soft-reset when the browser crashes?)
  • Lower screen resolution (QVGA)
  • Less readable then the E61i (same resolution but smaller screen)?
  • No tethering!
  • Battery life not that great (1150mAh battery combined with and thirsty HVGA)
  • It’s early days for Android, not sure if it’s mature enough
  • Not available through normal channels in Belgium, except for some obscure webshop where it’s already sold out
  • How about battery life (rumours claim 1150-1350 mAh, combined with power-hungry HVGA)?
  • Not available yet, no release date announced (not for USA, and certainly not for Europe)

The conclusion: although it still is vaporware, there’s some extreme chemistry going on between me and that darned Palm Pré. It’s the most exciting device by far and if it is for sale in Belgium, it’ll be hard to resist. The HTC Dream doesn’t seem to do it for me, no chemistry on one hand and not the “safe choice” either, as that award is easily claimed by Nokia E71. So Palm Pré if available in June/July, Nokia E71 otherwise?