Opencroquet
zymano writes "OSnews has some information about Opencroquet, a 3d operating system worked on by Alan Kay, who also is one of the inventors of Smalltalk, one of the fathers of object oriented programming, conceiver of the laptop computer, inventor of much of the modern windowing GUI. The OS is a 3D environment running through the Squeak environment on top of another operating system. It requires a supported 3D accelerator. Squeak is an interpreted language similar to Smalltalk. Could be ssslooooww. Way cool screenshot."
Maybe this is a about 3D _GUI_.
I'm dubious of any supposedly revolutionary new OS that uses Shockwave-Flash for its site navigation. Since I don't allow that crap in my browser, all I see is a bunch of grey boxes on the left, rendering the site totally useless.
The extra bandwidth required probably isn't helping it survive a slashdotting right now, either.
Money I owe, money-iy-ay
Hmm, the main link was slashdotted, so I tried the OS's website http://www.opencroquet.org. Maybe they should change their main graphic to the "Way Cool screenshot" rather than the Monet looking Croquet game they have going on right now. They might garner a bit more interest.
'He was a dreamer, a thinker, a speculative philosopher... or, as his wife would have it, an idiot.' - Douglas Adams
I could well be missing something here - read the site and the article though, so at least I made an effort :)
What license is this code being developed under? It's called OPENCroquet, so presumably it's some kind of Open Source, but what flavour? Is it, in fact, Open at all?
I ask cos it looks interesting and I wanna play :)
P
The OS is a 3D environment running through the Squeak environment on top of another operating system.
OK, I didn't RTFA, but...if it runs on top of another OS, it can't really be called an OS itself, can it? I mean, win95 jokes aside, isn't it just a fancy GUI then?
Liberal (adj.): Free from bigotry; open to progress; tolerant of others.
If I am reading this correctly, they have made a 3D OS. Does anybody else here feel that, we (as a community) are putting way to much emphasis on the those two little characters 3 and D?
Couldn't we be spending our time trying to figure out how to make an easier to use, less complex OS? Something that isn't scary to people who have no idea how to use computers. Perhaps then we would see what a computer revolution would be all about.
Or maybe we could spend the time figuring out how to make computers more secure, so people wouldn't be afraid to put private info on it. Thus making it so that people are more likely to use them for everyday purposes.
But, no we decide we want to go 3D.
Makes you think, does the geek community really want computers to be used by everyone? Or do that want something only they themselves can understand?
Don't mod me down because you dissagree, if you disagree make a good argument about it.
Just my humble opinion,
SirLantos
The flying hamster of DOOM rains coconuts on your pitiful city.
Like smalltalk. Early 70s, IIRC. The problem of managing increasing software complexity, which object orientation (partly) solved, became significant only much later.
I don't think 3d enviromnents are an idea whose time has come. Slowness is only part of the problem. We really don't have the software infrastructure to scale UI complexity to those levels. Maybe for special applications, but not as a general UI design paradigm.
Certainly futuristic.Better in what way? I'm not trying to be argumentative. For all I know, the Squeak VM allows a 486 DX2 at 66 MHz to pump out 3 teraflops on .2 watts and has been shown to cure cancer in lab rats.
"Better" really doesn't say much. You might as well have made up a word or posted in Linear B.
Are you talking about inherent superiority of the VM spec? Is the design simpler? Is the set of opcodes smaller or more orthogonal without sacrificing speed or functionality? Has it supported non-blocking I/O, continuances, higher order functions, and generics/templates from day 1? (Can you tell I'm a Java programmer that hated not getting java.nio.* until Java 1.4? Now for generics and continuances...) Did Dijkstra, Turing, Ken Thompson, Xavier Leroy, Ross Andersen and Linus spend a year in seclusion atop Mount Araraat inside Noah's Ark designing a VM spec that was pretty-printed by the hand of God Almighty on the one remaining wall of Solomon's temple? Is the set of opcodes inherently faster or does it result in more compact binaries? Is the set of opcodes well chosen to be easily implemented on most architectures? Is the size of an int clearly defined in the spec (as I remember, both Perl and Python say "at least 32 bits", which is a horrible spec if you want your code to run the same across architectures)? Does the set of opcodes lend itself to rapid compilation of efficient bytecode from many source language families? Are the bytecode operations and file formats well suited to JITs? Does the VM design not force a single object model on the code? Does the opcode format offer security benefits such as efficient real-time security checks on untrusted code? Are there other ways in which the design is "cleaner", "leaner", or "more efficient".
Are you refering to the design of the curent VM implementation rather than the spec itself? Is the current VM better documented in both English and Tamil? How about clean interfaces or easy extensibility of the VM?
Are you talking about the implementation of the current bytecode engine? Is the source code for the VM well commented in Englsih and Thai? Is the entire VM and libraary set implememted in 5,000 lines of Objective C? Is the current VM available in C, Java, Scheme, Haskel, and Intercal implementations?
I suspect you mostly meant "the current canonical implementation is very fast". The speed of the current VM is much less important than inherent design limitations. If the current VM is 50% as fast as the fastest Perl VM, but is expected to be 25% faster than the fastest JVM in a year, that's much preferable to a 10% speed lead on Perl right now. If you change your VM spec too much or too often, people start jumping ship, but you could completely gut your VM every 2 years and very few people would take notice. You're stuck with your design.
I'd love to hear an analysis of the Squeak VM. I hear about so many well designed VMs that get little mind share while the unwashed masses rave about CLR/Mono without giving good details about why the CLR is inherently cross-language and high performance.
Copyright Violation:"theft, piracy"::Anti-Trust Violation:"thermonuclear price terrorism"<-Overly dramatic language.
I know this is a bit off, but myself and a friend of mine really sat down and tried to explore what would make a "good" 3d interface. IE why would it be "better" to go 3d over 2d. The real answer we came to is... there is no good reason to switch to 3d space...
What you say!
The biggest question you have to ask yourself is "How does the 3rd dimension help, and how can it be used to enrich the interface experience, and save time" the problem is we could not answer that question satisfactorily!
Take a look at what Croquet here shows us. We have system with 3d images in 2d space. We already have that, its called a computer monitor, it is in 3d space, this is already done. Making the monitor its own 3d space does not help the issue of interface, and making a BETTER interface.
When you take a look at the croquet PDF file, you see basically a 3d translated world, translated to 2d. You have depth, the difference is you can "rotate" around objects, but they are still basically 2d functions, you dont actually gain any kind of usability by rotating around the picture, except to possibly confuse the user when he tries to retrieve the picture.
Also, they do fall back to the nav bar concept, where there is a 2d navigation bar at the bottom, now this isnt bad in of itself, but it accomplishes NOTHING from the usability standpoint. Again the question is "How does the 3rd dimension help, and how can it be used to enrich the interface experience, and save time" this interface does not enrich the graphical user space in any REAL fasion, it moves a 2d plain into a 3d plain, without taking any real benefit from the fact that there is a 3d plain existing.
The usability benefits of the group function, where mutliple users can get into each others space and "look" around into others space, and meet with each other, is really in of itself not a value adding attribute of the program. This can be done, and done effectively, with video confrencing, each user does not have to "look" at another user, they can represent all users on a 2d space just as easily, or incoporate some psuedo 3d elements such as bring forward or push back (IE just scaling the size) and this can be easily done in the 2d arena, its a simple matter of scaling a picture and overlaying another over or placing it behind the picture.
I think it is a great endeavor, but it still hasnt answered the question of what the 3rd dimention can be used for that isnt already adequately done.
3d is good for games, because in games you want to "move around" in the environment, and by moving around you learn things about how the environment is shaped.
The other 3d interfaces that use file folders as "rooms" and each room as a size based on its file size, doesnt actually "help" in the sense of a user interface perspective, since it just re-represents size, you dont gain any real perspective into any NEW information that could not be gleaned from a sorting algorithim. IE if I wanted to locate on my machine what parts of the disk were "larger" than another part of the disk, I would not need to represent it in a 3d space, just instead sort by the size in whatever byte measuremenat im using, and easily determine which is holding more space by where it sits in the sorted list, and can even use 2d visual cues such as bars, and colors to make distinctions.
So the real question, is can you find a good use for the extra dimention when it comes to user interface with the computer? one that would make it worth persueing? Or can you explain to me why croquet is using the 3rd dimention i a way that cannot be adequeately, and more easily done in a 2d space already?
If you don't vote, you don't matter, so don't waste your time telling me your opinion