Friday, August 31, 2007

Valgrind code coverage

To obtain code coverage on tests the only real option today is to use gcov. To use gcov you must you gcc and link in a libarary into everything that is executed which can be a pain. Rather than doing that, why not just either a) write a tiny valgrind module that outputs lines touched in a file and jumps taken or b) re-use callgrind's output and then combine that data with proper parser (of your specific language) to generate code coverage reports.

Friday, August 10, 2007

Freedesktop.org web browser

Make a web browser using webkit and Qt. Host it on freedesktop.org and incorporate anything and everything to make the browser integrate with freedesktop. Using Qt the browser would look good in Gnome and KDE with the Plastique and Cleannlooks themes. DBus support is a must, freedesktop.org mimetype support, and more. Create a standard for storing bookmarks. Use xdg-user-dirs to place things in the Download directory. Would it work? Would it take off? Probably not, people like to bicker to much. KDE users wouldn't use it because it isn't Konqy, Gnome users would refuse to use it because it has Qt. Would it be fun to make? Yes.

Edit: So I ended up kinda doing this one: ttp://arora.googlecode.com/ Rather then for freedesktop it is more cross platform.

Monday, August 6, 2007

Collaborative Documentation Web Application

A web application that can take documentation, perhaps in XML or another format such as Doxygen's and display it, but the add-on value would be that it would allow users to add comments to any part of the documentation. The application would provides features that would make it very easy for the documentation writers upstream to know about new comments so that they can integrate useful ones into the documentation.

Common errors that are discovered by the users where it would be useful to have an easy way to report include:

  • Spelling mistakes

  • Typo's

  • Broken links

  • Examples that don't compile

  • Straight out docs that don't match the behavior of the function code

  • Documentation that could be worded better

  • Undocumented behavior



Beyond those users are able to provide quite a bit of value add to documentation when presented with a way to such as:

  • Example usage

  • Workarounds

  • Performance tips




PHP's php.net website was the first I saw that had this built in feature. A good example is str_replace. The users provide a lot of extra value. The problem is that currently php.net is for php and same goes for the few other collaborative documentation sites that are out there. Compare this to the hundreds of Doxygen generated sites out there there this is a project that would have a lot of users.