Live data from Hacker News

Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

news.dartlang.org

51–60 of 134 posts

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#52

Earlier quoted context omitted.

i think strong typing generates same code as optional typing if you are not using dart dev compiler.

When you say the "dev compiler" are you referring to the DartVM? While (embedded in Dartium browser) that's used for dev convenience for front-end, it's also (without the browser, obviously) the main target for back end Dart.

The dev compiler translates Dart code into human readable JS code. So you can write a library in Dart and still provide JS code someone could realistically adapt to their environment or if Dart were to go away it would allow you an easy path of escape.

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#53
post #42

OK, so I started dabbling with Dart and wanted I've been wanting to do this for 3 years. Please bear in mind, I want to use Dart because coding in JS directly is not something I thoroughly enjoyed the last time I built a 'real' Web App. This is not a critique of Dart, it's just my recent experience ... if any of the points I make here make no sense, please correct me (I really don't want to use JS anymore!) So I star…

what we do at listshine is run code on dartium in checked mode. when it works 100% then we build js version in staging and after that is confirmed to work then we do production build. debugging dart code is faster and better in dartium

OK, but what if I am using JS interop code? Dartium still won't help me, because I still need to go through the layer which allows to 'glue' my Dart code to the JS code.

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#54
post #39
post #9

Earlier quoted context omitted.

I have the impression that Dart's lunch got eaten by TypeScript. The latter is the preferred "improved" compile-to-JS language now, and the efforts to push a Dart VM didn't get any traction outside Google, whereas WebAssembly looks like it will be the new VM standard. Doesn't leave much for Dart.

If this turns out like you say, it's interesting that both TypeScript and WebAssembly grew out of efforts to extend King JavaScript while not rocking the boat enough to scare away developers.

I think WASM rocks the boat quite a bit, in a good way.

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#55

You don't always have to jump to the hype train! Yes, you don't hear much about Dart here on HN, but the project is far from dead. The most important thing is that Dart works, it's stable and production ready and it's being used in production not only by Google but also by other companies. Dart is a very refreshing change for front-end development. No fatigue! Great tooling, nice language without surprises and option…

I've looked into Dart a few times and thought it looked interesting, but never really dug much into it. I've also really only heard of it being used in Google. Oh, and I remember hearing Notch was using it in a game jam a few years back.

I saw Flutter when it was first announced, and something that caught my eye back then was that it looked like it took some inspiration from React. I'm a big fan of React. Their home page [0] says: "Note: Flutter is an early-stage open-source project. We hope you try Flutter out and send us feedback." Would you say it's ready for production?

Could you provide other examples of use-cases for which you'd use Dart? Does it have good editor integration for autocompletion and linting? Is debugging painful? One of my favorite things about JS is Chrome Dev Tools.

I don't mean for this to come off as rude or negative, but I'd be interested in hearing a bit about where you consider the language or ecosystem falls short. I find discussing the downsides, limitations, and problems helps in understanding the tool and setting expectations. Nobody expects a magic wand solution, of course.

One of my pain points from working with a large SPA is architecting the application so it's easy to lazily views as needed. By itself it's not very difficult, but getting the whole build / development / test environment workflows setup is more challenging to get right. Does Dart have good tooling for generating builds? I use Webpack with the large JS SPA I work on, and one of its killer feature is that it'll crawl the dependency graph, copying assets to the output folder, and updating references. Unfortunately, the default behavior makes it most easy to generate a single large JS bundle.

[0] https://flutter.io/

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#56
Dev lead here for a tiny startup. I selected Dart for front and back end, sharing code between them. It has been a great experience and I don't have many complaints. One of the designer's goals was familiarity. I believe they definitely nailed that goal. We've had experienced devs contributing to the codebase in 3 days without ever seeing a line of Dart code before. And they absolutely love working with Dart. Here's some nice features to those who aren't familiar with the language:

- Class-based, object-oriented

- Static typing

- Generics

- Async/await that makes your asynchronous code look like synchronous code - (avoids callback hell)

- Generators

- Future-based, non-blocking APIs

- Positional, named, optional parameters with default values

- Arrow syntax for brevity

- Type inference

- Packages facilitate modularity

- Named constructors

- Functional programming features (map, fold, reduce, where, take, forEach, etc...)

- Cascade operator

- String interpolation

- Implicit interfaces

- Mixins (Code re-use without complex inheritance hiearchies)

- Reflection

- Streams

- Operator overloading

- Metadata annotations

- Concurrency through Isolates

- SIMD

- Call into JavaScript code and vice/versa

- Generate nice documentation with /// dart comments

- Built-in testing facilites - pub run test

- Open source

- Open standard

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#57

Earlier quoted context omitted.

I honestly thought the project was either dead or terminal. I tried to adopt it for a pet project 3 years ago and never followed through, and I haven't heard much about it since. Given that what I liked about it most was types and web components, which are pretty robust now with well established tools (Typescript and React), I wonder what's the real allure in Dart as opposed to those seemingly more popular options?

I believe it has a lot to do with internal Google politics. Back in 2004, Google hired Lars Bak and his team (who had previously created the HotSpot VM for Sun) to create the V8 JS engine for Chrome. Their work was a spectacular success. Overnight, JS became one of the fastest dynamic languages in existence, and this ushered in an arms-race for better JS performance across competing browsers. However, after a few yea…

Thanks for the retrospect. I always think Dart has lots of potentials. It could be a great general-purpose programming language, as versatile as perl/python/ruby while tens of times faster than them all. Unfortunately, the dart developers are too obsessed about web programming and reluctant to embrace the bigger world. It is really a pity.

PS: when dart came out, javascript was already blazingly fast (as a dynamic language) and largely usable. Dart is indeed better but not that better to revolutionize web programming. On the other hand, most general-purpose programming languages are very slow even nowadays. Pypy is faster than CPython, but not to the level of V8, dart, julia or luajit. A capable JIT compiled dynamic language may change how we program. Dart was the closest, but missed the target.

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#58

And yet, I very very rarely hear anyone talking about it? I assume it's pushed heavily internally at Google, but anecdotally it seems nigh-unused outside of Google. Am I totally off?

It's a really weird story. stupidcar's post basically describes the early history. It was always kind of an ugly stepchild with the Chrome management when I was at Google - had some incredibly talented engineers working on it, but little executive buy-in.

But then sometime while Chrome was ignoring it, some ads engineers (who are also incredibly talented) decided that Dart would be a core language in their new ads platform. Which meant that when the Chrome team decided to kill it, Ads piped up and said "No, you can't do that, it's a key part of our infrastructure, making $75B/year and paying all of your salaries." As a result, the whole Dart team was moved over to Ads, where they continue to improve the language & tooling so that Google can continue to make money.

Ironically, this probably means that Dart is right up there behind COBOL, C, C++, and Java in terms of the amount of money it makes for its users, and well ahead of more popular languages like Python, Ruby, Perl, PHP, Go, Rust, etc.

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#59

And yet, I very very rarely hear anyone talking about it? I assume it's pushed heavily internally at Google, but anecdotally it seems nigh-unused outside of Google. Am I totally off?

Side note. You may find flutter interesting.

https://flutter.io

Re: Dart in 2016: Fastest growing language at Google, 2nd fastest in TIOBE

#60

You don't always have to jump to the hype train! Yes, you don't hear much about Dart here on HN, but the project is far from dead. The most important thing is that Dart works, it's stable and production ready and it's being used in production not only by Google but also by other companies. Dart is a very refreshing change for front-end development. No fatigue! Great tooling, nice language without surprises and option…

I've looked into Dart a few times and thought it looked interesting, but never really dug much into it. I've also really only heard of it being used in Google. Oh, and I remember hearing Notch was using it in a game jam a few years back. I saw Flutter when it was first announced, and something that caught my eye back then was that it looked like it took some inspiration from React. I'm a big fan of React. Their home…

I haven't used Flutter yet, and I think it's probably not production ready yet, but I think it has a lot of potential.

Regarding editor support, it's been great from the very beginning. A few years ago, the Dart Editor was a pleasure to use and nothing else in frontend development was even close, this was before vscode existed. It had integrated debugger and code completion worked really well, it's a bit sad that they decided to discontinue the editor, but these days WebStorm has all the features and more. There are also Atom and vscode plugins but I haven't tried them.

Debugging experience I think it's one of the highlights of Dart tooling. The observatory tool is great and it not only helps with debugging but also with profiling. I seriously recommend it.

More good tooling in Dart includes the package manager which is very well designed and easy to use, and the code formatter which just does the right thing.

Where it falls short: JavaScript interoperation. There is some, but very limited. They are working on it, but it's not quite there yet.

Post reply on HN