“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.
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.
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.
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.
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.
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.
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.
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.