Project Outline
My GSoC project revolves around polishing and preparing Haiku's Layout API for public consumption. Currently, this is only supposed to be used in Haiku's included applications, so third party applications must manually position and resize all their GUI elements, which can be really tedious and inflexible. I will also be modifying some Haiku-provided applications to use the Layout API, which will help me find bugs and help with Haiku's ongoing localization.
Haiku currently has ext2 read-only support. My project is to extend the code to allow for full ext3 support. The code will be MIT licensed and will be object-oriented (inspired by Haiku’s BFS implementation), allowing for easy understanding, learning and maintainability.
The full Google Summer of Code application follows:
Haiku has great support for its own file system, but most others are only available read-only or not accessible. Providing reliable read-write support to one such file system is a complex task, and needs to be repeated for each type of file system.
Linux contains state of the art, full featured implementations for a large number of file systems.
lkl-haiku-fsd is a generic driver based on the Linux kernel library (LKL), reusing Linux' optimized and debugged file system implementations.
It’s strange how a week goes by so quickly now, but it’s good motivation to keep writing! This lesson takes a break from hacking the Haiku API to learn a few C++ language concepts needed to continue progress as an aspiring developer. Function overloading and operator overloading are examined in detail. Enjoy! Learning to Program With Haiku, Lesson 16.
Having written our first program, Lesson 15 delves further into what writing basic applications are all about, looking at the API and its organization and focusing on an essential: messaging. Also included in this lesson are the finished sources for those who don’t want to mess around with typing the project out.
Learning to Program With Haiku, Lesson 15 Lesson 15 Project Sources: ClickMe.zip
At least it can finally log into Facebook. Not that I am a fan of Facebook, but I realize how important it is for WebPositive to be able to log into that site. Some other seemingly random crashes have a good chance of being fixed, too, since I was able to track down a memory corruption bug that was caused by different parts of the code being compiled with incompatible defines. Unfortunately this took a bit of experiementing until I was finally on the right track. Today I hooked up my quad core machine to temporarily replace my regular Haiku work machine, which is CPU wise a bit underpowered. The insane rebuild times were really getting on my nerves. Even with the quad core it took quite a bit of patience, but to be absolutely sure to compile everything with the right defines, I had to compile… well… everything. Many times.
It’s about time: our first program which does more than print stuff to the Terminal! Now the real fun begins! Learning to Program With Haiku, Lesson 14.
It was a few months ago that on a lazy Sunday afternoon I found myself to be in Brussels at the FOSDEM conference, where François organized a very successful Alt-OS development room, filled with all sorts of presentations on the world of the alternative operating systems. As probably the only non-computer science person, I got a slot as well and I decided to give a presentation with this same title. Now just imagine, I was scheduled on the last day, nearing the end of the conference (around four or five in the afternoon) and knowing the visitor group, I did not expect much. As such, I decided to prepare a discussion session for the ten or so people to show up. Now about five minutes before I was scheduled to go, people started trickling in. And to my pleasant dismay – if ever such a thing is possible – I ended up having a full house. Now why would a large number of computer geeks or – more nicely put – Open Source fanatics be interested in what a silly humanities guy has to say? I started to think about that, and I realize that this is in fact a very central question to everybody that donates time or money to these projects: what will be its future? Or put in another way, how can we, as actors in the always changing, always new information technology sector determine a path? That is the problem I would like to give a stab at in the coming twenty minutes.
This contains the text and the slides of a presentation I gave on the 11th of April 2010, at BeGeistert 022 in Düsseldorf. You can get the slides and a printer-friendly version of this text.
BeGeistert is nearly on us, with the long awaited return of the ColaCoder™, and of course I must be there.
I didn’t commit much recently since I started doing a Ph.D and it’s, well, time consuming, so left Axel and Ingo alone in the race.
I won’t be able to attend the coding sprint as well this time, but because I’ll attend the EuroSys 2010 conference (a really highly ranked research event about computers), and I’ll have the honor of doing a demo about Haiku at the poster session (my poster was selected in the best 5 btw), and of course I had to get googlefs working again to show it.