posted by Steve Klingsporn on Tue 26th Mar 2002 03:25 UTC
IconJust some days ago Apple requested input from PC users or from Mac users coming from the PC world. They asked for some input regarding what a PC user would like to see on Apple's products. While I am already a Mac user, I would like to see the following. If it doesn't happen (as it hasn't), I intend to do it myself with some smart friends.

Editorial notice: All opinions are those of the author and not necessarily those of osnews.com

- I want my computer to turn on and boot in 10-15 seconds. We all know this is possible (BeOS). Instant-on functionality would be very nice.

- I'd like to be able to watch several movies at once, and move them around on-screen without skipping frames. I'd like to be able to listen to music, utilizing 1-5% of the CPU, without ever skipping. Playing background music can be, and should be an effortless task.

- I'd like to see the kernel be able to schedule tasks effortlessly across as many processors as available, and support clustering or "grid computing" across local networks and the Internet.

- I'd like to see a very dynamic plug-in architecture that drivers for the kernel as well as applications and everything in between use for extending things instead of separate API's for doing so.

- No more CFPleaseLetThisMadnessEndOneDay names, please!! Let's see some very nicely-designed objects with nice method names and a consistent naming scheme used.

- Everything should be re-entrant and thread-safe, where possible! If locking is required, the system should provide for it unless the developer ABSOLUTELY needs to do it, and this should be clearly documented if it's the case.

- Legacy-free. No Carbon, Cocoa -- something completely new and parallel to the Macintosh/Mac OS X effort would be very nice. An emphasis towards performance, code size, efficiency, and simplicity would be very nice.

- I would like to have a scalable user interface in two ways: In one way, I'd like to be able to start with basic, primitive functionality like pointing and clicking, identifying objects, examining their various properties/attributes, seeing a list of actions or operations that can be performed on them, performing such actions and operations, etc. I'd like to see an interface that could start primitively and grow with the user in complexity. A child could have simple objects on the screen, and the same system/account/workspace would "grow with the user" as she gets older, revealing more complexity as time moves on or new types of interfaces are available.

- I'd like to see a visually scalable interface that is independent of screen or output device resolution. The interface should be able to work on an arbitrary # of screens or output devices. It should be pen and touch-aware. It should be able to work over the network in a minimal client fashion, or locally. Where the actual code is running should not matter. You should be able to scale the level of detail and size of the interface and the objects which comprise it to maximize for smaller displays or for poor eyesight. This means less use of bitmaps and more use of scalable vector-based artwork and code.

- I'd like to see arbitrary "painters" that are easily created that define the appearance of objects in the interface. You could separate the actual behavior (to an extent) from the presentation. Further customization would be "Themes" or collections of such "painters." Themes could have different "variants" -- things like color choices, image choices, cultural or International resources, etc.

- I'd like to be able to buy an Apple-branded PDA that runs a modern version of the Newton OS. I would like to see these Newton frameworks available across the board on Mac OS X on any computer, exportable to portable devices, set-tops, appliances and other forward-thinking/lifestyle devices. I want to be able to use the dynamic, expressive power of Newton frames and soups to represent and store data. I believe that there is a lot of promise with frames in a networked environment, and that they are the best means I have seen to date for expressing views/user interfaces and quickly and dynamically implementing user interface object behavior.

- I'd like a simpler, object-oriented, highly-expressive, highly-dynamic API that I can use to piece together slick, fast applications that are not implemented as directory bags/packages, but rather a single entity that can be easily moved around. I want a very straightforward, simple class hierarchy. I'd like to be able to have only one book that describes the entire API.

- I would like for files to be associated by MIME type, by their "magic number" or header information, and then finally by filename suffix if the type cannot be adequately determined otherwise.

- I'd like to be able to have my data stored somewhere on a server, and access my data from wherever I am, instead of worrying that my data is at home, at work, in my PDA, wherever.

- I'd like to be able to fully customize the appearance and the behavior of the user interface. I'd like to be able to do this in several different ways: Graphically: drawing out the things that I want. Textually: scripting/authoring (NewtonScript/JavaScript would be nice), via an inspector (changing properties), or by writing C, C++ or Java code. I'd like the data that describes these views or methods of browsing to be very compact, secure, simple, and dynamic, and I'd like to be able to share these things with others.

- I want to be able to stream any music, movies, or text that I'd like to any device at my leisure, be able to bookmark or otherwise save my place in said content, be able to share links to this content or even mark up or comment on it with others as well as save excerpts of this content for later browsing.

- I would like to easily automate repetitive tasks, and would like for the system to notice when I make certain choices over time and ask me if I'd like to somehow automate it or set default choices.

- I would like to have some notion of online "presence," sort of like an instant messaging system that is built into the operating system. I would like my online status to be publishable, and would like to be able to let people have access to this status based on any number of rules or criteria. I would like for text and video/audio messaging to be an integral part of using the system.

Table of contents
  1. "Part I"
  2. "Part II"
e p (0)    67 Comment(s)

Related Articles

posted by David Adams on Fri 30th Nov 2007 19:26, submitted by netpython
posted by Adam S on Fri 23rd Nov 2007 16:11