6 ms·
I think Flutter is better _because_ it uses Dart. I used to hate that decision ("Not another language to learn.."), but Flutter and Dart are like Mac and macOS
by wiradikusuma 5y ago
I think Flutter is better _because_ it uses Dart. I used to hate that decision ("Not another language to learn.."), but Flutter and Dart are like Mac and macOS (I'm aware people complaining about macOS quality going down the hill.. but that's another story). They're both from the same company, seemingly built for each other, and the language (Dart) improvements are _relevant_ for the platform (Flutter).
Flutter still has its quirks, but hands down, it's the best platform for the majority of "standard" apps. Great developer experience, acceptable performance and size.
Also, about hiring.. from my experience, it's one of my selling points in recruiting mobile developers. Many mobile developers want to learn Flutter, so I easily get dozens of candidates who know Flutter only from their hobby projects but want to get involved in real projects. But, of course, you still need some senior Flutter guy.
My only complaint is since the platform is expanding, things break too easily. You _can_ lock dependencies, but you'll feel guilty.
- edwnj 5y agoI went through the exact same experience. Choosing dart felt like silly to me but after a using flutter for years now it makes 100% sense. The way both flutter and dart adapts for each others needs is super cool.
- amelius 5y agoAs someone who started programming using GCC, Vi and commandline tools, I just hate the tooling around Flutter. And yes, someone will probably point out that I can use Flutter with commandline tools after I disable all the bloatware that needs to be installed anyway, but that's missing the point.
- brabel 5y ago> but that's missing the point. How is pointing out that you don't need the tools you hate and you can use the same kind of tools in the CLI as you would with any other framework missing the point?
- tlamponi 5y agoYou only need dart and flutter itself, and both of those can used via CLI just fine, I know because when I develop flutter I exclusively use my classic tmux+vim setup to do so. If I want to create an android build I naturally also need the android SDK, but that is even packaged for Debian or Arch Linux, and even if I use the newest one directly from Google its just a one time setup, and that is completely unrelated to flutter (which I can test via the native or web build too) but 100% related with the build target (android in this case), so really not seeing your point.
- saurik 5y agoI don't understand: I am using Flutter just fine from vim and I have never even tried their IDEs. What do you mean by "disable"? What "bloatware" were you forced to install in the first place, and how is it running?
- BoorishBears 5y agoDart as a language is so far behind I refuse to use Flutter (and I did try it for a bit) It's like going from Kotlin to Java, or Swift to ObjC, or Typescript to Js. Tooling stinks, language features are missing, ergonomics are bad.
- pjmlp 5y agoOn the other hand, it is like using Flutter, JVM, iOS/macOS, Web browser without additional tooling, IDE plugins, FFI debugging issues or having to add layers of idiomatic libraries.
- klodolph 5y agoDart is also surprisingly nice, in a lot of ways. I don't want to get down too much into the details because much of language design is subjective. I found it very easy to work with because it has a lot of the edges sanded off, relative to JavaScript. The developer experience is pretty good.
- asdfasgasdgasdg 5y agoOne of the things that always surprises me about Dart is that Google continued to invest in it for so long without any real returns until fairly recently. Dart came out in 2012 and to my knowledge had basically no usage for several years. Flutter came out in 2017, and then it took a decent amount of time to start picking up steam. Very uncharacteristic of Google to invest in something like Dart for 7+ years before it really started seeing any returns on the investment.
- klodolph 5y agoThere are various theories along the lines of "principal engineer retention strategy", where part of the reason for these projects (and I have to emphasize "part" in "part of the reason") is because they are the pet projects of some particular individual at Google who can deliver tons of value to the company other ways, and who might leave if they don't get to work on their pet projects. I have definitely heard stories of people at companies like Google and Facebook who have done things in their career that saved or made the company enormous amounts of money in one fell swoop, people who can help get massive projects back on track or solve thorny resource usage problems. The theory is that if they've done it a couple times in the past, you do what it takes to keep them around because they'll probably do it again in the future. These people generally get positions crafted for them, and sometimes teams.
- dustymcp 5y agoI think it was used internally with Google and probably why they kept it going?
- Hixie 5y agoIt was (and still is) heavily used by Google Ads internally. Dart literally powers the vast majority of Google's income, and has for years.
- Superblazer 5y agoI cannot use dart again after trying out Kotlin. Dart is just not good.
- mrtksn 5y ago>Flutter still has its quirks, but hands down, it's the best platform for the majority of "standard" apps How is the market for "standard" apps doing? One would think that by now "UI for a Database/API" should have died out already? Even if companies do need an UI for a DB or an API, that job must have had become really simple with all the frameworks and libraries. On Twitter I keep seeing people building the millionth water tracking app, so I guess there's still market for everything but I feel like "Coding regular UI with a login form and stuff" kind of jobs must be vanishing, aren't they? Surely design tools must be able to extract functioning UI's or a bit of coding know how should be able to enable anyone put together a decent UI using components libraries?
- spaetzleesser 5y ago"How is the market for "standard" apps doing? One would think that by now "UI for a Database/API" should have died out already? Even if companies do need an UI for a DB or an API, that job must have had become really simple with all the frameworks and libraries." From my casual observation the learning curve for "UI for a Database/API" is becoming steeper every year. Such software reached its high point with VB6 or MS Access but since then simple tools have been dying and replaced with ever more complex frameworks. You still can't easily develop a web app that's as powerful and simple as you could do on the desktop with VB6 or MS Access.
- doo_daa 5y agoI completely agree. It's amazing to me that MS Access is still probably the best rapid application development tool ever made. There's just nothing like it that works for the web.
- BoorishBears 5y agoThe basic UI is the easy part. Established companies have established company problems, complex flows that need to account for things like legacy deep links, A/B testing, UIs that go off the beaten path for brand identity, etc. It all adds up to very little of a common denominator for all of these apps. I've worked on some of the top apps in the play store for their respective categories, and if you saw their codebases your first thought would be "I could recreate this app in 1/10th this much code!". After actually talking to all the stakeholders involved your second thought would be "I'm amazed this didn't take 10x the code!"
- pictur 5y agoI wish dart could replace javascript in browsers. that would be really nice
- pjmlp 5y agoIf JavaScript ever gets replaced, that will be by embracing TypeScript's gradual typing.
- hajile 5y agoMy big issue with dart is how it has closures and first-class objects, but still insists that objects everywhere is the answer to life.
- spicybright 5y agoIs doing controlled dependency upgrades that big of a burden? Or only upgrading via minor version numbers?