Google Releases Open Source JavaScript Tools 158
Dan Jones writes "Google has open sourced several of its key JavaScript application development tools, hoping that they will prove useful for external programmers to build faster Web applications. According to Google, by enabling and allowing developers to use the same tools that Google uses, they can not only build rich applications but also make the Web really fast. The Closure JavaScript compiler and library are used as the standard Javascript library for pretty much any large, public Web application that Google is serving today, including some of its most popular Web applications, including Gmail, Google Docs and Google Maps. Google has also released Closure Templates which are designed to automate the dynamic creation of HTML. The announcement comes a few months after Google released and open sourced the NX server."
Nice... (Score:3, Insightful)
Thanks Google. =)
Closure/Clojure/closures (Score:5, Insightful)
Good grief. Homophone insanity. We've got Clojure [clojure.org] doing interesting things in the language and concurrency space. Block support in C/Objective-C [thirdcog.eu] reinjecting "closures" into everyone's vocabulary. And now Google jumps in with "Closure" just to make sure that no one has any idea what anyone else is talking about...
Re:My gawd (Score:5, Insightful)
Embracing and extending (Score:4, Insightful)
I suppose that complaining about this sounds like asking to forget civilization and go back to rural communities and simpler old way of life, but sometimes you miss the good old web as it used to be (yes, even the slashdot comment editor from 1997)
Re:My gawd (Score:3, Insightful)
Personally I find your post to be completely trollish, but let's go ahead and assume everything you've said is correct.
So what?
I don't personally find web-based tools better than ones I install on my own system. Let's go ahead and assume that nobody does and nobody ever will. Why is it wrong or in any way bad that web sites want to push as close as they can to that functionality, either as a replacement for it or simply to enhance their own users' experience? If it becomes the problem you're oh-so-afraid of, it means that people actually like what's going on. I know that's nasty to some geeks who think they know best and anybody who doesn't agree are worthless peasants treading on their turf, but to more reasonable people it's a good thing.
Yes, people will make bad decisions in when, where and how they use JavaScript tools. That's true of any tool. It doesn't devalue it.
Re:My gawd (Score:3, Insightful)
Why are people investing so much in a fundamentally flawed scripting language that has almost no use at all outside the browser
Got any other [well supported] options?
Re:My gawd (Score:4, Insightful)
Let me guess: you're a non-web developer? A.K.A a "real" developer.
Well, in the current web world saying "why use Javascript??" is about a smart question as asking "Why use C??" or "Why use Java??" in the desktop world.
It may have 10,000 flaws in it, but that's the de-facto standard ATM.
Furthermore, unlike the desktop realm were you install your dependencies with an installer, in the web you have to wait 5 years for the crap old technologies to drain out after the new better one comes out.
None of us would use Javascript if we had a choice, but we don't. So toolkits like JQuery or this release by Google are life savers.
Re:Embracing and extending (Score:1, Insightful)
JavaScript is what is driving the hardware upgrade cycle these days. I can use email/IM/word processors, even minimalist image editors and possibly VoiP on a pentium 90 reasonably well but it won't run the newest browsers or load even a 'minimalist' modern site. I think client-side scripting in browsers should be done away with completely, come up with a protocol-level replacement for AJAX and maybe add a few features to CSS and nothing of value will be lost.
"The" NX server? I don't think so. (Score:5, Insightful)
"The announcement comes a few months after Google released and open sourced the NX server."
That's a bit confused... it may just be a typo but it's resulted in a misleading statement. Google released *their* NX server as open source. Previously the FreeNX project had independently created an open source NX server, using libraries provided by NoMachine (inventor of the NX protocol) who provide all of the clever compression stuff from their server as open source libraries.
The summary makes it sound like Google were solely responsible for the existence of an open source NX server, whereas actually I'd say they're "standing on the shoulders of giants (NoMachine), next to some other dude who was already up there (FreeNX)"
Re:Embracing and extending (Score:5, Insightful)
It also kills off older hardware that was perfectly fine for rendering server side processing, but will choke with this move back to client side ( which personally, i think is the wrong direction, but that is a different discussion )
Re:My gawd (Score:2, Insightful)
I'm not confusing anything with anything. I'd like to have real OO syntax and proper error handling. Debugging JS or maintaining a large JS codebase is a nightmare.
Sure it's awesome for small things here and there, but the problem is exactly the fact that it's usage has grown way beyond that.
Re:My gawd (Score:5, Insightful)
Why is this modded funny? Apparently someone's forgotten that IE6 was released in August 2001; it's taken just over eight years for its market share to be superseded by another browser, and it's still firmly entrenched in some corporate environments.
--- Mr. DOS
Re:My gawd (Score:3, Insightful)
To extend the analogy someone else used earlier, OO in Javascript is like attempting to tighten a screw with a hammer.
Re:Nice... (Score:3, Insightful)
Re:My gawd (Score:3, Insightful)
I used to hate the idea of web apps, then I started to see them as an important tool for helping people transition away from Windows. Unless we all standardise on one OS though, which probably will never happen, then web based or otherwise interpreted apps will continue to be very useful, so I've just kind of accepted it.
I can't wait to use some of this stuff in some of my projects here at work. I first tried to get into dynamic web pages when the whole lack of standards between IE and Netscape was making dynamic HTML stuff a complete mess. It mostly put me off from trying anything too fancy interface-wise again, beyond a few show/hide buttons, and a CSS based menu system that I use. It doesn't make much sense for everyone to have to write their own code to emulate standard interface elements, so it's great to see such a high quality library made available for everyone :)
Re:It's also faster than Python (Score:5, Insightful)
It's also faster than Python And Ruby, PHP and Perl.
Languages can't be faster or slower than other languages, since a language is just a syntax specification. Compilers, interpreters, and other runtime environments are what you would compare for speed. In the case of JavaScript, you have several competing implementations (at least 4 or 5 that are well known, plus many others that aren't well known), and speed is probably the only significant selling point in any of them. With the rest of the languages you list, there's really only one commonly used implementation of each, and it's written by the same group that's responsible for the language specification, so there tends to be less focus on speed of the interpreter and more focus on adding new features to the language itself.
Re:Unimpressive (Score:3, Insightful)
Of course, if everyone uses Google's tools and libraries, it makes things easier for them to optimize Chrome, which is probably the whole point.
Uhh... no.
I would imagine that Google had been developing these libraries for years prior to even thinking about building a browser. This also explains why they have their own libraries rather than using "existing" libraries... their libraries are "existing" libraries. In fact, I would wager that their libraries were more complete than many of the competing libraries were a few years ago.
I am guessing that if you were to compare Google's libraries to many of the "existing" libraries you wish they would contribute to, you might find that they are very similar in capability and likely equal or faster. Why should Google pay its folks to work on another library when they paid to build this one and their folks are familiar with it and use it every day in all of their web products.
I would say, more than anything, this release is a way of Google saying that their libraries are not so much better than competing libraries so they gain no advantage by keeping them closed. If their release results in wider adoption of Google's libraries, perhaps the additional eyes will result in some improvements, if not they haven't lost anything.