Products

As a developer, you probably find yourself using your text editor for at least 80% of your working day. If you are not using your text editor, you are probably using some other development tool like git, the terminal or your web browsers development tools.

It stands to reason that as a developer, you should be trying to be as efficient as you can in as many of your development tools as possible. Here are a few tips to help you speed up your development workflow.

Become a Ninja in Your Text Editor

Modern code editors like Sublime Text, Atom, PHPStorm and Intellij are filled to the brim with cool tricks to help you become a more efficient developer. Simply learning these built in tools can speed up your workflow and improve the quality of your output.

Some of these features, like multiple cursors and regular expression searching, can be difficult to find, especially if you don’t know that they exist. Thankfully, there are plenty of articles and courses that will run over some of the coolest features in your text editor. If you are a Sublime Text, user then there is a free course over at TutsPlus that runs through many of these handy tools. As a bonus, many of these tools and shortcuts work the exact same way as those in the Atom text editor. (http://code.tutsplus.com/courses/perfect-workflow-in-sublime-text-2)

Find and Create Snippets, then Utilise Them

Snippets allow you to turn small, simple, memorable words into pieces of code that you may find yourself typing over and over. These can save you so much time when doing things like creating controllers and models, or typing debug code. Many text editors already come with snippets included for your the most commonly performed tasks like writing out a function.

As well as using pre-defined snippets it’s also a good idea to create your own, as every developers workflow is different and each developer will face different challenges. Every text editor is different, so we will just go over two of the most popular editors. Sublime Text and Atom.

Sublime Text

To create a snippet in sublime text go to Tools -> New Snippet. You will be provided with a skeleton for a snippet which will look something like this:

<snippet>
<content><![CDATA[Hello, ${1:this} is a ${2:snippet}.]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<!-- <tabTrigger>hello</tabTrigger> -->
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
</snippet>

Simply replace anything inside of the CDATA tag with what you want your snippet to contain and save it. If you want a tab trigger on your snippet, or want your snippet to only work in a certain language you can also set that.

Here is a simple example snippet for PHP:

<snippet>
<content><![CDATA[var_dump(${1:$param1}, ${2:$param2});]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<tabTrigger>dump</tabTrigger>
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<scope>source.php</scope>
</snippet>

Atom

To utilise snippets in Atom you will need to install the snippets plugin atom/snippets which you can find using the package manager.

To create a basic snippet make a new file in ~/.atom/snippets.cson (on Windows, that’s C:User{Username}.atomsnippets.cson).

The first keys are the selectors where this snippets should be active e.g. source.js, source.php. The next level of keys are the snippet names that identify the snippet on the snippet pane / search. Under each snippet name is a prefix that should trigger the snippet and a body to insert when the snippet is triggered.

Utilise Provisioning Tools for Your Development Environment

As well as increasing your own efficiency as a developer it is also useful to help out your team whenever possible. Using a provisioning tool like Vagrant can help you and your team to quickly manage and upgrade development environments, as well as on boarding new team members.

About the Author

From the small, to the large, Lewis has tackled and developed a vast selection of projects since he started developing over 8 years ago. Lewis has the ability to program in over 25 languages from the well-known; PHP, Java, C and Objective-C to the less well-known; RDFa, Sparql and Maude. For any queries regarding the realisation and development of your project, Lewis will be your primary contact. Outside of work, Lewis has a passion for films, music and he’s also a bit of a Disney geek.