8 ms·
I'm glad to see this here, I like Dart. HN in general doesn't seem to. IMO for cross platform development Dart is the way to go if you are wanting a single code
by account-5 4y ago
I'm glad to see this here, I like Dart. HN in general doesn't seem to. IMO for cross platform development Dart is the way to go if you are wanting a single code base and targeting desktop/mobile/web. Some of the things this language can do is amazing.
For quick scripts I still reach for python or Linux: bash, Windows: AHK. But if I'm developing an app I now reach for Dart/Flutter.
- cogman10 4y agoMy dislike for Dart comes from being an early adopter and getting burned by it. One of their headline libraries, angular dart, pushed out a broken release that stayed broken for nearly a year. Dart was revived with flutter and I'm glad it's doing better. However, I have trust issues with the way google runs their projects. I simply don't know if they'll continue to support Dart/Flutter or if they'll drop it next year for something shiny. I also don't appreciate the gaslighting that happened on the dart forums. There was a lot of "Oh, dart isn't dead, we are using it heavily and actively in google!" that happened when dart was very clearly abandoned by google. They pulled the exact same stunt with GWT before replacing it with J2CL.
- wstrange 4y agoI don't work for Google (no inside knowledge), but from what I can see, their use of Dart has if anything increased substantially. Dart/Flutter are highly unlikely to be abandoned.
- cogman10 4y agoSorry, I'm not trying to say that google isn't currently heavily using dart. Rather, that between Dart's initial release (released in 2013) and the release of flutter (released 2017) Dart was practically dead. That's the period that left a bad taste in my mouth. IDK who chose to use Dart for flutter, but by doing so they revived a basically dead language.
- flakiness 4y agoDart tried to be a Web language through Chrome, but it failed [1]. And I think it was a good call. It felt dead at that point because it was lost. Flutter feels more like a miracle that had no reason to succeed (at first). [1] https://techcrunch.com/2015/03/25/google-will-not-integrate-its-dart-programming-language-into-chrome/ https://techcrunch.com/2015/03/25/google-will-not-integrate-...
- vsmenon 4y ago[I lead Dart eng.] Sorry you had poor experiences. :-( That said, it was true that Dart was used heavily internally in that time frame. It was and still is, by Ads (ads.google.com) - that's a non-Flutter Dart app and still (to the best of my knowledge) the largest Dart app around. Before Flutter, we went through a period of primarily prioritizing internal customers. That work was often not visible externally. We did do the shift to Dart 2 in that time period though. That was a fairly massive change to the language that began independently of Flutter. It was a nice timing that Dart 2 shipped at the same time as Flutter 1.
- cogman10 4y ago> That work was often not visible externally. Let me be blunt, the work was never visible externally. What was visible externally is major language designers leaving the team (Lars Bak), Updates to the language slowing or stopping all together, the chrome team deciding to abandon dartvm in chrome, the angular team deciding to use typescript for angular 2.0, and Dart angular being abandoned (even as it was still being advertised on dart.dev!). What other conclusion was an outsider to draw other than "Ok, google must be done with dart"? What was the plan if flutter never happened? Would google ads continue to use dart? Like I said, happy that you and your team are now enjoying some nice popularity. I jumped on dart early because I thought it was overall a good idea and decent language. However, once bitten, twice shy.
- zach_garwood 4y agoThis is precisely my take, as well. I got burnt by Angular Dart and the Dart VM, so I'm extremely reluctant to try out Flutter. I've only got so much time on this earth and I don't want to keep investing it in Google's abandonware.
- hota_mazi 4y agoAs long as hardly anyone is using Dart outside of Google, it will remain a niche language. And based on Google's track record, Dart is at risk of being cancelled any day without any notice.
- scotty79 4y agoI skipped Dart nearly completely. Early on I just read about it and concluded that it's pretty much 1 to 1 clone of JS just without some weirder parts. Since then JS and TS got massive development so I'm not really even keen on looking at Dart again.
- chimen 4y agohow are you targetting the web with dart?
- satvikpendem 4y agoFlutter Web: https://flutter.dev/multi-platform/web https://flutter.dev/multi-platform/web You can also use AngularDart if you want but it's less common than Flutter Web in my experience.
- chimen 4y agoWho actually targets the web with Flutter? I wanna know. Flutter is a canvas app on the web. They barely figured out text copy/paste operations and it still looks and feels odd, Java like.
- satvikpendem 4y agoI do, for example. I'm building apps that require mobile versions as well, and I don't want to build the same app three times, or even twice. Yes, React Native exists, but there's not as much codesharing between React web and RN as one would expect. Yes, React Native Web exists, but the whole experience is that of using a patchwork of open source libraries, some not as well maintained as others, to get the same experience as Flutter gives, first class. Flutter on the other hand, for all three targets, it Just Works™.
- orangecat 4y agoYeah, I find Dart to be very underrated. It's straightforward and not overly clever while still having decent expressiveness, and the typing and inference work great. Even outside of Flutter I think it has a lot of potential.
- brundolf 4y agoDoes it simplify the build/ship process compared with React Native? The latter has a good coding experience (and real native UIs), but the housekeeping is a lot to keep up with. But at least some of that is intrinsic to the mobile platforms themselves
- satvikpendem 4y agoYes absolutely. In fact I switched to Flutter precisely because React Native was so broken. Every time I upgraded, some package broke. Expo is alright but as soon as you try to do something outside of it, it sucked. Packages didn't break on Flutter, releases are quite stable and preserve backward compatibility, at least generally.
- mhoad 4y agoIt's a substantial upgrade on pretty much every reasonable metric I can think of compared to RN.
- CharlesW 4y ago> IMO for cross platform development Dart is the way to go if you are wanting a single code base and targeting desktop/mobile/web. I can't understand how this can be true when JavaScript/TypeScript exists, but I'm open to religious conversion. Can you share details of the desktop/mobile/web app(s) you've created with Dart? Another mental block for me is the association with Flutter, since every Flutter app I've tried (iOS and web) feels uncomfortably strange.
- account-5 4y agoDisclaimer: I'm not a developer and could only ever be considered a novice programmer. A family member was after a bespoke app that would do some calculations for him on site and include pictures and customer details. They wanted it to work on mobile and desktop. At this point I thought a web or hybrid app would be the way to go. One code base multiple platforms. Cue a month of trying to work out what to use out of an uncountable number of frameworks. I can't overstate the level of confusion involved it this for a novice like myself! I've created a few simple desktop programs before but nothing on mobile or the web. Where do you start with the current state of things on the web? I still don't know. What I did know was I didn't want to waste time learning a framework that wasn't going to be around, or had just appeared. At this point I heard of Dart and Flutter which worked across all the platforms I was interested. Not only the it was JIT or AOT when needed, with hot reload. As for the app, I don't have a GitHub, it's so bespoke to its usecase I don't think anyone would be interested. But also I'd be very embarrassed to release the code. I dread to think how bad it would look to real programmers/developers!
- scotty79 4y agoDon't be so hard on yourself. Nearly all of just just wing it even if we sometimes claim otherwise. Congrats on overcoming hurdles and delivering a product. Not all professional developers always achieve that.
- deleted 4y ago[deleted]
- coldpie 4y agoThank you for the positive comments. Dart wasn't on my radar (I don't do a ton of UI dev) but I'll give it a look next time I want to play around with something UI-ish.
- zerr 4y agoI wish Dart/Flutter had an option for a more convenient - imperative GUI.
- cbracken 4y agoIf you take a look at how Flutter is implemented, you'll see that at the bottommost layer (dart:ui), it is imperative. On top of that, we built the rendering/painting layers (pretty imperative) and then the widgets layer (reactive). Each of these layers is public API and follows the same breaking change process as any other part of Flutter's public API, so with a bit of effort an alternative imperative framework could conceivably be built built on top of what's there. The downside is that since the widgets layer is reactive, you'd be giving up all those shiny widgets that are part of the SDK and need to build your own (or find a way to wrap what's in the SDK). This (old, but still accurate) talk by hixie covers the layers in detail: https://www.youtube.com/watch?v=dkyY9WCGMi0 https://www.youtube.com/watch?v=dkyY9WCGMi0 TL;DR it's entirely possible to create an imperative framework on top of Flutter's lower layers, re-using a lot of our existing code, but (as far as I know) such a thing doesn't exist today.