This year the Kotlin team conducted the first Kotlin developer survey, which was designed to help the Kotlin team identify and prioritize the pain points that most impact Kotlin user satisfaction.
Recently, the Kotlin team released the final report of the survey, so that everyone can understand the current developers’ evaluation of the current state of Kotlin and the improvements the team intends to make.
Note: Customer Satisfaction Score (CSAT, Customer Satisfaction Score) is the percentage of positive responses (very satisfied + satisfied) among all survey responses.
Satisfaction with Kotlin
According to the survey, the current user satisfaction of Kotlin is 86%.
The main pain point for Kotlin users right now is IDE and build performance, and build setup is also one of the top concerns. According to the survey, these factors affect Kotlin multi-platform Gradle users most strongly.
Build Tool Satisfaction
According to the Kotlin Developer Survey data, the current user satisfaction rate for Kotlin build tools is 62%, which means that more than a third of users are dissatisfied with it.
To prioritize build tooling issues, the Kotlin team asked users who gave a “dissatisfied” or “very dissatisfied” score to identify up to three subsystems they were least satisfied with, with build performance being the biggest issue.
Improve build performance
The Kotlin team has already made some initial improvements to build performance, with further steps planned:
- Kotlin 1.7.0 introduces performance improvements to the Kotlin/JVM compiler. According to benchmarks, compilation times have been reduced by an average of 10% compared to Kotlin 1.6.0.
- In Kotlin 1.7.0, improved incremental compilation, currently experimental, is only supported for the JVM backend in the Gradle build system. The new scheme reduces the number of necessary full module and file recompilations, making the overall compile time faster. The Kotlin team plans to make the new incremental compilation stable in Gradle and add support for Maven and other build systems in the future.
- Since Kotlin 1.7.0, users have been able to create build reports for Kotlin compiler tasks, allowing them to find and fix performance issues.
- The Kotlin team is also continuing to improve performance metrics. Recently, the Kotlin team started collecting and analyzing compilation speed metrics from production, including the K2 compiler.
The Kotlin team has put a lot of effort into improving build performance, and it’s almost at the limit of what’s possible with the current Kotlin compiler. The team’s main focus now will be on stabilizing the new Kotlin K2 compiler, which is in Alpha now, mainly to improve performance.
Satisfaction with Kotlin IDEs
Kotlin users are very satisfied with the completeness, quality and usability of language support in IDEs (Android Studio and IntelliJ IDEA). However, when using Kotlin, the performance of the IDE clearly does not provide the best experience, with a user satisfaction score of only 56%.
Improve IDE performance
To prioritize which issues need to be addressed, the Kotlin team asked users who rated “dissatisfied” or “very dissatisfied” to identify up to three subsystems they were most dissatisfied with.
Project import, reference search operations, and syntax highlighting rank low in performance and are not the primary cause of IDE performance issues. The top reasons for dissatisfaction with IDE performance were IDE freezes and indexing, which more than 40% of Kotlin users listed as dissatisfaction with IDE performance.
As with build tools, the Kotlin team has taken a number of steps to fix IDE freezes and improve IDE indexing, with more planned:
- Recent measures to optimize indexing in IntelliJ IDEA 2022.1 and 2022.2 have had a positive impact on the speed of the IDE and the performance of code highlighting, code completion, and lookup.
- Performance analysis shows that in the latest version of IntelliJ IDEA, indexing, highlighting, and code completion of Kotlin projects are almost as fast as JAVA.
- In the latest IntelliJ IDEA versions (2022.1 and 2022.2), there are many fixes to reduce freezing. More improvements are planned for 2022.3.
- The Kotlin team has looked through the backlog related to IDE freezes and is already planning a fix.
Satisfaction with Kotlin Libraries
The Kotlin team’s efforts in developing the Kotlin core library contribute to the joy of developing in Kotlin for users. kotlinx-coroutines and kotlinx-serialization met the needs of more than 80% of users, while the Kotlin standard library ranked first with 90% of user satisfaction.
The first stable version of kotlinx-datetime is currently also gaining popularity among users, however, as a young library, it still has more room for improvement.
You can follow the link to view the full Kotlin Developer Survey report.
#Kotlin #users #dissatisfied #IDE #performance #News Fast Delivery