Monday, March 21, 2005

JavaScript - Bigger and Better?

I read an article today about the possible future of personal computer use, called
Goodbye, computer; hello, world!
. In a nutshell, this article talked about an idea that may or may not be underway right now at Google. The idea is that Google would create their own operating system and allow users to subscribe to their mega-computer that would hold all of their personal applications. Theoretically, this would make the need for storing data on a PC obsolete. You could now travel to Geneva without lugging around your laptop and just hop on a computer over there, login, and voila! All of your applications are at your fingertips.

Okay, that would probably work for some non-proprietary data needs. I might feel comfortable publishing out my Quicken data to Google, as long as my privacy was guaranteed. I am not so sure this would ever work for business-level data, however.

Then came the part of the article that made me squirm. In order for this throw-away-your-PC model to work, web applications would have to become quicker. I will just quote directly the line about the technologies that Google is looking to use to assist their team in creating web apps that are as fast as desktop applications. This new marriage of technologies is called Ajax.
Ajax, which is short for Asynchronous JavaScript + XML, combines JavaScript, dynamic HTML, and XMLHTTP to, in essence, let you build Web-based applications that run as quickly and seamlessly as local software.”

Maybe I am alone in this, but the idea of working with JavaScript as my programming language of choice is not a pleasant prospect. Actually, relying on any scripting language is something of which I would prefer to steer clear.

But it would be very cool to be able to write my applications for the web without having to be as considerate of loading and post back speed. And having an engine manage asynchronous requests from my web app to speed responsiveness would be very cool. So is it time for me to dig back out my JavaScript books that I have hoped to forget existed?

13 comments:

kindohm said...
This comment has been removed by a blog administrator.
mike h said...

If Javascript were beefed up a little bit along with a decent Javascript IDE, then I think this idea has some merit. Javascript itself as a language is fine. But when I say "beefed up", I mean that I think that Javascript misses out on a lot of the benefits that managed code and a C# or VB.Net compiler provide. It'd have to be enhanced in order to give developers the tools they need to write good software.

Valerie Vogt said...

I am sure part of my frustration with JavaScript stems from the fact that I have to no help from intellisense and don't know if I have a typo in my code until I attempt to run it. Even with a nice IDE, I wonder how restrictive I would find JavaScript if that were all I had to work with all day.

Valerie Vogt said...
This comment has been removed by a blog administrator.
Valerie Vogt said...

A friend of mine sent me this link as a follow up to my post. I thought it was great!

http://blogs.msdn.com/DareObasanjo/archive/2005/03/22/400372.aspx

Christopher Hawkins said...

There is no measure for the depth of my hatred towards JavaScript.

That said, I have to admit that AJAX is promising, even if the tools for developing such applications are somewhat crude.

blameMike said...

I personally think JavaScript is great... for simple client-side browser scripting.

If I had to work with it's limited capabilites for more comprehensive apps... I think I would cry.

Matt said...

I think there is an opportunity for some people to implement this into a reusable framework that they can easily reuse. Until the big guys get into this.

To expand on Mike H's line of thinking -- now that this has blown up, I can't see Microsoft and others ignoring this. I can imagine Microsoft implementing this into .NET at some point to dumb down the javascript for us server-side people that buried our Javascript books.

Maybe that's the killer feature ASP.NET needs?

Valerie Vogt said...

I am happy to know I am not alone in my negative feelings toward JavaScript. :)

I do not think JavaScript is overly complicated, I just think it is very clunky. Without an IDE, you don't even get compilation errors if the code is mal-formed. You have to wait to try it out and see what happens. I know that VisualStudio gives you the option of debugging JavaScript, but in my experience, that is more painful than my method of debugging JavaScript, with is akin to me putting on a blindfold and trying to hit the bullseye on a dartboard. Every once in a while I get lucky :)

Phil Weber said...

If you haven't already, you might take a look at ASP.NET 2.0's Client Callback feature, which greatly simplifies AJAX-style development: http://msdn.microsoft.com/msdnmag/issues/04/08/CuttingEdge/

Weedlet said...

Great work on your blog - it was very enlightening. You've got a lot of useful info on there about Msdn so I've bookmarked your site so I don't lose it. I'm doing a lot of research on Msdn Exposed and have just started a new blog - I'd really appreciate your comments

Anorexia said...

Hey, nice blog and great info!
Just when you didn't think you could find anything better, along comes another great article of faith
site. Better still, it has the article of faith
information that you need.
Come and check it out if you get time I would really appreciate it :-)

mike h said...

Just curious if you still have the same feelings on this topic...

In Visual Studio 2008, developers will now have "Intellisense" with JavaScript, rendering my earlier comment obsolete about a beefed up IDE.

Also, I think that JavaScript gets a bad reputation because most of the time it is slopped in to apps and not treated as a real programming language. It's a REAL language that can run on a web browser - and it can also be used for object-oriented programming (which few developers take advantage of). If developers (and development shops) treat JS like a real language, give it the love it needs, test it, and use it like a compiled language, there's no reason you can't use it to do extraordinary things.