Wednesday, May 05, 2010

Harmattan + Meego Here I come

I have moved now away from Fremantle to Harmattan and Meego. This doesn't mean that the maintenance is stopping for Fremantle in any way, just that the coordination effort on OS & MW has lessened and my presence is not needed so much anymore.

I would like to take just a sec also to address the comments about the leaked firmware. It is indeed not the final Pr1.2 firmware, and there are reasons for it. So, if you find severe issues in it, don't be surprised. If it only had minor issues, it would have been published already. We are often finding still some new major issues in the stabilization phase. It's normal for big projects.

So, what am I doing now then? I am looking after the Harmattan Maemo API to make sure we have a solid 3rd party API and there is a clear continuation path for everything that would change for Meego. At the same time I'm working as a catalyst for the Harmattan software program. This catalyst role is naturally a bit vague and I'm often afraid whether I'm doing more harm than good after being so long time away from Harmattan development, but it looks like I'm able to pick issues every day that do push us a clear step closer to the target. Let's see how long this continues. But what I really focus all the time is the Maemo API.

What does the Maemo API work mean in practice? It's about defining together with the architects the Application development APIs and the platform APIs. The distiction between these two is that every single API of the former should stay the same in Meego and maintain API and ABI compatibility. For the latter, we yield that they are needed for development of many applications but we deem those may be subject to change for various reasons (be that that we know a better one is around the corner, the API is unstable or even that we just happen to be uncertain what will happen to the API in the future), and thus if you use those APIs on your app, they might need tuneups before they work on the Meego handheld platform.

In addition to only the pick and mix work of selecting the APIs, I'm also actively trying to look for issues we might have in the APIs that restrict certain types of development. It's a common case that we have been looking solely for our own needs (or Intels) on many cases, but we have forgotten that small detail that would mean the world for some 3rd party developers. I would be naive to think that I can somehow find all the issues and get them miraculously fixed. Indeed not, but I have some talented help and I'm sure every improvement is a step to a better direction.

I'm not exactly certain if I can discuss about the inititives that I have started or the issues I have found, so I'll leave discussion on those until I have chatted with Quim Gil about it. In the meanwhile, please do contact me if you find issues in the APIs that has been published in the SDKs or in the open repos like gitorious for Harmattan Maemo API.

Oh, why is it Maemo API and not Meego? Well, we are still using the low part of the stack from maemo and haven't merged to meego lower levels, we use still different packaging system, and tons of other reasons that have been voiced out probably many times before.