6 ms·
Disclaimer: I work in the Flutter team, and by extension on the Dart team at Google. We all see the knee jerk reactions to Dart. Yet, most people who _actually
by filiph 9y ago
Disclaimer: I work in the Flutter team, and by extension on the Dart team at Google.
We all see the knee jerk reactions to Dart. Yet, most people who _actually_ try it tend to like it a lot. We've run actual studies and something like 98% of developers who haven't tried Dart have no strong opinion about it either way. (Which is not better nor worse than Java or TypeScript, which we benchmarked against.) We also run UX studies on Flutter API and tooling, and Dart is not an issue.
Dart is not an easy sell: it doesn't have a gimmick feature, it's just a well-balanced modern language. It was very fashionable to hate it a few years ago. But don't let the vocal minority distort your perception.
- tangue 9y agoDart is indeed a cool language but there was a huge resentment when the Dart VM was about to be shipped with Chrome and create a Google only web. It's a great burden for the language, I hope it could succeed without being put under our throats.
- coldtea 9y agoActually I would have been very glad if other vendors adopted the Dart VM, and we got a new fucking web language to eventually replace (or supplement) JS, instead of the pile of hacks we got.
- stefano 9y agoWe got WASM instead, which I'd argue is much better than support for a specific language, which would lock you in and prevent you from taking advantage of new programming language research.
- coldtea 9y agoAt the moment (and for the next 5 years I think) WASM is just a way to write code you'd write in C/C++. Not some support for other languages on a first class basis on the webpage just like Javascript (which direct access to the DOM and everything).
- pcwalton 9y agoDart had a lot of problems, most notably that GC between JS and Dart was never handled well, because the Dart VM and V8 used separate garbage collectors. Besides, I'd much rather have the effort go into one new VM (or VM "mode"), so we can solve the problem once and for all. That is, let's have Web Assembly.
- moocowtruck 9y agoI've tried it on multiple occasions for game making and it was a terrible waste of time, and I kicked myself each time I listened to posts like this thinking I should try it again. Having teams context switch to yet another syntax for basically another language with the same semantics is just not something people are excited to do.. and I think the same group of people google wants to easily appeal to with this language, are the same type of people who DON'T like switching languages often.
- matt2000 9y agoIt's probably not a great fit for making games, a lot of the benefits are in quickly generating and updating more standard UIs, not 100% custom drawing like games usually require (although you can do custom drawing of course). I would recommend checking out Unity if you're into making games.
- stefano 9y agoWhy did you choose to support a single language instead of following an approach similar to GTK, with a binding-friendly C API and wrappers around it for major languages (or even just for Dart, the community would have quickly provided the rest)?
- Hixie 9y agoBasically because a UI framework's usability is directly related to how idiomatic it feels. So if you write a UI framework in C for C, it will feel nicer than a UI framework in Python for C, or in C for Python. This directly translates into how productive developers can be using the framework, which is one of our top priorities. When we started, about 3 years ago now, we looked at many languages (dozens of them) and, objectively, Dart was the best fit for what we wanted to build. At the time, "we" was a few people from the Chrome team, and me (HTML spec editor at the time). We were all Web people, whose only impression of Dart was somewhat like negative comments in the thread here. When we studied each language, though, we found that impression was really not relevant to Dart as a language for mobile, and in fact it fared better in our comparisons than the other languages we looked at. I think it would make a lot of sense for people to create other projects very similar to Flutter where Skia is combined not with the Dart VM but with other languages, and for the Flutter framework to be ported -- in a language-idiomatic manner -- to those other languages. I can totally imagine, for instance, a TypeScript-based UI framework like Flutter, or a Kotlin-based UI framework like Flutter, or a Swift-based UI framework like Flutter. After all, in many ways, Flutter is just an evolution of previous UI frameworks like React, DOM/CSS, UIKit, and Android views. Let a thousand flowers bloom. One day I hope I can write my mobile apps in FreePascal using a reactive framework with a design evolved from Flutter. :-)
- eudora 9y agoDoes Google realise that the core of the resistance from the so-called vocal minority isn't about the language itself, but the (perception, at least) that Google was being too self-serving in its promotion and use? Obviously every company will be self-serving in its technology choices. But it seems to me that people got the feeling that Google was doing themselves a favour, more than doing everyone a favour.