Linked by Kroc Camen on Thu 5th Nov 2009 21:05 UTC
Talk, Rumors, X Versus Y There's no right way to do it, only ideas that are better than others in certain situations. But if you had the opportunity to head up the design of a new OS, one to Put Things Right, one that could be radical enough to varnish out those UI/X bumps that have clung on for years, but practical enough to be used every day, what would you design? How would you handle application management? What about file types and compatibility? Where would you cherry pick the best bits from other OSes and where would you throw away tradition? I've tackled this challenge for myself and present (an unfinished idea): KrocOS (warning: HTML5 site, will display without CSS in IE/older browsers). OSnews Asks: What would make your perfect OS?
Thread beginning with comment 393228
To read all comments associated with this story, please click here.
Web based and document centric
by MatzeB on Fri 6th Nov 2009 12:32 UTC
Member since:

A new OS designed from the ground up by me would probably look like this:

* All Data is on the Web: The harddrive would merely be a cache to allow fast access times or make the OS continue working when the connection to the web is temporarily broken. The final store for all data will be on the web, so no explicit synchronisation between computers and devices is necessary they just download everything (think IMAP but for everything). You might be able to use free services (google) or pay some money for hosting provides that guarantee your privacy. In each case the providers will create backups and ensure your data integrity.

* Programs/Code is on the Web: Like for the data there are no installation routines or anything. Programs/Code is on the web - not necessarily in the limited and complicated forms that is http, javascript, ajax today - more like a universal bytecode (think javas security/vm features but better GUI apis providing ways to integrate into the system and not limiting it to the browser window). The benefits are obvious: No installation needed, external service providers will take care about updates and are responsible that everything works. Again I might pay some providers so I get the service I want and not advertisements and privacy problems with free services.

* The interface is document, task and event centric. The operating system is not about starting applications. It's rather about opening and editing and organizing documents (my e-mails, word documents, mp3 files, videos, ...). Performing certain tasks (shopping, filling government forms, making a phone call, sending emails) and getting notified of events (incoming calls, news site updates, upcoming birthdays and events in my calendar, ...) Of course there are applications in the background - but the interface won't force me to think in application terms.

* Of course I don't want to think/fiddle with my hardware. There has to be driver/universal standards for everything and the computer should just work. Additional everything should have very robust error handling. See next part.

* Robust and lots of fail safety mechanisms. The software should be as robust and correct as possible, but at the same time we have to be aware that there will always be bugs or simple hardware failures, or other failures (the hamster is eating the power cable).
The solution here is having a robust and easy failsafe mechanism: Applications do regularily and automatically save their state to the harddisk (the ram is just a cache for the state on disk) and the harddisk is regularily saved to the web (the harddisk is just a cache for the data on the web). If something fails the system must be able to reset to the last saved state on disk/the web and continue seamlessly from there. So that usually just a few seconds of work are lost.
If certain applications, drivers etc. are failing they are just restarted and the state restored from disk/the web. There have to be mechanisms that ensure data integrity so that you can really always go back to the last saved state.
Even if my computer completely fails I just want to switch to another one and continue working from there having a nearly seamless switch as the data/state gets restored from the web.

* Obviously the system would need to have sophisticated security concepts. We need good authentication mechanisms, I want fine-grained but easy to use access right management so I can share data with others. And all code executed only has just the right amount of access rights so it can perform its task but not do additional damage or read private data that is not needed for the task.

* It has few sensible options and configuration possibilities. In general I want the programs and designers of the applications to think for me and make sensible choices. I don't want them offloading decisions to me as a user about stuff I don't really care about. In doubt better use a default and hide one more configuration option. There should be many people crying out loud before options are added (on the other side they should react to many people crying out loud...)

Reply Score: 1