A Commercial Version - Thoughts?

Yea, so this is going to be a long post, sorry about that. So much to say. It is a little disjointed since I’m just kind of throwing my thoughts out there. I felt that I really need to write it all out, so I can also make sense of it and ask for help and maybe support? So here goes:

I want to build a commercial company that builds an awesome OS that many people will use. Specifically for desktop/laptop personal computing use. I want to use Haiku, since it has a permissive license (MIT) and because it has many of the same goals as I do. I have personally been really excited about Haiku, since 2004-2006 time (I don’t quite remember). I never used or heard about BeOS, before Haiku, so I don’t really have any connection with it, but seeing as how cool Haiku is, BeOS, must have been really amazing back then. I recently put in Haiku to try it for the first time, in a VM, and it was fast and looks like what I have been looking for. It still needs a lot of work, (VM - mouse issues, monitor resolution issues, etc…), but has so much potential. I think it needs a modern design and some interface improvements to really compete though. As well as a tightly integrated hardware experience as well.

A little about my background: I don’t really know much about OSes, but I would like to learn more. I know how to code in Ruby/Rails. I used to know C++ and Java, though not really well. And PHP, but we won’t go there. I’m not a particularly great programmer, since I rarely have devoted a lot of time mastering it, because I’m usually off trying new things out, but I think I could be much better if I had the time. I have a CSE degree, and I have been involved with computers for most of my life.

So the reason for doing so is because, the 3 major players of OSes right now all have problems and really irritate me. I also think it annoys a lot of other people, including nerds/geeks, programmers, power-users, creative content creators (artists, photographers, etc…). For example, Windows is problematic if you want to program non-windows software, Linux has too many configuration issues and just gets in the way (although is my favorite for programming), and Mac OSX is closest probably to what I want, but it has the issues of Apple just always saying “my way, or the highway”. I’m sure most of you have the same things and can make a book out of all the problems with the other major OSes, so I won’t list them here.

I have been wanting a better OS to do my work in and enjoy my media in for a long time. I’ve always thought, one day, once I become rich I will get someone to create a better OS. Then Haiku came along. For a long time, it still seemed so far away from completion, but now I see that it is getting close. I’ve put it out of my mind for a long time, but I still visit the homepage yearly to see the progress. I’m still not rich (or close to being so, unfortunately, hehe), but I feel that it is possible to do this now (maybe I’m just being naive, but I don’t care.) I want to do it anyways. Kind of like the Haiku developers who even dared to try to build this OS on their own.

I’m in a bad position though because I still don’t know much about OS or cannot really contribute code back to Haiku. I can donate some money, but I rather spend it on the company I will build. So since Haiku is not finished yet, I’m still split as to what to do. So the following are more descriptions of my goals and concerns and also questions. Please feel free to be brutally honest with me, but try not to make everything negative, but focus on what can be done. Thanks in advance!

Here are the Haiku objectives, which I totally agree with:

  • “a fast, efficient, simple to use, easy to learn, and yet very powerful system for computer users of all levels”

  • “a leaner, cleaner and more efficient system capable of providing a better user experience that is simple and uniform throughout.”

Specific focus on personal computing
Custom kernel designed for responsiveness
Fully threaded design for great efficiency with multi-processor/core CPUs
Rich OO API for faster development
Database-like file system (BFS) with support for indexed metadata
Unified, cohesive interface
"sane defaults, not maximum configurability"

My Added Goals
Modern Interface (not dumbed down, just looks nice)
Modern Graphics
Focus on programmers and power-users initially

Future Goals
Privacy
Security

  • About privacy, I would like to prevent taking user info at little as possible and of that, I would do local client-side encryption for everything. This is in the future though.
  • These are issues I really care about. I also believe that most people don’t care about them enough, but if I build it in to my system, others will just naturally benefit from it. But I don’t have the resources to handle these things right now.

The OS should make you feel good and fun to use your computer. It should not get in the way of doing work.
A way to think about this is, it should have the power/flexibility of Linux and the modern cleanliness of Mac OSX.
It should be open in the sense that, I would never go out of the way to prevent other use case scenarios, but I have my own goals
and will seek to make the experience as good as possible. Unlike Apple, I wouldn’t go out of my way to restrict the
OS from being used on other systems. There is no “walled garden”, just a garden, that you can come in and out as you like, but I will
try to make the garden as nice as possible, whether you like to use it or not. You can also extend the garden with your own or other
gardens.

Open-source or not?
Eventually closed-source, to keep my proprietary code, so that I can keep my leadership advantage, just like any successful
business (ex: food industry - Coke would keep its recipe secret.)
I’m not sure about if at first, I want to keep the kernel open-source, or even just keep using the Haiku OS kernel for now and focus on
interface design and adding drivers and getting applications developed.

Hardware
I also want to eventually provide a complete experience, that includes hardware.

  • A desktop and a laptop.
  • Customized for the OS.
  • Higher-end hardware (not too high, for now). Future-focused.
  • Tablet and phone, not on the roadmap yet (but possibly in the future, with complete new interfaces).

In the beginning I will focus on what’s available, with a desktop, that I can build. This keeps my costs down, while still providing a tightly integrated system. Therefore, I might just spend most of my time, at first getting drivers developed for the system I build and test it, and eliminate as many bugs as possible.
Afterwards, I plan to execute on those above plans and more money comes in, I can tackle more and more of those problems with more money for developers, designers, engineers, etc…

BeOS/Older compatability

  • I don’t really care about keeping BeOS compatibility, but if I can get new paid developers to work on it to finish it. Or donate to existing developers to spend more time to finish it. (I’m just worried that some of the money will be wasted on features that don’t expedite the process of getting a stable working OS out the door.) Having older BeOS apps work can add to existing apps, and draw more initial users.
  • I also care more about using a modern compiler, GCC4, but is more a later stage concern.
  • Maybe focus on 64bit only as well, but again, not for right now probably.

Haiku

  • I don’t want to sabotage the Haiku community either. I want people to still continue developing for it, so that users can still use it for free.
  • Also, I’m not sure yet, but by keeping the same API for now, I can ensure that whoever develops for either platform, will be able to use the apps, wherever they like.

Kernel

  • I know that recently there have been talks about using the Linux kernel, for 1) to get Haiku finished faster, 2) to provide a more stable and tested kernel, 3) to have support for a lot of hardware already there. I’m still not sure where the consensus on Haiku developers stand, but maybe some will go and some won’t.
  • I don’t want to use the Linux kernel, and I want to finish the existing Haiku kernel. I want it to be as clean as possible, therefore less bridging / layering needed in the future and I can control my own destiny (make changes to the kernel as needed).

Target market

  • Initially, it will be targeted at programmers and power-users initially. This is who I think has the most pain in their current personal computing. If I target the average Joe, it will be much later down the road (and there wil always be a way to turn off unnecessary things, maybe have a beginner, intermediate, and advaned mode (like in Vuze)).
  • High-end (quality over quantity or being cheap). I may start with cheaper models at first if thats what it takes to break into the market. This means it will probably be expensive eventually, but hey it costs money to get people to develop for you and all other business expenses involved.
  • I know that there will be less and less people using the desktop/laptop in the future, that is OK with me since, I care about content creators and they will ultimately still like and use a desktop OS. If this changes, we will adapt, but for now and next 5-6 years, 10 years, I think this will still be case, if not for my whole lifetime.
  • When this company becomes successful and I get a lot of money rolling in, I plan to attack other interesting problems as well, but those are future dreams/goals for now. (But hey, one can dream.)

Modern Design/Interface

  • I want to make it look nice. Since I am focusing on programmers and power-users at first, I don’t want a dumbed-down/tablet/phone friendly interface. I know that many of you have this concern.
  • Of course, we will disagree probably on the specifics on the final outcome, but I will try to make it be good.
  • I also like options, but don’t want too many options, like Linux is all over the places sometimes. I will limit it to be too many choices.
  • I don’t want the user to have to use the terminal at all to do anything, but it will be possible to use it if you wanted to.

Documentation

  • Need up to date and easy documentation for as much as possible, especially developers. Not saying it isn’t so already, I’ve heard that it needs work and I haven’t really looked, but this needs to be there.

Brand/Image
Get work done, while having fun and being easy, with nice visuals at the same time. (Initially)
So, not corporate, not free spirits, and not hipster. I have no one name to group, it is, what it is.

Ok, so some questions/concerns that I have:

  • Do you think that Haiku is the best OS for this purpose?
  • Should I just donate money now to the Haiku project to get it finished ASAP? I don’t care about BeOS compatibility, but will this be a significant advantage for me?
  • How far along is the Haiku kernel; what else needs to be finished?
  • How far along is all the other features for R1 release?
  • Should I worry about keeping compatibility with the Haiku API and keep the existing kernel and have those efforts support me, while I build up?
  • I can browse the suggestion forums for more features, but you are welcome to add them here as well, or a future project site, when this gets going.
  • Anyone think about some major Software Patent issues that I may face? About competition, I hopefully will go unnoticed by the big players until it is too late for them, but who knows, maybe they are reading this right now and hope to crush me here in the this thread. I have strategies to out maneuver them for now, but probably they won’t even care because most major OSes right now are focused on the average Joe type user, and I’m not.
  • How many developers and in what fields do you think I should or need to start with? How much do you think I need to pay them, or can just offer stock options?
  • One of the many concerns I have is with video cards and getting a good graphics experience for the user. Should I focus on just ATI or NVidia or something else. Since these hardware are mostly closed, is it possible to even get a great experience, without having direct knowledge, or spending a lot time/money figuring things out?
  • This also applies to other hardware and driver development, how hard it is to develop drivers for other proprietary hardware?
  • Should I focus on making a tightly integrated desktop version first, or just focus on a modern design first? What do think will draw more people and developers? Or something else?
  • About choices, I like choices but too many is not a good thing either. One thing I don’t want to do is, prevent people from doing their own thing (or at least go out of my way to do so). Does that mean I need to open source the code? I would leave the other niche OSes, Linux, BSDs and even Haiku to be very hacker friendly, for people to do whatever they want. I just don’t want to turn into another Apple, which I won’t even use their products because of my distaste for them, and previously for Steve Jobs. But I need to have a successful business or else nothing will work, so I have to keep that in mind. Any suggestions here would be welcome.
  • Also, I may setup a donation fund as well, maybe having a commercial company, with paid developers would encourage more pay for something that will get the necessary things done quicker.

This post is long enough and I can’t voice all my concerns and questions. I also don’t want to reveal every last detail about my strategies as well.

Anyone who has interest in the project, please let me know. I am open to any questions/suggestions. Thanks again for reading this and any input you may have!

Anyone who has a lot of experience in any of these areas, I welcome them to comment or PM me for more thorough discussion.

I’m not also not 100% positive I am going to do this yet, but it has a high chance once I figure some things out. I need to see if I want to commit the time and money to realize this through.

I know this is an ambitious undertaking and as well there are a lot of concerns here, but hopefully this thread can handle it. If not, suggestions on where to discuss this are welcome.

You say you don’t like the way Apple works yet that is what you seem to be proposing, their main market is graphics designers & other artistic people. They have a closed system so that they can be sure all the hardware works with their system, again this is what you seem to be proposing.

Apple is actually a GUI running on top of FreeBSD. FreeBSD & Linux are the main systems holding the Internet together, MS Windows has the desktop market because they get it put onto (nearly) every computer that is manufactured.

You have a dream but I’m afraid it will take more money than an individual has to change the way things are.

I suggest you look elsewhere for a business opportunity, maybe consider setting up a company to give commercial support for Haiku when it reaches release status, but you will need to know the system inside out.

Your enthusiam is awesome and welcome to Haiku!

I want to build a commercial company

As someone who has started and run a company selling software, you should start with a business plan. If you don’t have a business plan, don’t start a company. If you don’t know what a business plan is, do your homework first. If the idea of a business plan is too boring, don’t start a company. Starting a company is mostly about business issues, not about writing cool software.

Just some thoughts for your consideration.

That is a bit of an oversimplification, Apple Darwin is on a diffrent sub branch to FreeBSD.

[quote=km]You say you don’t like the way Apple works yet that is what you seem to be proposing, their main market is graphics designers & other artistic people. They have a closed system so that they can be sure all the hardware works with their system, again this is what you seem to be proposing.

Apple is actually a GUI running on top of FreeBSD. FreeBSD & Linux are the main systems holding the Internet together, MS Windows has the desktop market because they get it put onto (nearly) every computer that is manufactured.[/quote]

I don’t think what I’m proposing is what Apple is doing. My initial market will be programmers and power users, who find Windows and Linux to be a frustrating experience, and don’t really like the image factor of Apple, not really artists/graphics designers. Overtime, I will include more markets, but I feel that this group of people, are the ones who want a different OS for them that they can get work done in nicely designed OS, and will pay for it. I feel that there is room in market for a 4th player.

About being closed, Apple goes out of their way to prevent you from using it on other devices. I’m not entirely sure I will keep the OS closed right now, but maybe just apps I build for it, kind of like Android. (I’m still deciding what the best course of strategy is for this.) But even if I keep it closed, I wouldn’t go out of my way to prevent you to use it with other devices. Like if you wanted to take the OS and use it on another system, I say go ahead, its just that I cant spare the resources to help you when something goes wrong. Or if my hardware is amazing, but you don’t like the OS and want to use something else, go ahead, same thing. I just want to build an whole experience that is pleasant to use, but I’m a person myself who likes to take things apart and try them elsewhere and I wouldn’t want to prevent others from doing the same to something they bought with their money.

[quote=km]
You have a dream but I’m afraid it will take more money than an individual has to change the way things are.

I suggest you look elsewhere for a business opportunity, maybe consider setting up a company to give commercial support for Haiku when it reaches release status, but you will need to know the system inside out.[/quote]

I feel that there is a market out there that is not being served, in particular, programmers and powers users who like the flexibility of Linux, but find it frustrating at times, and just needs to get work done. Who also had problems with Windows and doesn’t like the image of Apple. I’m planning to go after this market.

I know it won’t be easy, and maybe I am overestimating things, but this is what I’m out to see. I plan to start small and get several iterations out that appeal to hobbyists, because like you said, I don’t have the money to make something amazing in the beginning with just the money I have on hand. It will start slower, but it will better than what a community effort which has to target unlimited pieces of hardware, and no general leader to give direction. Not saying that Haiku is a failed project, I hope it does well, but it will probably never get rid of some of the issues of Linux by just being a community open-source project. Anyways, I see that as a commercial product, I have more chances of jump-starting and pushing ahead Haiku further than it can be as a open-source project.

I also don’t have any interest in just being a support company, that sounds really boring for me. Like most of you who are working on Haiku, I like to do it because it is fun and challenging.

Thanks for your thoughts.

[quote=AndrewZ]Your enthusiam is awesome and welcome to Haiku!

I want to build a commercial company

As someone who has started and run a company selling software, you should start with a business plan. If you don’t have a business plan, don’t start a company. If you don’t know what a business plan is, do your homework first. If the idea of a business plan is too boring, don’t start a company. Starting a company is mostly about business issues, not about writing cool software.

Just some thoughts for your consideration.[/quote]

Hi AndrewZ, Thanks for the welcome!

I know about business plans, and I have started a few business, but most of them failed. I don’t necessarily think that I need a traditional business plan, but you are right, I should start thinking more about some of the other areas. But right now, I’m more concerned about the state of Haiku and if it is the right time to do this, and if I have the resources to do so. I also need some technical insight to some areas because I don’t know enough, but I plan to find out.

I appreciate your thoughts. Thanks.

As AndrewZ mentioned, need to think about the business details and ask business type questions. For example, in regards to your target markets: why would power users or programmers want to use your Haiku based OS? What function(s) does the OS feature that another Operating System does not provide? What Operating Systems are existing Power Users and Programmers using? Why are they using the chosen OS? Also what/who do you define as a Power User as being: A user wanting the latest and greatest software; a user with the latest and greatest hardware? Can your OS meet the needs of such users? How and why? What price would such a user pay for your solution in comparison to other products and opportunities?

What kind of programmers? Application programmers, system programmers, script programmers? What type of tools do such programmers need and does your OS have such tools? What kind of programs and applications do they want to create?

Since you’ll be selling software, you’ll need to develop a packaged product (even if it’s downloadable), so what type of software will be available to power users and programmers in your OS bundle? Included software will need to fit the answers to questions like the ones mentioned above. Many programmers and power users like to hit the ground running, so what type of documentation and quick-start guides will enable them to do so?

Best thought would be to develop some type of real solution to an actual problem that your product can fill that someone would buy (and I would say a solution that uses the OS as part of its end function). For example, Valve has a good solution and business model that they’ve developed. They own SteamPowered, which is a service that offers downloadable software created by other programmers (companies). They’ve announced a computer device that will play games developed by programmers. Such a device needed an Operating System. So they have, more or less, programmers developing on an Operating System of their choosing that provides opportunities for both programmers (those who make games) and the Operating System developers (Valve, kind of).

Investigate companies such as RedHat and Novell in regards to how they use Linux and offer business solutions and services while using an Operating system they support and prefer. This, I think, is probably one of the better business models for a Haiku endeavor. Another example along this line is The Fair Harbor [Internet] Radio station (http://www.thefairharbor.com/). They use Haiku/BeOS for their radio broadcasting (at least they were at one time, I’m not sure if they still do). This is a good business model, too, such that they are using the Haiku OS in their business solution, which is streaming music.

For other business OS-specific examples investigate how Commodore-Amiga, Be, Inc., IBM, Microsoft, and Apple developed and promoted their commercial Operating Systems. Look into their successes, their failures. How did their product fit the perceived market need? Investigate how the market responded to the solutions they offered. Did their solutions fit what the market needed or wanted? Why or why not? What mistakes were made that put the Company in trouble and on the verge of bankruptcy (or in bankruptcy) in the long and short terms?

Spend a few weeks analyzing these types of questions. Disregard what you think or feel about the Companies mentioned and look at them from a purely business and marketing point of view. Like them or not, Apple, IBM, and Microsoft continue to survive. Spend time looking into why they have survived then apply what you find to your own endeavor with Haiku (or whatever you choose). These companies all started small and the market is an ever-changing place. If you can decide how your product can fit in the current (and future) market and the better your solution fits, the more likely you’ll survive.

This reply is probably over-kill, but hopefully you get the idea.

[quote=davidf215]As AndrewZ mentioned, need to think about the business details and ask business type questions. For example, in regards to your target markets: why would power users or programmers want to use your Haiku based OS? What function(s) does the OS feature that another Operating System does not provide? What Operating Systems are existing Power Users and Programmers using? Why are they using the chosen OS? Also what/who do you define as a Power User as being: A user wanting the latest and greatest software; a user with the latest and greatest hardware? Can your OS meet the needs of such users? How and why? What price would such a user pay for your solution in comparison to other products and opportunities?

What kind of programmers? Application programmers, system programmers, script programmers? What type of tools do such programmers need and does your OS have such tools? What kind of programs and applications do they want to create?

Spend a few weeks analyzing these types of questions. Disregard what you think or feel about the Companies mentioned and look at them from a purely business and marketing point of view. Like them or not, Apple, IBM, and Microsoft continue to survive. Spend time looking into why they have survived then apply what you find to your own endeavor with Haiku (or whatever you choose). These companies all started small and the market is an ever-changing place. If you can decide how your product can fit in the current (and future) market and the better your solution fits, the more likely you’ll survive.

This reply is probably over-kill, but hopefully you get the idea.[/quote]

Thanks for this. I will think these things over.

I couldn’t help but read through this and comment. You and I have similar ideas in how to build a fork, such as an all-new design aesthetic and pushing the release toward creative users that would appreciate a well-crafted innovative UI, as it would enhance their workflow.

But the stark difference between your ideas and ideals and mine is that software should be OPEN and free in both the senses of price and liberties, not paid for or run by a company as you are proposing, nor should you force users to pay to have their computer boot up. As a prime example of how the dated model of charging for system software is failing quickly, look at even how proprietary companies, such as Apple and Google, are now giving their closed software out for free to their user base (i.e. Chrome OS, OS X 10.9-10.10).

I would say that if you were to pursue a monetary goal, my advice would be to instead charge a simple subscription fee for a well-maintained application store (“App Store” is copyrighted) if you can rally a team of app developers/programmers to build one with next-gen applications. Without developers or a user base anyway, a project is DEAD.

Or focus on making hardware for Haiku instead, since you’re passionate about the OS. Personally, if I had the type of resources, I’d do this, as the #1 problem with Haiku OS right now is incompatibilities that arise out of using proprietary hardware with an open OS. Again, to give an example, look at System76 or Always Innovating that sell all Gnu/Linux computers.

My point is that the goal is focus and a lot of it. I hope this helps, one enthusiastic developer with the desire to create a new distro to another.

Good luck!

Why don’t you both get together and develop the creative OS you want? You can halve your development time, and get the OS finished twice as quick. Once complete you can then go your separate ways with it. But you’ll have to develop some sort of security, otherwise i doubt people would be keen to use it for workflow purposes.

From the proprietary goals that the other poster appears to adhere to/believe in, I doubt such a collaboration would work, but again, I’m not sure. As I said before, it appears there is a common belief in a strong design aesthetic, but there’s not the merits of having open software in his concept, which must be held not just by the Haiku OS, but any forks or distributions, in order to keep the OS alive.

But I do think your suggestion would be excellent otherwise.