Commercial scale mobile operating system
Commercial scale mobile operating system
Im willing to build a full scale commercial mobile operating system that can power smartphones. Actually We want to build it from scratch and not like a fork of Android ( Ex Cyanogen ). Please guide me on the following things.
1) UNIX or LINUX as the base ?
2) Budget Requirements & My estimate is $70MN. Sufficient ?
3) Programming Language
Thanks
1) UNIX or LINUX as the base ?
2) Budget Requirements & My estimate is $70MN. Sufficient ?
3) Programming Language
Thanks
Last edited by Combuster on Wed Jun 03, 2015 12:21 am, edited 1 time in total.
Reason: Removed ALL CAPS.
Reason: Removed ALL CAPS.
Re: COMMERCIAL SCALE MOBILE OPERATING SYSTEM
What's your app compatibility story?
Re: COMMERCIAL SCALE MOBILE OPERATING SYSTEM
Hi,
1) The only requirement for the base is that it's able to support the devices (including "binary blob" video), the user interface/GUI and the applications. Unix is a whole lot of useless bloat designed for clunky old servers that doesn't really help with any of that.
2) If you estimate 100 developers working for 5 years to develop it and double their wages to cover other staff (managers, secretaries, janitors, whatever) and equipment (including premises), then you're looking at maybe 100 million in development costs. However; after development you will have ongoing costs (maintaining and improving the software, sales teams, product support staff, etc), and if you don't get enough market share at some point then you end up losing money until bankruptcy. Given that you'll be competing with very established products that people (consumers, hardware manufacturers and mobile phone network carriers) are already used to, to get market share you're probably going to have to sell the phones at a significant loss for about 5 years while also spending a massive amount on advertising, etc (in addition to the ongoing costs). I'd estimate that for the 5 years after the product is developed you'll need to chew through a few billion dollars just to get enough market share to be sustainable long term. After the 5 years of development and 5 years of "intentional loss", you'd try to make a profit; but then you'd be competing against free software (e.g. Android) and it's hard to be "cheaper than free" so you'll have to compete on features/quality. Basically your OS is going to have to be significantly better than Android so that people will pay extra. Of course in that 10 years all the existing/established competition will improve; so this really means your OS needs to be "significantly better than Android will become in 10 years".
Cheers,
Brendan
3) You will need to encourage app developers to adopt the platform (because an OS is useless without applications and getting other people to provide them is much easier than developing every application yourself). This probably implies that Java is the best language for the applications because app developers already know it and already use it (and it makes it easy to port/use existing apps). For the base (e.g. kernel, drivers and JVM) you'd want something much lower level, but portable. That tends to imply C.vivvek wrote:Im willing to build a full scale commercial mobile operating system that can power smartphones. Actually We want to build it from scratch and not like a fork of Android ( Ex Cyanogen ). Please guide me on the following things.
1) UNIX or LINUX as the base ?
2) Budget Requirements & My estimate is $70MN. Sufficient ?
3) Programming Language
1) The only requirement for the base is that it's able to support the devices (including "binary blob" video), the user interface/GUI and the applications. Unix is a whole lot of useless bloat designed for clunky old servers that doesn't really help with any of that.
2) If you estimate 100 developers working for 5 years to develop it and double their wages to cover other staff (managers, secretaries, janitors, whatever) and equipment (including premises), then you're looking at maybe 100 million in development costs. However; after development you will have ongoing costs (maintaining and improving the software, sales teams, product support staff, etc), and if you don't get enough market share at some point then you end up losing money until bankruptcy. Given that you'll be competing with very established products that people (consumers, hardware manufacturers and mobile phone network carriers) are already used to, to get market share you're probably going to have to sell the phones at a significant loss for about 5 years while also spending a massive amount on advertising, etc (in addition to the ongoing costs). I'd estimate that for the 5 years after the product is developed you'll need to chew through a few billion dollars just to get enough market share to be sustainable long term. After the 5 years of development and 5 years of "intentional loss", you'd try to make a profit; but then you'd be competing against free software (e.g. Android) and it's hard to be "cheaper than free" so you'll have to compete on features/quality. Basically your OS is going to have to be significantly better than Android so that people will pay extra. Of course in that 10 years all the existing/established competition will improve; so this really means your OS needs to be "significantly better than Android will become in 10 years".
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Re: Commercial scale mobile operating system
Basically I agree with Brendan. Except I would replace "better" with "special". The somewhat relatively way to complete an all round product is to specialize your product. You don't need to complete on the average score.
But then, I suggest you start with a small milestone so that you can get more solid estimations with your resource and people.
But then, I suggest you start with a small milestone so that you can get more solid estimations with your resource and people.
Re: Commercial scale mobile operating system
If you are thinking of investing 70 million dollars in the project, and don't know the answer to the questions you ask, I'd suggest that you need to take advice from somewhere other than an anonymous Internet forum. For starters you might like to specify what hardware you are targeting and what features your OS will have that will make it a suitable alternative to iOS or Android.
Re: Commercial scale mobile operating system
1) An OS is very cheap thing, in fact. That's why a bunch of hairy hackers was able to create Linux. So, the actual name just doesn't matter.vivvek wrote:1) UNIX or LINUX as the base ?
2) Budget Requirements & My estimate is $70MN. Sufficient ?
3) Programming Language
2) If your goal is just an OS then you are wrong somewhere about two orders of magnitude down. But if your goal is to make a successful (profitable) business, then you are wrong two orders of magnitude up. And of course, you can state that your actual goal is somewhere in between and so, the estimation is absolutely correct
3) The language should be assembly for low level and Java (or even some higher level language) for high level. Assembly, of course, should be seamlessly integrated in Java (or higher level) solution.
And some additional remarks. If it is about doing business then there shouldn't be anything close to highest quality target. All the business do is creating a very big buzz and selling empty, but fancy looking promises. So, for new OS it is required to get some cheapest possible hardware platform and to create on it a demonstration of something fancy and very promising. Next your goal should be to create the great buzz. All the Internet should be full of talking about new edge in OS development, which is tightly related with the new OS. Every day a wave of news should look like - Samsung is looking closely at the new OS, Google sees the new OS as a potential threat, Microsoft is scratching heads of it's architects for they to counter the innovative wave of technologies found in the new OS, DoD is assessing new platform applicability for non-conventional warfare and so on. After it your office will be full of interested investors offering billions, just as they already had given to the same empty promising Facebook and the likes. Next, your goal is a successful IPO and a company with market capitalization in hundreds of billions (like Facebook et all).
But first there should be some really promising product. It's cheap, so I can create it for you just for 1 million. It will be fancy and really promising (and there's the motto ready to use - the first on the planet 100% Java OS). Add to the bill a million more for the cheap hardware platform and now you have a nicely looking device with a catchy images, buttons, icons and other loud stuff. After it is done you can show the product in every advertising you can buy and follow the path of Google and Facebook. Very simple indeed, but only if you really have 70 millions and some OS development experience.
Re: Commercial scale mobile operating system
embryo wrote:1) An OS is very cheap thing, in fact. That's why a bunch of hairy hackers was able to create Linux. So, the actual name just doesn't matter.vivvek wrote:1) UNIX or LINUX as the base ?
2) Budget Requirements & My estimate is $70MN. Sufficient ?
3) Programming Language
2) If your goal is just an OS then you are wrong somewhere about two orders of magnitude down. But if your goal is to make a successful (profitable) business, then you are wrong two orders of magnitude up. And of course, you can state that your actual goal is somewhere in between and so, the estimation is absolutely correct
3) The language should be assembly for low level and Java (or even some higher level language) for high level. Assembly, of course, should be seamlessly integrated in Java (or higher level) solution.
And some additional remarks. If it is about doing business then there shouldn't be anything close to highest quality target. All the business do is creating a very big buzz and selling empty, but fancy looking promises. So, for new OS it is required to get some cheapest possible hardware platform and to create on it a demonstration of something fancy and very promising. Next your goal should be to create the great buzz. All the Internet should be full of talking about new edge in OS development, which is tightly related with the new OS. Every day a wave of news should look like - Samsung is looking closely at the new OS, Google sees the new OS as a potential threat, Microsoft is scratching heads of it's architects for they to counter the innovative wave of technologies found in the new OS, DoD is assessing new platform applicability for non-conventional warfare and so on. After it your office will be full of interested investors offering billions, just as they already had given to the same empty promising Facebook and the likes. Next, your goal is a successful IPO and a company with market capitalization in hundreds of billions (like Facebook et all).
But first there should be some really promising product. It's cheap, so I can create it for you just for 1 million. It will be fancy and really promising (and there's the motto ready to use - the first on the planet 100% Java OS). Add to the bill a million more for the cheap hardware platform and now you have a nicely looking device with a catchy images, buttons, icons and other loud stuff. After it is done you can show the product in every advertising you can buy and follow the path of Google and Facebook. Very simple indeed, but only if you really have 70 millions and some OS development experience.
Actually I prepared a budget to hire 250 highly skilled developers. I Averaged a Salary of about $120,000 per annum. Im looking for a light OS with as much less SLOC and good features. As the project is a Mobile OS and its still in infantry. We just managed to outline an UI. Funds are established but Im unable to decide between UNIX and LINUX. However, I do not want to develop a modified Android. And Im not in a position to invest anything more than $80 to be maximum. I wanted to get an Opinion on the OSDEV. As it has experienced set of developers and a great community. As Im from India, the project certainly promises a Good Market. Especially as India is an Emerging and Big Market.
The OS as I outlined would have good features. I would want to build on LINUX. A Promising , reliable , secure OS. Im against Apps and I am after some new ecosystem. I also want to provide Android App Compatiability. I dont know if this works. Its a suicidal attempt.
Re: Commercial scale mobile operating system
Hi,
Linux is a kernel. It was originally designed for desktop/server computers (starting with 80x86 "PC compatible") and Unix. Since then it was heavily modified to support ARM SoCs and customised for use in smartphones; and now it forms the basis of Android. If you use the Linux kernel with your own "everything else" (GUI, applications, etc) then your OS will be a modified Android (same kernel, different GUI).
Even though Linux was heavily modified, it's still a large bloated piece of crap that has multiple problems (bad kernel API based around irrelevant POSIX APIs, bad scheduler with bad support for thread priorities which makes it suck on systems with a small number of CPUs, etc). Also, Linux is GPL - every change you make to the kernel must be given to your largest competitors. What both of these things mean is that by using Linux as the kernel you'd be throwing away a significant competitive advantage - the OS won't be faster/leaner because the kernel is custom designed for smartphones; and when you finally have a product you can't say "significantly better than Android because the kernel is custom designed for the OS and smartphones" to promote/market the product.
Also don't forget that smartphones are a very competitive market. For example, as soon as you release your "same as Android but different" product your competitors will reduce their prices to ensure you can't make profit in an attempt to put you out of business. You won't be able to get the hardware cheaper than them, you won't be able to get the OS cheaper than "free" and you won't be able to sell the final product cheaper than them. Because your product can't be cheaper than existing products it must be better than existing products (faster, leaner, more/better features, etc) so that consumers are willing to pay more for it.
Cheers,
Brendan
Unix is an OS that mostly requires 2 things - a set of command line utilities that would be completely inappropriate for a smartphone, and an application programming interface/API (POISIX). If you were designing an OS specifically for servers (what Unix was designed for) I'd tell you POSIX is crap and you shouldn't use it. Given that you're not designing an OS for servers and most people think applications should be Java (which has its own standard APIs that are not POSIX, like almost everything that's slightly modern) using POSIX would be almost entirely pointless. Basically, the idea of using Unix for a smartphone is extremely stupid.vivvek wrote:Funds are established but Im unable to decide between UNIX and LINUX. However, I do not want to develop a modified Android.
Linux is a kernel. It was originally designed for desktop/server computers (starting with 80x86 "PC compatible") and Unix. Since then it was heavily modified to support ARM SoCs and customised for use in smartphones; and now it forms the basis of Android. If you use the Linux kernel with your own "everything else" (GUI, applications, etc) then your OS will be a modified Android (same kernel, different GUI).
Even though Linux was heavily modified, it's still a large bloated piece of crap that has multiple problems (bad kernel API based around irrelevant POSIX APIs, bad scheduler with bad support for thread priorities which makes it suck on systems with a small number of CPUs, etc). Also, Linux is GPL - every change you make to the kernel must be given to your largest competitors. What both of these things mean is that by using Linux as the kernel you'd be throwing away a significant competitive advantage - the OS won't be faster/leaner because the kernel is custom designed for smartphones; and when you finally have a product you can't say "significantly better than Android because the kernel is custom designed for the OS and smartphones" to promote/market the product.
Also don't forget that smartphones are a very competitive market. For example, as soon as you release your "same as Android but different" product your competitors will reduce their prices to ensure you can't make profit in an attempt to put you out of business. You won't be able to get the hardware cheaper than them, you won't be able to get the OS cheaper than "free" and you won't be able to sell the final product cheaper than them. Because your product can't be cheaper than existing products it must be better than existing products (faster, leaner, more/better features, etc) so that consumers are willing to pay more for it.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Re: Commercial scale mobile operating system
Sorry, but with such employment levels the budget is about two years of business. And no more.vivvek wrote:Actually I prepared a budget to hire 250 highly skilled developers. I Averaged a Salary of about $120,000 per annum.
There should be a plan for nearest 10 years at least. The plan should be flexible and less restrictive for distant targets. Nearest term goal is to create a viable base for the next 20 (at least) years of business. The nearest goal achievement can be not very expensive, but it requires the biggest ever attention to the quality of planning, because mistakes at this stage can ruin your business at the start. An important part of the plan should be the selection of a base technology. The technology should provide your business with at least some competitive advantages for the period of business growth. Also it should provide you some very important media advantage (the big buzz). In the long run there will be no technological advantages because the cost of copying software solutions is relatively small, so your nearest goal is all about to be able to get above everybody else on the start. And (as it was already written) the most promising startup booster is a heavy advertising campaign. However, it would be much better base for the future business if at the start you will have some important advantages in software and (possibly) hardware architecture, because they can be of great help at the initial growth stage (first few years).
So, it's a correct perception that you need to decide on the base parts of the future platform, but as it is shown above the decision can be very dangerous in case if it will miss something important for the business growth. And of course, it is much better to consult with many professionals and to hire really good architects and team leads.
If you want to invest in modified UNIX then I'm afraid in the end you will get two nightmares to manage - the modified UNIX and completely incompatible front running system (UI and other tightly related stuff).vivvek wrote:Im looking for a light OS with as much less SLOC and good features. As the project is a Mobile OS and its still in infantry. We just managed to outline an UI. Funds are established but Im unable to decide between UNIX and LINUX. However, I do not want to develop a modified Android.
So, I still recommend you to invest in a new base for your business. And remember that the hope for the UNIX to be a "Promising , reliable , secure OS" is a miracle, because all it's promises are based on the Android's success (heavily funded, by the way) while it's reliability and security model have nothing to do with the actually very important things that you can find if try to create some really user friendly environment.
India's market requires something cost competitive like free OS and very cheap hardware. Have you explored such ways of doing business? They have some specific requirements and offer much lesser profit unless your business will be extended to the worldwide.vivvek wrote:As Im from India, the project certainly promises a Good Market. Especially as India is an Emerging and Big Market.
What do you mean when say "Im against Apps"? What ecosystem can be without applications?vivvek wrote:Im against Apps and I am after some new ecosystem.
It works, but for a cost. First of all the Android's architecture will be imposed on your system. It's design I can call "a quick and dirty". While at the first sight it promises a lot, but at the second sight (when you start actually coding for this platform) you discover a lot of poorly documented hidden interdependencies that all your programmers must know. It's just about costs of development for Android, just like for other Google's products like AppEngine, for example. The cost is significantly greater than the cost of creating similar pure Java applications. Also it is the same for the learning curve. And finally - you will be locked in a Google managed spin of "innovations", on every significant Android's update you should always implement the same APIs. It's a hidden cost that can easily drive you out of business.vivvek wrote:I also want to provide Android App Compatiability. I dont know if this works.
O please, don't be so shaky, it's the planning stage still ahead of you that still can bring you real confidence in your efforts. So, just plan carefully and there will be nothing special about it.vivvek wrote:Its a suicidal attempt.
My previous account (embryo) was accidentally deleted, so I have no chance but to use something new. But may be it was a good lesson about software reliability
Re: Commercial scale mobile operating system
In fact things are not such scary. There is a licensing issue about "free" Android. It is free for non commercial use only. But all hardware vendors that install Android on their devices always pay Google some money. Also there is an industry around the Android ecosystem and Google manages to get part of money flows from it.Brendan wrote:You won't be able to get the hardware cheaper than them, you won't be able to get the OS cheaper than "free" and you won't be able to sell the final product cheaper than them.
And even cheaper hardware is not a big deal just because users always want more. More processor clocks, more memory, more storage, faster networking, greater screen resolution and so on. So, there always are some fat market parts where it is possible to get some profit.
My previous account (embryo) was accidentally deleted, so I have no chance but to use something new. But may be it was a good lesson about software reliability
Re: Commercial scale mobile operating system
It really gets me scared to read through opinions, but It only gets me more sticking to the concept. If Im afraid, I wouldnt have started at the first place. I started out with the Idea in a belief that I will get great engineers to be working together. And I still believe there is a great team, that is yet to be formed, but will be formed. I believe in it.
And Im really thankful to Brendan and Embryo2 for giving opinion that really matters to me. Im part of a good community. Life was boring. Now it gets its spice.
I would surely post I need something. And promise to be actively involved and hope I will contribute meaningful work to the community.
Just love to be here.
Thanks !
And Im really thankful to Brendan and Embryo2 for giving opinion that really matters to me. Im part of a good community. Life was boring. Now it gets its spice.
I would surely post I need something. And promise to be actively involved and hope I will contribute meaningful work to the community.
Just love to be here.
Thanks !