When comparing Haiku vs None/All, the Slant community recommends Haiku for most people. In the question“What is the most versatile operating system to learn how to program?” Haiku is ranked 3rd while None/All is ranked 5th.
Ranked in these QuestionsQuestion Ranking
Pro Very Fast
Pro Beta has been released
After about 6 years since the alpha version, beta has been released on Fri, 2018-09-28. Check here for release notes.
Pro Only need 512mb ram
Pro Potentially larger user base
You are not constrained to a subset of the market, thereby the opportunities to get help should be greater when only constrained by language rather than language & OS
Pro There are lots of popular languages available that are pretty much OS independent
Pro You can focus on learning
Developing at this higher level allows you to focus on solving problems and learning the language rather than learning an unfamiliar OS.
Pro Can give you experience across OSes
Developing in a language that supports many OSes gives you potentially more room to grow, by giving you an excuse to try other OSes once you become comfortable in the basics of a language.
Pro Online tools
If you are keen on just diving right into coding, there are many tools that run in your browser that allow you to get going without needing to setup anything locally. For example, codepen and coding.
Con No one uses it
It's a very niche OS that no one uses.
Con Small community
It is important when developing to be familiar with tools that other developers use. You can make any utility in any language you feel like, but if it's in an esoteric language that no one can read targeting a small platform that no one uses, then it was just something you did as a hobbyist, not as a developer.
This is not to say that Haiku isn't a great operating system to hack around on. Just don't delude yourself into thinking you're doing it to get familiar with tools that you need to know to be a better developer.
It's still in beta and quite unstable. Making it unsuitable for developing applications of any kind.
Con UI look and feel may be non native.
If your goal is to develop something that looks like it fits in, this can be tricky with some cross platform languages (Java being a notable example, though there are libraries that can help this).
Con You may still need to deal with idiosyncrasies
Most cross platform environments can't abstract away all the OS specific idiosyncrasies. For example, starting Java applications as a service is something Java cannot do out of the box. So you are left to come up with your own solution for that. NPM's scripts are not inherently cross platform, so if you use them while developing with Node.js, you may need to find your own ways to make them cross platform.
Con Learning how to test can be costly
Learning how to test one's code can be more complicated, depending upon the language because you may need to test certain aspects of your application on different OSes. This means more setup time as well.
Con Write once - test everywhere
The idea behind cross-platform languages looks nice at the first glance, but in reality in the very best case boils down to an infamous "write once - test everywhere" pattern.