Analytics

Friday, June 19, 2009

Palm released WebCore/WebKit sourcecode for their Palm Pre..

My friends just told me that you can get the sourcecode from this place. Or a direct link to their WebCore modifications and WebKit modifications.

Thursday, June 11, 2009

Joel on office space

I encourage to read this article on how to design a office space for software teams (or any kind of engineer). There is scientific evidence showing the correlation between a good office space and productivity and his main points are:

  1. Private offices with doors that close were absolutely required and not open to negotiation.

  2. Programmers need lots of power outlets. They should be able to plug new gizmos in at desk height without crawling on the floor.

  3. We need to be able to rewire any data lines (phone, LAN, cable TV, alarms, etc.) easily without opening any walls, ever.

  4. It should be possible to do pair programming.

  5. When you're working with a monitor all day, you need to rest your eyes by looking at something far away, so monitors should not be up against walls.

  6. The office should be a hang out: a pleasant place to spend time. If you're meeting your friends for dinner after work you should want to meet at the office



a great read...

Monday, June 08, 2009

Taking over memprof

Where did all my memory go? Who is allocating it, how much is being allocated? From where were theses QImages allocated? valgrind provides an accurate leak checker, but for a running application you might want to know about allocations and browse through them and don't take the performance hit of valgrind (e.g with massif).

There is an easy way to answer these questions, use memprof. memprof used to be a GNOME application, it was unmaintained, the website was gone from the net, but this tool is just way too good to just drop out of the net. After trying to reach the maintainer twice I decided to adopt the orphaned thing.

Check the application out, it is great, it helps me to get an overview of memory allocations for WebKit/GTK+...

Saturday, June 06, 2009

First ever Gtk+ patch

During my work on Epiphany I was debugging a problem with the "woohoo" bar. It took me not less than three days to understand the issue, write a test case, and a patch and put everything in this bug. Matthias Clasen was kind enough to review and commit the patch and it can be found here. Sadly the --author tag of git was not used and the commit does not carry my name, so ohloh will not list my contribution to Gtk+.

The main issue with debugging was finding signal connections, e.g. which function is connected to that signal and which objects, and figuring out what was called during the signal activation. My approach was the usual printf method in many places and adding _backtrace() to function calls using the glibc builtin backtracing functionality. I would like to have SystemTap at a state I could use it for tracing, or be able to script gdb (it has python plugin support now) to automatically execute a trigger when certain parts of the code got executed.

Anyway, I'm happy to have fixed a Gtk+ bug and being a contributor now.