Being a senior consultant in the Information Worker area, Sharepoint and development are my middle names on a day-by-day basis. Every year I actively work on 15 to 20 projects, most of them in different clients, with different teams.
As most of you, I simply feel repetitive work is a serious waste of time and resources, for which I don’t have a miracle cure, but I do have a couple of what I like to call good practices, that help me reduce repetitive work and thus elevate my productivity levels to a reasonable self-satisfying level. Here are some of them:
- Code/project management: as a basic requirement for my projects I use TFS (FULL STOP!). TFS allows me to manage development, source code, and all the goodies that follow a project from its early stages of requirements and use cases, till the production phases of the project life-cycle. Associate this platform with Excel, Project, Visio, Word and a couple more
- Coding in Visual Studio: this is probably the MS tool that makes me prouder. I have worked in very heterogeneous development environments, but till today, VS is on top of my list of development environments. You can spice it up with some extensions that give you even further control/functionality. Some of the ones I find most interesting are:
- Ghost Doc: generate code documentation based on code type and name (http://submain.com/products/ghostdoc.aspx)
- Visual Studio Power Tools: extra set of functionality, namely template editing for TFS (http://msdn.microsoft.com/en-us/vstudio/bb980963)
- Team Foundation Sidekicks: extra (http://www.attrice.info/cm/tfs/)
- Productivity power tools (http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef/)
- Visual Studio Achievements: just for fun, earn your medals while coding (http://channel9.msdn.com/achievements/visualstudio)
- VS Commands: extra useful command integration in VS (http://vscommands.com/features/)
- Web service Software factory: another great paterns and practices guidance (http://msdn.microsoft.com/en-us/library/ff699490.aspx)
- Sharepoint Dispose Check: A MUST for finding undisposed disposable objects that lead to memory leaks (http://archive.msdn.microsoft.com/SPDisposeCheck)
- Team Review: The code reviewer best friend. Integrates with TFS allowing the creation of tasks associated to code blocks (http://teamreview.codeplex.com/)
- ReSharper: a refactoring tool on steroids (http://visualstudiogallery.msdn.microsoft.com/EA4AC039-1B5C-4D11-804E-9BEDE2E63ECF?SRC=VSIDE)
- Build environments using VM Factory: when you have to setup development environments for a team of developers and on top of that, prepare test environments in a regular basis, then is when VM factory comes to the rescue. Template your VMs and generate them on request with complete software automation process, which includes updates, platform configuration, optimizations… basically, anything you can install or script.
- Regarding test environments, I strongly recommend you take a look at Lab Management Guidance. This project tops on VM factory to guide you to build your lab environments using VS Lab Manager (http://go.microsoft.com/fwlink/?LinkID=230951).
- Defining branching strategies for my clients with Branching and merging strategies on Team Foundation Server (http://go.microsoft.com/fwlink/?LinkID=230936).
This pretty much covers my main project day life with Visual Studio and TFS 2010!
Now, if you want to have some fun, check out the new wave of Visual Studio 2011 coming out. New EDI, TFS and the TFServices are better than ever. Also the VS ALM Rangers team has shipped a new set of projects ready for the new platforms that are really worth wile. Here are some links for your greedy thirst for coding fun :
- Visual Studio 11 Beta Downloads (http://www.microsoft.com/visualstudio/11/en-us/downloads)
- A map of the VS ALM Rangers projects included in the Visual Studio 11 Readiness (http://blogs.msdn.com/b/visualstudioalm/archive/2012/02/29/welcome-to-visual-studio-11-alm-rangers-readiness-beta-wave.aspx)
No GO And have fun