Tools Round-up

The development world has been coming up with ways to improve productivity for years. However since Visual Studio 2010 was released, with its fully extensible model, things have seriously changed. Most tools have been modified to extend VS2010's already pretty awesome IDE. With just a few extensions, you can fill in almost all of the gaps the Visual Studio team have left in the VS experience.

I'm not a massive fan of NuGet; I use it, but not for production sites. It's good for quickly implementing a library in a test project, but I just don't like the "bloat" you end up with. I like to know what every single file does and why its there. The same goes for WebMatrix; although handy, I much prefer to manually create projects... I somehow feel like it makes it easier in the long run, even if it takes you a while to set them up in the first place.

I recently purchased ReSharper (after trying trials a number of times over the years and not getting along with it) and I've finally started to appreciate how awesome it actually is. I've already come to rely on a lot of the features - I find myself a bit lost when I use a version of VS without it installed these days!

So, after spending the duration of my career looking at new tools, plug-ins and libraries, I thought it was about time that I posted a round-up list of the ones I've found über useful. I've been using some for over a decade, though most have been superseded with better products. Note that a lot of these aren't Visual Studio specific - they're just good tools that I've found over the years to help me in my work.

RouteDebugger 2.0 - A nice little NuGet package that allows you to debug MVC routes - helps when you're starting out with MVC projects. Written by Phil Haack.

SortSQLFilesInProject - Very useful MSSQLMS plugin that allows you to reorder the .sql files contained in your MSSQLMS project. Not perfect (sometimes you have to reorder and reload the solution a number of times for it to work), but the best solution to get your sql scripts in any kind of order, aside from manually editing the project file.

LINQPad - I was having trouble with one particular LINQ statement I needed to write a few months ago, and I found this little beauty. I must admit, I've not used it too much, but it did the job when I needed it.

Nadger - I've been using this since the 90's. Developed by a guy I used to interact with regularly when I was heavily involved in the Quake II clan scene. Extremely handy, standalone colour picker written in Delphi. The only issue I've had with it is that it doesn't work over multi-monitors, much like many screen based tools.

ScreenHunter - Handy, free screenshot tool. I use it for documentation and user guides (I tend to write a lot as I'm always moving from company to company). It's the best FREE screenshot manager I could find, though I'm sure there are better ones if you're willing to cash up :) As with Nadger, this seems to only work on the main monitor.

Powermenu - Doesn't work so well with Windows 7, but saved me a huge amount of time in XP. Allows you to set any window "On Top". Also allows you to set the window's process priority and transparency. Aero has replaced many of the features, and the new Windows 7 shell disables the context menu, but you can still use the command line interface (I've set up some batch files to execute various commands for me) to set windows "On Top".

Spellchecker - A Visual Studio 2010 extension written by Microsoft that simply applies a spellchecker to any strings and comments within your code files. Even if you can spell well, I would recommend it... because none of us are perfect :) You can download it via Tools -> Extension Manager.

PowerCommands - Adds some handy shell commands to Visual Studio, such as "Open Command Prompt", which starts a VS Command Prompt in the directory you're pointing at in Solution Explorer, Clear Recent Files List, Copy Path, Copy Class and many more... very handy indeed.

NotePad++ - A free text editor, useful for regular expression matching and quick editing. I used to use UltraEdit, until it became slow-ass bloat-ware.

Web Essentials - Adds various editor features, such as CSS colour glyphs, JavaScript regions, outlining, JS minifying and CSS image embedding to the VS editor. In beta, but very handy.

T4 Tookbox - Essential if you're writing a lot of code-generator files. Provides ready built templates for your consumption, which greatly simplifies the process. There is lots of support on this, especially from Oleg Sych, who's blog saved me a considerable amount of time when generating templates.

Process Monitor - I keep forgetting about the Sysinternals suite - every now and then it comes up in conversation, and I remember how awesome it is. I'm a bit of a task manager whore, especially when developing, and the Sysinternals' Process Monitor gives me that little bit extra information when I need it.

T4 Editor - Another useful tool when working with T4 code generation. I had a few issues when installing it on WinXP, but the support is fairly good so I was sorted out quickly. This extension basically enabled highlighting and intellisense in .tt files. It's a bit of a disappointment that Visual Studio doesn't support this by default... though I'm sure it will in the future.

ReSharper - If you decide to spend money on a Visual Studio extension, this is the one to go for. Improves everything from productivity to coding practices. It has more features than I'll ever use, but the ones I do use have already improved my life as a developer tenfold. Highly recommended, even if it can be a bit buggy and laggy at times.

DotPeek - The new (and currently free!) .Net Reflector. I've not needed to use this much yet, but it's handy to have around. It only works with .Net 4.0 unfortunately, but whose still using <= 3.5 eh? Developed by JetBrains (the same developer as ReSharper).

So, there it is... the apps that make my life a lot easier than it could be. I'm sure there are more I use (there are definitely other small, free apps I use for other purposes such as the CCCP, Windows Media Player Classic and IrfanView), but I think that about does it for development-based apps and extensions.

Are there any development apps you use regularly that I've not listed? Or are there any better implementations of the above apps out there?

Popular posts from this blog

TDD and Unit Testing with Moq

Handling uploads with MVC4, JQuery, Plupload and CKEditor

Generating a self-signed SSL certificate for my QNAP NAS