topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Tuesday November 12, 2024, 5:42 pm
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Last post Author Topic: What would your ideal Operating System be like?  (Read 53744 times)

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,913
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #25 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.

40hz

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 11,859
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #26 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.
« Last Edit: August 18, 2008, 06:27 PM by 40hz »

4wd

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 5,644
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #27 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 :)

40hz

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 11,859
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #28 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
« Last Edit: August 18, 2008, 09:46 AM by 40hz »

nontroppo

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 649
  • spinning top
    • View Profile
    • nontroppo.org
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #29 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
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.

---------------------------------------------------
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)                       
FARR Wishes: Performance TweaksTask ControlAdaptive History
[url=http://opera.com/]
« Last Edit: August 20, 2008, 06:31 AM by nontroppo »

Darwin

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,984
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #30 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...

Darwin

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,984
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #31 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.

nontroppo

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 649
  • spinning top
    • View Profile
    • nontroppo.org
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #32 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 :)
FARR Wishes: Performance TweaksTask ControlAdaptive History
[url=http://opera.com/]
« Last Edit: August 20, 2008, 10:35 AM by nontroppo »

Darwin

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 6,984
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #33 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!

f0dder

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 9,153
  • [Well, THAT escalated quickly!]
    • View Profile
    • f0dder's place
    • Read more about this member.
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #34 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 :)
- carpe noctem

Lashiec

  • Member
  • Joined in 2006
  • **
  • Posts: 2,374
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #35 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.
« Last Edit: August 22, 2008, 05:19 PM by Lashiec »

nontroppo

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 649
  • spinning top
    • View Profile
    • nontroppo.org
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #36 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 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.c...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.
FARR Wishes: Performance TweaksTask ControlAdaptive History
[url=http://opera.com/]
« Last Edit: August 29, 2008, 01:07 PM by nontroppo »

Paul Keith

  • Member
  • Joined in 2008
  • **
  • Posts: 1,989
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #37 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.

housetier

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • default avatar
  • Posts: 1,321
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #38 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 :)

Carol Haynes

  • Waffles for England (patent pending)
  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 8,069
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #39 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.
« Last Edit: September 04, 2008, 01:49 AM by Carol Haynes »

tranglos

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,081
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #40 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?)

« Last Edit: September 04, 2008, 08:18 AM by tranglos »

Armando

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 2,727
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #41 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.
« Last Edit: September 04, 2008, 10:31 AM by Armando »

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,913
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #42 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.

40hz

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 11,859
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #43 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.

Paul Keith

  • Member
  • Joined in 2008
  • **
  • Posts: 1,989
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #44 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.


Carol Haynes

  • Waffles for England (patent pending)
  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 8,069
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #45 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.

Paul Keith

  • Member
  • Joined in 2008
  • **
  • Posts: 1,989
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #46 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.
« Last Edit: September 04, 2008, 07:09 PM by Paul Keith »

nontroppo

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 649
  • spinning top
    • View Profile
    • nontroppo.org
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #47 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.app...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.
FARR Wishes: Performance TweaksTask ControlAdaptive History
[url=http://opera.com/]

urlwolf

  • Charter Member
  • Joined in 2006
  • ***
  • Posts: 1,837
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #48 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.

Dormouse

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 1,952
    • View Profile
    • Donate to Member
Re: What would your ideal Operating System be like?
« Reply #49 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.