It used to be that to develop with Microsoft technologies developers would have to pay up for development tools if they wanted the best experience. These days with all the options developers have, getting someone to pay for tools can be difficult.
Recently I wiped of one of my development machines and realized this is no longer the case while installing various tools.
It's well known that Microsoft has been moving towards open sourcing many of their projects like their .net framework, but beyond that they have also been providing more options for free tools and services. To be clear many of these free tools are aimed toward home users, individuals and small teams. Larger businesses still need to pay for the appropriate licensed product.
Microsoft has made Windows 10 a free upgrade (if you upgrade within the offer's time period) for individual users who have Windows 7 or Windows 8. When Windows 8 came out one of the major developer complaints is that in order to develop for Windows 8 and the new Windows Store you needed a machine with Windows 8. That meant buying a new computer or paying for a Windows 8 license. By making Windows 10 free for Windows 7 and 8 users Microsoft is trying to lower the barrier for developers.
I remember having to purchase Visual Studio or MSDN just to get Visual Studio. A free Visual Studio is not new. Ever since 2010 Microsoft has offered Express versions of Visual Studio, but they were always heavily restricted in features. At the end of 2014 Microsoft started offering Visual Studio Community 2013 for free. The Community edition is very close to the Professional version and can be used by "individual developers, open source projects, academic research, training, education and small professional teams". VS.net Community 2015 also includes features that allow developers to create Android and other non-Windows apps as well as Data Tools that have usually been reserved for the higher level versions.
Visual Studio Code
Visual Studio Code is a code editor that is cross platform (Windows, OSX, Linux). It is not like Visual Studio. Instead it is similar to other code editors like Sublime, Atom and Brackets. It is based around the same code that the Atom editor (atom.io) uses. Why would someone use VS Code? The main reason would be because it is built to work well with ASP.NET 5 which is also planned to work on Windows, OSX and Linux when released. That's not to say it doesn't work well with other development frameworks. I've used VS Code to update Node, TypeScript and Python and it plays well with many other languages.
SQL Server has always been a tough one to get for free. There has been various free versions available over the years, but they have always been very lacking and it's always been hard to get the management tools without getting your hands on one of the full versions. Over the years the Express version has gotten better and with the current SQL Server Express version developers can get functionality that is close to the full versions, but with restricted database size, CPU and memory utilization. They have also made available the management studio that allows developers to manage SQL databases.
Of course SQL Server Express isn't going to include many of the advanced features of SQL Server. For developers who do need SQL Server that matches production environments closely Microsoft still sells SQL Server Developer edition http://www.microsoftstore.com/store/msusa/en_US/pdp/SQL-Server-2014...
For developers who build web apps or services Microsoft offers some free Azure services. In particular you can publish 10 web sites to Azure for free. It's a good service to use for web site development if you don't want to pay for hosting.
Other Great Tools
Besides the Microsoft backed tools above there are a lot of other free tools that I use.
Git has become the source control of choice for many developers. I like GitHub Destkop because it's easy to install and easy to use. If you are someone that doesn't like the command line this one is a good Git client, however it would still benefit you to learn the git command line commands.
Atom has become my favorite code editor that is not a full fledged IDE.
Every developer who has used Windows has probably downloaded Notepad++. It's the app I install to avoid having to use Notepad. Even though I don't use it for coding I like it as a quick editor.
I'd be interested in hearing if anyone has any other good developer tools for Windows or what tools developers on OSX and Linux love to use.