My top 5 favorite development tools

As a web developer, I constantly try to find new tools, new plugins, new packages or even new ways of programming to enhance the quality of my work. My relation with these tools evolves everyday. Here’s my current top 5 favorite tools that I regularly use to develop:

CLEAR - Organization

Granted, this first app is not a development tool. I use it to help plan the work ahead and make sure I do the right task at the right time. This app is really handy in an agency context where you constantly received last minute tasks to add to your schedule. If you are like me and can’t remember what happened 3 seconds ago, this app will definitely help you keep track of those last minute requests. It also helps me keep my desk paper free.

BROWSERSTACK - Testing

As you may already know, web programmers are required to test their websites on different browsers and on different platforms. In order to address this problem I use Browserstack. It’s an online service that runs the most popular operating systems and all the major browsers. With Browserstack you can access those different installations and run any website. You can test on a Mac, PC, iOs, Android and even Opera Mobile. Not only does Browserstack make my development process faster, it also allows me to test on browsers and platforms I wouldn’t normally have access to. Buying a device for every iOs screen resolutions or for every Android versions simply doesn’t make sense. This online service is ideal for the mobile-first era.

BEANSTALK - Code management & Deployment

Writing code is great but writing code with a team makes it even better! Most web developers will use softwares like Svn and Git. These softwares track all the changes and store them into one place so every programmer on the team can get the latest version of the code.

Beanstalk is a Svn and Git repository hosting service. In other words, it saves the changes that we make to our code in the cloud rather than on a computer and make it available to all programmers working on the website. It also includes a deployment service, which makes it the special tool that it is. When we are satisfied with a development version of a website we can easily deploy it. This means that Beanstalk is going to “deploy” the chosen version and make it available online. I like this app mostly because it speeds up the deployment process while allowing us to easily revert to a previous version.

COCOA REST CLIENT - Testing

Whenever I need to interact with data through an API, I use CocoaRestClient. An API is simply a service provided by the owner of the data to interact with it. For instance, a request made to an API could look like this: “Edit the password for user X”. CocoaRestClient provides a simple interface to test these requests. Once tested you can insert the request into the app. For example, when you press the “save” button in the Settings page, the app will request the API to save the edited password.

This application makes my development process much more efficient. It mainly helps avoid writing those tests directly into the app. Hallelujah!

GRUNT - Tasks runner

As a website developer I constantly try to program faster loading sites. I use scripts that will compress and lighten the weight of the different parts of a website. These scripts are called “Build scripts”. For example, a build script can compress the size of an image, take different files of codes and merge them into one and it can also remove all the spaces in the code lines to make the final file lighter. Grunt is a tasks runner. For instance, a task could be to compress all of the images. With grunt I can set multiple build scripts and execute them with one command. It makes building a website fun and especially painless.

I know that these tools haven’t revolutionized our field, but to me they have become a crucial part of my development process. It makes my work more efficient and also much simpler, as well as removing a big chunk of stress. With the numerous tools that are available, my advice is to not let yourself be intimidated by the learning barrier. Give them a try, experiment with them to see what they can offer. You might just stumble upon one that will revolutionize your world!