What's that you say? You made a New Year's resolution but
haven't kept it? You vowed to sharpen your programming skills, write a cool
application, AND use cutting edge operating system technology? Look no further,
you have come to the right place. This article will get you started writing applications for
Haiku, the open source version of the advanced BeOS operating system.

R1A1 (the first Alpha) is starting to age quite a bit. For better performance try one of the recent nightles. (however avoid any nightlies between Feb 1 - 20th 2010.. there was major kernel work going on which caused data corruption/etc... that stuff should be fixed now though)

...but as far as I can see, a few rather fundamental things missing. My system is hardly new - about two-three years old - but it doesn't look like much of it will work. Multi-core processors, for example - recent forum posts indicate that even in 2010, that's considered too new a feature to be well supported. WiFi support - standard on pretty much any laptop for the past five+ years - is dubbed experimental. My video card (nVidia, but ATI/AMD is in the same position) is supported only by a Vesa driver.

Seems to me that for all that it might have a great design and user interaction, that doesn't matter so long as it's so massively deficient in hardware support. I'd be happy to try it out, but as far as I can tell, I'd be doing well if it boots. And if it does, I won't be able to do anything with it in the absence of an internet connection...

No, because the information I can find on their website suggests there's not much point. Perhaps it's incorrect, but my comments were based on recent (i.e this year) posts in their forums indicating that while traditional SMP worked fine, multi-core didn't. Likewise, my comments about WiFi or video support come from the Haiku site and forums.

If their hardware support is better than I thought, perhaps they need to make it clearer what the current state of things is...

If their hardware support is better than I thought, perhaps they need to make it clearer what the current state of things is...

No, not yet. Not for an alpha-quality OS. And precisely to avoid having a whole bunch of people with modern proprietary hardware lacking open specifications from whining about their hardware not working when they thought it would.

Haiku is in a state of heavy testing/development still. If you're not willing to "try" it without getting an explicit written guarantee in advance that you'll receive a certain "experience", then I think it's wrong for you. Please move along now.

Haiku is in a state of heavy testing/development still. If you're not willing to "try" it without getting an explicit written guarantee in advance that you'll receive a certain "experience", then I think it's wrong for you. Please move along now.

Meanwhile, posting your "impression" based upon zero real-life experience, isn't going to help. Perhaps you should consider silence, or -questions- instead of statements full of unfounded, sweeping generalizations.

No, not yet. Not for an alpha-quality OS. And precisely to avoid having a whole bunch of people with modern proprietary hardware lacking open specifications from whining about their hardware not working when they thought it would.

I agree. But that is still a real concern.

Two things I have said in the past about Haiku and OSNews: focus on the fundamentals and drop that extravagant advocacy.

If an OS hasn't even reached one release, it can not be "mature" or "stable". The status of "mature" is reached after years -- and decades. Keep the alpha-status bravely and keep experimenting, but do not try to go fishing to areas which clearly are not the core strengths. You don't need that much advocacy: those that want to code, find your system without it.

(And well, this is the destiny of any "alternative operating system". You get a thousand and one Linux people -- you know, those pretending to be "open-minded" -- bitching about things that do not work compared to their system that is developed by corporate overloads; probably the same people who have never contributed code but think that contributing noise is the same thing.)

Let's see: I have a Intel Core 2 Quad Extreme at home where I run Haiku. I also have an 8 core (4 physical + 4 hyperthreading) laptop that runs it. All cores are used as expected. I guess you may want to get your facts straight.

Even BeOS can take advantage of however many CPU cores are available, provided it can support the chipset / memory.

From what I hear wireless works very well, but is not tested well enough to consider it anything more than experimental.

Also, before you judge a complex project such as an operating system, one should always consider how long it took the competition to attain the same level of completeness they are expecting.

For Windows, that would be 10 years for wireless, and then only because companies other than Microsoft did the work. Otherwise, you can move that all of the way up to 14 years ( XP ) - and that is with very poor inbuilt hardware support. But Microsoft need only worry about having the kernel boot and remain stable enough for 3rd party drivers to be installed.

For Linux, well... much longer.

Haiku has come an incredibly long way very fast thanks to 'merely' being, essentially, a reimplementation of a prior work - design decisions are mostly already made for you.

Like I say, I'd be interested in trying it out. But based on the limited info on the Haiku website, it doesn't seem like it's really in a state where that'd be worthwhile yet - not being able to connect to the internet is a bit of a show-stopper, given this is a desktop OS...

Maybe in another year, it might be mature enough to be worth a closer look. But not right now...

Like I say, I'd be interested in trying it out. But based on the limited info on the Haiku website, it doesn't seem like it's really in a state where that'd be worthwhile yet - not being able to connect to the internet is a bit of a show-stopper, given this is a desktop OS...

Maybe in another year, it might be mature enough to be worth a closer look. But not right now...

So run it in a virtual machine - testing it there won't even cost you the price of a black CDR

Like I say, I'd be interested in trying it out. But based on the limited info on the Haiku website, it doesn't seem like it's really in a state where that'd be worthwhile yet - not being able to connect to the internet is a bit of a show-stopper, given this is a desktop OS...

Maybe in another year, it might be mature enough to be worth a closer look. But not right now...

Limited info on the Haiku website? What info, specifically, are you looking for?

Not being able to connect to the Internet? Where did you get THAT idea? Sure, wireless connectivity is still limited to unprotected networks (no WEP or WPA/WPA2 yet), but Haiku will connect to the Internet just FINE, if you have a wired Ethernet connection! Web browsers include Firefox, Aurora, and NetSurf.

Need to know what hardware in your system is supported? Try a bootable CD image and see what happens.

Can't get an .iso to burn to CD? I can make one for you... of the latest revision, if you like. You want GCC2 or GCC4?

Alpha1 is getting dated. A lot has improved since then.

Haiku is FAR more "usable" than you think, even at it's current stage. You just need to give it a chance.

One of the most important resources missed by the original author is the BeOS R5 Sample code (download http://www.bebits.com/app/3019). The sample code has everything from Hello world, my first window, to device drivers. Most of this is still 100% valid for Haiku.

Another important set of tutorials is embedded in the legacy BeNewsletters (http://www.haiku-os.org/legacy-docs/benewsletter/index.html). Here you can read tutorials and explanations from the BeInc engineers who actually designed and implemented various components. This resources gives you the WHY as well as the HOW.

...when I ran BeOS... but I did contribute (I think it was ruby) a module to Pe ages ago. I also wrote an awesome website in Python, using the native db-file system for "blogging" back then... just drop an article into a folder and it became part of the site... and could also receive comments, again, written to the file system... it was neat to me anyway, back then.

BFS was so much fun! And I wish web servers could still be as simple as PoorMan was. I actually used another web server for more complex stuff... it began with an X I believe, but I forget the name. It may still be around today on Windows.

Does BeShare still have regulars on there? You used to be able to find all kinds of goodies.

Which part? The micro-kernel part or the object oriented one?
Haiku, like BeOS, *is* an object oriented operating system.
Haiku, like BeOS, is *NOT* a micro-kernel operating system. It's a modular kernel.

So, please half-uncheck. or half-check, depends if you're a glass is half-empty or half-full guy ;-)

since qt4 already works quite fine in haiku, I started to use the editor "s.t.e 0.1.1" from www.qt-haiku.ru , and I alredy like it, even if it's in an early development-stage. It would be nice to have a better IDE than the ide's that were mentionated by the author of this article. Qt-Creator I don't like that much for writing c++ code, because it pays too much attention on qt-projects, but not so much on normal c++ projects.
CodeBlocks I like more, but since wxwidgets is not ported to haiku, there is not hope for codeblocks on haiku.

But still I can not complain, s.t.e and PE and jam are quite enought for me at the moment.

I have basically zero knowledge about Haiku, and am curious about its "cleanest programming API in the neighborhood" (as well as the "elegant messaging system" and pervasive multithreading). Unfortunately, I don't have the time to install the OS simply in order to learn about the API.

However, I am quite familiar with OPENSTEP and descendants -- can anyone with experience in both compare and contrast the two?

A month ago I had zero knowledge about developing for Haiku (did some little programs for KDE earlier, so I had an idea).
Using Paladin and reading the BeBook, browsing some sample code it was not difficult to get my first little app in two weeks (its on Haikuware now).

I applaud the effort that is going into re-creating BeOS (in my mind the best OS in history) but what are the plans in regards to 64-bit mode?

Everyone is going 64-bit these days for the wider registers (and more of them) as well as access to more than 4GiB of RAM. Does the Haiku project have this on their roadmap? Can this even be added without breaking the older (binary only) applications?

Well, the BFS file system was 64-bit back in 1997. So in that regard BeOS was way ahead of the crowd. As far as 64-bit kernel, I think the goal is to at least get to Beta before putting resources into that. There are only so many kernel hackers on the Haiku team, so it's better to keep focused on the most important tasks.

But if you think about it, 64-bit for Haiku is not as important as 64-bit for Windows or Linux. Haiku is targeted to desktop applications, not server applications. Currently corporations are not running large server tasks like database, web serving, file serving that require lots of RAM. This could come in the future, but not just yet.