I've always been a proponent of having the right tools for the right job. If you don't have the right tools for the job, you might as well have a rock and chisel.
I've also been asked in the past what tools would I recommend to new-comers to web development.
So I thought this page would be perfect to cover the tools and utilities that I've used over the years when building Microsoft-based web solutions.
This is my primary tool for web development. The Microsoft tool has not only become the defacto standard for editors in usabiility and ease-of-use, but has become a breeding ground for add-ons that extend the IDE to become a powerhouse in the programming industry (I didn't even realize that there was a PHP plug-in for Visual Studio...whoa!)
When I have a small HTML Project or want to create an HTML prototype, I don't need to break out the big VS2xxx IDE. I load up WebStorm from JetBrains (this sounds like a commercial).
ReSharper is a must-have Visual Studio extension for all developers. Not only does it incorporate the refactoring techniques from the Refactoring book, but it also has a number of coding features that make a developers life easier. It has already saved me a TON of time developing. Why are you still reading this?!? GO BUY IT NOW! NOTE: I also posted an article about the Top ReSharper Extensions available for ReSharper.
Since we are talking about ASP.NET MVC, this is my current web framework that I absolutely love. Ever since the introduction of WebForms, I've never felt good about how Microsoft handles HTML pages. ASP.NET MVC is what I've been waiting for from Microsoft and is the primary topic of discussion on this site.
Every once in a while, you find a technology that will change how you build applications. SignalR is another Microsoft technology that I absolutely love. I remember a long time ago when AJAX came on the scene around 2002-ish. I mentioned that the lines between a fat-client and website were beginning to blur. This technology levels the playing field and shows that you can build a website, not leave the page, and still receive data while maximizing the user experience.
When I want to create a website using a "plug-in" model, my first DI (Dependency Injection) framework I grabbed was MEF. This is the same technology that Microsoft uses in Visual Studio and I've been using it for the past 2 years building out my CMS.
I've moved on from Ninject and started using StructureMap because of it's maturity and reliability.
I've moved from RhinoMocks to Moq because of RhinoMocks' "magic strings" where Moq uses lambdas.
Both are well-tested AND battle-tested. Good to have in your arsenal.
If you've been around since Visual Studio 2005, you know about T4 (Text Template Transformation Toolkit) and how it creates code at the touch of 2 keys (CTRL and S). For those who don't know, Visual Studio has it's own Code Generator right inside the editor. Create your template with an extension of .tt and press CTRL-S to save it and Visual Studio will generate any type of code you want: C#, XML, SQL, etc. If you have a pattern of how to develop your applications, this will increase your code development tremendously. It even attaches to databases/tables and generates code based on database data. All built-in.
My language of choice (it is one of the top 5 languages for development) whether it's Windows, WebForms, or MVC.
It's the official language of the web. What more is there to say? It's an absolute must to learn it.
Even though this isn't a language per-se, it's one of the libraries I'm focusing on for a JS MVC framework.
I mentioned before that I wasn't interested in Angular because it was such a moving target and while not many people have heard of Aurelia, I feel it's a great library for developing client-side MVC applications a little easier in the long run.
Naturally, you have to have a database of some type to store your data. Since I use Visual Studio, of course, this comes along for the ride as well. I focus primarily on 2008R2, 2012, and 2014.
SQLComplete is like a ReSharper for SQL Server. It performs autocompletes, formats your SQL (there are a TON of formatting preferences), Document Outline, and Snippets Manager, which I use heavily for SQL tuning.
Similar to WebStorm, I decided to kick the tires on this IDE as well.
DataGrip is an IDE for just about any SQL Database you use on a regular basis. It covers SQL management for SQL Server, Oracle, PostgreSQL, Derby, DB2, mySql, SqlLite, and H2.
Even though it doesn't have a SQL Query Analyzer, it provides excellent suggestions for your databases and tables.
I mean, c'mon, these are the same people who wrote ReSharper...it's just in a SQL IDE now.
Paint.NET is probably one of the best open-source graphics programs out there and the best part is that it's built with .NET.
I've been looking into writing eBooks (and some other surprises I have planned for my audience) and what it would take to create a quick PDF/Mobi/ePub for my audiences.
I wasn't looking at writing something in MS Word. Noooo, not quite.
I know Scribus is open source, but something was missing and I couldn't put my finger on it. Plus, it didn't feel like a comfortable experience to me.
After looking over the InDepth list of features, I decided to take the leap and purchase PagePlus X9.
Every once in a while, I edit some videos, whether they are personal or for my blog. I've been using Vegas Pro since version 10.
Recently, Sony transferred over their creative software to MAGIX. So we'll see what comes of that sell-off.
Why did I decide to go with Vegas Pro instead of another Video Editing Software?
Because Sony Vegas was made using C# and .NET and you can easily write plug-ins using C# and .NET.
Anyone who knows me understands how much I LOVE movies. I am definitely a movie fanatic.
I've also wanted to learn how to achieve special effects in my videos.
This is what attracted me to HitFilm.
It was originally packaged with Sony Vegas Pro back in version 11 or 12 and I've been a fan of it ever since.
I've been using GoDaddy for the last 15 years for my domain and hosting needs. I've only had one major issue in the past and they cleared it up relatively quick.
They even have platforms like WordPress, Umbraco, and Orchard for spinning up Content Management Systems (CMSs) with the push of a button.
Click the link above to start your $1/month Web Hosting and start your own blog or ecommerce site.
A couple of my most trusted friends have recommended BlueHost to others for a simple web hosting platform for ASP.NET web sites.
You can even get a hosting account for new customers for $2.95 a month!
I always try to keep ahead of the technology curve so I try to learn as much as I can. Pluralsight is my go-to for learning new technology.
Even though it's $30/month, you can watch as many courses as you want. On average, most courses are 2-4 hours.
So if you paid $30 for the month, tried 4 courses, and didn't like them, you can cancel your subscription with no strings attached.
One other site I would recommend as well is Udemy.com (aff. link) .
Dashlane is what I consider to be the best password manager and security software out there.
Being a web developer, you log into a LOT of services where usernames and passwords are essential. I've been on the Internet since '94 and I still have some of my passwords from olden days. I currently have 535 usernames and passwords.
Of course, no one would be able to remember that many passwords.
Over the years, I've been asked by web developers "What do the professionals use in their day-to-day lives."
I'm hoping this list of resources answer that question and will assist you in your Microsoft Web Development career.
As a sidenote, this list will become a living document as I continue throughout my career.