developing web applications in the late 1990s. As a consequence, I have a fond
attachment to building HTML and related code via a nice text editor. However, I
didn’t include such an editor when asked to write a post outlining my top three
tools for ASP.NET development. (That’s right, I only got to choose three, and it
was just as hard as I thought.) As I made my list and changed it numerous times, I was amazed at the number of useful tools I use on a regular basis.
Anyway, that is enough whining, so let’s quickly cover the guidelines (as I see
them) before discussing my choices.
Useful vs. necessary
consideration, I arrived at the conclusion that a key deciding factor with
compiling the list was useful vs. necessary. That is, there are so many tools
that are useful and help me build applications either faster or more
effectively, but I can still build such sites without them (although I will
not). I arrived at my final list by thinking of a new developer and what three
tools I could give her to be productive after some ramp up time. Without
further ado, here are my top three tools for ASP.NET developers, which I break
into three main categories: Integrated Development Environment (IDE), version
control, and browser tools.
The IDE is a
core piece of software development these days and is the one tool developers
use on a daily basis. The default IDE for Microsoft developers (which includes ASP.NET) is Visual Studio; it includes almost everything needed to develop, test, and debug web applications, so you can focus and remain in the IDE and write code instead of dealing with multiple applications.
Visual Studio 2012 is the current release, and Visual Studio 2013 is on the
horizon. Currently, I use Visual Studio 2012 Ultimate. Figure A shows the basic Visual Studio 2012 interface with a new
ASP.NET application opened.
application opened in Visual Studio 2012. (See an enlarged view of the image.)
Microsoft continues to enhance its popular IDE with powerful support for extensions
as well as regular patches and add-ons. There are some cheaper alternatives to
the full-blown Visual Studio IDE with its Express
offerings and WebMatrix
I learned long
ago the perils of omitting version control within my development projects
and my written documents — I wasted too much time recreating previous versions when
a simple rollback would have sufficed. Needless to say, I religiously utilize
version control on all of my projects regardless of their size, and I have
fallen hard for the freely available and wildly popular Git.
It offers: an easy-to-use command line interface, support across multiple
platforms, great website/tools via GitHub, and tight
integration with Visual Studio.
While I prefer Git, I am
open minded and simply ask that you utilize version control with your favorite
building web applications, I prefer to use Chrome
and its powerful suite of developer tools, which allow you to scrutinize every aspect of a web page
console. You can change CSS and other elements on the fly to get an instant
preview without touching the source.
Firefox, Internet Explorer, and other browsers offer their
own tools. I suggest you choose one and get to know it inside and
On the cusp of making the cut for this list is the Bootstrap
framework for building web applications, which I have fully adopted and use on
most projects. Considering a framework led me down the philosophical path of
whether it is a tool (I say it is a tool), but I found its inclusion in the
upcoming Visual Studio 2013 release to make it easy to leave off of my list.
that had me going back and forth include: Fiddler
for debugging HTTP requests; Internet
Explorer developer tools; Firefox’s
developer tools; LINQPad; I love .NET Reflector for reverse
engineering, but sadly it is no longer free so I go with dotPeek these days; and when it’s time to test, the BrowserStack
service is awesome.
I think an IDE,
version control system, and browser development tools are critical to building
web applications. However, the beauty of a creative endeavor like application development is there are many ways to tackle a problem, and there are a variety of tools used to solve it. Let me know what tools would make your list.