März 2007


I just finished a four-week contract that involved development with Qt4. After developing in C with GTK+ for the last couple of months, this was quite a refreshing experience.

This was my first non-trivial project with Qt4 and I’m quite impressed how well it went. Compared to Qt3 (and even Qt2, which I was stuck with on embedded platforms for a long time), Qt4 is a major leap forwards, especially with regards to concurrent programming (Threads) and separating data management and representation (Interview). Note that you want to use at least version 4.2 though, because earlier versions still have a lot of bugs.

In my opinion, Qt is definitely the most-advanced open source GUI toolkit around — it’s probably also even better than most proprietary ones, although I can’t say this with certainty, since I don’t know anything about Cocoa… yet!

Read more →

Projects, Projects, Projects…

I’m on overload. Really. After finishing my thesis I was hoping things would calm down by now and that I had a chance to stand down for a couple of months, thinking about my place in the world and how my life should develop in the next years. Alas, this turned out to be a false hope. I end up having no spare time left at all. Things really went crazy, since last year I commited myself to fulfill a contract this March — based on the assumption that my involvement in OpenMoko would be reduced by now. Just yesterday I even had to cancel my annual visit to the Frankfurt Musikmesse which made me very sad.

Anyway, besides the forthcoming move to a new appartment, my commitment for the next months is solely OpenMoko… oh, and that book about software development on Linux-based embedded systems that I’m writing… but that’s ok, since writing and developing are different enough to be a good match.

By the way, while I’m writing this, it’s Saturday 7:30 in the morning and I’m in the ICE 972 Freiburg–Berlin on my way to Braunschweig for a two-days OpenMoko development meeting with Daniel ‚Alphaone‘ Willmann, Jan Lübbe, and Stefan Schmidt (you probably know these guys from the OpenEZX project).

So, if you contacted me in the last weeks, please don’t expect me to be quick in getting back to you — I’m trying to clean up the mess I call my schedule…

Read more →

Things falling into place for P1

Two weeks before the first phase-1 devices are to be shipped, things start to fall into place. The hardware seems reasonably stable lately and we now have a working dialer and basic PIM applications. Just a couple of minutes ago, I got the vibrator to work from userspace.

The remaining construction sites before P1 devices are actually usable are the main-menu, task-manager, and the device management daemon. The latter being my primary area of interest — besides openmoko-libs of course — for the next weeks. I plan to write a lean-and-mean device manager based on previous work (both code and ideas) such as Richard Purdie’s zaurusd, Florian Boor’s microHAL, and the GNOME Power Manager.

I’m closely following the developments around OHM and HAL as well. Eventually, the neod may as well become a plugin for OHM, however as we need a quick plan of action now, the best way seems to go forward and start to implement something based on what’s already out there and running.

Read more →

Friction Losses

After quitting university and becoming a freelancer in September last year, my life has changed quite a bit. The most irritating thing is the amount of non-productive time I have to spend to be able to do productive work. While I was in university, almost 90% of the time I was in the office was spent doing actual work (not necessarily for the thesis or the faculty, but you know ;-)) — nowadays I find myself organizing things, doing phone calls, traveling, processing e-mail and snail-mail, etc. for nearly 50% of the time.

It’s either me being not well prepared for this kind of work or things really got more complicated. I guess I have to hire some kind of assistant to help me spending more time doing actual development and lowering all this organization overhead.

Read more →