Flutter is a project from Google that is rebuilding user interface engineering from the ground up.
Today, most engineering teams have dedicated engineering resources for web, iOS, and Android. These different platforms have their own design constraints, their own toolset, and their own programming languages. But each platform is merely building a user interface. Why should development across these three user surfaces be so different?
This was the question that Eric Seidel was asking himself three years ago, when he co-founded the Flutter project. The Flutter project had a few rough starts, as the team tried to figure out exactly what layer of abstraction they were trying to provide.
Around that time, ReactJS and React Native were growing in popularity. Seeing the React projects provided some data points, and some inspiration. But Flutter takes a lower level approach to cross platform app development, by presenting a rendering layer and a runtime API that are interfacing with the hardware in the same way that OpenGL does.
In today’s episode, Eric joins the show to explain how the Flutter project came to life, and his lessons from starting an ambitious project that took several years to pick up steam. I enjoyed this episode because Flutter could have massive improvements for how quickly we can build apps–and also because Eric is a serious engineer and there are so many insights in this episode about computer science, software engineering, and project management.
Transcript provided by We Edit Podcasts. Software Engineering Daily listeners can go to weeditpodcasts.com/sed to get 20% off the first two months of audio editing and transcription services. Thanks to We Edit Podcasts for partnering with SE Daily. Please click here to view this show’s transcript.
Raygun provides full stack error, crash, and performance monitoring for tech teams. Head over to softwareengineeringdaily.com/raygun, get up and running within minutes, and dramatically improve the online experiences of your users.
ActiveState gives your engineers a way to bake security right in your languages’ runtime. You identify security vulnerabilities, out-of-date packages and restrictive licenses (e.g. GPL, LPGL). Get more info at activestate.com/sedaily
Rookout Rapid Production Debugging allows developers to track down issues in production without any additional coding, re-deployment or restarting the app. Rookout is modern debugging. Go to rookout.com/sedaily to start a free trial and see how much debugging time you can save.