30 June 2009

The bike before going into the Wispertal

what a great day

20 June 2009

ACCU 2009 - Slides are available

A couple of weeks ago I attended ACCU 2009 to deliver a talk on "RESTful Services and Distributed OSGi - Friends or Foes" and "AJAX for Mobile Devices - Using Apache Projects to get the job done". The conference was very well organized (thanks Giovanni) and took place in the beautiful city of Oxford. The format (keynote presentations and smaller breakout sessions) allowed for a good mix of thought-provoking presentations and good discussions. The audience was made up from very-experienced software-engineers and no-BS project-mangers.

My most favorite presentation/keynote was delivered by Linda Rising (The Benefits of Abstraction in Patterns). She talked about the potential of patterns going beyond the ability to put structure into the domain of software engineering.

I am looking forward to learn about the agenda for next year.

19 June 2009

Street Performance World Championship - a non-technical blog post

Sorry - this is a non-technical blog post. If you are not interested in having a good time, stop reading now. Otherwise ...

I am on the LUAS on the way home from the Street Performance World Championship in Dublin.

All of the performances are good/funny, but my personal favorite are Alakazam and Mr. Toons.

Go and check it out. It is worth-while the time.

18 June 2009

Smart Energy - let's bring Smart Meters, Smart Grid, Micro Grid and the software behind it together

A year ago I had a couple of pints with Dan Salt (Chief Software Architect at GE Energy) and we discussed the current state of affairs with respect to IT and Software Architectures/Solutions in the Energy/Utility sector. As a result I started to develop an interest in Smart Meter (just watch the first 5 min), Smart Grid, Micro Grid and Grid 2.0 concepts/solutions.

Here is a summary of the problems as I see them ...
  • we need to become more intelligent about how to consume energy
  • we need to become more intelligent about how to produce energy
  • and we need to become more intelligent about how to distribute/store energy
The main focus of this blog entry is on the first bullet point, but I also quickly want to talk about the second and third bullet. Becoming more intelligent about producing, distributing and storing energy and that means first of all becoming more intelligent about producing, distributing and storing renewable energy (wind, water, solar, ...). Micro Grids might be an interesting approach to consider in this area, but this means that the IT infrastructure must be able to deal with lots small independent energy "providers" (maybe even down to the household level). There are ideas how to implement something like this, but nothing ready for prime time yet. Storing energy to deal with the peaks is another dimension of the problem that needs to be consider, but a combination of old and new (e.g. V2G - Vehicle to Grid) approaches might be suitable to provide some relief here.

Let's come back to the main topic: How to become more intelligent about consuming (less) energy (in the first place).

Three years ago I was driving in a cab from Zuerich Airport to a customer meeting. The cab was a Toyota Prius. It was my first time in a Prius. In general I work in a cab (email, phone, SMS, whatever, ...), but this time I was totally fascinated by a/the display in the middle of the dashboard. The display showed how the Prius was producing and consuming energy with its fuel-/electro- engines and -dynamos (in (soft-/near-) real-time). Brilliant!!! You get into a traffic jam and the natural play-/compete-with-your-car instinct kicks in and you try to move the car through the traffic jam, just by using the electro-engine (just by being gentle on the accelerator). And even without a traffic jam you are tempted to constantly compete with the car to make optimal usage of the available energy. The question is not anymore how fast you get from A to B. The question becomes "can I get from A to B using less than a gallon (less than 4 liters) of fuel". The display creates a totally new sense of awareness about what is going on and with that it starts to change behavior. The guys behind the Prius are geniuses. Adding the display makes the difference between a good and a great car, because with the display the Prius is not only a good car it is also changing societies, by changing awareness levels and behaviors.

What can we learn from this? Easy ... it is not good enough to optimize the way you consume energy, you also need to provide direct feedback to the consumer on how he/she is doing and must give the consumer tools/ways to influence the amount of energy that gets consumed. Basically you need to empower the consumer!!! You need to share the responsibility between those who produce the energy (to produce energy with the lowest environmental impact possible at the lowest possible cost) and those who consume the energy (to consume as less as possible).

The bad news is that in general right now households/consumers of energy (gas, oil, electricity, ...) are not aware of what, when, how (much) they consume. They get a bill (every month or every quarter) and have no insight into why they consumed this amount of energy and what to do/change to maybe reduce the energy consumption. The (immediate) feedback is missing. The display is missing.

But there is also good news. We can fix this. Originally Smart Meters concepts and technologies got introduced to allow the utility companies to read your meter without sending somebody to your house (a clear benefit for them; not so much for you :)). In the meantime smart meters have evolved. They can and will fix the "remote reading" problem, but they also allow you (the consumer) to get immediate feedback on your energy consumption.

But it might be a couple of years until smart meters get installed in (all of) the households (the only country in Europe, which is almost done with this is Italy). What do you do in the meantime? One option is to use a wireless energy monitor. The good news is these devices are available, do not cost a lot and are easy to install. The bad news is they are very limited with respect to their capabilities and connectivity.

What I am looking for is a smart meter or an energy monitor that is connected to my (W)LAN and is able to dump/collect the data to a hard-disk of my choice (laptop or special purpose appliance). I then want to be able to display the data in real-time on a display of my choice (TV, computer screen, mobile phone, ...).

To my knowledge such a device/appliance does not exist today.

Now things get even more tricky. How can I find out if my energy consumption is good or good enough (read near the optimum)? And how can I analyze/break down my energy consumption to identify potential culprits?

At the end we could upload the (location-aware) data to a data-warehouse and run analytics on it that would allow us to calculate the average per person per household in a certain area and provide feedback to the best/worst five energy consumers in the area. If you consume much more energy than you neighbors (per person) you might want to find out what the hell is going on (Google is working on something like this).

Bottom line: To change the behavior we need to visualize the problem (i.e. how much energy (electricity, gas, oil, ... you consume). It will take 5-10 years to bring smart meters to the majority of households in the developed world. In the meantime energy monitors can/should be used to give immediate feedback to you (the consumer), but currently these devices are very limited in terms of what they can monitor (most of them can only monitor electricity), capability (storing historic data) and connectivity (make the data available to a/the community for analysis).

Hhhhhhmmmmm ... any ideas??? Otherwise it seems I need to get my soldering gun out.

Reading books - Steve Jobs, Raising Boys and The Complete Robot

A month ago I decided to use some of my time during the summer and work my way through the pile of books that I always wanted to read and never really got to. The first four weeks proofed to be interesting, very interesting.

I started with "ICon: The Greatest Second Act in the History of Business". It is obviously a biography about Steve Jobs, but it is also a good book on the history of Apple, the Silicon Valley, Next, Disney and Pixar. It is an unauthorized biography and is (sometimes very) critical of Steve Jobs and how he got to where he is today.

"Raising boys" was the next one and is a must read for Mums and Dads. Some of the stuff is common sense, but some chapters give a good insight into what the hell is going on sometimes and why.

Currently I am reading "Isaac Asimov's - The Complete Robot" a collection of short stories about robots and how they will (potentially) become part of our society. One story talks about a boy who prefers his robot-dog over a real one. Just wondering how many children prefer their gameboy over a (real) dog. Good food for thought.

TEDx Dublin - Reviewing a very nice friday evening

Last friday (means already almost a week ago) I had the chance to attend the first TEDx event in Dublin at the Science Gallery. To make a long story short ... it was a GREAT event. Great people, great presentations, great location. If you ever get the chance to attend a TEDx event or maybe even to attend a TED conference ... DO IT!!!

Just in case you have never heard about TED I suggest you check out the website. There are hundreds of thought-provoking videos and presentations available. TED stands for Technology, Entertainment and Design. TED conferences are held every two years and provide a platform for Ideas Worth Spreading. And my god, some of these ideas are worth spreading indeed.

Here are a couple of presentations I found interesting ...
... and there are lots more.

Back to the event in Dublin ... we had about 200 people in the room (packed) and the event was very well organized and moderated by Aaron Quigley.

The presenters talked about ...
... and all of the presentations featured live demos of the research results (very impressive). There are good blog posts and pictures about the event available.

My personal favorite was Mark's presentation on AR. Can't wait for the Mac version of BuildAR to become available.

09 June 2009

FUSEforge Lightsaber/Lightsabre - Research on Asynchronous Distributed OSGi (for Jedi's :))

The Distributed OSGi spec (RFC 119) is coming along nicely, means now might be a good time to raise the head and start to think about what might come next. A couple of month ago David, Roman and myself got together and concluded to set up a research project on the alternatives available to potentially extend the Distributed OSGi spec with some asynchronous messaging concepts/capabilities.

The research is still ongoing, but the intermediate results (including a first demo!!!) are now available on FUSEforge (Project Lightsabre).

The demo will also be presented at OSGi DevCon Europe. Maybe (another) reason to attend. Enjoy and stay tuned.

08 June 2009

Skills, Innovation and the future of Ireland - Bermuda Triangle or Trinity

Ireland (like any other country in the world right now) needs to reinvent itself. The Celtic Tiger (1.0) is over. Question is: What's next? Do we want a Celtic Tiger 2.0? If so, how should it look like? And how do we make it happen?

Chris Horn has published a couple of interesting blog entries and articles on the topic.

For me the key is skills and innovation. Skill comes in two flavors: expertise and experience. The Celtic Tiger 1.0 was based on expertise. At the time Ireland was building a very well educated workforce (Trinity College, UCD, University of Limerick, ... ) and was also enjoying (or creating) other (monetary) benefits (like low corporate taxes, low wages, lots of EU aids, ...).

These times are clearly over and Ireland has to find a new (the next) niche to compete in the global economy. My hope and my belief is that Ireland can reinvent itself around a different set of skills, namely the experience the workforce has gained in the last 10 years. Right now is the (a good) time to reinvent Ireland as a place, where small startups can flourish and succeed: A European (Software) Business Incubator.

Lets make it happen.

28 May 2009

Effective Android - Getting Started Guide for the Android Dev Phone 1

This week I spend a day to get my new Android Phone up and running.

At the end I figured it might make sense to write up a cookbook on what to do when you finally get your hands on the box and unwrap your new toy. Here we go ...

The (ultimate :)) Android Getting Started Guide (for Mac Users :))

First things first: This guide assumes that you got yourself an Android Dev Phone 1. It will not work for the T-Mobile G1.

Obviously the first thing you want to do is to open the box, put the battery into the phone and charge it (for at least 3 hours). The phone comes with an US power-supply and an USB-cable, means in Europe you either need to have an adapter or you need to charge the phone with the USB-cable (I charged it with the cable).

The phone comes with the Android 1.0 firmware pre-installed, but the current version is 1.5 and is much better (yes, believe me - it is better). Therefore while charging the phone you might want to download a couple of files:

  • the Android SDK 1.5 - you need this for the tools
  • the Android 1.5 firmware (download ota-radio-2_22_19_26I.zip and signed-dream_devphone_userdebug-ota-148830.zip) - this is what you want to install on the phone (make sure to configure your browser (e.g. Safari) NOT to unzip the files after download - you need the zip files).
After the phone was charged I put my SIM-card into the phone and followed the instructions on the Start Here! Setup Guide that comes with the phone and went through the setup process. As part of this process you have to login to your Google Account (no comment :)). That also means that you need to have a GPRS connection and that means that your SIM card needs to have a data plan and that your APN must be configured to work with the phone (if this sounds like a little bit of a hassle - it is!!!).

After everything is up and running you might want to replace the very small 1GB microSD-Card with something bigger (you need to do this sooner or later anyway). I recommend at least an 8GB card. Just follow the instructions in the Setup Guide (and do not forget to unmount before you take the card out of the slot).

The next step is to install the SDK. Just unzip the file to a/the location of you choice (in my case /opt) and add the .../tools directory to your path (e.g. in the ~/.bashrc file).

Plug the phone into one of the USB-ports, start a shell and type ...

~\> adb devices
List of devices attached
HT93MLZ00125 device

... to verify that you can see the phone. You then need to follow the instructions from the HTC-website to upgrade the firmware to 1.5. A couple of observations ...

  • the firmware updater is always looking for a file called update.zip in the root of the SD-card, means while copying/pushing the file to the device you need to rename it to update.zip
  • to switch on logging you have to type ALT-l(og) not ALT-i (hard to read or I need new glasses :))
  • "5. Use the adb sync command to copy the contents of the radio image package to the update.zip archive on the device's SD card:$ adb push .zip /sdcard/update.zip" ... should probably read ... "5. Use the adb sync command to copy the contents of the recovery image package to the update.zip archive on the device's SD card:$ adb push .zip /sdcard/update.zip" (looks like an honest copy-and-paste bug :))
Afterwards you probably want to find a WLAN-Hotspot to speed up the rest of the configuration/setup process. But be aware ... my WLAN-Router was using channel 13 and initially the phone is configured to use only 11 channels, means my phone did not find my hotspot. To fix this you need to go to Settings > Wireless Controls > Wi-Fi Settings and press the Menu button, select Advance > Regulatory domain and tell the phone to use (all) 14 channels (took me *only* an hour to find this one :)).

The next step is to sync/upload you contacts to your Google Account and sync the contacts and the calendar. The sync is only working, if you have an iPod or an iPhone. Otherwise your best option is to upload your contacts.

Configuring the email client to work with your POP3 and/or IMAP mail accounts is straight forward.

Last but not least you want to install a couple more programs. Here is my hit-list ...
  • Twitteroid - a must have (obviously :))
  • Pixelpipe - very good (offline) (micro-) blogging client
  • Chess - the only game you need
  • GPS Status 2 - cool GUI
  • Hi AIM - one way to do IM
  • Skype (Beta) - was not able to make it work (yet)
  • NewsRob - RSS client to read your Goggle Reader Account
  • Par 3 Golf - ok, the "other" game you need
  • Glympse - to keep people in the loop on your whereabouts
To put some structure into the application space I created folders on my home screen and moved the apps into the appropriate folders (e.g Games, Tools, ...). BTW ... if you want to change the name of a folder you have to open it and put your finger on the title bar until the change-the-name dialog opens.

Finally you want to sync you iTunes Playlists and Podcasts with the phone. First you need to install software and then you need to mount the SD-card to the laptop. You can do this by pulling down the status/notification bar on the home screen and push the "USB connected" notification.

All of this took me (on and off) 8 hours. Next step is to set up a/the development environment. Sounds like another 8 hours of good fun lie ahead of me :).

27 May 2009

Effective Andriod - a new category

Last year I introduced categories like "Link of the Month" and "Effective Mac" to my bloging". Heads up ... there is a new category coming: Effective Android will talk about my adventures with my new Android phone.