JavaScript: The Lingua Franca of the Web

Mike Shaver, a founding member of the Mozilla team, has strong feelings about how the web became popular:


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2007/05/javascript-the-lingua-franca-of-the-web.html

“the idea of browsing today’s web with JavaScript disabled is almost quaint.”

Quaint, huh? I highly recommend you take a look at all the XSS exploits and security holes that are left unfixed and I’m sure you’ll come to the conclusion that browsing the web with something like the http://noscript.net extension is the only way to go these days.

Other than that, I can only agree. It’s scary but it’s true: Javascript has become what Java should have been …only way way much uglier.

Can’t wait for JavaScript Intellisense in Orcas.

I’ve made a nice living in Javascript over the last decade; while others were struggling with the Java AWT or Swing, or coding apps into movies with Flash, I was writing rich UIs that Just Worked, and were Just Dead Easy to write.

For more on just how powerful JS can be, see

Open Rico: http://openrico.org/rico/home.page

Prototype.js: http://www.prototypejs.org/

Check out their links, too.

But don’t Flash and Flex use JavaScript (excuse me, ECMAScript) as their scripting language?

I’ve been adding snippets of jQuery to html pages for a while and it’s just what I needed… small almost-standalone snippets of code to do things like sortable-html tables, drag-n-drop trees, and ajax forms that are almost invisible enhancements to basic HTML forms I was already creating.

Demos make the best impression, so take a look at a jQuery http://jquery.com and one of it’s most popular plugins called interface http://interface.eyecon.ro/demos

The problem isn’t really JavaScript. The problem is web development in general. JavaScript is useless without an HTML page and the associated ugliness that comes along with it. I’m no fan of JavaScript but I’m an even lesser fan of all the crap that is “web development” today.

We need to just start over again. Until we do we will be living with the world’s biggest kludge for the rest of our lives.

"Flash and Flex use JavaScript "
Yeah, and so can Silverlight. JavaFX is a little different I believe.

Matt: Seaside sounds like an interesting framework and it’s about as far from dealing with HTML and Javascript as you can get and still write a web app. I’ve always liked the idea of delivering a web application as a complete image deployable on any platform.

As far as the power of Javascript goes, check out the following toolkits
Mochikit
MooTools
Dojo (some of the new offline storage objects are fascinating)
The entire Yahoo library makes Javascript development a lot less painful.

I think one of the key reasons javascript is dismissed is due to the lack of tool support. At least in the Microsoft world.

Or is the lack of tool support because javascript is dismissed by developers? Damn chicken-egg problem!

In any case, it’s good to see Microsoft finally coming around and recognizing javascript in the next release of VS.NET. It’s long overdue.

JavaScript is a fine language, comparable to Ruby and Python, even better in my opinion. The thing that suck about developing web apps is the amount of browser differences, bugs and quirks brought to us from the stupid pointless browser war. You see, these morons just never learn from history; instead of fixing their browsers they keep churning out steaming pile of bloated proprietary crap like silverlight and flex. It’s browser war 2.0 all over again. It’s stupid and non productive. This is NOT progress people.

Doesn’t JavaScript still have those funky rules where it guesses where there ought to be a semicolon or something?

http://www.mozilla.org/js/language/es4/rationale/syntax.html et al.

It’s nice to see that javascript, and available libraries have reached the point where they’re easily usable. Initially I was dissappointed with all the compatibility issues, etc, given that it’s ubiquity made it so tempting to use. In fact, now that I think about it, there was a long time where it seemed very rare to find javascript that actually worked properly.

I’ve gotten back into its use with ruby on rails and other frameworks, and I think this is the best approach, given that it allows the sharing of libraries, so the fiddly bits only have to be done once, and a good system for falling back on basic commication with the server when javascript isn’t available.

I think Flex, Java FX and silverlight is good alternatives for client side rich UI. Javascript is good as most google and yahoo using that along with AJAX, but this new framework provide more functionality and power, with help of oops support.

“In any case, it’s good to see Microsoft finally coming around and recognizing javascript in the next release of VS.NET. It’s long overdue.”

I may be wrong but I don’t think intellisence with javascript was possible until the recent overhaul in the way intellisence works in Orcas.

Imagine what one could do with a really good javascript IDE.

The IE javascript “debugger” is one good reason why people hate javascript. … “You have an error at line 1” … weee :slight_smile:

On other could be that it is so d@mn easy to make ugly javascript.

Personally I believe that html is the evil one. If it wasent for CSS, html would be the most anti-DRY thing you could ever come up with.

Luis’ Parenthesis “The lure of JavaScript is so great now that, like PHP, HTML and CSS, JavaScript is becoming a kid’s language.”

Well I’m sorry to tell you that this can be applied to any language like Ruby, C#, VB.Net, c, etc. What needs to be considered is not the language its written in, but what is written.

I’d also like to make the point that HTML and CSS are not programming languages so i don’t know why you mentioned them.

Both Netscape and Microsoft offered server-side Javascript back then.

Sorry foobar, but I thought Microsoft offered server-side JScript?

I might be mistaken, but it seems like Microsoft is inventing new standards upon already existing standards.

“Ignore THOSE people at your own peril.”

oh we’ve been doing that for years! :wink:

Some beautiful javascript : http://www.extjs.com

Interesting how many of the comments here completely ignore the point of your post in favour of trotting out the same tired prejudices the writers have been carrying around for years without ever bothering to learn about the subject. As a JS programmer for over 10 years I’ve pretty much given up bothering to even notice such snarkiness; it reminds me of people who rail against garbage collection, or argue that object orientation offers no benefits over FORTRAN 77-style procedural programming.

Twenty-odd years ago I was writing systems software in assembly language; I was happy to point out to anybody who dared to sing the praises of C that my code could kick their code’s ass any day of the week. But you know what? Technologies develop and change, and just a few years later I would happily acknowledge that, when done skillfully, writing in C was a much more efficient way of producing code that would often perform better than hand-crafted assembler.

Mind, that doesn’t mean that people didn’t write an awful lot of C code that sucked. To those carping about JavaScript: perhaps you should find out how things have moved on, and realise that to blame the language for the large numbers of rubbish web applications produced by incompetent programmers and designers is a singularly foolish thing to do. It says much more about your inflexible and rigid attitudes than it does about the technology.