Hacker News new | past | comments | ask | show | jobs | submit login

The only problem I have with this sort of development effort is that it fails to recognize that Javascript is an awesome language unto itself and has no need of "fixing" by introducing a completely new language that is completely different.

Sure, it needs a few refinements here and there, but by and large Javascript is an incredible, flexible, and battle tested language. As a web developer with 11 years of experience, who has worked professionally with RoR, Java, PHP, MySQL, Oracle, and PostgreSQL, my feedback is just stop.

The world doesn't need another tool that obviates the need for engineers to learn Javascript to program on the web. Seriously, Javascript isn't that difficult. Just learn it, buckle down and spend a couple months writing Javascript and you'll be just fine.

If half the time spent writing Dart had been spent learning Javascript instead, then you would think in prototypes instead of classes, anonymous functions instead of one off objects, callbacks instead of um... not having callbacks, and dynamic variables instead of casting, casting, casting.

I'm not claiming Javascript is better then your language of choice, I'm just saying that as a language, it's awesome. It's not broke, and as a web developer I'm not looking for something to replace it.




You don't need to cast in Dart. Dart is not Java. It has concise closures as well. It has dynamic types.

Javascript has problems. If it didn't, no one would be trying to evolve it and address it's weaknesses. The language had serious weaknesses, some of which were addressed recently (TypedArrays, strict mode, etc) and some of which there is no current fix (consistent, standardized, namespacing and modules), and some of which cause big performance holes ("with" statement).

Prototype based inheritance is extremely verbose to use. That's one reason why CoffeeScript is well liked, and why Classes are coming to JS. Prototypes and eval() also make it hard to develop language analysis tools and IDEs which can provide correct code assistence, which can refactor large code bases, etc

Javascript isn't broken if you're just writing a few lines of JS in jQuery to enhance a web page. But it doesn't really scale well if you're got 500klocs of code and a decent sized distributed team.


Sure, jQuery is bad at scale. And by "scale" I'm not talking pageviews, I'm talking features, development team, etc... For that, modular libraries like YUI and Dojo are the answer. You can create some of the most advanced web applications perfectly fine in JS as long as you approach it correctly.

P.S. Don't ever use the term "klocks" unless you want to sound like a enterprise middle manager who hasn't touched code in 20 years. Just a friendly tip. :)


Where are all the great JS tools and IDEs then? You simply cannot compare JS tooling to what can be had for a popular statically typed, inheritance based language. It's a whole different league.

P.S. Snide remarks such as that make you sound like a junior programmer who thinks he knows everything. Just a friendly tip ;)


I read a bit more into Dart, its optional typing is very interesting. I might even like that if it were a change to Javascript itself.

Of course Javascript has problems, every language has problems associated with it. They all have strengths and they all have weaknesses.

From what I've seen, projects like GWT, Dart, and Coffeescript come out of communities of developers other then the web development community. GWT and comes from Java engineers as an attempt to not have to write javascript, Coffeescript comes from Ruby developers attempting to accomplish the same thing. Now Dart is another attempt by the Java community to not write Javascript.

The thing is, I never hear from the web development community that Javascript is broken, missing major features, and needs to be replaced. These are the people using Javascript every day. The people that say Javascript needs these features are people who don't use it that much.


People also used to program computers with punch-cards. Everyday. Of course they can use Javascript.

You didn't address any of his points though. Where are the great Javascript tools and IDEs? There are tons of them for languages with static typing and classical inheritance.

Here's just one tiny example: Compare how you go about refactoring code (renaming classes, functions, etc) in Javascript with the many ways that it may be done in Java or C#.


He made many points, Javascript not having great tools and IDE's is only one of them.

It's a valid one though, the Javascript IDE's out there aren't very good. However, that's a function of community support, not language quality. Personally, I don't use an IDE for javascript or RoR programming, I just use Textmate.

I use Eclipse for Java programming, and I don't think I would want to program in Java without it. Maybe it says something about the languages themselves that they require an IDE to develop in.


Actually, many people have tried to build refactoring and editing tools for JS and they always hit the same limitations. The language is just not conducive to tooling. Without a great refactoring tool, big projects become difficult.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: