First Psystar, now Quo, but what about Linux? Enter Mond Computers.
Despite the lawsuit that Apple has brought against Psystar, a company which sells Mac "clones", bringing it down to bankruptcy there is a company which is pretty much doing exactly the same thing: Quo Computer.
This clearly indicates that there is a demand for computers running Mac OS X which are less expensive than what Apple typically offers. In fact, as was indicated in the 97th episode of Tekzilla, which featured a tutorial for building a Hackintosh that runs Mac OS X just as perfect as a real Mac (including updates), one can get a system twice as powerful as those sold by Apple for same price. Unfortunately, what Apple is doing with this demand is the same thing RIAA and MPAA typically do against file sharers, instead of giving people what they want and seizing the opportunities that this may entail, they bring the force of law against them (a pretty corrupt law I might add, unless you think DMCA is all ethical sweetness).
So what has Linux got to do with all of this? First off, obviously, it contains no such legal hassles being completely free for anyone to install wherever they want. Second of all, there may be a lesson to learn from demand mentioned above. What people apparently want is an OS that "just works" and does so beautifully running on hardware that "just works" and is also quite beautiful, without breaking the dime. It may be quite the jump to make, but what if a Linux-based OS could be spiced up to play the role of just such an OS in this picture?
The best that we've seen so far were companies such as System76 making their own computers running Ubuntu, but what I'm talking about should go a level or few beyond that. This isn't just about pre-installing a Linux based OS. This is about matching the user experience provided by Apple and longed for by those looking for cheap hackintoshes. This is about building Linux based desktop appliances where every bit of the user experience is carefully tweaked to perfection. A user of such a computer should not even care what kernel or what distro is it that is running on the machine. He would simply know it by the name of the computer and indeed the name, a brand, of the experience he enjoys with it.
Here are a few ideas to start with, just to shed further light on what I'm trying to express.
Everything starts with the brand. It is the name or the word that is to be associated with this whole project and the final user experience. The Brand is to be used consistently and should be shielded from all potentially negative connotations. The fact the project uses Linux should be a mere footnote for interested techies, but the connotations this brand should establish should inspire a perception of the project as beyond Linux, where Linux is merely one of the components.
Branding should be done in such a way to neutralize all complaints of weaknesses which may technically be impossible to fix. To clarify this, think about the fact that Macs cannot run certain software which Windows can. How many people exactly raise as much fuss about that as Linux users tend to raise about certain programs? How come they don't raise as much fuss? Because it was made absolutely clear from the beginning that this is a different realm, a different culture, a different experience with its own rules, its own turf and its own features.
Instead of thinking about what this product does not support the brand should make people pay attention to everything that the product does support, and put more emotional weight on that..
The brand should also be a word that is simple to pronounce and spell, that is not too long (the shorter the better). Both "Mac" and "Quo" are good examples. "System76" and their Koala's, Gazella's etc. most certainly are not good examples of such branding, no matter the good intentions. "System76" as a term would rather appeal to typical Linux geeks who like to fool around with the system than to people who do not want it to feel like they're using something complex.
The Brand is a key, a password to the experience of the product in question. Just uttering the word, like a spell, should make people feel curious and wanting about the product. Its ultimate success would be when people begin treating it like a word representing a class of objects the same way people talk about "buying a mac" or "googling something" without having to explain anyone what "mac" or "google" actually is.
For purposes of this article here is an example of what could be such a brand: Mond. It comes from "diamond" implying great value and solidity. It has a bit of a french sound to it (think le monde) which gives it elegance. It is fitting for sentences such as "Dad, will you buy me a Mond?" of course referring to that special Mond Computer.
The Consistent Experience
From the first contact with the product to its actual use experience should be perfectly consistent. There is a reason Apple.com looks similar in style to Mac OS X interface as well as why Apple computers themselves have that consistent style and feel to them. There is great integrity to their brand because the experience is so consistent from everywhere you encounter anything Apple. The same should be with our Mond Experience. The web site should have a somewhat unique and incredibly appealing look that will be consistent with, albeit expanded upon, by the look of the actual Mond Computer and the Mond User Interface.
The Mond OS
No, not Linux OS, not Ubuntu or Fedora or anything of the sort. The Mond OS. Remember, the brand and experience must be absolutely consistent. It doesn't matter squat what this Mond OS is actually based on to the end user.
That said, how to turn what we've currently got in the Linux ecosystem into such a Mond OS? My suggestions follow:
Pick the base with lots of existing support.
Obviously, if we are to start with an obscure distribution with little support for it in the marketplace it will be that much harder for Mond to take off. This is why it probably has to be based on something for which there is most packaged software, most third parties providing their own packages, most web sites dedicated to supporting such a distro and providing tutorials and tips for it etc. In the Linux world this probably brings it down to Ubuntu and perhaps SuSE, and distros based on it.
This will ensure that Mond OS taps into an already strong support ecosystem.
A single control panel and a Single software manager
A single streamlined control panel isn't a terribly new thing in the Linux world proving it can be done. What Mint has is probably one of better examples of this, as well as KDE's System Settings. Both allow launching a package manager directly from the control panel.
This is where the most interesting and perhaps most challenging improvements should be made, in the package manager. Forget Add/Remove Programs or Synaptic. This is something else. It would be everything that Add/Remove Programs and Synaptic already offer with a special upgrade: support for all of the popular third party ways of installing software in Ubuntu. Namely these include standalone .deb packages (such as those on GetDeb.net), autopackages, .run packages, zip files with pre-compiled binaries etc.
Standalone .deb's are in Ubuntu already dealt with pretty well. The same should apply to the other types of packages. If one downloads a .run package, an autopackage or a zip and tries to run it, probably the first thing Mond's system should do is run a quick compatibility scan. What this scan should do is the following:
- 1. Check the file name with the central Mond database to see if the software in question is available for install from a central repository already, if previous attempts to install a package with said filename have succeeded and pretty much any other information that could be contained in the database for this file name.
- 2. If the scan determines that the package is compatible it can make it executable (if it isn't already) and run the install. If install uses the ugly GTK1 interface (like many do), it should abstract that with a built in theme that makes it look consistent with the rest of the system.
- 3. If the scan determines that there already is the same version in repositories, it should without question install that and discount the .run. When the user ignorantly tries to use the same .run to uninstall, Mond should intercept this and do a proper apt-get remove instead. The point is the user should feel like everything he wants to do he gets.
- 4. If the scan determines the package is neither compatible nor is there an equivalent in repositories it should present a polite message to the user saying something like "Unfortunately, Mond does not support this package, but we have sent information about your attempt to Mond Central and will be working on providing support in the future." while, of course, sending the data on the incident.
The process might be slightly different if it were a zip. It should probably unzip it in the memory and see if there is a binary in there or anything that could be software and not just some data. If it is software then it takes typical checks from above and if not it lets the user continue.
This, I know, adds quite some additional abstraction to the system, but remember that we are talking about a complete Mond experience. Mond OS will typically come with computers who are more than capable of running these extra operations without the user ever knowing there is such a complex process going on. Mond OS is made for Mond Computers just like Mac OS X is made for Macs.
Furthermore, all of the .run, autopackage, zip packages etc. for which the Mond Central database already knows are installable and work well should actually be listed among installable software in the central software manager application.
I am just an idea man here and not a programmer, but from progress I've seen made on Linux so far I think this sort of thing can be accomplished. It is essentially a meta layer that makes additional methods of installation to that provided by apt-get (or zypper if SuSE was chosen as Mond OS base) easy.
Exceptional WINE Support
I have to emphasize this. Mond OS would make no typical distinction between Windows and Linux because Mond OS is not supposed to be perceived as typical Linux does. Therefore if WINE allows a particular Windows application to run without a hitch this application should not be perceived as "emulated" and the user should not have a sigh of relief along with thinking "awesome, a windows application worked here" because he was previously led to think that Linux and Windows are opposites.
Instead the attitude is that Mond either supports something or it doesn't, not because it falls into either of the "Windows", "Linux" or "Mac" categories, but because it is a category all of its own. So what should be done here?
Well, WINE should be an essential part of Mond OS and pre-installed on Mond Computers. .EXE files should be picked up by the above described meta system. If the file is .exe it would ask a Mond database (which feeds from WINE AppDb) on how good is the support for this application. If it is anything short of "it will surely run", it should discount it and say there is no support. Otherwise it should proceed and run it. Note that it wouldn't say "WINE" doesn't support it or "Linux" doesn't support it, but "Mond doesn't support it".
Freeware and FOSS windows programs that are rated as working very well with WINE should be available in the central software manager's list of installable applications.
Thus, as far as software management is concerned Mond would effectively merge everything available in official repositories with everything available as standalone .debs, .runs, autopackages, zip packages and setup.exe packages of WINE supported programs. The process that goes on behind the scenes that allows all these to run on Mond should make the user feel like they're all supported equally, no discrimination, albeit developers would still be let known that the safest and most stable way of building packages for Mond is to get them into repositories or make .deb packages rather than .run, autopackage etc.
Breathtakingly good looking hardware
Mond Computers would be essentially PCs, like Quo, Psystar and even Macs. If this operation is started with lower budget existing cases could be purchased and then modified to fit Mond branding. It's best to get cases which have least of the identifying features on them and are thus the best clay to mold. In the future however, it's best for Mond cases to be internally produced. They should have a distinct look and feel with the Mond logo having a special position much like Apple's bitten Apple has on Apple computers. It should emulate the Apple culture.
Attention should be paid to the position of USB ports, DVD drives and buttons, so as not to make the computer look crowded. I think it can be made to look a lot cleaner and leaner than System76 computers.
Perfect hardware support
This is essentially a no brainer since whenever doing pre-installs of course the hardware picked out for the configuration should be that which is best supported and most stable under Linux. However, for peripherals the same that goes for unsupported software above goes for this. There should be a central Mond Hardware Database which will list hardware that will absolutely "just work" so as to guide customer purchases of peripherals to plug in to their shiny Mond box.
I think we can entirely match the Apple experience using nothing more than what is already available in the Linux and PC hardware world and create a strong new brand of computers that have their own particular feel and culture the same way Apple does. I also think there is a market for this. If all of the Mac OS X fans only had a perfectly legal alternative called Mond OS that matches and exceeds OS X capabilities they might be compelled to consider it.
I hope I have expressed my vision well enough, but if you have any questions or comments feel free to post below. Those more technically minded can also analyze the possibilities I call for here, but please try to be positive and constructive. Let's not just dismiss something out of hand because it may at first seem "impossible".
And for inspiration.. here is a nice Mond Computers graphic I mocked up.