About web, community, and code samples — Q3 2021 survey results
The Flutter UX team’s quarterly survey report is back! This was our 14th quarterly survey, and it ran for a week in August, announcing it through various channels like IDE pop-ups, Twitter announcements, and on flutter.dev. We received responses from over 8,000 of you, learning a lot about your needs, as always.
If you want to know how the team analyzes the data, check out this video.
This quarter, we found that 92% of respondents are positively satisfied with Flutter (39% somewhat satisfied + 53% very satisfied). This value has been consistent over the last 4 quarters, while the number of Flutter developers continues to grow. We still want to hear your thoughts on various parts of Flutter, so we asked about the following three themes in this quarter’s survey:
- Developer community
- Web support
- Code samples in the source code files.
Read on to know more about what we learned from the survey and what we’re planning to do.
Flutter is proud to be an open source project. The Flutter team at Google heavily invests in community programs to create a welcoming and inclusive developer community and to make Flutter developers successful. Because it’s important to understand where we need to invest more and do better, we asked respondents how much they agree with various statements regarding Flutter’s developer community. By “developer community” we are including social network groups, Q&A forums, chatrooms, meetups, and so on.
Forty-nine percent of all developers said they participate in some form of online or offline community. We found that most developers feel welcome in the community (86%) and feel safe asking questions (86%).
We are thankful to you, our developer community, for creating a safe and supportive space. Flutter is meant to be fun, and having the psychological safety to try new things, make mistakes, and surprise yourself with what you can build is a big part of having fun. We identified some areas where the Flutter team can work to have an impact, such as getting more questions answered, and providing better exposure for leaders in the community. We will work closely with the community to improve both.
The Flutter team announced that web support is stable earlier this year. Now, after 6 months, about 13% of all
flutter run commands and 11% of all
flutter build commands target the web. So, we wanted to understand how your perception around web support changed after the stable release. Similar survey questions were asked in Q3 2020, so we were able to compare some of the data points.
First, we found that 38% of developers worked on a Flutter web app in the month prior to the survey. Additionally, 52% of total developers have worked on a Flutter web app within the last 6 months (since the release of the stable version). The questions in this section were asked to the developers in this group only.
A total of 63% of the developers were positively satisfied with Flutter’s ability to develop production-quality web apps (23% very satisfied). When we specifically asked about the performance of Flutter apps on the web, 67% of the developers were positively satisfied (23% very satisfied). While this is lower than the overall satisfaction, we were pleased to see that the satisfaction with web performance increased from 59% in Q3 2020.
To understand where our opportunities are, we asked which performance issues developers have run into. Unsurprisingly, initial page load speed was the most commonly experienced performance issue (48%), followed by scrolling (32%). For page load, we are looking into decreasing Canvas Kit download size and providing an API for splash screens. For scrolling, we are working on numerous behavior issues as well as jank due to image decoding. You can find more details in the public roadmap.
We also asked about the features that need improvement. SEO was selected by the most number of developers (36%), followed by download (bundle) size (27%). While we understand the importance of indexability on the web, our initial release of web support focused on the niche of web apps that put more emphasis on content creation and thus don’t require indexability. A good example of this use case is what Rive did with rive.app. They have a landing page written in HTML that is SEO friendly, and when a user launches the main app written in Flutter web, SEO is no longer necessary. Our current plan is to improve the quality of Flutter on the web first, so that it excels in web apps before tackling other use cases like apps or pages that put more emphasis on content consumption.
Code samples in source code files
Because Flutter is an open source project, you can jump to the definition of an API in your IDE and read its sample code, which is embedded in the source code. However, the framework team is considering moving the sample code from the source code into separate files to enable syntax highlighting and converting symbols to clickable links. (For more information, check out the design docs for Medium-Sized Sample Code and Testing Code Samples.) As this might interfere with how you consume the documentation, a section was added to this survey to learn how many of you might be impacted by the proposed design.
To our surprise, many of you frequently use the source code files. In fact, 70% of developers read the source code files on a weekly basis, if not daily.
We wanted to know how many of you actually read and consume the sample code in the /// comments. It turned out that 50% of respondents read the sample code, and about 21% copy the sample code, even if that is not very easy currently.
Then we asked about issues with interacting with sample code within the /// comments. We found that the biggest issue was the lack of syntax highlighting (27%). Also, long blocks of sample code made it difficult to read the rest of the documentation (25%).
This result supports the benefit of hosting the sample code separately, which would shorten the length of the actual API documentation, and enabling support for syntax highlighting and converting symbols to clickable links. However, since many of you read and copy sample code within the documentation today, we might consider displaying the code inline with syntax highlighting; therefore visually separating the sample code from the rest of the documentation.
If you’re interested in following this topic, follow these issues related to the navigation support: Dart, IntelliJ plugin, VSCode plugin.
See you in the next survey!
We are seeing an increasing number of developers adopting Flutter as a part of their main job. This is encouraging news to us, and we strive to provide the best possible multi platform technology for you, based on your feedback.
Please keep sending your feedback our way. But the quarterly survey isn’t the only channel you can use. If you have urgent issues that need follow-up, please file them on GitHub.
The Flutter UXR team will continue to run surveys every quarter. We announce the survey on flutter.dev, in the Flutter IDE plugin, and on Twitter @FlutterDev. Please continue contributing your thoughts as the team seeks answers to important questions. You can also participate in other research by signing up for upcoming UX studies.
Again, thank you to everyone who participated in this survey and provided valuable feedback. Our goal is to build a product that you love, and we appreciate your time and effort in helping us.