THE RAW TALLIES OF RESPONDENTS’ ANSWERS furnished a few interesting insights.
MacOS is the most popular operating system, used by 64% of respondents, but Linux is also surprisingly popular at 57%. (Respondents obviously use multiple computers, because the shares of operating systems add up to much more than 100%.)
Sublime is a surprising favorite for text editors, chosen by 42% of the respondents (although once again, totals added up to more than 100%.
Express runs away with the prize for most popular Node framework. It was chosen by 26% of all survey respondents, whereas hapi, Koa, and Sails each got just 1% to 3%.
Familiar JavaScript frameworks turned up as favorites, although Backbone came out further down the list:
jQuery: 67%
Angular: 37%
React: 23%
Backbone: 13%
Knockout: 6%
Ember: 4%
Polymer: 3%
Meteor: 2%
There was no such rush toward any PHP framework; nine different frameworks took less than 10% each of the respondents.
SVG is the most popular graphics environment but is still relatively little used at 30%. D3 was even less popular, at 19%.
Selenium, at 25%, is the most popular testing tool, as might be expected. However, there were other strong contenders:
Mocha: 20%
Karma: 19%
Protractor: 6%
QUnit: 5%
PHPUnit: 2%
MySQL remains the dominant database behind the web, at 52%. MariaDB, at 9%, has failed to make great inroads among MySQL fans, at least on the web. PostgreSQL and SQL Server come up next, both at 26%, and a plethora of diverse solutions follow:
MongoDB: 25%
Redis: 21%
CouchDB: 5%
Oracle: 5%
Neo4j: 2%
WordPress is the most popular CMS, although Drupal makes a respectable showing:
WordPress: 29%
Drupal: 12%
Joomla!: 4%
Magento: 4%
Django-cms: 2%
Umbraco: 1%
In general, working with libraries or frameworks led to a salary $1,248 more than average.
Because there are so many tools, libraries, and frameworks, we applied some basic machine learning to find clusters of related tools. The principle is that people who use one tool are much more likely to use certain other tools as well. For instance, Windows programmers tend to use ASP.NET for their main framework, Visual Studio as their IDE, and SQL Server for their database. Although one would expect to see that cluster, we found nine other clusters that are much less predictable. We’ll look at each in this section, along with their positive or negative effects on salary.
There are two reasons you will find these clusters interesting:
If you want to get a higher salary, you might be able to do so by learning a cluster that has a positive impact (or less of a negative impact) on salary.
If you like where you are, you might broaden your skills by learning new tools or frameworks that are clustered with the ones you already know.
Many of the most popular tools and frameworks among our respondents turn up in none of the ten clusters. This is probably because they are so pervasive (jQuery, for instance) that they are used by a wide range of programmers across multiple clusters.
The first cluster surrounds the popular Express framework. It is the most lucrative cluster we found because each tool in it adds an average of $2,068 to salaries. (We found this to be true up to a maximum of eight tools in this cluster—if you keep adding tools, your salary tops out after eight). The cluster includes:
Charles debugger
Express framework
Jade templating framework
Mocha test framework
MongoDB data storage engine
PostMan Chrome extension
React framework
Swagger web framework
Webpack module bundler
It is hard to see a rationale for using these particular tools together. React is a fairly popular framework in its own right, but other tools, such as Jade, are used by relatively few programmers. In any case, our statistics suggest they make a good combo.
This cluster includes many well-known tools, but none of them are among the most popular in the survey. However, they tend to be used together, and knowing each one adds an average of $1,442 to salaries (up to a maximum of seven tools):
Capistrano continuous integrator
Chef configuration manager
Haml templating framework
JSONView display tool
Jekyll continuous integrator
PostgreSQL database
Redis caching server
Ruby language
Travis CI continuous integrator
It would make sense for Ruby programmers to rely on Capistrano, which was designed for Ruby. Haml is also Ruby-oriented, with a Ruby on Rails plug-in. Most of the other tools are language agnostic and don’t have obvious interconnections. And as already mentioned, none are among the most popular tools among our respondents.
The tools in this cluster are mostly familiar and are generally used together. Our respondents chose Vim (29%) much less than Sublime (42%) but more than Emacs (5%). The Perl language is used by only 5% of respondents but turned up in this cluster along with Python (22%). This cluster has no effect on average salary.
Bash shell command line
cURL downloader
GitLab source code repository
Linux operating system
Perl language
Python language
Unix operating system
Vim text editor
In contrast to the previous cluster, which tended to use GitLab, the far more popular GitHub has its own cluster. npm, another tool in this cluster, was the most popular in its category, used by 51% of respondents. But the cluster has no effect on average salary.
Atom text editor
Backbone JavaScript framework
Bitbucket version control
Bower package manager
Browserify package manager
Grunt task manager
Gulp task manager
Handlebars templating framework
npm package manager
RequireJS package manager
The connections among these tools make sense. Most are tied in with Node.js, and many depend on npm.
The relationship among these tools is obvious. They are used for designing, creating, and testing user interfaces. This cluster has no effect on average salary.
Canvas graphics engine
D3 graphics library
Sketch user interface design tool
SVG graphics engine
WebGL graphics API
WebPagetest performance tool
We have tried to choose a neutral name for this cluster, but to many readers, it may smack of “legacy” tools. One can well wonder where Subversion users have been hiding during the past decade’s move to distributed version control, but Subversion still holds the allegiance of 20% of our respondents (more than GitLab at 14%, or Mercurial at a mere 3%). There is no doubt that C++ and Java remain critical parts of the computing infrastructure, although most web developers have abandoned them for slicker and newer languages (and 39% of respondents use PHP as well). Oracle is also going strong. Still, among our respondents, Jenkins CI is the only tool in the following cluster that appears at the top of their choices (31%).
This cluster has no effect on average salary.
C/C++ language
Eclipse integrated development environment
JMeter performance tool
Java language
Jenkins CI continuous integrator
JetBrains IDE integrated development environment
Oracle database
SoapUI functional test tool
Subversion version control system
Several tools and frameworks for testing appear in this cluster, some of them very popular and some of them used by only a few people. Other tools appear here too, for unclear reasons. This cluster has no effect on average salary.
Angular JavaScript framework
Jasmine test framework
Karma test runner
LESS database modeling tool
Protractor test framework
Selenium test framework
WebStorm integrated development environment
The tools and websites in this cluster help JavaScript developers learn, share, and develop code in various ways. Some of the tools may be more popular among newer programmers, although they have broad value. This cluster has no effect on average salary.
Brackets text editor
CodePen code repository
Gist code sharing tool
JSBin code repository
JSFiddle text editor
Sublime text editor
Most of the tools in this cluster work only in a Windows environment. None are popular across our respondents overall, but they clearly form an important subculture. However, using each tool in this cluster is shown by our analysis to reduce average salary by $1,129.
ASP/ASP.NET framework
Fiddler debugger
Knockout JavaScript framework
Notepad++ editor
SQL Server database
Visual Studio Code text editor
Visual Studio integrated development environment
Windows operating system
Most of the tools in this cluster are part of the classic web stack of Linux, Apache, MySQL, and PHP. Composer is a PHP package manager. We don’t know why Photoshop and WordPress turn up here. In any case, these tools impose a penalty, despite their popularity: each one (up to a maximum of seven) decreases average salary by $2,257.
Adobe Photoshop graphic manipulation program
CodeIgniter PHP framework
Composer package manager
Drupal content management system
Laravel PHP framework
MariaDB database
MySQL database
PHP language
Symfony PHP framework
WordPress content management system
Zend Framework PHP framework
18.117.71.211