This post is about web development, using Windows, in 2014. All-in-all the state of web development for developers is not-too-bad. Many of the tools I’m going to discuss here are cross platform and open source. This will be somewhat of a whirlwind tour and not a definitive guide, click the links for more information about any of the topics. This post is also a work in progress. I would rather get some information out there to the good people of the internet, rather than let this post get moldy in my ‘drafts’ folder waiting to be a complete work. Before we get too far however, I’m first going to talk discuss a more important question.
What do we want?
First, we want to provide what our customers want. For many customers this is a “web application”, frequently referred to as a Single Page Application, or SPA for short. The types of applications you can build with this stack are “bigger than a breadbox” but “smaller than an elephant”. Luckily, many times this is what our customer wants and needs.
You can build trivial apps with this stack, but in general, you don’t want to. If you only ever have one view, then you are probably better of to let the server render it. If you have a HUGE application with LOTS of data, then this also isn’t probably an ideal stack. You probably want to look for something more specialized. If you want rapid application development with ORMs, and scaffolding, this is not it (take a look at Ruby on Rails). Finally if you want a single language stack, this is not it (check out Meteor). This stack is not opinionated, it is not the new hotness.
As developers, we want a development process that is structured yet flexible, can be automated, and allows for different types of testing. We want something that is proven to work and popular enough to have continued development. If you are developing on Windows, then you also want something that works on Windows!
The Software Shopping List
Below is a list of software to use. Note that all of it is free!