It seems to me that although some progress is constantly being made, Haiku struggles to attract enough developers to gain some kind of “critical mass”. One reason for this might be that, like many other projects Haiku is underestimating the role of application developers and their needs.
I do develop software, professionally as well as in my free time and I had a look at Haiku multiple times. I occassionally download the newest nightlies and have a look at it but I completely gave up trying to develop for Haiku. This is mainly because there is no decent IDE available, the API is horribly outdated and incomplete when compared to other platforms, and for the lack of good documentation.
Now, I have read stuff like: “it’s open source, you can help out writing documentation or write an IDE or send patches for the OS!”. The thing is, the majority of app developers don’t want to do this kind of stuff. They don’t want to do systems programming, they don’t want to write other people’s documentation and they don’t want to develop tooling. They want to get started in a matter of minutes and implement their own ideas. I don’t care about occasional system crashes, bugs and other glitches. I am aware, that Haiku is alpha quality software. What I need is an IDE with at least good code browsing, refactoring support, code completion, semantic highlighting, API documentation integration, integrated debugger, and a build system that gets out of the way. Apple understood this as well as Google (Android) and Microsoft even called out an app developer competition when they launched Windows Phone, AFAIR. They are successful (more or less) because they attract developers. They have good tooling and APIs that are a pleasure to work with. Be Inc. also understood this to a certain point in time and that’s why they had their (short) moment, when big companies announced ports of successful software.
Why should you care? Users want applications. An OS without applications is useless. Apps need app developers. And app developers want the stuff I mentioned above. More users and more developers in general will in turn attract more people interested in system level programming. Obviously the Haiku developers can not develop an entire operating system and usable apps. So, IMHO, there needs to be a temporary shift of priorities if the project wants to succeed long term. Maybe I can at least stir up some constructive discussion on this topic, we’ll see.
PS: Rereading this, it reads a little ranty. It’s not ment as such, but rather as possitive criticism and a discussion ground.