The top utilities that solve annoying development problems.
Software development has always been filled with small, annoying tasks that must be performed but chew up valuable time. While the burden of these chores was bearable in the past, today’s projects involve so much set up and such extensive preparation that it is almost a project in itself to set up a new project.
Thank goodness for the large number of utilities that can take on some of this work and relieve us from the tedium of manually solving a wide variety of housekeeping tasks. We looked at approximately 30 utilities — small standalone programs that address a single pain point — and selected the top six, which are presented here.
These products were extensively tested before being chosen and ranked: There are three finalists, two winners of the Jolt Productivity Award, and one winner of the Jolt Award for top utility of the year — which covers the last 12 months. We expect that several of these products will find immediate use in your environment.
The Jolt Judges for this category were: Andrew Binstock, Robert del Rossi, Gary Evans, Mike Riley, and Gigi Sayfan.
Fiddler is an unexpected surprise: like a Volkswagen Karmann Ghia with a Turbo 327 under the hood. It shows you everything that is going on behind your browser, mobile device, or Web-aware application. Fiddler monitors traffic to and from browsers (IE, Chrome, Safari, Firefox, and Opera); .NET, Java, PHP, and WinHTTP apps; and mobile devices (Android, IOS, WinPhone 7, and PocketPC).
Installation is drop-dead simple. Start your browser, start Fiddler, and HTTP/HTTPs traffic capture begins. Fortunately, the request/response traffic is filterable so you can zero in on traffic from specific sessions. A very useful display is the Timeline, showing the sequencing and absolute time-frame of each message. Need to send a custom request to the server? You can use the Composer to build the request string manually in Raw mode or get simple assists in Parsed mode. Need to modify traffic? Fiddlerscript is a simple language that lets you define rules for tweaking requests and responses. .NET developers have the capability to capture Web traffic (including AJAX requests) for playback with the Visual Studio Web Test product.
I am amazed at what Fiddler provides functionally. My only stumbling point was getting the detailed help that I needed to understand how to exploit its power. The website Help is adequate, but is best for configuring Fiddler for different browsers. Apparently, a book on Fiddler is in the works.
Fiddler was acquired late last year by Telerik, the UI Framework company, so Fiddler has substantial resources behind it. The company has committed to keeping Fiddler as a free product — which only enhances the utility’s attraction.
— Gary Evans
I first saw Indigo Studio — an excellent, storyboard and wireframe designer — in action a few months when evaluating Infragistics’ comprehensive NetAdvantage Ultimate package. Since then, Indigo Studio has gained considerable momentum in the user interface design tool sector. Running on both Mac OS X and Windows, Indigo Studio offers designers and developers a fast, painless way to draw out storyboards and hook these up to screen mockups with working UI elements. In addition, it’s currently available at no cost.
It comes prepopulated with various usage scenarios that can be dropped into a storyboard and edited to fit the current application. The wireframing can be done easily from there in Indigo, which provides easy-to-use tools to get from concept to to prototype quickly. The resulting prototypes can be run on any mobile device that supports HTML5. To get a quick overview of how this all works, the vendor, Infragistics, provides a quick walk-through video.
— Mike Riley
VMware Fusion 5.0 is a virtual machine host designed exclusively for the Mac OS X platform. In addition to running Windows and Linux VMs, Fusion also has the ability to run native Mac OS X virtual machines. While these OSX VMs can’t be used outside of Apple hardware-hosted environments, they offer a nice way to sandbox system updates and software patches that, unlike Windows or Linux updates, cannot easily be rolled back. VMware Fusion 5.0 also offers several useful features for running a Windows VM, including full support for 3D hardware-accelerated Windows 8. It also supports the latest Mac OS X features, such as the ability to stream a virtual machine’s display output to an AirPlay-compatible device, such as an AppleTV.
At $49, Fusion is also considerably less expensive than its inspired Workstation counterpart, and it provides a superb solution for Windows and Mac developers alike looking to run near native Windows machine performance without having to resort to Apple’s Boot Camp.
— Mike Riley
In a world where there are dozens of free diff and merge tools, a product would have to be pretty special to charge for this capability. Predictably, Araxis Merge is an excellent comparison and merge tool. It has a rich set of features, yet manages to maintain a clean and uncluttered user interface. Most notable among its features are the ability to do folder/directory comparison and synchronization in a nice collapsible tree view. You can then drill down and compare text files, binary files, document formats, and even image files. The text file comparison is the most common, of course. It works with various line endings and encodings. You get to decide what counts as a difference (line endings, whitespace, etc). Araxis also supports two-way and three-way merge with a very convenient two- or three-pane window. I have mostly used Araxis Merge on Windows, but it has a very slick Mac OS X version as well.
Araxis Merge also integrates with many IDEs and version-control systems, so you don’t have to step out of your main tool just to do a file comparison or merge, or you can use it in standalone mode.
— Gigi Sayfan
LINQPad is an amazing tool whose claim to fame is interactive support for .NET Language Integrated Query (LINQ). However, it is actually a general-purpose C# REPL that also allows you to use SQL. If you are a .NET developer, LINQPad is indispensable. Its user interface has a DB connections pane, saved queries pane, and a tabbed main pane with output. In LINQPad, you can bang out some code, select a part of it, and execute it. You are not limited to querying and can modify your data. My favorite feature is the
Dump() function, which takes arbitrary objects and displays them in an easy-to-explore representation in the output pane.
Unfortunately, LINQPad runs only on Window, even though Mono brought .NET to Linux and Mac a long time ago. But the price for the standard edition (free) is right. If you want auto-completion as you enter code, you’ll have to pay for the pro edition.
— Gigi Sayfan
VMware has become such a powerhouse vendor in IT — and the commercial parent of the the virtualization revolution that has brought us the cloud — that it’s hard to remember that it started out, years ago, as a developer utility vendor. The early versions of VMware Workstation were sold to programming teams to use as porting verification tools that could be run on the developer workstation. Only later did the IT implications of hosting virtual machines become apparent, and then the juggernaut was born.
recent releases of VMware Workstation show convincingly that the company has not forgotten its developer roots. For a while, the product has had the ability to capture and log all events in the VM, then play them back. This is a really useful feature when trying to track down hard-to-duplicate bugs or unexpected anomalies. VMware Workstation 9.0 enables you to more easily save VMs and share them with other teams. They can be sent as encrypted and locked VMs, or they can stay hosted and you can simply use the browser to access them remotely via a Web interface (even if the VM is not running a Web app). This newest version adds enhanced support for hardware and new OSs such as Windows 8. It also now offers OpenGL support on Linux.
Finally, Workstation has deeper integration with cloud deployment. As shown in the image, it’s easy to set up entire configurations of VMs including clients, servers, and all the supporting infrastructure on a single machine and transition those VMs to production using Cloud Foundry containers. Integration with Visual Studio and Eclipse makes this strategy of local test and deploy easier to accomplish than at any previous time.
VMware Workstation has won Jolt Awards in the past, and it’s clear from this latest release, that VMware still understands developer needs well and is committed to serving them.
— Andrew Binstock