Live data from Hacker News

I ported a JavaScript app to Dart

blog.sethladd.com

21–30 of 83 posts

Re: I ported a JavaScript app to Dart

#22

I'm concerned that, however good Dart may be, the fact that zero browsers intend on supporting it natively (and I understand they non-natively support it via js compilation), the popularity is likely to escalate. Wasn't the idea of Dart to replace JavaScript as the "lingua franca"? And we still have to run Chromium to support it natively?

Luckily, Dart compiles to JavaScript, so we don't need to wait for browser adoption of the VM. The questions that I see as important are: "Do my Dart apps, when compiled to JavaScript, work across the modern web?" and "Am I more productive building web apps with Dart?".

Re: I ported a JavaScript app to Dart

#23

It's a little bit sad that Google pays people to have their entire job be to astroturf for Dart with blog posts like this one. Being a "developer advocate" is one thing, writing official documentation, answering questions on forums, whatever — but "I ported a JavaScript app to Dart. Here's what I learned." Seriously? More like "I'm on the Dart Team. I ported a JavaScript app to Dart because it's my job." Open source…

I've never minded harsh HN criticism b/c it's good at exposing design/develop weaknesses, but picking on presentation style while completely ignoring the technical aspects of the article is just bikeshedding. We all know he's a Dev Advocate. If you might have some great criticism on js/Dart, that would be very helpful. He could be wrong, so chime in.

Re: I ported a JavaScript app to Dart

#24

Earlier quoted context omitted.

Your definition of astroturfing doesn't seem to match mine. Seth states several times on his blog that he works on Dart developer relations at Google. Blogging about Dart is part of his job, and in no way is he being deceiving about that fact. I on the other hand am simply an engineer on the Dart team, as I must disclaim in this context.

Where does he mention that other than the sidebar? I completely missed the fact that he works for Google while reading the article since it's never mentioned in the body of the article itself, and the article is written as if he's completely new to Dart and trying it out for fun. If he's not trying to present that image, then it's a really awful writing style.

Do you imply a conflict of interest? If you do, please state it explicitly. Your criticism as it stands doesn't add to the discussion and one could say that your writing style is really awful, too.

Sidebar is not an unusual place to place author bio and it is definitely enough for me.

Re: I ported a JavaScript app to Dart

#25
post #15

Earlier quoted context omitted.

Well that's a plain "ad hominem" argument right there sir. I found the post interesting and useful, and the fact that the author works for Google or Apple or Microsoft or Walmart doesn't affect it in the slightest.

He presents the post as if he was learning something new, when he's really a seasoned Dart expert which has access to resources most of us don't have. Then there's the background that he could cherry pick his project to make the outcome look good, and doing so is in fact his job. A misleading presentation potentially leading people to false conclusions is worth calling out.

I picked the Music DNA app not because it makes Dart look good, but because I never really used Web Audio API before and the app looked good. If I really wanted to cherry pick, I wouldn't have picked an app that uses a third-party JS lib. The JS interop in Dart is sufficient, and it works, but obviously is not as seamless as it is in JavaScript. JS interop in JS is better than it is in Dart, and I didn't hide that.

I welcome anyone to pick a random JavaScript app, port it to Dart, and write up their experience. I'm sure the community would love to learn more about that experience, especially me.

I don't have access to anything you don't. Dart is open source. Heck, in my job, I don't even write Dart code every day. :)

I even reported issues about the original Music DNA app (bugs, code quality) to the original author. I helped make the original Music DNA app better.

Can you help me identify the false conclusions?

Re: I ported a JavaScript app to Dart

#26

It's a little bit sad that Google pays people to have their entire job be to astroturf for Dart with blog posts like this one. Being a "developer advocate" is one thing, writing official documentation, answering questions on forums, whatever — but "I ported a JavaScript app to Dart. Here's what I learned." Seriously? More like "I'm on the Dart Team. I ported a JavaScript app to Dart because it's my job." Open source…

All I heard it from your post is a lot vitriol and hatred.

I don't know who Seth Ladd is. I looked at the page and it skipped over his title and went straight to the text.

I don't care if Google paid him, or if the works for Google, or if he wrote because he was forced to at gunpoint by Colombian mafia. It doesn't matter. It is a good article and I enjoyed reading it. It is very well done, it shows how the IDE works, explains some concepts about Dart.

I can see maybe if you had direct proof that he was forced to do this against his will by Google, ok we could maybe discuss the implications of it. That still wouldn't make that a bad article.

Re: I ported a JavaScript app to Dart

#27
post #2

I really like Dart. I'm surprised its not getting traction faster. Its a language with few surprises, everything looks familiar and works as you'd expect without gotcha's. While it doesn't feel cutting edge like Haskell or retro on steroids like Clojure, it seems just right as a replacement for Javascript.

I really like Dart too and actually have worked on projects of multiple types (e.g. a game/simulation, parts of a web-app etc.). The just seems right thing that you mention actually resonates with me (in fact, resonated enough for me to teach students in an undergrad course that involved designing and building a web app).

That being said, traction for any new programming language is hard. A programmer's learning time is limited and most programmers would treat it as an investment. In Dart's case, the investment will make more sense if the Dart team could get the VM onto Chrome's release channel (not Dartium/Chromium as it currently stands). I bet that's going to be a hard fought battle, but I believe this would incentivize developers to code in Dart and serve Dart2Js generated js files to other browsers (FF, IE etc.); especially because the coding/debugging experience is so much better than vanilla javascript (I am now prepared for coffeescript advocates to join the fray).

As an aside there might be some App Engine integration that can help the cause. "Specifically, we are working on server-side Dart support for Managed VM" https://code.google.com/p/googleappengine/issues/detail?id=6...

Re: I ported a JavaScript app to Dart

#28

It's a little bit sad that Google pays people to have their entire job be to astroturf for Dart with blog posts like this one. Being a "developer advocate" is one thing, writing official documentation, answering questions on forums, whatever — but "I ported a JavaScript app to Dart. Here's what I learned." Seriously? More like "I'm on the Dart Team. I ported a JavaScript app to Dart because it's my job." Open source…

So what?

I don't care who writes the article, all that matters is whether the content of the article is interesting.

For this particular article, I think the answer is "Very", so thanks to the author.

Re: I ported a JavaScript app to Dart

#29

It's a little bit sad that Google pays people to have their entire job be to astroturf for Dart with blog posts like this one. Being a "developer advocate" is one thing, writing official documentation, answering questions on forums, whatever — but "I ported a JavaScript app to Dart. Here's what I learned." Seriously? More like "I'm on the Dart Team. I ported a JavaScript app to Dart because it's my job." Open source…

Your definition of astroturfing doesn't seem to match mine. Seth states several times on his blog that he works on Dart developer relations at Google. Blogging about Dart is part of his job, and in no way is he being deceiving about that fact. I on the other hand am simply an engineer on the Dart team, as I must disclaim in this context.

What irks me is that the things he picks on have long since been solved. So the fact that he works at Google tells me that he knows better and is being intentionally deceitful. He picked a project that doesn't use any modern (by modern I mean in the last 5 years) practices like module loaders. It's fine to say that JavaScript doesn't have this by default, but that's not what he did here. He pretended to think that it's hard to know what the entry point file is.

Re: I ported a JavaScript app to Dart

#30

I somewhat skimmed the article, but it doesn't mention the fact the JavaScript is on the verge of getting modules. Unless you really love Dart, you can fix most of these problems by using something like the ES6 module transpiler: https://github.com/square/es6-module-transpiler . Even better, in then next few years JavaScript will start adapting these natively, solving many of the organizational issues laid out in thi…

Thanks for the feedback. I did point out, in the end of the article, that some of the techniques (e.g. libraries, futures) aren't impossible in JavaScript. And I'm really happy to hear they might be coming to a future version of JavaScript (everyone should have modules and promises!). Part of the point of the article is that Dart has these features now.

Thought you'd might want to know that Promise¹ is available in Firefox & Chrome since quite a while back and the spec for Modules can be found here:

Spec: http://wiki.ecmascript.org/doku.php?id=harmony:modules

1: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...

Post reply on HN