
OS.js (JavaScript Operating System) - maw
http://anderse.wordpress.com/os-js/
======
jread
I created a similar open source javascript/ajax/xhtml only browser-based
desktop, with an OS X like GUI. It was fun, but a waste of time, and it never
caught on. There isn't much of a use case for extendable OS like browser
desktops imho.

<http://demo.sierra-os.org> u: demo p: sierraos (takes a few secs to load)

------
catshirt
"I know this does NOT fully quallify as an operating system. This is really
just a hobby project of mine and this is the name I chose."

the thing about names, though, is they are used to signify what something is.
at the very least, it should not suggest it's something it's not.

~~~
5h
I agree, catshirt.

~~~
TheDahv
This made me laugh. I 'lol'ed, if you will.

~~~
TheDahv
Oops. I guess I don't know the appropriate way to acknowledge something I
think is funny on HN.

~~~
adbge
An upvote is usually sufficient. Avoid leaving a comment unless it adds to the
discussion at hand.

------
sciurus
Some similar projects are eyeOS (<http://www.eyeos.org/>) and CorneliOS
<http://www.cornelios.org/>

------
wicknicks
Here is the running example: <http://osjs.0o.no/>

------
marquis
Can I suggest changing the font size and/or background? It was extremely
difficult to read. Awesome project however - ran really smoothly here in
Chrome on OSX.

------
figital
Your major problem is (anti)anti-framebusting. I'm not sure that can ever be
fixed. The solution is for a local desktop manager to have the same
programability as a browser but separate the top level browser DOM from the
local desktop DOM. Many of these FreeDesktop specs would already be usable:
<http://www.freedesktop.org/wiki/Specifications>

------
sciurus
This should probably go without saying, but if you start the file browser
don't open Anal-Cam.html.

------
emehrkay
I would suggest that when making a window "fullscreen" to make it position
(absolute|fixed) with top, left, bottom, right at zero. You'll get "Free"
resizing when the browser changes size.

------
goshakkk
I see date/time is not correct: <http://cl.ly/261y0b3R1Z2i2h0C1c3l>

It should be 18/11/11 or 18/11/2011 or so, but anyway not 18/10/111. That's.

~~~
FuzzyDunlop
That's a simple fix.

One of Javascript's big WTFs is the fact that months are zero indexed.

------
geekytenny
It is very responsive. Great job! Would most def. want source code.

PS: typo in <http://osjs.0o.no/help.php> line 4 or so.

------
minikomi
For a slightly more nostalgic spin on the same concept, check out
<http://www.chiptune.com/>

------
elliottcarlson
What is (or will be) the license on this once the code is available on github?

------
jdc0589
very cool. was thinking about messing around with something like this a while
back. i may shoot you a pm on github to checkout the source

------
wbhart
Quite a few years ago I remember there was a browser Desktop based on
Javascript. Critically, it was Open Source and initially quite a lot of people
logged on and got involved. The main reason so many people were initially
interested is because they opened and documented their API and had facilities
to really easily generate applications (even a preschooler could do
something). It was possible to clone an existing app for modification just by
clicking a button. The source code editor was right there in the desktop too.

At first people wrote oodles of minimal apps which did totally trivial things.
Many clones of the same "Hello, World" app. Then the whole thing got overrun
with people putting existing Javascript games hosted elsewhere into IFrames.

Some of the problems included the fact that at the time Javascript was too
slow. They also weren't able to develop the site fast enough to keep up with
what people wanted to do with it. They were spending a lot of time trying to
optimise client server interaction. Performance became a real issue.

The most interesting aspect of such a project is the ability to interact with
other users of the desktop. But this needs to be at more than just the usual
social media level. People already have social media apps in their browser and
on their ordinary desktops. Putting a chat client in is not enough.

Developers need to be able to trivially add social capabilities to their apps
and it needs to be possible for multiple users to work simultaneously with the
same data in an interactive fashion, e.g. work collaboratively on code,
drawings, documents, etc., in real time. But it can't just be a free for all.
People need to be able to set up fixed groups of individuals who have access
to the given data streams.

It would also be interesting to be able to easily set up scientific
applications which can do distributed computing by farming out jobs to users
of the system who want to contribute cycles to science.

Multiuser games also spring to mind. Basically anything where there is real
time interactive content. These need not be complex to be attractive. A game
where the only way to progress is to share information with other users, say
via an in-game usenet system, would be just as addictive as some kind of
multiuser RPG.

The one thing people go to the web for is to meet other people. Any successful
Web desktop must make every feature of the Web desktop essential and
collaborative. If the feature is personal and not something you want other
users to be able to fiddle with then it may as well remain on one's personal
desktop and does not belong "out there".

The difficulties in making such an experience seamless and smooth are
substantial. Every Web Desktop out there has totally missed the point. They
are closed source, so no casual developers are interested, and there's no
money in it yet, so no serious developers are interested. They don't provide
compelling benefits over traditional web pages and desktops and there's
nothing addictive about them that gets you going back to continue your
interaction with the system. They just end up being slow, boring, insecure,
broken, work tools.

....Ha! That's pretty funny. I just discovered that the project I referred to
above was funded by Y-combinator {turns red}.

~~~
andreyf
What project are you referring to?

~~~
wbhart
It was called YouOS. I think the company was WebShaka, which according to
their web page either was or is funded by YC. <http://www.youos.com/>

I liked this project quite a bit.

Actually, I'm not sure if it was fully Open Source or not. But it certainly
had an open api and had plenty of little apps whose source code you could
view.

~~~
bootload
I tried YouOS back in 2006, obligatory _hello world_ app ~
<http://www.flickr.com/photos/bootload/117389495/> &
<http://www.flickr.com/photos/bootload/tags/youos>

------
beej71
fauxs.js? (FOH-ESS, rather.)

------
wavephorm
It looks nice, but the major problem is of course is people seem to not really
want this. Web desktops were built over 10 years ago and never caught on.

And with mobile devices these days, the desktop computing model (overlapping
windows, menus etc) is being replaced with modal applications.

~~~
wicknicks
Its definitely very appealing. If he could sync with Dropbox or iCloud, that
would really benefit people on the move.

My take on "this-was-done-didn't-work" is that those systems were built on
flash, and extremely clunky and slow. One of them was even running Windows
virtual machines, and throwing screen grabs down to its clients. There is
always room for a good useful product (which has had a not so glamorous past).

~~~
ChiperSoft
In 2000 I worked for WebOS.com (site still exists, but you wont find a working
product), developing a pure JS desktop environment much like the linked page.
The development API was loosely based on Swing and sported a full SDK. There
was no Flash involved at all, it was entirely DOM based and employed numerous
techniques to improve speed. We even had a system for doing JSONp data
communication, back before anyone even know what JSONp was.

Once the thing loaded it was wicked fast, as fast as any native interface, and
this was back when IE6 was the top dog and JS engines were horribly
unoptimized. If the code still worked it would probably scream in Chrome.

Technological limitations were not the problem, usefulness was. We completed
the product and discovered that nobody had any idea what to do with it or a
way to monetize it. We considered selling it as a foundation for other
companies to build systems on (medical would have loved it), but we had no
buyers. Then the dot.com crash happened and it all just went away.

------
diamondhead
Cloudo (see beta.cloudo.com) has been providing a huge WebOS environment for a
years. A very advanced API, dozens of apps including e-mail, rss reader,
games... And a very well designed robust API based on XSLT.

But it's also quite inactive for 2 years. Nobody is interested at running
current desktop on cloud. Because current desktop environments suck. They're
broken.

------
dbbo
I'd call it some sort of desktop environment, like de.js or so.

