Developer productivity tools and Visual Studio extensions
A few days ago a question was asked on Readify's internal forum about useful VS extensions. A few extensions were mentioned that I had not used before and I am glad to have installed them now. So I thought I'd share my current toolbox with you.
This is not meant to be anywhere as exhaustive as Hanselman's Ultimate Developer and Power Tools. I honestly just do not use that many applications! This is a list of tools and applications I find very useful and/or use very frequently.
Visual Studio extensions and tools
- HideMenu: "Automatically hides the Visual Studio main menu when not in use, similar to Windows Explorer and Internet Explorer.": mentioned by Dmitry Kryuchkov.
- Image Optimizer: "A Visual Studio extension that optimizes PNG, GIF and JPG file sizes without quality loss. It uses SmushIt and PunyPNG for the optimization."
- JetBrains ReSharper: "a renowned productivity tool that makes Microsoft Visual Studio a much better IDE."
- jslint.VS2010: "Adds JSLlint support into Visual Studio": mentioned by Liam McLennan.
- NCrunch: "NCrunch is an automated parallel continuous testing tool for Visual Studio .NET. It intelligently takes responsibility for running automated tests so that you don't have to, and it gives you a huge amount of useful information about your tests (such as code coverage and performance metrics) inline in your IDE while you work."
- NestIn: "Nest any type of file on any other type of file within your solution explorer!": mentioned by Jake Ginnivan.
- NuGet Package Manager: "A collection of tools to automate the process of downloading, installing, upgrading, configuring, and removing packages from a VS Project."
- PowerCommands for Visual Studio 2010: "A set of useful extensions for the Visual Studio 2010 adding additional functionality to various areas of the IDE."
- SlowCheetah: "This package enables you to transform your app.config or any other XML file based on the build configuration. It also adds additional tooling to help you create XML transforms.". CodeAssassin.ConfigTransform, while not an application or a VS extension, is an alternative option. You may find a comparison here.
- VisualHG: "Mercurial source contol provider for Visual Studio."
- VSColorOutput: "adds color highlighting to Visual Studio's Build and Debug Output Windows. Errors are in Red, Warnings in Yellow, build headers are Green.": mentioned by Jake Ginnivan.
- TestDriven.Net: "makes it easy to run unit tests with a single click, anywhere in your Visual Studio solutions."
- RestoreReloadPackage: "This package will reload the files you had open when your project reloads.": mentioned by Jake Ginnivan. Scott says it works on his machine and I know quite a few of my colleagues are using this; but after installing this package my VS felt much slower and crashed a few times!! Perhaps it has some collision with my other extensions. Otherwise this is a much needed extension.
- JScript Editor Extensions: "Contains a number of extensions for the JScript editor in Visual Studio 2010."
- Team Foundation Sidekicks: "a suite of tools for Microsoft Team Foundation Server administrators and advanced users providing Graphic User Interface for administrative and advanced version control tasks in multi-user TFS environments."
- TFS Power Tools: "a set of enhancements, tools and command-line utilities that increase productivity of Team Foundation Server scenarios."
- EF Power Tools: "Adds useful design-time DbContext features to the Visual Studio Solution Explorer context menu."
Dev Productivity and Power User Applications
I did not want to include my windows apps; but I thought while I am at dev productivity tools I may include my productivity applications too:
Here is a list of tools I use for debugging and troubleshooting:
- dotPeek: "a free-of-charge .NET decompiler from JetBrains."
- SysInternal Suite: "Troubleshooting Utilities". I use Process Explorer, Process Monitor, ZoomIt (and sometimes TcpView and DebugView) more than other utilities in this suite.
- WinDbg: "a multipurposed debugger for Microsoft Windows."
- DebugDiag: "designed to assist in troubleshooting issues such as hangs, slow performance, memory leaks or fragmentation, and crashes in any user-mode process."
- EQATEC: "A great code profiler."
- Fiddler: "a Web Debugging Proxy which logs all HTTP(S) traffic between your computer and the Internet.". If you want to learn more about Fiddler you may see my presentation about it here.
- MS Network Monitor: "Tool to allow capturing and protocol analysis of network traffic.". Before MSNetMon I used to use WireShark; but I find MSNetMon easier to use.
... not quite windows tools and applications; but it would not be just if I did not mention these as part of my debugging stack:
- Glimpse: "A client side Glimpse to your server"
- Chrome Developer Tools: "The Developer Tools, bundled and available in Chrome, allows web developers and programmers deep access into the internals of the browser and their web application.". I used to use FireBug; but now I barely ever use it and FireFox for web programming and I must admit I cannot do it without Chrome and Chrome Dev Tools. If you want some kick-arse Chrome Dev Tools download Chrome Canary. I cannot stop talking about Chrome! When in dev tools (which you can bring up by pressing ctrl-shift-i) press ? to see a list of keyboard shortcuts. The shortcuts are awesome. For example, I felt really silly for having spent so much time on the Scripts pane looking for a script file after I learnt ctrl-o (resharper like) file lookup!
... and a few source control power tools:
- git-tfs: "git-tfs is a two-way bridge between TFS and git, similar to git-svn.". If you like me have to use TFS then do yourself a favor and use git-tfs to almost completely avoid TFS. git-tfs combined with Posh-Git have saved me so many f words a day ;-)
- Posh-Git: "A PowerShell environment for Git"
- git extensions: "the only graphical user interface for Git that allows you control Git without using the commandline."
- TortoiseGit: "supports you by regular tasks, such as committing, showing logs, diffing two versions, creating branches and tags, creating patches and so on"
- Posh-Hg: "Inspired by the Posh-Git project. Posh-hg provides a custom prompt and tab expansion when using Mercurial from within a Windows Powershell command line."
- TortoiseHG: "a Windows shell extension and a series of applications for the Mercurial distributed revision control system.". The rather new HG Workbench is great.
- DiffMerge: "an application to visually compare and merge files within Windows, Mac OS X and Linux". I use this for my file and folder comparison from windows explorer.
- P4Merge: "allows users to visualize the differences between file versions. P4Merge uses color coding to simplify the process of resolving conflicts that result from parallel or concurrent development.". I use this as my code diff and merge tool. You may find an article about integrating P4Merge with VS here.
... and some really handy applications and not necessarily programming related:
- EverNote: "a suite of software and services designed for notetaking and archiving."
- Balsamiq Mockups: "a Rapid Wireframing Tool"
- FocusBooster: "a simple and elegant application designed to help you eliminate the anxiety of time and enhance your focus and concentration."
- Synergy: "lets you easily share your mouse and keyboard between multiple computers on your desk, and it's Free and Open Source."
- LastPass: "LastPass is a password manager that makes web browsing easier and more secure."
- DropBox: "a free service that lets you bring your photos, docs, and videos anywhere and share them easily. Never email yourself a file again!"
- SkyDrive (for Windows): "Keep important files on your PC in sync with SkyDrive.com."
- Connectify: "The Easy-to-Use software router for windows."
- RAMDisk: "creates a virtual RAM drive, or block of memory, which your computer treats as if it were a disk drive."
- FreeMind: "a premier free mind-mapping software written in Java."
I hope you find something interesting and useful in this list.
I am interested to hear what productivity tools and extensions you use. So leave me a comment about your gems.