August 30, 2017

What Neat Tools Do You Have in Your Back Pocket?

By Tyler Evert

While everyone has a favorite IDE, we all have less important, but still extremely helpful little tools. These tools won't make a project successful on their own, but can make a job feel a lot smoother. We asked some of our developers what their little lifesaver tools are.

What useful (and maybe uncommon) development tool, extension, plugin, etc. would you recommend people check out?

Dustin Ewers - Developer
Dustin Ewers
Developer

There are three tools I think more developers should use.

The first is DotNetFiddle (https://dotnetfiddle.net/). This tool is an online IDE that makes it really easy to sketch out small snippets of code. I use it to proof concepts instead of writing a throw away console apps. You can also share your fiddles if you want to review it with your team.

The second tool is cmder (http://cmder.net/). Cmder is a tabbed shell emulator. You can create PowerShell, Bash, and standard command shells within the same interface. It goes great with command line friendly tool stacks like .NET Core and Node.js.

The final tool is RegExStorm (http://regexstorm.net/tester). This tool provides a handy testing environment for regular expressions. I develop and test all of my regexes here before putting them in my code.

William Welbes - Developer
William Welbes
Developer

If you’re developing for iOS or macOS using Swift and you haven’t checked out Playgrounds in Xcode you’re missing out. It has become a habit for me to rapidly iterate on some chunk of code in a playground with real time output both to the console and also to UIViews. It allows for great interactive development that can really speed things up. When I recently implemented a view animation for a client iOS app, I built it using a playground with an output UIView. As I changed the animation parameters and curves, I could see in real time how the animation would look. This eliminated a lot of guess work and time that would have been consumed in build and run cycles. I find myself often popping open a playground for things like date formatting, data processing, and view layout testing. Playgrounds are also great for just interactively learning Swift or to quickly share running code with other developers.

Tom Duex - Consultant
Tom Duex
Consultant

Sometimes I have to write regular expressions, or regex, and whenever I do I use RegExr at regexr.com. It's a live regex editor that allows you to type regex statements and see them matched up against sample text in real-time. In a handy sidebar it contains a cheatsheet and reference material so you're never stuck wondering what that cryptic expression does. You can even hover over each character in your expression to get a short description of what each one does. Just playing around with the site has leveled up my regex skills, and also saved me quite a bit of time in figuring out some complex expressions.

Goutham Pai - Developer
Goutham Pai
Developer

If you are a developer that spends a lot of time writing apps in React, Angular, or some other front end framework, a tool I highly recommend is Visual Studio Code (VSCode). A common theme in its feature-set is that every feature speeds up development. Since a lot of front end frameworks employ the use of npm and webpack these days, I find the built in terminal a feature that is invaluable. It lets me transpile my JS code quickly and I’m able to see the changes I recently made reflected without ever having to lift my hands off my keyboard. I also find the inclusion of intellisense support makes my development process much more fluid. Between its support for a wide number of languages, and a healthy store of extensions available to fill in features not included by default makes it a tool that I would highly recommend to anyone that writes web apps.

Duane Raiche - Developer
Duane Raiche
Developer

There are three tools that I’ve found extremely useful: Agent Ransack, Productivity Power Tools for Visual Studio, and Liquibase. Agent Ransack is a file searching utility which I’ve found extremely helpful, especially when trying to learn a big application. It can search for files that contain text much faster and with easier to understand results than the built-in search functions that I’ve tried. Productivity Power Tools is an extension for Visual Studio which can do a number of things, but I especially like it for its ability to color-code Visual Studio tabs according to the project they belong to, and to auto-sort and remove unused “using” statements in my code. Finally, Liquibase is an open source database migration tool that allows you to write SQL migrations in XML that you can check into your codebase. I’m as much of a fan of Entity Framework’s migrations as the next person, but there are times when having a platform-agnostic tool you can easily integrate with any application is really useful.

What hidden gems have you found instrumental?


Tyler Evert - DevOps Consultant

About Tyler Evert

Tyler is a DevOps consultant who enjoys teaching and championing for better ways of doing things. Whether it be better testing practices, automation tooling, or core agile principles, the way forward always lies in small steps of improvement.