8 ms·
Flutter Release Preview 2
- hayksaakian 8y agoAre there any apps in the wild that I can install which use flutter? I'm curious to know how it feels from a user perspective. Stats and benchmarks are neat but I'd really want to try it firsthand to know that it's "Fast".
- rochacon 8y agoYou may find some here: https://flutter.io/showcase/ https://flutter.io/showcase/
- rohan1024 8y agoIn addition to flutter's own showcase you can also view flutter apps at https://itsallwidgets.com/ https://itsallwidgets.com/
- MarkMc 8y agoI've found that if you are using an older phone then you will certainly notice that Flutter is not as smooth as a native app. However, I know the Flutter team have made a lot of progress with performance so it may not be so bad. Three largish apps you can try are: 1. The Alibaba app: Alibaba app for Android → http://bit.ly/2NQJcMX http://bit.ly/2NQJcMX Alibaba app for iOS → https://apple.co/2NjVGxf https://apple.co/2NjVGxf 2. The Hamilton (musical) app - search Hamilton on Play Strore or App Store 3. The inKino movie database app. The source code is available here: https://github.com/roughike/inKino https://github.com/roughike/inKino
- timsneath 8y agoHere's a great demo if you want to see pure speed: https://medium.com/2dimensions/showcasing-the-power-of-flutter-using-2dimensions-animation-tools-c87f0a89723a https://medium.com/2dimensions/showcasing-the-power-of-flutt... Another new example of Flutter in action is Reflectly, which was recently featured on the Apple appstore: https://medium.com/reflectly-engineering/reflectly-from-react-native-to-flutter-2e3dffced2ea https://medium.com/reflectly-engineering/reflectly-from-reac....
- joobus 8y agoHow confident can anyone be basing a core product on flutter given Google's history of abandonment?
- awestroke 8y agoRest assured this project too will be abandoned eventually.
- megaman821 8y agoI am especially nervous about Flutter since they don't even have to abandon it. If they don't keep pace with new OS releases, there is no great way to recoup your investment in Flutter. You are just stuck without an outdated looking app or forced to do a full rewrite in the native frameworks.
- samstave 8y ago"technical-horizon debt"?
- ozyx 8y agoKeep in mind that Flutter is an open-source project with an active community. There's nothing particularly special about the built-in widgets that the Flutter framework provides; other developers can make and publish their own widgets easily enough if the built-in widgets are insufficient.
- pier25 8y agoGoogle has abandoned products, but has it abandoned technologies?
- stickfigure 8y agoWas Wave a product or a technology? Both, I guess. That said, Wave doesn't seem comparable. Maybe GWT? If so, I'd be perfectly happy if Flutter has the lifespan of GWT, which is some 12 years old now and still viable (if perhaps a little crusty). 12 years is a phenomenal run for a piece of frontend tech.
- tananaev 8y agoAre those SO popularity comparison numbers real? If they are, I feel they were somehow artificially inflated. I have nothing against Flutter, but I don't think at this point it's as widely used as Xamarin and React Native. For Angular numbers should be even higher.
- pier25 8y agoNo idea. Where did they get those? Flutter doesn't appear in SO Trends https://insights.stackoverflow.com/trends https://insights.stackoverflow.com/trends
- MarkMc 8y agoI don't know where they got those numbers. This graph seems more realistic to me [edit: maybe not - see subcomments]: http://sotagtrends.com/?tags=[ionic-framework,react-native,flutter,xamarin]&relative=true http://sotagtrends.com/?tags=[ionic-framework,react-native,f... That is, Flutter is shooting up and overtaking Xamarin but still only half the popularity of React Native. This also roughly correlates with mentions on Google Trends: https://g.co/trends/y9Z8q https://g.co/trends/y9Z8q On job websites React Native is way ahead - which you would expect given React Native's headstart. For example, www.jobstreet.co.id currently has 43 jobs for "React Native" but only 5 for "Flutter".
- timsneath 8y agoHi there, the source for these numbers is the StackOverflow API. Just to clarify, the chart we have in the blog is showing question _views_, not questions tagged. There are more questions for other frameworks still (since they're more mature technologies), but we're seeing lots of views of questions tagged with Flutter.
- MarkMc 8y agoThanks for the clarification. Using 'number of views' would seem to be a valid metric, so now I'm not so sure about which graph is more realistic.
- 8y ago
- threeseed 8y agoI spent quite a few months comparing this with React Native. Flutter has done cross-platform right. And it's somewhat sad and counter-intuitive but pretending to be native is a lot better than actually being native. iOS and Android are just too dissimilar in areas to provide a common layer on top of. In particular routing which is a mess with React Native. Flutter also has the best development experience period. Nothing comes close. Compilation is fast. The reload cycle is instant. The tooling is excellent. It is really polished. I just wish it had not come from Google because you always get that niggling feeling like it's going to abandoned. Which would be a real shame.
- timsneath 8y agoThanks for the kind comments! I'm one of the product managers on the Flutter team, so you're welcome to apply suitable skepticism to anything I might say in response to your last point, but I will say that Flutter is already being used in many strategic projects here at Google, as well as for many customer apps, some of which already have tens of millions of users. For example, Alibaba are using it to build one of their big apps: https://www.youtube.com/watch?v=jtYk3gWRSw0 https://www.youtube.com/watch?v=jtYk3gWRSw0 I don't know if this is helpful in assuaging your concerns?
- RobertRoberts 8y agoI think you are attempting to present a solution to a problem you can't possibly help with. No individual at Google can assuage any concerns caused by the corporation as a whole. (maybe the CEO could?)
- Bendingo 8y agoAssuage =/= Eliminate GP has certainly assuaged[1] (although not eliminated) my concerns. [1] assuage, verb, make (an unpleasant feeling) less intense.
- RobertRoberts 8y ago
- jimmcslim 8y agoWait, Dart is still a thing? Can I write Flutter apps in any other language? I've had a look at a few pages to understand which language Flutter uses, but it hasn't mentioned Dart yet (apart from the .dart extension in the Getting Started example). Sorry, yes it does - 'Dart language and core libs'.
- mike22223333 8y agoDo not use it for any serious project. It is Google, they will probably abandon it. Google has ADHD.
- monkmartinez 8y agoI am moving away from Google as fast as I can in most areas. Every time I bird-dog one of their products I am ultimately let down. There is no way I can trust anything they build at this point. I wish it were different as they have some really good ideas, they are just the worst when it comes to follow through for the long haul.
- CraftThatBlock 8y agoGoogle products and Google technologies are historically managed very differently, especially if the tech is open source.
- rohan1024 8y agoAre you frustrated with the way Android apps are developed? Tired of amount of time to get simple list working? Writing lot of boiler plate code only to update list from a dialog box? Ever got scared of implementing a navigation drawer or a fragment? Did you left Android development because the time and code to implement it was way greater than expected? Tired of handling life cycles? Sorry for being dramatic but if you answered yes to any of those give a try to Flutter! You will be surprised of how fast you can develop an app for mobile with descent UI. Thank me later!
- pjmlp 8y agoI rather use Qt and Xamarin for that purpose. More mature, may target desktop OSes and use languages that are actually relevant in the market during the last 20 years.
- danbalthasar 8y agoFlutter's edge over these technologies is faster development cycles (very fast build times, sub-second reloading without losing state, very rapid ability to update code/GUI after deployment to a testing device, and very fast render times). Xamarin and Qt are fine products, and I know Xamarin has been working on some improvements over deploy times, but it still can't touch what Flutter does there. And if you know C++ and C# already, Dart is a breeze.
- pjmlp 8y agoA programming language is more than just semantics, Dart eco-system is a tiny dot when compared against C++ and C#. Flutter deployment times aren't worthwhile enough to bother with a language with uncertain future.
- Apocryphon 8y agoDoesn't Dart interop with JavaScript libraries?
- nevi-me 8y agoEDIT: formatting Almost everyone here talks about abandonment. It's become a sad Google reality, but I'd hazard that some people are posting from Google Chrome, which would defeat the point about worrying. I use Flutter, I've released an app that's been in prod for about 5 months now. Flutter runs on Dart, which is a Google-bred language. From my little knowledge, most/some of the people working on Dart are the team in Aarhus that work(ed) on V8. Our Vyacheslav Egorov (mraleph) being first that comes to mind. Is Google going to abandon Flutter, what about Dart? Should I not learn Go because they'll also abandon it? Heck, should I not develop for Android because they'll abandon it too? The fearmongering is a bit excessive. I'd think Google has a better track record with software platforms. I separate Google into: - Products - come for free, can be abandoned any time - APIs - come for free, don't build your business around them in case MapsGate price surges come your way. Or, if you rely on them out of being "free", always have contingency plans to switch. After all, if they build a market then destroy it, it's a good space for smaller players to join in. - Software & Platform Tools - feels safer, unless very experimental. ___ Flutter allowed me to do in a few days what Java/Kotlin was taking me weeks. Why? It makes developing UIs much easier. As one can see from the RP2 announcement, background execution looks hairy, app size is improved but the build process still lacks what native has (e.g. updates to an app result in user downloading whole apk). Will I have to rewrite my app again when Flutter is abandoned? Sure, but it won't be an overnight rewrite. I'll probably be able to get away with a 1-2 year window (if I need one) before the last supported Google Play Services becomes obsolete. For me, I'm willing to take that upfront benefit. Yes, downside's learning yet another new language. I learnt Dart, and it was about 80% similar to the langs that I already know.
- strken 8y agoThe migration from Chrome to Firefox takes between 30 seconds and 30 minutes, depending on how much stuff you choose to move over, and has nothing to do with migrating code between two platforms. It's not a fair comparison unless you're talking about developing browser extensions, and even then the API is very close to being cross-platform[0]. I don't think most people are making a principled stand against the use of Google products, they're just instinctively performing a risk analysis. [0] https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Porting_a_Google_Chrome_extension https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Web...
- Janeman544 8y agoNewbie question : Why did Google do their Dev Days in Shangai instead of bay area ? Is it that Dev Days is not really an important event ?
- Apocryphon 8y agoGoogle is making a smart move by showcasing Flutter's capability to make iOS apps. Cross-platform SDKs have a tendency of favoring one (iOS with React Native) or neither. By showing that devs can easily make quality apps on iOS, they show the promise of Flutter.
- MarkMc 8y agoI first started developing with Flutter about a year ago. One thing that has really impressed me is how responsive the Flutter team is to developers. Often when I posted a question on Stack Overflow it would be answered perfectly within 24 hours by a member of the Flutter team. Contrast this with React Native where Facebook's attitude seems to be to develop what they need themselves then 'throw it over the wall' to for others to improve. The Flutter team is like a dog that really wants you to be happy. The React Native team is like a cat that doesn't really care about you as long as she gets fed.
- devxpy 8y agoDamn right.
- komuW 8y agoThis has also been my experience thus far. The devs in the dart[1] and flutter[2] gitter chatrooms are even faster at responding to questions, in my experience. 1. https://gitter.im/dart-lang/home https://gitter.im/dart-lang/home 2. https://gitter.im/flutter/flutter https://gitter.im/flutter/flutter
- RobertRoberts 8y agoIt's really sad how Google can possibly (I won't bother wasting my time to find out) make something really truly awesome, and it just doesn't matter at all. Their brand has a stink to it that won't wear off any time soon, if ever. They chose an evil path of manipulating users into giving up privacy. Talking out both sides of their mouth with politics and freedom of speech and other things. Creating and dumping tech like hot potatoes. Attempts at mass manipulation of the internet (AMP, messing with the location bar). The list goes on... Google is schizophrenic, and I don't know if they can come back from this in the long term. I won't even bother looking at any of their tech anymore, there are plenty of great alternatives to every service they offer without all the Google baggage.
- jrs95 8y agoThere really isn't an alternative for what Flutter does, which is high quality cross platform apps that don't require separate UI code. Xamarin has Forms, but the UX is not nearly at the level of what you get from Flutter, and it would require some serious rework of how they render their widgets for that to change. Other solutions like Qt are just lagging behind, as much as I wish that weren't the case. Ultimately I think Google has the ability to make Flutter the primary platform for developing mobile apps in the future, if they emphasize it as the preferred way of making new Android apps and especially if they make it relatively easy to integrate Flutter into existing native apps. If it were possible to easily drop one screen into an iOS and Android app with Flutter, this would start getting immediate adoption because of how much time and money it can save. Ultimately that matters a lot more than "Google baggage" that only a small fraction of developers really care about.
- RobertRoberts 8y agoAt one point there wasn't an alternative to Angular either, look what we have now. Not only that, there's still native. Which means anyone can easily hold out that is on the fence for who knows what comes in the future. Principles matter at some level, which is why many businesses abandoned Godaddy a few years back. But also there's simple budget considerations. Google has cost us tons of money over the years adjusting to their services. Now we don't have to anymore, and it's a relief. If I am forced to spend money I'd rather spend it on something competition than to bolstering a belligerent monopoly and also support a system that will still be around, or at the very least, give two craps about our situation. Maybe you are too young to remember the bad old days with Microsoft was the mean kid on the block. Google is getting worse than Microsoft ever was. And that is really bad. (edit:React confusion)
- crudbug 8y agoI was looking at this last week. The lack of native <XML> tree representation, similar to JSX would make this ideal.
- stewbrew 8y agoWhy do they want me to learn a new language to make use of a gui runtime+lib? Seriously. What makes that language that revolutionary so that nothing else, no other tried & tested & loathed language, could have been used instead? I don't see it.
- spiritcat 8y agoEven if the design choice made sense for [reasons], this is imo the biggest thing holding it back.
- Apocryphon 8y agoHaving to learn a new programming language is hardly a rare experience in mobile development.
- spiritcat 8y agoBut when else are you ever going to use dart?
- Apocryphon 8y agoYou can say the same thing about Objective-C. Without Kotlin Native, there hasn't been any non-Android use cases for the language yet. Even Swift's web and ML applications haven't gotten huge traction either.
- isoos 8y agoAcross several industries and in different companies, my experience was that learning Dart was measured in hours and not weeks. One company started to train their HR employees to code in Dart (being their first programming language that they learn) in order to streamline the interviewing process of developers. If you have seen C#, Kotlin, TypeScript or Java code and understand it, you will understand Dart and will be able to use the language soon enough.
- 8y ago
- malkia 8y agoThere is also an effort to bring flutter on the desktop. I dabbled (briefly) in it, got flutter app running on windows + linux, though certain integration factors (smooth window resizing, stability, mouse wheel support, etc.) were not there yet. For some of them (mouse wheel, keyboard, tabbing) there might be more work needed (and maybe not seen as important), but it could bring a real "electron" killer, where my slack, teams or whatever else "electron" app does not spawn 5 processes, and take GB of memory (granted, flutter still takes a lot, compared to leaner Qt, and much much leaner write directly using Win32), but then there are some sensible limits, and going below these (for the sake of perfection) doesn't buy you much nowadays (I no longer have to run QuarterDeck QEMM to shuffle my 640kb DOS+EMS memory efficiently around :))
- eseidelGoogle 8y ago(Disclosure: I'm the Eng. Mgr for the Flutter project at Google.) I've seen Flutter run in lots of places, including desktops. Desktop isn't something my team is actively developing at this time (we're very focused on making mobile awesome), but we're definitely not stopping others from doing so. There is even another team at Google experimenting with the idea: https://github.com/google/flutter-desktop-embedding https://github.com/google/flutter-desktop-embedding
- malkia 8y agoThank you so much for the work on the language/platform. I used to work for Google (LAX), and our team was using GWT, hopefully they have transitioned to Dart + Angular (by now). I fell in love with Flutter right away, but it was in no way connected to what I did back there.
- MarkMc 8y agoI'm working on a project to get Flutter running on Mac and Windows: https://feather-apps.com https://feather-apps.com There's also this project which uses Go to run Flutter on Windows and Linux: https://github.com/Drakirus/go-flutter-desktop-embedder https://github.com/Drakirus/go-flutter-desktop-embedder Is your Windows implementation publicly available? I'd be curious to check it out.
- saagarjha 8y agoIs Flutter using native controls here, or are they drawing a copy of them by hand? I didn’t see a scroll bar in that demo, so I’m not sure. The rest of the stuff looked pretty good, though of course I’d need to actually physically try it to give it a final opinion rather than just rely on a GIF of someone interacting with it.
- danbalthasar 8y agoFlutter takes full control of the rendering pipeline directly on both platforms - all the controls your seeing are written in Dart for Flutter, but designed to mimic the best of what the platform offers. In particular, this means that if you're running an Android app on an older device, it can still show the latest Material design widgets (and similarly for iOS, showing the latest Cupertino styled widgets, or Material).
- saagarjha 8y ago> Flutter takes full control of the rendering pipeline directly on both platforms - all the controls your seeing are written in Dart for Flutter, but designed to mimic the best of what the platform offers. You see, this is rarely what I want. I’ve seen time and time again people trying to emulate controls and it just doesn’t work. Apple has a whole team that’s spent years making the iOS UI look just the way it is, and I don’t trust any other team to be able to copy this without serious effort. Sure, it might look pretty similar, but something always doesn’t work: the control behaves differently, isn’t accessible, animates incorrectly, etc.
- Hixie 8y ago(Flutter TL here) I encourage you to compare our iOS ("cupertino") widgets with the UiKit ones. We've still got many to implement, but I think we have the fidelity pretty high for the ones we've implemented. If you disagree please do file bugs, we care very much about fidelity.
- saagarjha 8y ago
- FlyingSnake 8y agoFlutter might be a cool project, but what's the status of integrating native controls? Mobile apps are not only CRUD clients and do lots of stuff that needs tight OS integration. The last time I checked, flutter couldn't do Maps, GeoLocations, AR (ArKit/ARCore), Encryption, audio/video, file storage etc activities that are outside the normal purview of a CRUD TableView App. Since flutter team seems to be active here, could anyone from the team shed light on these aspects?
- danbalthasar 8y agoFirst party maps support has recently landed, as well as WebView. Geolocation plugins have been available for quite sometime now, as have encryption and file storage.
- eseidelGoogle 8y ago(Disclosure: I'm the Eng. Mgr for the Flutter project at Google.) In general Flutter takes the position that Flutter should not limit your choices and your apps should be able to do anything the phone can do. Flutter apps are just iOS or Android apps, you can always open up the ios or android sub-folders and write as much Obj-C/Swift or Java/Kotlin code as you like. Flutter's core engine/framework are all about providing portable UI, and leave everything else up to "plugins" (the opposite of say the Web were everything is baked into the core platform). Lots of plugins exist today, but there are always more to write: https://pub.dartlang.org/flutter https://pub.dartlang.org/flutter https://flutter.io/developing-packages/ https://flutter.io/developing-packages/ https://flutter.io/using-packages/ https://flutter.io/using-packages/ Responses to your specific asks: Showing arbitrary native views inline with other Flutter content is actively in progress: https://github.com/flutter/flutter/issues/19030 https://github.com/flutter/flutter/issues/19030 (already possible to show views to the side of/on-top-of a FlutterView of course). Full inline Google Maps is similarly in progress: https://github.com/flutter/flutter/issues/73 https://github.com/flutter/flutter/issues/73 There are several community authored plugins for geolocation e.g. https://pub.dartlang.org/packages/geolocator https://pub.dartlang.org/packages/geolocator. AR is not something I've seen any work on yet, but it's always possible to throw up a full-screen ARKit/ARCore view using ObjC/Java your otherwise-Flutter-built app. Flutter includes BoringSSL as part of it's runtime, some encryption APIs are exposed, there is probably more for us to do here. There is also pure-Dart crypto, e.g. https://pub.dartlang.org/packages/crypto https://pub.dartlang.org/packages/crypto and of course always possible to write your own wrappers around iOS/Android APIs (which someone may already have done too). Audio/Video plugins exist today, e.g. https://pub.dartlang.org/packages/video_player https://pub.dartlang.org/packages/video_player Some storage plugins exist (e.g. https://pub.dartlang.org/packages/sqflite https://pub.dartlang.org/packages/sqflite), definitely more to write here. Always more to do. If there is something specific you believe my team should help provide, please let us know: flutter.io/support. Hope that helps!
- hillelcoren 8y agoAnother big fan of Flutter here... We're using it to replace our native iOS and Android apps enabling us to have a single code base. This is critical for a team as small as ours (2 devs covering web and mobile). I can't sing its praises strongly enough, you can check out the code for our app here: https://github.com/invoiceninja/flutter-mobile/ https://github.com/invoiceninja/flutter-mobile/ Edit: grammar is hard
- raydev 8y agoLooking at the new Cupertino stuff.... since Google is reimplementing all iOS animations for navigation, bounce, etc., is that not infringing on Apple's patents?
- HappySweeney 8y agoAny word on the testing situation? Currently, my inaugural app has a bunch of tests which won't run as a) you can't use plugins in unit tests, and b) integration tests (via flutter drive) won't work with platform channels, as it has a dependency on dart:ui.
- Rubytron 8y agoNevercode is proud to join Flutter revolution! The day Flutter announces Release Preview 2 Nevercode CI/CD supports Flutter apps out-of-the-box. Building beautiful iOS & Android apps using a single code base just got better! Check our doc: https://developer.nevercode.io/docs/building-flutter-apps https://developer.nevercode.io/docs/building-flutter-apps