Linked by David Adams on Wed 18th May 2011 03:10 UTC, submitted by sawboss
General Development The name Fabrice Bellard may not be recognizable to a lot of people, but the work he carries out as a programmer and computer scientist is. . . . He is a very talented programmer, and his latest project demonstrates once again just how talented he is. Using the super-fast JavaScript engines that now come as standard in popular web browsers, he has managed to create a PC emulator that runs in a browser. As a demonstration he has posted a link to a version of the Linux kernel running in such a scenario.
Thread beginning with comment 473651
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Purpose?
by Ventajou on Thu 19th May 2011 00:41 UTC in reply to "Purpose?"
Ventajou
Member since:
2006-10-31

The purpose of the PC emulator in JS is just fun for the developer. Just like running linux on a console.

However there is a purpose in using JS for "desktop" applications, particularly in the enterprise. I don't care for Google or MS having control of all my documents but if your server is within your own datacenter, a web app has several advantages over a desktop app:

- No distribution: PCs come with a browser, just put a link to your web app on your intranet and all of your employees can use it, regardless of what computer they're on. Heck they might even be able to use it from home.

- Easy to back up data: assuming it's an app that saves files, those are now saved in a central location on a server which can be backed up regularly and more easily than a bunch of PCs.

- Multiplatform: your web app will run on Windows, Mac or Linux and maybe even on mobile devices if done well. And again you don't need management software to handle all of those platforms.

Javascript is quite a pain to use for large projects though that's why Google came up with GWT. I personally like to use Script# but that's not for everyone. What would be awesome is something like Silverlight has but standard across browsers: a bytecode VM so that developers could use their language of choice. But that's just me dreaming.

Reply Parent Score: 3

RE[2]: Purpose?
by twitterfire on Thu 19th May 2011 01:47 in reply to "RE: Purpose?"
twitterfire Member since:
2008-09-11

The purpose of the PC emulator in JS is just fun for the developer. Just like running linux on a console.

However there is a purpose in using JS for "desktop" applications, particularly in the enterprise. I don't care for Google or MS having control of all my documents but if your server is within your own datacenter, a web app has several advantages over a desktop app:

- No distribution: PCs come with a browser, just put a link to your web app on your intranet and all of your employees can use it, regardless of what computer they're on. Heck they might even be able to use it from home.

- Easy to back up data: assuming it's an app that saves files, those are now saved in a central location on a server which can be backed up regularly and more easily than a bunch of PCs.

- Multiplatform: your web app will run on Windows, Mac or Linux and maybe even on mobile devices if done well. And again you don't need management software to handle all of those platforms.

Javascript is quite a pain to use for large projects though that's why Google came up with GWT. I personally like to use Script# but that's not for everyone. What would be awesome is something like Silverlight has but standard across browsers: a bytecode VM so that developers could use their language of choice. But that's just me dreaming.


-No distribution: that's what Web apps are for. And I think that some JSP/Java or ASP.NET/Silverlight solutions are more powerful

-cross platform does really not matter

Reply Parent Score: 1

RE[3]: Purpose?
by Alfman on Thu 19th May 2011 02:25 in reply to "RE[2]: Purpose?"
Alfman Member since:
2011-01-28

twitterfire,

"-No distribution: that's what Web apps are for. And I think that some JSP/Java or ASP.NET/Silverlight solutions are more powerful"

You say "no distribution" is what web apps are for, but to be fair you should be comparing it to state of the art operating systems (a collection which windows is notably absent from).

"No distribution" was achieved many many years ago by sun workstations. My school's CS labs were sun workstations. I could walk up to any computer in any lab and log in with all my customized applications ready to go. What I did under my account wouldn't affect the next user, my files were secured.

Javascript running in a browser looks terribly weak in comparison.


"-cross platform does really not matter"

Hmm, I don't know how you can say that, particularly in the browser space. The whole reason for HTML standardizing efforts is to improve portability between browsers. Why doesn't it really matter?


Maybe I'm just being grumpy, but I don't understand the hype behind web apps. This "new technology" is several thousand times slower than the old technology doing the same thing.

I guess this has merit on account of being able to run on a walled garden device. But our heading is taking us down a path of net loss compared to just a couple years ago.

Edited 2011-05-19 02:27 UTC

Reply Parent Score: 1

RE[2]: Purpose?
by snowbender on Fri 20th May 2011 23:04 in reply to "RE: Purpose?"
snowbender Member since:
2006-05-04

no distribution

This is the most important argument I guess. But.. you have the same advantage with Java applets/JavaWebStart, or Silverlight/ClickOnce. I know the argument with those is that you have to install something extra.

easy to backup

I know that argument too, but this is something that you have with every client-server application.

multiplatform

Java applets


I give those arguments, but I know that companies are probably gonna demand javascript applications. But see... with GWT.. you actually program in Java, to compile it to JavaScript, that you run on a browser, which contains a very fancy JavaScript interpreter to make it run as fast as possible. All that while there is basically a technical solution (applet/JWS) that let's you program in Java and compile it straightaway and run it on a very performant and mature JVM.

Reply Parent Score: 2

RE[3]: Purpose?
by Alfman on Sat 21st May 2011 09:50 in reply to "RE[2]: Purpose?"
Alfman Member since:
2011-01-28

snowbender,

I had never heard of "ClickOnce". I heard that .net had something like it in passing, but I totally forgot about it.

The windows kernel driver DRM in vista and win7 totally turned me off the OS. Since I stopped using Windows as my primary desktop, I haven't really kept up with many new developments on that side of the fence.

"I give those arguments, but I know that companies are probably gonna demand javascript applications"

Yes, I know they do. A company of mine was involved in a major conversion of a client mainframe application to asp.net. The web version was fancy enough, but the paging latency went from around 20ms to 500ms.

Of course the web version is doing much more processing, but it sucks that paging through 10 screens takes 5 seconds now instead of < 1s.

Even microsoft couldn't improve it.

Sometimes old is better.

Reply Parent Score: 1