On OS X:
1) no appearance customization /skinning. enforce a completely standardized user interface. I think predictability of user interface and good guidelines for coders is important.
Check with knobs on
2) no different distributions of the OS. i recognize how cool it is that there are so many linux distributions but i just tend to prefer a more standardized controlled predictable approach to the core OS (im not saying anything about application "packs").
Check. No home, ultimate or any other versions.
3) no included applications in the OS distribution, other than the most bare minimum (basic text editor maybe, and control panel type utilities).
Fail. Though Leopard doesn't contain iLife (only new Macs do), it does come with mail, iChat IIRC.
4) minimal user interface fancy effects -- just a personal choice that i would rather keep the visuals to a minimum.
But on the other hand, there are some things about apple and there approach that i deeply dislike. First of all, i really do not like all the focus on visuals. So I guess one thing you could say is that i do want a standardized UI but not the mac/osx one.
You would say fail, but I say Check. Perhaps I'm used to OS X now, but the visual elements almost exclusively are utilitarian. They serve a purpose to solidify a metaphor
, and no more. The UI is, though elegantly drawn, pretty drab (graphite), it remains out of my way and doesn't flash itself at me (as Vista does, OS X is predominantly grey). I appreciate that someone has thought about small details. I also just want to comment, as I was making my hackintosh, I went through two weeks without a graphics driver. No accelerated graphics at all, just software rendering. I expected Leopard to crawl without OpenGL, Quartz acceleration etc. I was amazed to find no noticeable difference. I couldn't measure any significant CPU hit (and I spent a while trying), everything flows. Whatever they've done, it is *really* optimised at the core. I certainly can't say the same about trying Linux without drivers (the fans whir just to show a menu!!!), and Windows GDI is horribly slow (or just badly designed) no matter what (Aqua performs faster without drivers than Windows does with them!). I really doubt anyone could run Aero or Compiz without drivers, so I conclude Aqua is amazingly optimised.
5) a focus on clean file system -- all of the current major OS make me crazy with how messy and chaotic their file systems are.
I say check, but I don't know *how* clean you want it. But as I wish below, my ideal file system loses hard folder hierarchies anyway...
6) a focus on providing a clean object oriented API for programs. The entire focus of the operating system should be in providing a clean efficient interface to coders.
7) a focus on eliminating all hidden system settings.. do not use a registry system. software should be install-less, and installing a piece of software should be a simple matter of copying files to a fixed location. uninstallation would be just a matter of deleting the files.
The other thing that apple does that i very much dislike is that in their attempt to make everything "easy" and "simple", they hide everything that's going on from the user. I remember a friend who was telling me how great the apple networking was.. then there was a problem connecting, and her mac did not want to say anything about what was wrong or how to fix it.
Hm, the advanced network preferences are right there in the "control panel":
What would your ideal Operating System be like?
I don't find the core OS dumbed down, it is as quick to drill down to advanced settings, and is certainly more well designed than the windows networking prefs. What *is* dumbed down are several of the Apple applications like iPhoto which annoy the hell out of me.
Now don't get me wrong, as I've used OS X this past year and a half, I gone through dislike, slow warming, fascination, amazement, distrust. Some things annoy the hell
out of me. I don't trust Apple any more than any other big fat Corporation. But technically, OS X is closer to my ideal OS than anything else I use. Having my hackintosh quad booted with Vista, Ubuntu, XP and Leopard; I'm clear on what rock my boat most.
1 ) Pervasive metadata — the OS should provide not only solid metadata handling per file, but support *extensible* metadata mechanisms for any file. Tagging, file usage and history and discoverable information has to be a core OS feature, not something tacked on by 3rd-parties. The OS should provide a core search facility built robustly on this metadata, again not some proprietary 3rd-party. And this data should be accessible to the cloud through design.
2 ) As a consequence, folder hierarchies should lose predominance and smart folders should pervade. No OS is where I want it to be (r.e. metadata and smart folders) on this.
3 ) Delta versioned file system. Again, this should be core OS territory (even as much as I love Filehamster!), configurable per file. The interface should allow simple searching for a file through time, and apps should allow version comparisons easily (i.e. the OS API should enforce this). Time Machine is the closest so far (great UI), but I want underlying filesystem support which HFS+ doesn't have.
4 ) Integration! The OS should enforce a consistent "automation" interface for both apps and users to integrate. Apps should offer services to other apps (locally or remotely through the same system) through an enforced universal API. This allows data to flow and be transformed across applications seamlessly (I *hate* data islands!). OS X is again closest, Applescript+Automator+Services, though I've been impressed by KDE 4. But I want much more.
5) Core support for the coming GPU revolution. I do a bunch of DV editing, and harnessing the GPU as a general purpose device would rock. I don't want a proprietary 3rd-party to do this, I want it pervasive and universally offered by the OS. Better support from multiple CPUs goes without saying, but it is depressing to see high-core machines having cores sitting idle.
6 ) Opensource kernel. I want the core of my OS open, primarily to stop stupid DRM madness that crept into Vista.
7 ) Scales to the hardware, from low-end to high-end well.
8 ) Hardware agnostic. Yes, I'm looking at you OS X! Though I don't want Apple to get mired in the driver hell of Windows and Linux, I want to be able to run it where I want. Apple should keep making drivers only for its hardware
, and let the hackers do the rest as has sustained Linux for many years.
9 ) Mouse gestures pervasive and universal. They are essential for me. I currently use XGestures which is excellent, but this is fundamental enough that I want the OS to do it. Everyone is jumping on multi-touch, but I want it configurable and extensible, not hard-wired (as OS X does now).
10) Better voice control. Again, I don't want a 3rd-party. Voice is a valid interface, has some clear advantages to either mouse or keyboard. Currently clunky, but this is technically achievable. Current OS implementations are still too quirky. Eye tracking is another fruitful future avenue, as is possibly EEG brainwave control.
I'm sure there are many more. Some may be aghast at the notion of building in voice control etc, and I know the balance of what is core and optional is personal. But I do think the OS should handle the core interfaces for human interaction.