Ranked in these QuestionsQuestion Ranking
Pro Package managers
You can install any library or package that you need (gcc, php, node) with just a couple of commands in the terminal.
Pro Most software is open source
Pro A wide variety of distributions available
Pro Most Linux distributions are free
Pro Access to really powerful terminals
Pro Lots of development tools available
Pro Large percentage of Linux users are developers
Pro Most likely also your deployment target
Makes testing while developing easier. According to a September 2014 study by W3 Techs, *nix based servers are used on over 2/3 of websites.
Pro Familiarity with Linux is often required from a developer
Pro Follows the UNIX philosophy
The UNIX philosophy: 'Write programs that do one thing and do it well'. Since Linux itself follows this philosophy then it's very easy to start creating scripts and programs.
Pro Hardly ever crashes
Nice, developer-friendly environment.
Con Issues with drivers if your hardware is not officially supported
Con Steep learning curve
Con A wide variety of distributions available
With a lot of variety, one cannot deploy to a single system and has to prepare for a bundle of distributions, instead of just one.
Con Less and worse professional software is developed, since low user base
Programs written for Linux have more bugs and less features compared to their Win/Mac counterparts, even cross platform ones.