This content is not available in English.

frameworks, libraries and tools

Virtually no software can be developed without frameworks, libraries and "tools". This is one of the reasons for the triumphal march of open source, because software projects build today almost always and to a large extent on already existing code. The better you can see, understand and, above all, adapt, the code the better suited it is for use in projects.

Anyone already surprised by the 125 languages in the previous section (link), is in for another surprise. There are thousands of frameworks and libraries. If "only" 220 are listed here, that might be because the study participants did not want to list everything that is still used somewhere as a dependency in a project. (A library or framework is also often referred to as dependency). It is also sometimes controversial to discuss what is ost likely a framework, a library or a tool. The boundaries are not always clear.

Nevertheless, the right choice is as relevant to the success of the solution and the satisfaction of the developers as in the programming languages. By choosing the right framework, even a little popular language can sometimes be upgraded and the work is fun again. Conversely, a tedious framework or an exhausting library can destroy any fun in a language.

Unfortunately, comparisons in this section are less easy to make than with the programming languages.This will be optimized in the next survey.

-->Relevant data online as Excel

Frameworks, librarise & tools developers use

  • At number one, by far, is Node.js. That's surprising. For some, this is more like a parser or engine for server or desktop use of JavaScript. Nevertheless, it allows the insight that JavaScript is increasingly being used on the server.
  • Surprisingly, especially in international comparison, is the local strength of Angular. Internationally, in the field of single-page application JavaScript / TypeScript frameworks, React.js is the one thing that will soon be superseded by Vue.js (see Stackoverflow Survey).
  • With Spring, 'the' Java framework is in the forefront. Incidentally, Spring often served as a template for frameworks in other languages. For example, PHP Symfony, which relies heavily on Spring, even though it's a different language.
  • .NET, ".NET Core" and ASP.NET are representatives of the C # world.
  • Django and Flask belong to the Python world as MVC frameworks. Also from the Python corner are Pandas and Torch / PyTorch. We would also count TensorFlow as it is almost always driven by Python.
  • Laravel (PHP) and Django (Python) are strongly geared towards "Ruby on Rails" - the MVC Web Framework that Ruby has put on the map as a language.
  • Ansible, Puppet, and Chef are more relevant to the automation of system engineering or cloud. Writing code is now virtually unavoidable for modern system engineers in the server or cloud sector. After all, who wants go back to a time when it was necessary to manually click through the installation dialogs for 200 server nodes.
  • Addendum: Docker and Kubernetes have been added due to suggestions by some participants. We listed them instead in the seciont about platforms.
  • With Unreal Engine, CryEngine and Unity 3D gaming and 3D worlds make an appearance.
Node.js 344
Angular 234
jQuery 224
Spring 194
.NET 160
.NET Core 149
React 134
ASP.NET 109
Vue.js 92
Ansible 68
Express 66
Xamarin 47
Django 45
Pandas 40
Cordova 39
Ruby on Rails 38
TensorFlow 37
Flask 35
Symfony 31
Laravel 28
React Native 27
Unity 3D 26
Puppet 21
Spark 19
Hadoop 18
Grails 17
Torch/PyTorch 16
Apache Spark 11
Chef 11
Vaadin* 10
Unreal Engine 9
Flutter 9
Terraform* 7
Docker* 7
Kubernetes* 6
Maven* 6
Keras* 6
CryEngine 6
Hibernate* 5

Frameworks, libraries and tools developers would like to use

  • TensorFlow is at the forefront here, although it is not (yet) used that often. An interesting pointer, considering that it is primarily used in the field of machine learning or artificial intelligence. One of the topics that developers attach great importance to over the next five years. (Link)
  • Otherwise, JavaScript Framework theme shows up again with React, Vue.js and Angular.
  • A small swivel is "React Native": A framework or library that allows to build quasi-native smartphone apps for iOS and Android using JavaScript and React. The counterpart to this is certainly Xamarin from the C # world or Flutter.
  • The appearance of Unity 3D, CryEngine and Unreal Engine once again shows the developers' interest in building 3D worlds or games. Another appearance if these names appear in the "should be introduced" section would be indicative of something more than a hobby.
  • Java: Spring is only  at rank 11, but already widely in use.
React 157
Vue.js 101
TensorFlow 90
Angular 77
Node.js 71
React Native 55
Hadoop 45
Unity 3D 43
Unreal Engine 42
.NET Core 36
Spring 35
Flutter 36
Xamarin 34
Ansible 32
Django 32
Spark 31
.NET 26
jQuery 21
Apache Spark 21
Torch/PyTorch 20
Ruby on Rails 18
Cordova 17
Flask 17
Puppet 15
Express 13
Pandas 10
Laravel 10
Chef 10
ASP.NET 9
CryEngine 8
Symfony 7
Grails 7

Frameworks, libraries and tools developers like

  • Node.js is not only used a lot, it is also popular. It will be exciting to see if this holds up in the negative association section farther down.
  • The placement of Spring and .NET Core clearly show which frameworks are favored in the Java world or C # world.
  • In tenth place is TensorFlow with Machine Learning. Interesting detail: A lot of the development in this area is done with Python, because that is what most libraries, examples and training possibilities focus on.
  • In this list, there was only one participant addition with more than five votes. Astonishingly enough, QT is a C++ based GUI library, which probably has the strongest representative with the Linux desktop environment KDE.
Node.js 173
Angular 158
Spring 141
.NET Core 139
React 121
.NET 117
Vue.js 95
jQuery 92
ASP.NET 58
TensorFlow 48
Django 47
Ansible 46
Unity 3D 45
Xamarin 38
Flask 38
Laravel 38
React Native 35
Ruby on Rails 35
Express 31
Pandas 31
Symfony 26
Unreal Engine 23
Cordova 22
Spark 21
Hadoop 17
Puppet 17
Flutter 17
Torch/PyTorch 15
Apache Spark 12
Grails 11
Chef 7
Qt* 5

Frameworks, libraries and tools developers don't like

  • As already suggested above, the Love / Hate dynamics in the Java environment are revealed again - no further comment.
  • For the first time, Cordova is at the top. It was the first solution for the simultaneous development of smartphone apps for Android and iOS. For this a so-called container app is delivered, which performs the app-specific functionality in a browser as a web application. It solves the same problem as Xamarin, Flutter, or React Native, which, significantly, also feature on this "do not like" list.
  • Interestingly, even Ruby on Rails can be found here. A framework that is usually highly spoken of and from which other frameworks have adopted much. For example, Grails (Groovy on Rails). which can be descirbe as the scripting language of the Java world or as the PHP of the Java world - especially if you want to make friends at Java parties.
Angular 99
Node.js 91
jQuery 90
Spring 47
Cordova 44
Xamarin 43
ASP.NET 42
React 41
.NET Core 33
.NET 32
Ruby on Rails 26
React Native 20
Symfony 19
Django 16
Flutter 16
Laravel 15
Puppet 14
Ansible 12
Grails 12
Unity 3D 10
CryEngine 10
Vue.js 9
TensorFlow 9
Flask 9
Chef 9
Spark 8
Express 7
Hadoop 7
Pandas 6

Frameworks, libraries and tools developers want to adopt

Who does not belong here to the usual suspects? For sure TensorFlow with its focus on Machine Learning, Ansible with its focus on automation of server infrastructures or Spark a Kotlin-framework for the construction of web applications. Could that mean that Java developers who learn Kotlin want to use it in the backend as well?

Non-developers may wonder if this issue really matters: a definite YES! The time and energy involved in learning these frameworks and libraries is high. The software developed with it often remains in use for a long time and must be further developed and maintained accordingly.

Node.js 57
React 49
Vue.js 47
.NET Core 44
TensorFlow 39
Angular 31
Spring 29
.NET 22
Ansible 21
React Native 18
Spark 15
Xamarin 14
Django 13
Unity 3D 13
jQuery 12
Express 11
Unreal Engine 11
Ruby on Rails 10
Laravel 10
Hadoop 10
Pandas 10
Torch/PyTorch 10
Cordova 9
Flutter 10
Flask 9
ASP.NET 7
Puppet 6
Apache Spark 6
Symfony 5

Frameworks, libraries and tools developers want to replace

  • The number of technologies her with more than five mentions is rather short here and would not be much longer even if  including the technologies mentioned by  only 1-3 people.
  • It seems developers would gladly be rid of ASP.NET and .NET. As a replacement there is ".NET Core", a C# framework developed by Microsoft that is addressing developers for the first time who normally would be as likely to utter Bill Gates name as Voldemort is mentioned at Hogwarts. After all, it runs on Linux and is mostly open source.
  • A few words about the first-placed jQuery: This library comes from the JavaScript world and is very common. Back in the dark days of the browser wars it was one of the first solutions which allowed for the possibility of developing a JavaScript application that would run for most users. Personally, I still have post-traumatic twitches when I see an icon that reminds me of Internet Explorer 6.
  • Surprisingly, there is also Angular - maybe because developers in large Swiss companies were sometimes involuntarily confronted with it. This is probable because it is a framework that requires a steep learning curve. The same applies to Vue.JS or React.JS, especially in large applications.
jQuery 122
Angular 54
ASP.NET 51
.NET 34
Node.js 30
Cordova 29
Spring 28
Xamarin 20
React 19
Ruby on Rails 18
.NET Core 13
Django 13
Symfony 13
React Native 11
Vue.js 10
Puppet 10
Grails 10
CryEngine 9
Laravel 7
Flutter 7
Express 6
Unreal Engine 5
Chef 5

Frameworks, libraries and tools developers want be keep

Once again a longer list featuring the usual suspects and without big surprises. No further comment.

Node.js 145
Angular 101
Spring 101
React 86
.NET Core 68
.NET 59
jQuery 56
Vue.js 46
ASP.NET 30
Ansible 28
Django 26
Express 24
TensorFlow 24
Xamarin 19
Symfony 16
Pandas 16
Unity 3D 15
Ruby on Rails 14
React Native 14
Flask 13
Puppet 12
Laravel 12
Cordova 11
Unreal Engine 8
Hadoop 7
Spark 6
Torch/PyTorch 6
Chef 5

-->Table of contents show detail hide detail