JetBrains is best known for its IntelliJ IDEA Java IDE, which also forms the basis for other IDEs including Google's Android Studio. Its State of the Developer Ecosystem survey is annual but had many more responses this year, up from 7,000 in 2019 to over 19,500 this year.
Does it represent all developers, or just those using JetBrains tools? JetBrains marketing analyst Anastassiya Sichkarenko told The Register: "We rely on the responses we got from external and internal channels. The big part of the response are using our tools currently, it's about 60 per cent so there is definitely a bias towards our customers. But we can trust this data with some assumptions as we do have quite a lot of respondents who are not our customers."
Such bias is no reason to dismiss the survey, particularly from JetBrains, which is the dominant commercial vendor when it comes to IDEs. The company also has free community editions, and Android Studio is based on the community version of IntelliJ. In the following figures, note that many percentages sum to more than 100 because of developers ticking more than one box in the answers.
JetBrains publishes its results in two stages. The first, available now, is a summary of those bits of the data the company chooses to highlight. Later it will publish the raw data (in 2019 this appeared in August).
JetBrains asked developers which languages, if any, they planned to migrate towards in the coming year, which tells us something about which programming languages are likely to grow. The top choice here is Go. 17 per cent of Python developers fancy working in Go, for example, and 16 per cent of Java programmers. The next most-fancied languages are Kotlin, Python, Rust and TypeScript.
Another notable statistic is that when asked for which platforms they develop, the top choice is web (69 per cent back-end, 57 per cent front-end), followed by 35 per cent desktop and 32 per cent mobile. The Desktop number is way higher than last year (15 per cent), so much so that one suspects the expanded number of respondents is weighted towards desktop devs. It is a reminder that desktop development still matters, especially in the corporate world. Mobile is also higher, up from 27 per cent.
When it comes to mobile, two-thirds of developers use native tools (meaning, we guess, Xcode for iOS and Android Studio with Java or Kotlin for Android), and 50 per cent cross-platform frameworks. Flutter usage is up from 30 per cent in 2019 to 39 per cent now, though React Native stays in the lead at 42 per cent (unchanged from last year). Microsoft's Xamarin is down from 26 per cent to 14 per cent, a dramatic decline. The expanded sample size may be partly responsible, but it chimes with the idea that the appeal of Xamarin is waning as Microsoft itself gives mixed messages on the subject (many at the company seem to prefer React Native) while Google's Flutter wins over some others.
We also took the opportunity to ask the company about the rise of Microsoft's free Visual Studio Code and whether it is a threat to the JetBrains business.
Visual Studio Code: Text editor or IDE?
"That's where JetBrains provides a lot of special features because some of the things that JetBrains implements are not really possible in VS Code. They rely [in VS Code] on the technology called LSP (Language Server Protocol) which is powerful in terms of supporting more new languages, but when you dig deeper there are some limitations.
"A lot of complicated refactorings which we implement cannot be done with the technology on VS Code at this point... we've been competing with Eclipse and with NetBeans, we've been competing with Microsoft for many years, that's what helps us innovate, it helps us not to get too comfortable."
JetBrains has plugins for a huge number of languages, but dedicated IDEs for only a few. It is confusing because the plugins can generally be added to any IntelliJ-based IDE, but the language-specific products are tailored for what they target.
Does the growing interest in Rust mean a Rust IDE might be on the way? "Rust is currently mostly used as a hobby or side-project," said Sichkarenko. Vink added: "Right now we have a plugin that is actively developed. We always look at technology adoption. So far it is supported in other products. We don't have immediate plans to create a Rust-specific IDE." One of the issues is that once an IDE is launched, it has to be maintained for many years, so the company is averse to trends that may prove short-term.
What about another trendy topic, cloud IDEs? "We don't have a cloud IDE at JetBrains," said Vink. "It's been named as a trend for many years, but VS Code was developed as a cloud IDE and it's gone desktop. It's not easy to create a good technical solution, to have an IDE in the cloud. Developers still prefer to use desktop." ®