Know your tools

By KENT SHARKEY 12/01/2011 09:32:30 AM

It usually comes from marketing, "Here's a screenshot of the bug". The email has a 4MB PowerPoint file attached. Inside that file is a single slide, with an embedded graphic.

Sharpen your sawI'm not trying to pick on marketing exclusively, although they often make for an easy target. We all have blind spots that make us ignore tools that will make our lives easier, if only we'd spend some time to learn them. I'm not saying to need to become a wizard in PhotoShop just to send screenshots, but "sharpening the saw" is always handy. It may be some little application or setting built into Windows or Visual Studio/Eclipse that will help, or it might be some new programming technique or component that will save you time. Here are three quick suggestions, I'm sure you can add more.

Snipping Tool

PPT is not a graphics editorComes with every copy of Windows since Vista. It provides an incredibly easy way to quickly take a screenshot, annotate it and save it to a JPG, PNG or GIF. You'll find it in the Accessories folder on your Start menu. It allows you to take full screen clips, or just a single window, a rectangle or even free form selection. Once you're taken the shot, you can edit it, and even email directly from the tool. Even better, your computer memory won't be full of Powerpoint. Better yet, spring forSnagIt from TechSmith (or even their free Jing).

Version Control

I don't care if it's Git, Mercurial, Subversion, or even Team Foundation Server (just not Visual SourceSafe, please): if you are a developer and you're not using version control, you're doing it wrong. You don't need huge, multi-branched, carefully designed, documented, and managed overhead. Even just using it as a simple file system, even for a single user, even for just documentation. The first time you need to recover, "the version that worked on the customer servers three months ago", it will have recovered all the effort you made to install, learn, and configure it. There are even online versions, many for free, if you don't feel like installing it locally.

NoSQL

OK, this suggestion looks like it's a bit out there, and I'm not necessarily promoting NoSQL. Instead, I'm using it as a stand-in for, "different ways of doing something that might be better than what you're using now". Developers (and users as well) should at least be aware of alternative tools, and to know when they might be appropriate. In the case of NoSQL, it can be better than a standard relational database for certain types of data (particularly variable data, or when you want to avoid the overhead of converting back and forth between objects and data rows). Perhaps a functional(ish) language such as F# or Scala suits your current project. Maybe it's time to write a Web site using ASP.NET MVC, or Rails, or a desktop app using XAML. Go to a conference and sit in the talks for technologies you don't use, visit a local user group for "the other stuff", whatever. Just keep looking for better solutions for what you are doing now.

I admit that this post was inspired by yet another huge item in my inbox (in this case a 4MB RTF file with a single graphic, and it was from a developer, not marketing, so I apologize to my better groomed compatriots in marketing), but it is broader than that. We use these computers to make our lives easier, but if we're using it like a typewriter - or even exactly how you used your XT - it's time to take stock, explore options and learn a new tool or technique.

Application Development
Let Apptius save you time and money by adding functionality to your existing programs.
Microsoft Outlook
Apptius offers professional development services for custom Microsoft Outlook solutions
Microsoft Outlook Logo