DonationCoder.com Forum

Main Area and Open Discussion => General Software Discussion => Topic started by: mouser on August 14, 2008, 12:59 AM

Title: What would your ideal Operating System be like?
Post by: mouser on August 14, 2008, 12:59 AM
We've had a few recent long threads on the differences between windows and linux (https://www.donationcoder.com/forum/index.php?topic=14361.0) and on which operating system you like best (https://www.donationcoder.com/forum/index.php?topic=14350.0), but i thought it might be nice to discuss what we would all like to see in a perfect operating system.

Post as detailed a description as you like -- it would be nice to hear both from end users and from those who know a bit about recent developments in modern operating system internals.
Title: Re: What would your ideal Operating System be like?
Post by: mouser on August 14, 2008, 01:13 AM
Some of my thoughts, that will sound bad to many people i'm sure.  I note that i am talking about a desktop operating system not an internet server OS.

1) no appearance customization /skinning. enforce a completely standardized user interface.  I think predictability of user interface and good guidelines for coders is important.
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").
3) no included applications in the OS distribution, other than the most bare minimum (basic text editor maybe, and control panel type utilities).
4) minimal user interface fancy effects -- just a personal choice that i would rather keep the visuals to a minimum.
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.
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.
Title: Re: What would your ideal Operating System be like?
Post by: Gothi[c] on August 14, 2008, 01:23 AM
[edit] [/edit]
Title: Re: What would your ideal Operating System be like?
Post by: Gothi[c] on August 14, 2008, 01:27 AM
1) no appearance customization /skinning. enforce a completely standardized user interface.  I think predictability of user interface and good guidelines for coders is important.
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").
I wouldn't want your OS ;) Nice way of pointing out the direct opposites of my perfect OS :D
Just proves that one size doesn't fit all theory ;)
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.
I'm all for having to do less work, but the last thing I want is a "user friendly" OS, where I'm assumed an idiot. I like to be prompted where I want things to be installed, in fact, I'd rather move it there myself. I don't trust automation. I want full control over these things. It would be OK to have the install-less software as feature for other people, but it should be optional :)

Title: Re: What would your ideal Operating System be like?
Post by: kartal on August 14, 2008, 01:47 AM
-no software installations
-near instant startup
-please, no registry
-simple easy cloning-mirroring of operating system on other machines
-if possible make it free :) (No ads supported OS)
-security should be the most important part of the os design
-simplified hardware-driver management
-please use encrypted drives, even for system files
-better default firewall and network manager(xp and vista`s network-firewall managers are a joke compared to commercial or free firewalls)
Title: Re: What would your ideal Operating System be like?
Post by: Target on August 14, 2008, 02:00 AM

An operating system should be just that - a platform on which applications can be run.

If you want a firewall, add one.  If you want a text editor, add one.  If you want a browser, add one

Do not force me to carry dozens of applications that I'll never use and which have nothing whatsoever to do with the actual operating system

Title: Re: What would your ideal Operating System be like?
Post by: zridling on August 14, 2008, 03:13 AM
Hmmm.... seems like mouser, kartal, and Target stole my thunder.
Title: Re: What would your ideal Operating System be like?
Post by: Eóin on August 14, 2008, 04:23 AM
1) no appearance customization /skinning. enforce a completely standardized user interface.  I think predictability of user interface and good guidelines for coders is important.
...
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.

Not sure I agree there, sure making life easier for programmers could mean more quality programs but would it really? Honestly I don't think so.

And at the end of the day I can't see users caring how difficult or not the OS is for developers.
Title: Re: What would your ideal Operating System be like?
Post by: housetier on August 14, 2008, 05:12 AM
error free.
no surprises.
Title: Re: What would your ideal Operating System be like?
Post by: Gothi[c] on August 14, 2008, 05:16 AM
error free.
no surprises.
One can dream :) I think this is one of the most unachievable things so far :D
Title: Re: What would your ideal Operating System be like?
Post by: Darwin on August 14, 2008, 08:05 AM
No registry would be tops on my list while a clean and consistent UI would be right behind it. Other preferences near the top of the list would include realistic hardware requirements and, by extension, a small footprint. Free would be nice, but it is less important.
Title: Re: What would your ideal Operating System be like?
Post by: Carol Haynes on August 14, 2008, 08:48 AM
One of the best OSes I have ever used was designed by Acorn Computers for their Risc based computer systems in the 80s. Unfortunately they couldn't compete.

Software installation was simplicity - just copy the software folder to the hard disc. All dependencies were included with the application and during load each app simply checked to see if the required dependencies were in memory (or newer version) and if not. All dependencies (inc. OLE) were totally modular. The best bit was to run the application you simply double clicked the application folder (which could be placed anywhere you like). Each folder had a !Run text file included which told the folder how to behave on double click (great because it meant you could easily design your own apps to work in exactly the same way).

The OS came as a set ROM chips - quick and easy to install, superbly fast boot times (practically instant) and no chance of the core system becoming corrupted by viruses/malware etc. just reboot and you have a clean system.

A very simple and easily extensible scheme.

Some ideas were used by MS when they released Windows 98.

Their desktop interface was very good too - no menus to clutter the place up. It used a 3 button mouse with the middle mouse always bringing up the application context menu.

Shame it disappeared but a small UK company couldn't compete in the PC market. They are now ubiqutous though throughout most electronics as they became ARM Ltd which seems to produce most of the world's RISC based chips for cell phones, PDAs and all sorts of devices.
Title: Re: What would your ideal Operating System be like?
Post by: housetier on August 14, 2008, 09:41 AM
Carol, rox-filer behaves similar. You have so called AppDirs which differ from normal directories by having an executable file named AppRun inside. When you "open" such an AppDir, rox-filer executes the file.

It is not an OS, just a graphical file manager: http://roscidus.com/desktop/

With 0install (http://0install.net/) I can install lots of software packages via drag and drop.

The name "rox" comes from "Risc OS on X" btw :) risc rocks
Title: Re: What would your ideal Operating System be like?
Post by: Carol Haynes on August 14, 2008, 09:44 AM
You can still buy RiscOS computers but I don't think they have been developed much since the 90s.

Now Risc OS on X sounds interesting. Time to play in VMWare I think ... esp. as it appears to run under Windows, Linux and MacOS !
Title: Re: What would your ideal Operating System be like?
Post by: f0dder on August 14, 2008, 02:47 PM
These are just some of my thoughts. I've tried to strike some balance between idealism and realism. I wouldn't mind getting rid of all legacy (hardware as well as software), and it'd be just wonderful if you didn't have to pay for anything and everything had source code available etc... but I do live in the real world. Sorta :)

POLITICS

KERNEL

FILESYSTEM LAYOUT

OPERATING SYSTEM

And as a separate point: documentation. Proper, maintained, indexed, structured, professional, up-to-date documentation for everything - kernel, libraries, applications, et cetera.

EDIT: a thing I forgot - portability. But not over-the-edge "run frigging everywhere" mentality... limit to "sane" hardware, probably setting the bar at at least 32bit architectures with proper memory-management/protection hardware. Possibly forget about supporting "big iron" machines, I'm not sure one OS can really fit everything comfortably. And portability also shouldn't mean you can't take advantage of CPU-specific optimizations where they make sense.

Oh, and another thing: designed ground-up with hypervisor and virtualization support. This can be done without much overhead, and would mean internet-facing applications (browsers, servers, you name it) can run in very secure sandboxes, without having to code a boatload of per-application sandbox code.
Title: Re: What would your ideal Operating System be like?
Post by: Darwin on August 14, 2008, 06:10 PM
Wow! That's quite a vision of your ideal OS, f0dder  :Thmbsup: - you've given this some though, haven't you   :) Anyway, very interesting.
Title: Re: What would your ideal Operating System be like?
Post by: 4wd on August 14, 2008, 08:17 PM
QNX Neutrino RTOS (http://www.qnx.com/) - Back in my Amiga days I still remember the demo disk they had, a complete RTOS, GUI interface and web browser on a single bootable 1.44MB floppy.

I've still got the OS CD, (IIRC - a 5cm disc!),  they gave out at one of the last Amiga shows around here somewhere.

Canada hasn't had a meltdown yet (http://www.itbusiness.ca/it/client/en/CDN/News.asp?id=40793) :)

I like their Microsoft analogy  :D

The QNX operating system is a micro-kernel operating system, which means it consists of a relatively small base of code. "Take a string of Christmas lights," said Darrin Shewchuk, head of communications with Kanata, Ont.-based QNX Software Systems Ltd. "Remember the old style of Christmas lights where you had a big long string and if one bulb burned out the whole thing burned out and you had to go through each one and find out which single bulb failed? That's Microsoft."


PS: Woohoo! Only 1 post to go!
Title: Re: What would your ideal Operating System be like?
Post by: Shades on August 14, 2008, 09:05 PM
Aaahhhh...the Amiga days, fond memories  :)

Especially with its PFS file system (that I later bought), DirectoryOpus 5 with this filesystem, 32Mb RAM, 68030 on steroids (50MHz!!!) and a 2GByte harddisk...it was really fun playing DOOM (and others from that era) on that A1200.

EDIT:
Oops, forgot to say that I really liked the robustness from the AmigaOS...and Arexx...and text file configuration. The folder structure was also reasonably simple.

Argh, you done it...now I have to fire up Cloanto again!!!  ;)
Title: Re: What would your ideal Operating System be like?
Post by: zridling on August 15, 2008, 12:34 AM
f0dder knows of what he speaketh -- wow!  :up:
Title: Re: What would your ideal Operating System be like?
Post by: Darwin on August 15, 2008, 12:49 AM
Canada hasn't had a meltdown yet

You obviously haven't been paying much attention to the Olympics then! Ouch! Did I say that out loud?  ;D]

BTW Congrats on the 100th post!
Title: Re: What would your ideal Operating System be like?
Post by: f0dder on August 15, 2008, 01:14 AM
"Remember the old style of Christmas lights where you had a big long string and if one bulb burned out the whole thing burned out and you had to go through each one and find out which single bulb failed? That's Microsoft."
-4wd
Cute analogy, but I'm afraid it doesn't really fit. Yes, you can use it as a coarse comparison between microkernels and the rest, but it isn't spot-on. If you look a recent operating systems, the lines begin to blur - NT (and linux, for that matter) are pretty monolithic kernels, but you can still have individually failing parts that are able to restart... especialy with Vista, which runs graphics as a "relatively individual part".

Makes one think pretty hard about whether to go for pure computer science ideals, or for stuff that works. Pure microkernels are lovely conceptually, but have too much overhead (imho). Striking a balance between concept and implementation is the thing to do.

The Amiga system rocked - we had multitasking way before Win3.1 and Desqview arrived (well, that's how I remember things, being in europe and pre-teen without a spending budget). Amiga had really cool hardware layout with specialized chips, which meant the relatively underpowered 68k hardwared (along with the special chips) did better than the x86 machines at the time. On the other hand, there was no proper memory isolation etc. in the lower-end 68k chips, so when something went wrong, you got a total guru meditation. Amiga was the system that taught me to <hotkey-save> after entering a sentence.

We need to shun sentimental memories (but still remember the past - good as well as bad), be as objective as we can about current affairs (drop the fanboyism and admit flaws of our favorite OS... there's a lot of them for all of them, and we won't agree on everything :)), et cetera. I feel my ideas are relatively agreeable in general, but I know that not everyone will agree - there are pretty strong opinions in this field. It's probably even worse than politics.

Anyway, I wish that people would start writing portable software (and not that autoconfig junk), and that we'd see things like ZFS and XFS ported to Windows... NTFS is cool but pretty ancient, and I'd love to see some realistic head-to-head benchmarks.
Title: Re: What would your ideal Operating System be like?
Post by: Whereismyangel on August 15, 2008, 06:22 AM
Mind reading !!!  :D
Title: Re: What would your ideal Operating System be like?
Post by: 40hz on August 15, 2008, 03:23 PM
The Amiga system rocked - we had multitasking way before Win3.1

OS-9 had it before that. I remember seeing it run on a Tandy/Radio-Shack CoCo.
http://en.wikipedia.org/wiki/OS-9#21st_century_uses

The OS-9 version 2.4 manual had this entry describing UNIX in the Glossary of Appendix C of "Using Professional OS-9":

UNIX:
An operating system similar to OS-9, but with less functionality and
special features designed to soak up excess memory, disk space and CPU
time on large, expensive computers.

I just discovered OS-9 is still available (in a vastly updated form) for embedded systems:

http://www.microware.com/products/datasheet_page.cfm?productdatasheetsid=1412
Title: Re: What would your ideal Operating System be like?
Post by: Edvard on August 15, 2008, 05:56 PM
I remember the QNX demo. And a great article here (http://www.openqnx.com/index.php?name=News&file=article&sid=259).
BeOS employed some nice buzzwords that should be de facto part of any modern operating system: pervasive multithreading, preemptive multitasking, full memory protection, etc.
But enough nostalgia...

I fully agree with f0dder. I would add that the printing subsystem should be self-contained. One of my personal gripes about Linux is I found out that most printer functions beyond basic text and paper sizes in Linux are dictated either by the application or the widget set.
QT, I'm looking at YOU!
I was doing some work in QCad and was trying to print my drawings to American Architectural paper sizes (http://en.wikipedia.org/wiki/Paper_size#Architectural_sizes). Guess what? There were none. Someone at the QCad forums suggested that the unsupported page sizes are "exotic" and maybe we should be satisfied with Letter or Tabloid sizes.
Excuse me? Like A0 (841 × 1189mm) isn't 'exotic', but Arch D (610 × 914mm) is?
Whatever...
After some Googling around, I found out that it was actually a component of the QT widget set (qprinter.cpp, specifically) that defined paper sizes.  :huh: I got brave and typed in some American paper sizes and tried to compile it.
No dice.
I'm still waiting for an answer back from Trolltech...

It would be much better to have a completely separate printing subsystem that all applications could communicate with.

I've often wondered what the big deal was between micro and monolithic kernels. Guess I got some reading to do...
Title: Re: What would your ideal Operating System be like?
Post by: urlwolf on August 16, 2008, 06:04 AM
Some of my thoughts, that will sound bad to many people i'm sure.  I note that i am talking about a desktop operating system not an internet server OS.

1) no appearance customization /skinning. enforce a completely standardized user interface.  I think predictability of user interface and good guidelines for coders is important.
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").
3) no included applications in the OS distribution, other than the most bare minimum (basic text editor maybe, and control panel type utilities).
4) minimal user interface fancy effects -- just a personal choice that i would rather keep the visuals to a minimum.
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.
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.


hmm, mouser, most of your features remind me of OSX. And that cannot be as I know you don't particularly like OSX. The GUI is standards-heavy; install seems to be drag and drop , etc.

But again, I've never used OSX so I have no idea what I'm talking about.

I can see the point of the standards for GUI/windowing systems.
I wanted to code up something similar to intellicomplete for linux... only to realize that it's impossible; such a huge variety of windowing systems/toolkits (Qt, GTK, etc). Something like ahk (which is a hack, but does wonders) is not possible on linux I'd say.

I once discussed with my partner how a REST-based OS would work. That is, there are basic operations that all devices/files should know how to do -CRUD-. That's maybe a good topic for a post...
Title: Re: What would your ideal Operating System be like?
Post by: mouser on August 16, 2008, 06:20 AM
OSX, or rather apple, is big on enforcing UI standards, which as you say is one of the things i am in favor of.  They also as you say have a drag+drop type installation.

I think there are some very nice things about OSX.

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 guesst one thing you could say is that i do want a standardized UI but not the mac/osx one.

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.  All the advanced options, errors, and diagnostics were all hidden because that would make things seem to complex.  I am not a fan of all this "automagic" hidden stuff that usually works great but is deadly when it fails.
Title: Re: What would your ideal Operating System be like?
Post by: 40hz on August 17, 2008, 05:29 PM
I guess this is going to be short because I'd want the UI totally divorced from the underlying OS. I don't think anything in userland should be built in to the underlying OS. That's what desktop managers are for.

All I'd want in the ideal OS is are these five things:

1. A 128-bit address space (just to get it over with once and for all)

2. Bulletproof memory protection (with built-in garbage collection)

3. All hardware fully abstracted, with all access strictly controlled through a well-documented I/O layer. No direct kernal calls permitted.

4. All applications install in their own unique single directory. One application per directory. Each new version installs to a new directory. It would also be nice to establish a formal version numbering system. Something like nn.ss.pppp where nn is version; ss is service pack or minor version; and pppp is patch level. (Ex: Wumpus V01.02.0003 = version 1, revision 2, patch level 3)

5. Complete and accurate documentation of all system services, calls, etc. (I can work/live with anything as long as it's fully documented) Access to the source code would be a definite plus.
Title: Re: What would your ideal Operating System be like?
Post by: 4wd on August 17, 2008, 07:00 PM
4. All applications install in their own unique single directory. One application per directory. Each new version installs to a new directory. It would also be nice to establish a formal version numbering system. Something like nn.ss.pppp where nn is version; ss is service pack or minor version; and pppp is patch level. (Ex: Wumpus V01.02.0003 = version 1, revision 2, patch level 3)

AFAIAC, version, revision and patch level are completely arbitrary conventions - when does a programmer decide it's no longer a patch but a revision, no longer a revision but a major version change, etc.
I've seen programs that jump version numbers because programmers decided the patch number was getting too high, (don't ask, long time ago).

My optimum version numbering system would be a lot simpler, (although it results in a longer number), and requires no input from the programmer, (the compiler does it automatically):

YYYYMMDDHHMMSS - Universal Time Format based on GMT, no allowance for time zone.  Easily read by anyone and the added benefit of knowing exactly when it was compiled - assuming the clock is set right.
But even if it isn't, subsequent versions are always a steadily increasing number, (unless they're written by a temporal agnostic), and it directly relates to other things on the computer, eg. from a programmers perspective, in what backup they're likely to find what version if they want to go back and look at something.

I'm sure that the programmers among you will tell me it's complete rubbish but from my perspective as a user, (and extremely far between and minor writer of extremely small and very specific, purpose orientated C programs for my own use), it makes more sense.

WARNING: Shades read no further at the risk of a Cloanto attack!

Either that or go back to the simpler but easily understandable Amiga version system:

$VER: Programname version.revision (dd.m.yy) author

Which was to appear in all programs, scripts, etc, and was readable either by using the CLI command 'version' or by simply looking at the program in an editor, (hex for binary, text for script, etc).

PS:
BTW Congrats on the 100th post!
-Darwin

Ta Darwin.  I've posted more on DC than any other forum - spend way too much time reading the other ones :)
Title: Re: What would your ideal Operating System be like?
Post by: 40hz on August 18, 2008, 09:31 AM
AFAIAC, version, revision and patch level are completely arbitrary conventions - when does a programmer decide it's no longer a patch but a revision, no longer a revision but a major version change, etc.
I've seen programs that jump version numbers because programmers decided the patch number was getting too high, (don't ask, long time ago).

My optimum version numbering system would be a lot simpler, (although it results in a longer number), and requires no input from the programmer, (the compiler does it automatically):

Good points.  :)

But my suggestion has a purely pragmatic goal.

I don't really care how the programmer decides what version or patch level he/she is on. Nor do I care how they want to number, jump, bump, or skip their releases. It's their app, so it's only fair to let them make their own determination.

All I'm looking for is a simple version topology that allows me (and an update utility) to quickly and accurately determine: (a) what version of an app I currently have; and, (b) what the current released version is.

This code doesn't even need to be displayed or used in marketing the product. Which is something to consider, since version numbers are all the rage in magazine and web reviews. It can be buried in a properties tag for all I care, so long as it's there. That way I can stop worrying about "Wumpus Elite Pro Edition Gold 2008."  If I know I have Wumpus 01.00.0000, and Wumpus 02.10.3241 is out, then I know I have a significantly older version and may want to investigate getting an upgrade. It's also a good way to stay on top of where you stand with security patches.

I'm not trying to save the world.or even have it make sense. I'm just trying to simplify the things that could be simplified. ;D
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on August 20, 2008, 06:26 AM
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.

Check

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.

Check

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":
(http://img151.imageshack.us/img151/7163/picture1er6.png)
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.

---------------------------------------------------
My Ideals:

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.  8)                       
Title: Re: What would your ideal Operating System be like?
Post by: Darwin on August 20, 2008, 09:25 AM
Nice post, nontroppo  :Thmbsup: A significant problem moving between OSX and Windows (2k, XP and Vista) is the need to adjust how you think about folder structure, programme installation, etc. The funny thing, as I've come to realise, is that I've gotten so used to the (relative) complexity of the program files folder, common files folder, registry and  various user settings folders in Windows that I get frustrated by OSX - I guess I don't trust its simplicity!

As an extension of the above point, I also find that with OSX it's more a case of the philosophy behind the decisions made about where to locate settings than a case of the settings being hidden or unavailable - I've gotten so used to MS' way of doing things that it's become fixed in my thinking and when I encounter alternatives, they grate. I still get very irritated using OSX, but I am coming to appreciate that it is simply a learning process. Anyway, I wouldn't have agreed with you about the UI on OSX a year ago, but I think you're right now... it's uniform and inobtrusive. I'm getting my iBook back this week (it shuttles back and forth between me and my father and has been gone for about three months) and am looking forward to re-acquainting myself with it - I've spent the last two weeks with Vista (and have been surprised at how much I've enjoyed it -although the UAC, even in Sp-1, is annoying) and XP Pro. I've been trying to give Ubuntu 8.1 and whirl but neither of the ISO's I've burned to disk will run "live" on any of my three machines, so I'll have to install it...
Title: Re: What would your ideal Operating System be like?
Post by: Darwin on August 20, 2008, 09:27 AM
PS +1 to point number 8 in nontroppo's post:

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.
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on August 20, 2008, 10:31 AM
The funny thing, as I've come to realise, is that I've gotten so used to the (relative) complexity of the program files folder, common files folder, registry and  various user settings folders in Windows that I get frustrated by OSX - I guess I don't trust its simplicity!

Indeed I think that was my first response too, but then as I've geekified myself, I found plenty of liitle nooks to tinker with. An example is Lingon, a launchd manager. Launchd is a heady mix of startup items, cron, daemons and agents (I have quicksilver started via launchd, tweaks to auto-recover if it crashes). And instead of the registry, one can tinker with plist files (much more flexible and less fragile than the monolithic registry). And having a full *nix subsystem gives you months of fiddle factor if you're so inclined. I think Windows is one big complicated knot, whereas OS X is several fractal-like layers. Personally I sometimes miss the GUI tweaking I enjoyed on Windows (I was a litestep user for several years ;-) ), certainly miss process explorer (though Instruments rocks!) but otherwise the geek in me is fully satisfied (most recently with the Ruby>Cocoa events bridge -- I can control any OS X app via ruby easily, super super cool); the smooth surface has many hidden draws (in different places to Windows) to rummage through :)
Title: Re: What would your ideal Operating System be like?
Post by: Darwin on August 20, 2008, 10:47 AM
I think Windows is one big complicated knot, whereas OS X is several fractal-like layers.

 ;D Great analogy!
Title: Re: What would your ideal Operating System be like?
Post by: f0dder on August 21, 2008, 09:20 PM
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.
-nontroppo
NTFS sorta has this, through alternate data streams... but it's in no means integrated or usable (well, there's a few standard things like "comments" and such, but meh).

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.
-nontroppo
I'm not sure if I agree on this... I find well-structured folder hierarchies easy to navigate, and they're fast and efficient. For metadata based navigation, you either need very smart indexing, very smart caching, or you will suffer abysmal speed and/or bloat. And you need to be very good at tagging your files for something like this to be useful, imho... (yeah, there's content-based search, but then you do need those huge index files).

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.
-nontroppo
ZFS has this, iirc, and it's a good idea. But I see problems with it - people would feel that it's a substitute for backups. And while versioning is cool, you still need those pesky backups :)

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.
-nontroppo
Get NVidia to allow people to use the CUDA interface for free, and get the other companies to use it. CUDA doesn't even need to be opensourced to do this, it's "just" the API specs (and perhaps a few internals-style things) that needs to be fully documented.

I agree more or less with other of your points, though :)
Title: Re: What would your ideal Operating System be like?
Post by: Lashiec on August 22, 2008, 05:10 PM
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.
-nontroppo

I'm not sure if I agree on this... I find well-structured folder hierarchies easy to navigate, and they're fast and efficient. For metadata based navigation, you either need very smart indexing, very smart caching, or you will suffer abysmal speed and/or bloat. And you need to be very good at tagging your files for something like this to be useful, imho... (yeah, there's content-based search, but then you do need those huge index files).

Well, the idea would be to have the two schemes coexisting together. While a folder hierarchy is a must at least do dissipate that general feeling of "where are my files?" that permeate pure tag-based systems, for files deep nested in the file system, be able to find and classify them would be a plus. Of course, the main problem here is cross-compatibility between different filesystems... and I don't see any reunion to kick start the process any soon.

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.
-nontroppo

Get NVidia to allow people to use the CUDA interface for free, and get the other companies to use it. CUDA doesn't even need to be opensourced to do this, it's "just" the API specs (and perhaps a few internals-style things) that needs to be fully documented.

CUDA time is ticking. While nVidia offered a helping hand to all those other vendors who wish to implement it (there was this guy porting CUDA to ATI hardware with nVidia backing). The problem is that CUDA is singlely handed by nVidia, and there's no sign they're going to let other major players mess with the specification.

What's more, Apple announced the Grand Central technology in Snow Leopard that harness multicore (GPU or CPU) computing power independently of the hardware the system is using, Microsoft said DX 11 has support for GPGPU, and Khronos is working on OpenCL, which I suppose it will be used on Linux (as well as on OS X). ATI already ditched its CUDA-esque Close to Metal framework in favour of OpenCL and DX11, so it's a matter of time nVidia does the same. All the better for everyone in theory, because we seem to be in the DirectX-OpenGL dichotomy all again.
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on August 29, 2008, 01:02 PM
NTFS sorta has this, through alternate data streams... but it's in no means integrated or usable (well, there's a few standard things like "comments" and such, but meh).

Yes, sadly ADS got unfairly stigmatised because of security fears AFAIU. HFS+ (though it has used resource forks for ages) gained flexibly extensible MD support with Tiger. There is an extensive list of metadata attributes (http://developer.apple.com/documentation/Carbon/Reference/MetadataAttributesRef/Reference/CommonAttrs.html#//apple_ref/doc/uid/TP40001694) which can be extended, and the system uses them in a unified manner (the core search APIs all apps subscribe to). All of these metadata attributes are available from the finder via the GUI or search syntax in spotlight.

The main steps lacking is a framework to allow arbitrary user extensions to metadata fields easily, and allowing mappings across applications (i.e. allowing application Y's keywords to be logically linked to application X's keywords). And the biggest bane of a MD system, cross-platform availability appears a tough nut to crack when no other OS offers a consistent API for this. This all still limits the MD system for my use. I wonder what Linux is doing here, but I hope they are trying to build something consistent and unified, I find the gnome/KDE duplicity sometimes disappointing; I'd want them both to work on a metadata core, then they can slap different UI's over the top. However, when I last looked, it appeared each had several alternative indexers and methods.

For those who are interested, Ars technica has some nice discussion about the long slog to get better MD support in OS X; smart people were pushing since its inception (and Apple hired the designer of BeOS file system which was apparently the best MD filesystem made at the time), but it still took 4 iterations of the OS to really get anywhere:

http://arstechnica.com/reviews/os/macosx-10-4.ars/6 - there are 7 pages dedicated to discussing MD support  :o

I'm not sure if I agree on this... I find well-structured folder hierarchies easy to navigate, and they're fast and efficient. For metadata based navigation, you either need very smart indexing, very smart caching, or you will suffer abysmal speed and/or bloat. And you need to be very good at tagging your files for something like this to be useful, imho... (yeah, there's content-based search, but then you do need those huge index files).

As lashiec says, I don't expect a smart-folder only OS anytime soon, mixed mode is fine. I think for system folders it's fine, and I don't want to impose a user who wants to store photos /2008/05/04/Birthday party/Sophia/Blowing candles/. But system indexes work transparently and quickly and don't take up too much space (my 1/4million files use 300mb index and works transparently). I don't think there should be a technical reason. As far as tagging, smart metadata importers do most of the work for you. I have smartfolders for photos taken with a wide aperture at night with high ISO, because my metadata system transparently captures the F value, ISO and time of capture which I can use as criteria for my folder (and is accesible to any app that cares). It's then a quick step to focus noise ninja on cleaning them up. I never needed to sort any files or tag them, the OS did it for me.

ZFS has this, iirc, and it's a good idea. But I see problems with it - people would feel that it's a substitute for backups. And while versioning is cool, you still need those pesky backups :)

Yes indeed! :D I'm no expert on ZFS, but I read somewhere it allows cloning across its virtual disk space so I wonder if it would allow i.e. remote online backup to a cloned drive on-the-fly?

Get NVidia to allow people to use the CUDA interface for free, and get the other companies to use it. CUDA doesn't even need to be opensourced to do this, it's "just" the API specs (and perhaps a few internals-style things) that needs to be fully documented.

Well, the OpenGL guys are pushing OpenCL (and OS X and Linux are sat in that camp). I don't ideally want a single vendor solution, especially not a proprietary one (which CUDA still is unless, as lashiec says they get ATI support to the same level). I'd love for it to be cross-platform (won't lock me into a single platform technology wise). Obviously MS has a vested interest in pushing this into DirectX (I wonder if they'll push it then to application programmers not just game devs). Anyway, my ideal OS would have something that was cross-platform and non-proprietary hardware-wise, but I've heard negative things said about Khronos, so I don't know where that leaves my choice.
Title: Re: What would your ideal Operating System be like?
Post by: Paul Keith on September 02, 2008, 11:49 PM
I'm not a programmer so I'm quick to please.

Just give me the Opera equivalent of an OS. Customizeable, lightweight, secure and disposable.

Give me compendium's functionality without all the menus. Just a big blank screen that functions exactly like it and because it's part of the OS, I don't need to worry about indexing reference files to it and worry about losing them during the backup phase.

Dual panels that on one side covers all the help documentations and another side contains all the mini-features like RSS and PIMs.

Right panel contains the Incollector interface and left panel contains special temporary folders for copy pasting and storing with 4 categories. Personal, Important, Someday and Pending.

Upper area contains a mini-menu bar that can be hidden and functions like bblean's look.

Lower area contains a Yeah Write like interface with multiple tabs that act like ticklers that can be added at will.

Ex.

Entry 1: MS Word, Entry 2: MS Excel, Entry 3: MS OneNotes

so on and so forth. Basically a simplified panel docklet with an advanced button on the right side.

When advanced is clicked on, the bar rises revealling all the advanced equivalents of those tools.

Ex.

Entry 1: Notepad with autosave
Sub Entry 1: emacs or notepad++ or whatever advanced users might need

Add in a simplified launcher like Launchy for advanced searching, a Taboo Firefox extension interface for quick bookmarking of RSS Feeds within the Operating System and a virtual desktop with set jobs (i.e. a virtual desktop specified to open the browser and a notetaker when a user goes to that space which then automatically reverts to a normal virtual desktop space once that functionality has been set so as to avoid accidentally re-opening the browser)

Finally, a lighter native copy of ThinkingRock, an offline Diigo service and a Export mode level that when pressed outputs a compendium export file that can be transferred to the main application for other browsers, an incollector export file, a ThinkingRock export file and a YeahWrite file with all the highlights and annotations extracted to it in separate sections.

I guess for me, the perfect OS is one where it isn't the perfect OS but the perfect complimentary OS just as how Opera is the perfect complimentary browser for other browsers. I know, so far two of my posts are Opera related but really I'm not that die hard of a fanboy but when thinking about the perfect OS, there's just something I love about an app that can handle lots of stuff assigned to it but remains fast enough that you can just close and forget.
Title: Re: What would your ideal Operating System be like?
Post by: housetier on September 03, 2008, 05:36 AM
if only opera supported encryption of emails I would agree to label it "secure".

But I know what you mean :)
Title: Re: What would your ideal Operating System be like?
Post by: Carol Haynes on September 04, 2008, 01:47 AM
Just give me the Opera equivalent of an OS. Customizeable, lightweight, secure and disposable.

Ah ... so you want an OS that doesn't work properly a lot of the time [runs and ducks for cover ....]

What we need is an OS that doesn't include anything except for the absolute bare bones and is lightening fast. It should be possible of new 64-bit multicore technology so why does my system feel the same speed as it always has back to PIII days ?

Opera would be a bad model to use as the one thing such an operating system would need is a way to write extensions.
Title: Re: What would your ideal Operating System be like?
Post by: tranglos on September 04, 2008, 08:15 AM
What we need is an OS that doesn't include anything except for the absolute bare bones and is lightening fast.

Speaking of duck and cover... while going head-on against the entire thread...

My ideal OS is much more than the bare-bones kernel and abstraction layers. I can't say I care about the kernel one way or another, as long as it is rock-stable, except to say that from a user's point of view the Windows way (install driver, reboot) is preferable to the Linux way (to install driver, recompile kernel). Maybe Linux doesn't do it this way anymore; I only have un-fond memories of playing with RedHat a long time ago. But this isn't what's bothering me.

What's bothering me is the humongous proliferation of redundant, incompatible solutions to the same common tasks, repeated over and over. Quick check: how many applications do you have installed that carry their own independent spellchecker?

It's a waste of developers' efforts, since each vendor reinvents the wheel; it's waste of disk and RAM, since each implementation takes up some; it's a waste of my money, since I end up paying for that whenever I buy software; and it's a waste of my time, since each solution is subtly different, with its own shortcuts, features, etc. How many "user glossaries" do you have on your machine?

Examples abound. There's no shortage of good email clients, newsreaders, PIMs, password managers, notetakers, addressbooks... the choice is awesome, and the quality of these apps is steadily growing. The problem is that once you choose a product, you're pretty much stuck with it, or face painful and often lossy conversion process. That's wrong.

It's not just the spellcheckers, of course. Every mature ftp-capable application is going to have some kind of a uswer-defined server directory, with hosts, usernames, passwords and associated options. I have a number of such definitions in TotalCommander. Now why must I re-enter them all in FileZilla, and then again in every html editor with an ftp publishing feature? *And* in my backup application? Give me a nice clean, extensible database of my ftp connections, which applications could read and write (with my permission - there are security implications here).

Now for a counter-example. Windows has a single clipboard. All apps can use it and all apps do. Consistent features, consistent shortcuts, works everywhere in the same way, and it may well be Windows' single best usability feature ever. Developers can still extend the clipboard, hence all the, well, clipboard extenders, or apps that add their own multiple clipboards - but these are optional, and they come on top of the system functionality rather than replace it.

A counter-counter example of how to do things the wrong way: skinning. Instead of the consistent, well-tested UI that the OS provides, you have Winamp, which doesn't work well with window enhancement programs, and doesn't even change the color of the titlebar depending on whether it's active or not. So just by looking at Winamp I cannot tell if it's ready for keyboard input - to be certain, I must click it first. This is a major WTF.

Come to think of it, each application having its own spell-checker and its own addressbook built in is not unlike the skinning scenario, except that they have no choice, since the OS doesn't provide those.

So for my ideal OS, I want a well-defined database backend and a set of standard APIs for all, yes *all* these common tasks. One spellchecker. One database for addresses. One for bookmarks, one for to-dos, one for multimedia metadata, one for my email archive, and so on. No matter what email program I use, it should store the email and the addresses in the same one place, so that I can swap clients easily without affecting the data. And all browsers shouls share the same database of bookmarks. And each applications should be able to easily look up phone numbers in a system-wide database. And each application could spellcheck each and every little textbox by hooking up to the integrated spellchecker.

Now, developers would still have a choice: use the built-in database layer of build your own. But when building their own, they would have to ensure they're providing some truly exceptional, unhead-of functionality to make up for the loss of integration. Most apps would probably use the built-ins, so that developers could concentrate on stability, features and UI instead.

And oh yes, metadata for absolutely everything.

(I've typed it in EmEditor and only now noticed it doesn't have a spellchecker. Been using it for two years. How much did I pay for it again? Check the help - ah, I need to download a plugin. See what I mean?)

Title: Re: What would your ideal Operating System be like?
Post by: Armando on September 04, 2008, 10:28 AM
So for my ideal OS, I want a well-defined database backend and a set of standard APIs for all, yes *all* these common tasks. One spellchecker. One database for addresses. One for bookmarks, one for to-dos, one for multimedia metadata, one for my email archive, and so on. No matter what email program I use, it should store the email and the addresses in the same one place, so that I can swap clients easily without affecting the data. And all browsers shouls share the same database of bookmarks. And each applications should be able to easily look up phone numbers in a system-wide database. And each application could spellcheck each and every little textbox by hooking up to the integrated spellchecker.
And oh yes, metadata for absolutely everything.

But compatible, portable, backupable, etc.
The file system should probably be rebuilt from scratch, allowing easier 1- file cloning, 2- taging (metadata), 3- Smart folders, 4- Wiki type links between files, 5 - hard/soft links creation, etc. etc.
Title: Re: What would your ideal Operating System be like?
Post by: mouser on September 04, 2008, 12:03 PM
What's bothering me is the humongous proliferation of redundant, incompatible solutions to the same common tasks, repeated over and over. Quick check: how many applications do you have installed that carry their own independent spellchecker?

tranglos i am on the same page as you.

basically my view is that the OS (and the OS company) should focus their ENTIRE effort into providing a good API for all of these common things, and stay the hell out of anything else.

this is exactly the kind of thing that is most important for the OS to get right -- a common interface/api for all of these things that should be sharead/common throughout all applications.
Title: Re: What would your ideal Operating System be like?
Post by: 40hz on September 04, 2008, 01:48 PM
this is exactly the kind of thing that is most important for the OS to get right -- a common interface/api for all of these things that should be sharead/common throughout all applications.

And above all, it needs to enforce it's use. No backdoors or cheats to favor certain products. That's why it's so important for the OS provider not to be involved in application development beyond furnishing the tools to code them.
Title: Re: What would your ideal Operating System be like?
Post by: Paul Keith on September 04, 2008, 04:57 PM
Just give me the Opera equivalent of an OS. Customizeable, lightweight, secure and disposable.

Ah ... so you want an OS that doesn't work properly a lot of the time [runs and ducks for cover ....]

What we need is an OS that doesn't include anything except for the absolute bare bones and is lightening fast. It should be possible of new 64-bit multicore technology so why does my system feel the same speed as it always has back to PIII days ?

Opera would be a bad model to use as the one thing such an operating system would need is a way to write extensions.

Ahh...fire in the hole  :-*

Time to be the contrarian. The Opera situation would be alleviated because in this case an OS unlike a browser is not subject to not functioning because developers won't support it and also unlike a browser, a OS system's worst problem would be security and stability rather than being supported by developers because additional external programs are not the main core for a functioning Operating System so an Operating System equivalent to Opera if we are to use the analogy that Opera plays ball by following web standards and it is in fact outside interference that causes most of it to not work then this would be a case where it's not a problem because this is already an infrastructural problem within an Operating System meaning the worst case scenario in such a situation will be that ALL installable programs for it won't work but since Opera is considered one of the lightest, fastest, featureful browsers, an Operating System with such similar build would not be so bothered by that. In fact it's a blessing because that means it holds up well out of the box instead of needing to customize it but it is also customizeable to an extent without risking breaking it or exposing it to a pesky buggy program that isn't necessarily a virus.

And Opera being a bad model for extensions is also for me one of the things that it would make a perfect model for a perfect OS. Think about it. No matter how perfect an OS, if there are less than perfect programmers working on it than don't you risk breaking it now and again?

This isn't much a problem when you want to break an OS but for most users what they want is just a working Operating System that isn't as complicated as Linux but works as well and would introduce them to advanced features as things go along. Again, something not lacking from Opera. At best, the official documentation would be shoddy but that is something that anyone including someone with no programming knowledge could contribute to.

Like I said, disposable. One of the problems with Firefox or extensions in general is that you have to work with the extension creator and it's manageable but are you really having the time of your life scouring for programs and programs and seeing when they're updated? For most casual users, the answer is no. That's why many of them don't even ever get used to the habit of changing or updating their antivirus.

But what about those who want these features and consider them a must have for a perfect Operating System? Well, that's where being light and disposable works in Opera's favor because light and disposable also means portable and take less memory which means an Opera-like Operating System is suitable for dual booting, livecd/livedvd, usb stick, etc. kind of like what Puppy Linux is now only even better and less extensible. For me, the main important thing about an OS is you want it to be as secure and stable and quick to export as your brain when important files, data and a whole other thing comes around. Let others try to break your other OS while you play games, test programs by installing them and do a whole load on that stuff and go through user forums asking how to fix this error in that Operating System that mysteriously appeared and now you have to make a list of what you did that the Operating System didn't come by default with and as long as you keep the things you value most in that other perfect side dish Opera-like OS, from the software side of things, you have the perfect backup OS that functions even better than an OS for non-backup use with the exception of installable programs that's not only suitable for usage by a casual user but excels at that usage because of the focus on productivity with the Compendium, Incollector, ThinkingRock, YeahWrite based lay-out which is derived from the fact that one of the necessary qualities of a great productivity software is that it must function as a filesystem for your brain that you can trust.

Title: Re: What would your ideal Operating System be like?
Post by: Carol Haynes on September 04, 2008, 06:22 PM
And Opera being a bad model for extensions is also for me one of the things that it would make a perfect model for a perfect OS. Think about it. No matter how perfect an OS, if there are less than perfect programmers working on it than don't you risk breaking it now and again?

Is there such a beast as a "perfect programmer" - even in the Opera team.

Without extensibility an OS would be dead in the water - there is no way that anyone will use an OS that tries to do everything internally.

What about applications - aren't they in effect extensions to the operating system - do you want a self contained turn key system that can't have any additional apps added? That would be SO proprietary as to be next to useless.
Title: Re: What would your ideal Operating System be like?
Post by: Paul Keith on September 04, 2008, 07:01 PM
And Opera being a bad model for extensions is also for me one of the things that it would make a perfect model for a perfect OS. Think about it. No matter how perfect an OS, if there are less than perfect programmers working on it than don't you risk breaking it now and again?

Is there such a beast as a "perfect programmer" - even in the Opera team.

Without extensibility an OS would be dead in the water - there is no way that anyone will use an OS that tries to do everything internally.

What about applications - aren't they in effect extensions to the operating system - do you want a self contained turn key system that can't have any additional apps added? That would be SO proprietary as to be next to useless.

Exactly which is what would degrade a perfect OS fast. At the very least, an internally programmed but featureful, light and stable Operating System is no more different than a distro in the hands of a capable distro maker that knows exactly what they want and is that skilled enough to create an operating system that would suit himself and any other individual like him.

That isn't to say that an Opera-like Operating System should totally be without extensibility. That is just playing absolutes. Even Opera as a browser is extensible somewhat, it's just not on par with what many consider extensible in the open source world and yes applications could be considered external applications but it's rare that an external application made by your average programmer even with backing would automatically be superior to a close sourced program. Just look at OpenOffice and FatFox. One is the premier open source Office Suite and it's not even the lightest in it's category and the other is only a testament to open source being superior to closed source because people often think IE instead of Opera when they think closed source.

That isn't to say that my mind wouldn't change. After all, I am not a developer and cannot totally comprehend these things but I have been exposed to plugins before so it's not like I'm totally without basis.

Often times, many power users can easily forget that an operating system that's secure, has a stable lightweight Office Suite and an Opera browser like browser set up like Chrome by default that works on all sites would satisfy many casual users as a default skeleton for a great OS and last time something like that occured, that Operating System ended up transforming a company into a monopoly.

Remember for many users IE was preferred over the bloated Netscape and MS Office Suite was considered decent enough that even open source fans wouldn't be as enthusiastic to jump to OO compared to FF.

Yes, there will be things to deal with like games and mp3 players and all the other extras that require extensibility but look at Linux and see how extensibility didn't drove people to make or even port games on it despite it's supposed ease of use. More relevantly, look at how much a DE like Gnome or a designed to look like Windows PCLinux OS gained users fast even though many of those don't really know the true value of extensibility nor aren't used to how Linux works.

What an extensible OS would do is provide well...another extensible OS to many users but will it bring them closer to near perfection? Even if that OS was near perfect the influx on constant new applications and constant adjusting won't make them happy and therefore won't make it the perfect OS for them. Just a noisier one that they can keep tweaking and customizing to their needs and have headaches over when they break something and have to go to several places just to figure whether it's an OS bug or an application bug or they have to reformat and pray that they back up their data.
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on November 01, 2008, 05:37 AM
So for my ideal OS, I want a well-defined database backend and a set of standard APIs for all, yes *all* these common tasks
-tranglos

OS X has core APIs and one of them is Core Data: http://developer.apple.com/macosx/coredata.html

Apple has tried to provide comprehensive APIs and deal with all the main requirements. Cocoa apps just plug into them, using core data to handle their storage and data handling requirements. There is also a system-wide spellchecker and dictionary available to all apps. Of course that doesn't stop e.g. Office from still using its own. Apps expose their data via Applescript (can use ruby/python etc if one prefers) and offer system services to other apps as a fundamental part of the OS environment. This makes everything more bridged together by default. Less data island and less redundancy. And that is what makes integrative apps like Quicksilver work so transparently - the APIs and enforced interoperability makes bridging easy.

In my ideal OS this path would be extended even further. I'd want Core Data like system to abstract further and allow more data mixing (obviously with an apps permission). All data stored in the system would be encouraged to have rich metadata. And the system indexer would have a unified entry point for apps that wanted to expose their data to the system as a whole.  I could thus have an app (e.g. a Getting things done app) that exposed my to do information with my email app and allowed contextual linking between them.
Title: Re: What would your ideal Operating System be like?
Post by: urlwolf on November 01, 2008, 06:35 AM
Nontroppo, I think what you are descibing -metadata shared among apps, full access to all data by all apps- is well underway in the semantic desktop crowd.

Mostly KDE, some gnome. Very interesting work done here, if a bit hard to find. I just came back from the international semantic web conference (ISWC2008) and there were lots of people there working on apps that do exactly what you descibe. Example, a file manager that knows which mail each file was an attachment of, even if you move it around.

You can google 'semantic desktop'. Let me know if you want specifics.
Title: Re: What would your ideal Operating System be like?
Post by: Dormouse on November 01, 2008, 07:02 AM
I agree completely with all the comments wanting no installation of software. I prefer portable and it makes managing it much easier.

Fast startup and fast/safe shutdown and OS secure because it is locked down. I remember the ROM based OS in the Atari St for example starting and stopping very fast. Could always have a HDD layer above that to handle look and feel and customisation. Of course, having it on ROM does mean that it has to work right from the start  :D

Organised/supported repositories. I find this aspect of Linux one of the most helpful, especially for the not very computer orientated peeps. For some reason, they seem to have no problem using these and researching the progs they want, but would never think of visiting download.com etc on Windows; I think there is a greater feeling of safety in these.

Facilitates multi-boot into other OSs with easy switching.
Title: Re: What would your ideal Operating System be like?
Post by: mahesh2k on November 01, 2008, 07:26 AM
OS X+Linux+ Windows = My OS :D
Title: Re: What would your ideal Operating System be like?
Post by: housetier on November 01, 2008, 08:25 AM
well underway in the semantic desktop crowd

Later today I'll attend a short talk about Deepa Mehta (http://deepamehta.de/), which to me looks like a Semantic Desktop or at least a Semantic Filemanager.
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on November 01, 2008, 09:42 AM
urlwolf and housetier: thank you both, this is absolutely where I think we should indeed be going. Deepa Mehta looks interesting and I'm off to play around, though this needs to be implemented at the core OS API level to be really useful IMO. I was once a user of Personal Brain (back when it first appeared), which I loved, but after a while I stopped using it because I was forced only into its UI, and no data could leak out easily. I suspect Deepa Mehta will be the same.

urlwolf: any interesting info gladly received
houstier: let us know how the talk went!
Title: Re: What would your ideal Operating System be like?
Post by: housetier on November 02, 2008, 08:32 AM
I only caught part of the talk because I had to keep so many aliens in check onboard our space station (https://www.c-base.org/).

However, the concept seems interesting: Instead of working with (the bugs of) a program, users complete tasks. On the desktop you see objects and tasks, or objects and connections to other objects. So the user gets a good overview of how things/objects/people interact.

You can even share your desktop/workspace! And I think this is best thing about it: to be able to take this "semantic thing" to the collaborative level. After all, people want to connect and share ideas; making this possible in an easier fashion is good.

On the other hand, it will require a little bit re-training yourself if you are - like me -used to working with programs. I will give DeepaMehta a spin, but I don't think I'll switch completely yet. The visual appeal is not there yet.

It also reminded me of mozilla's ubiquity thing, which I also will try out soon; a friend has been using it for some time and is very happy about it, limited as it is.
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on November 02, 2008, 02:17 PM
Thank you for protecting Earth and her space stations from attack, even more amazing that after wiping the thick gelatinous body fluids of "those from beyond" (cue sounds of a theramin and extensive echo), you could get some details on this semantic desktop app.  8)

Ubiquity is cool, lets hope it doesn't go the way of it's ancestor Enso and gets abducted by little gren men  ;)
Title: Re: What would your ideal Operating System be like?
Post by: Edvard on November 03, 2008, 10:53 AM
I'm puzzled about the no-install idea, though I can see how that would be desirable for portability.
How about ZeroInstall? It doesn't work for Windows (yet) perhaps some of us could help out?
http://0install.net/

Myself, I like having what I need right where I expect it to be, rather than depend on a 'cache' of my desired app.
Still being on dial-up is a pretty big monkey wrench in the works as well...
Title: Re: What would your ideal Operating System be like?
Post by: urlwolf on November 03, 2008, 01:20 PM
@nontroppo:
http://nepomuk.semanticdesktop.org/

It does things like search on a set of desktops, insread of only yours (great for collaboration!).
(See references)
Title: Re: What would your ideal Operating System be like?
Post by: nontroppo on November 03, 2008, 05:54 PM
thanks for grabbing that URL between your teeth urlwolf  8)

edvard: yup I prefer to download what I need to run an app. OS X is basically 0install in that one drags an app to your applications folder and you're done, app will run fine (there are a few exceptions). Drag it to trash, you've uninstalled it!