A new dawn for JavaScript?
-
Ever since I started working with web development I have been very sceptical of JavaScript. There are many reasons for this but the two main ones are 1) The difference in implementation between platforms (browsers) 2) The JavaScript “community” seemed to have a very unprofessional attitude towards development and little understanding for programming at all. But recently there seems to be a movement aiming at making JavaScript a serious scripting/programming language. So my question is basically has the issues I had with JavaScript a few years ago been dealt with? (Evidence pointing in this direction would be serious applications like Google maps being developed partly in JavaScript (Ajax))
-
Ever since I started working with web development I have been very sceptical of JavaScript. There are many reasons for this but the two main ones are 1) The difference in implementation between platforms (browsers) 2) The JavaScript “community” seemed to have a very unprofessional attitude towards development and little understanding for programming at all. But recently there seems to be a movement aiming at making JavaScript a serious scripting/programming language. So my question is basically has the issues I had with JavaScript a few years ago been dealt with? (Evidence pointing in this direction would be serious applications like Google maps being developed partly in JavaScript (Ajax))
Not done any Ajax but, as I understand it, development with it is currently pretty unpleasant. Microsoft's impending Atlas tool might make it more pleasant. Kevin
-
Ever since I started working with web development I have been very sceptical of JavaScript. There are many reasons for this but the two main ones are 1) The difference in implementation between platforms (browsers) 2) The JavaScript “community” seemed to have a very unprofessional attitude towards development and little understanding for programming at all. But recently there seems to be a movement aiming at making JavaScript a serious scripting/programming language. So my question is basically has the issues I had with JavaScript a few years ago been dealt with? (Evidence pointing in this direction would be serious applications like Google maps being developed partly in JavaScript (Ajax))
I agree that people who exclusively write JavaScript usually don't know the difference between a linked list and linked sausage. However, ECMAScript, the standardized verion of JavaScript, is a very powerful scripting language. I've had the pleasure of writing interpreters for it in C (a year or so ago) and C# (almost done). I use it to script any of my non-trivial applications. Now, "JavaScript embedded in Web browsers" is a different story. Though the latest generation of browsers (IE6+, Gecko-based) have more overlap in their API, the (X)HTML DOM that they depend on still get rendered in different ways. Furthermore, the XMLHttpRequest object gets created by different calls in different browsers:
//For IE var req = new ActiveXObject("Microsoft.XMLHTTP"); // For Firefox, Safari, etc. var req = new XMLHttpRequest();
Even more annoying remains the event model in IE v. Other Broswers. Just trying to work with objects that invoked the source, cancelling the bubble of an event through the DOM, and accessing the event object in the first place causes no end to Web developers' headaches. (I have one now just typing this!) JavaScript the language: B+ JavaScript in browsers: D+ "we must lose precision to make significant statements about complex systems." -deKorvin on uncertainty -
I agree that people who exclusively write JavaScript usually don't know the difference between a linked list and linked sausage. However, ECMAScript, the standardized verion of JavaScript, is a very powerful scripting language. I've had the pleasure of writing interpreters for it in C (a year or so ago) and C# (almost done). I use it to script any of my non-trivial applications. Now, "JavaScript embedded in Web browsers" is a different story. Though the latest generation of browsers (IE6+, Gecko-based) have more overlap in their API, the (X)HTML DOM that they depend on still get rendered in different ways. Furthermore, the XMLHttpRequest object gets created by different calls in different browsers:
//For IE var req = new ActiveXObject("Microsoft.XMLHTTP"); // For Firefox, Safari, etc. var req = new XMLHttpRequest();
Even more annoying remains the event model in IE v. Other Broswers. Just trying to work with objects that invoked the source, cancelling the bubble of an event through the DOM, and accessing the event object in the first place causes no end to Web developers' headaches. (I have one now just typing this!) JavaScript the language: B+ JavaScript in browsers: D+ "we must lose precision to make significant statements about complex systems." -deKorvin on uncertaintyOK, it still seems that JavaScript in browsers are still a bit of a nightmare. The idée of a full working and standardized script language for browsers would be a great asset. It seems really strange to me that the rest of the software world is moving towards more standards (SOAP for example). And still Microsoft (I hate to join the choir) seems to completely ignore this area. But I guess that if JavaScript in browsers were an easy to use development platform it would lead to truly platform independent software. Something Microsoft is understandably not very interested in.
-
OK, it still seems that JavaScript in browsers are still a bit of a nightmare. The idée of a full working and standardized script language for browsers would be a great asset. It seems really strange to me that the rest of the software world is moving towards more standards (SOAP for example). And still Microsoft (I hate to join the choir) seems to completely ignore this area. But I guess that if JavaScript in browsers were an easy to use development platform it would lead to truly platform independent software. Something Microsoft is understandably not very interested in.
I don't usually advocate Microsoft's position on anything; however, Internet Explorer has really come a long way since I first started thinking about Web applications back in 1996. Internet Explorer has followed a convergent path toward the W3C standards (DOM, CSS, X/HTML). However, "new" concepts, such as XMLHttpRequest, haven't had wide-spread popularity until recently. A team that I led back in 2000 developed "AJAX" applications using XMLHttpRequest. No one else seemed to care about it five years ago. Now that someone has coined a buzzword, though, everyone has turned their attention toward it. Microsoft hasn't cared about the browser because they hadn't looked this far into the future. Now, though, I think they really want to look into it. From what I understand about XAML and the like, they've started moving to something similar to Mozilla's XUL/CSS/JavScript platform. The browser is the common-man's Emacs of the 21st century. It's not an application, it's a platform. "we must lose precision to make significant statements about complex systems." -deKorvin on uncertainty
-
I don't usually advocate Microsoft's position on anything; however, Internet Explorer has really come a long way since I first started thinking about Web applications back in 1996. Internet Explorer has followed a convergent path toward the W3C standards (DOM, CSS, X/HTML). However, "new" concepts, such as XMLHttpRequest, haven't had wide-spread popularity until recently. A team that I led back in 2000 developed "AJAX" applications using XMLHttpRequest. No one else seemed to care about it five years ago. Now that someone has coined a buzzword, though, everyone has turned their attention toward it. Microsoft hasn't cared about the browser because they hadn't looked this far into the future. Now, though, I think they really want to look into it. From what I understand about XAML and the like, they've started moving to something similar to Mozilla's XUL/CSS/JavScript platform. The browser is the common-man's Emacs of the 21st century. It's not an application, it's a platform. "we must lose precision to make significant statements about complex systems." -deKorvin on uncertainty
I might have jumped to conclusions. It seems like they actually are trying to make a cross browser script language (or rather an extension) with atlas. I know there are a lot of other people out there that do the same kind of thing. But it is hard to trust some project (v 0.4) enough to invest the time need to learn how to use it. With Microsoft you know what you get. Then again it could bee that there just trying to hi-jack the whole thing, after all it has happened before. I seem to have a hard time making up my mind about this, I guess I just have to try it and then make up my mind :) Atlas: http://www.asp.net/default.aspx?tabindex=7&tabid=47