While writing another article on productivity might seem unproductive in itself, we attempt to disagree. Most of the productivity articles for web developers tend to work their way around certain tools that promise an incredible increase in work output and a significant decrease in invested time. However, instead of focusing on particular tools or software, let’s look at underlying productivity principles that can help you achieve your goals in a timely fashion. We won’t disregard the available tools altogether and will throw in some suggestions here and there, as they might come in handy while automating some of your routine workflows.
According to the Getting-Things-Done approach, you need to organize your priorities, to-dos, and your schedule in a manageable way. Getting things out of your head and on paper saves time and gives you a clear perspective on what to work on next. Instead of thinking of your daily responsibilities, clear your mind to concentrate on the tasks at hand by writing things down in an app, on paper, or whatever medium you prefer.
You don’t necessarily have to follow David Allen’s methodology, instead — remix and customize the approach to match your needs. What’s important, however, is not to just write things down, but also — break them into actionable steps, assign priorities and due dates, reflect on your plan to see if there’s anything missing, and finally engage with your plan and get to work.
There are a few apps that can help you arrange your routine in actionable order, such as Evernote, Clear, and Todoist, among many others. Instead of bookmarking each interesting article and overwhelming your browser, consider using Pocket to save articles for future reading. Lest you lose some of your important information, always use backup platforms such as Dropbox, Google Drive, and iCloud, and a cloud-provider integration whenever possible for a smooth backup process.
Investing in better software
Don’t be afraid to invest in better software: being a developer, it’s important you stay up-to-date with the available technologies and operating systems that can potentially increase your productivity dramatically. Instead of constantly trying to fix your existing software and lose valuable time, switch to something that might cost more initially but will result in savings in the long run. For that matter, consider buying a Macbook if you have not already, Transmit (FTP/SFTP), and MAMP Pro (HTTP Server). Having two monitors can also help because things can get too contained or cluttered otherwise, and switching back and forth between tabs can be an overwhelming and distracting experience in itself. Make sure you have enough processing power and RAM on your computer to handle all the tasks with ease and speed.
Another important aspect of increasing your overall productivity is managing distractions. With a cluttered desk, social media notifications, TV, YouTube, and music, you’ll have a difficult time concentrating and accomplishing your work on schedule. It’s a good idea to mute your phone while you work and put time limits on all your social media or delete them altogether (you probably won’t lose much, but you may become a happier person). Even reducing the number of toolbars and extensions in your browser and cleaning up your desktop will bring back your focus to the task at hand.
Since much of a programmer’s time revolves around iterative or repetitive tasks, you’ll save yourself a great deal of time by automating some of those menial processes.
There are a couple of existing tools (especially for Mac users) that can do repetitive tasks for you, like Automator, which can change filenames, resize images, archive or back up important files, or can be customized for any other complicated workflow. There’s another tool, called Alfred, which can boost your productivity and efficiency with hotkeys, keywords, text expansion, and other easily customizable actions. Among more niche workflow tools are vim macro for automating text-editing recurring patterns, VBA apps for Excel tasks, etc. The rule of thumb here is this: whatever else you’d like to automate, perform a simple Google search and see if there are any available tools or features you can use to cut down on some of the menial labor tasks that can be easily automated.
Learning and reading
While blogs are a good source of inspiration and examples of hands-on approaches to some common web development issues, books often offer a unique perspective from seasoned developers and senior software engineers on managing projects or learning a particular technology. Reading will not only enrich you as a person but also help you grow professionally. Aim at reading every day, and you’ll soon see the benefits in your improved coding and soft skills.
Getting a mentor
Unfortunately, StackOverflow and similar programming platforms can’t solve every possible question you can have during your web development career, this is where having a coding mentor might help. Coding mentors can improve your understanding of the existing technologies, help you learn a new programming language, or guide you in your quest to increase productivity. You can ask for mentorship opportunities at work or look for coding mentors online.
Using keyboard shortcuts
Perhaps you’re already using the keyboard shortcuts, and if that’s the case, then let it be a friendly reminder to keep on using them to save time. However, even if you’re an experienced developer with the heavy baggage of learned keyboard shortcuts over the years, you’re still probably missing out on a few hotkeys here and there. The best way to learn new shortcuts (even a new language) is to use spaced-repetition flashcards software like Anki or SuperMemo.
Having offline documentation
You’ll still probably search for documentation on a particular library or framework online whenever you feel stuck; however, having offline documentation ready on your computer can save you loads of time and substantially help reduce context-switches. The best available tool on the market for storing your docs is Dash, which already comes with a set of documentation for any programming language imaginable, moreover, it has integrations with IDEs and is extensively customizable. What’s more important is to create your own documentation for any given project, continuously refactor and maintain your code to improve your and your team’s productivity.
Using other available timesaving tools
Clipboard history tools
As a developer, you’re probably all too familiar with a situation where you copied something to later paste it in your IDE only to find out that it’s no longer in the clipboard. Having something like a simple clipboard history tool can prove invaluable in increasing your productivity. Some examples of these tools include Flycut and Alfred.
API and inspection tools
Using a good HTTP request interface or API tool is mandatory for any developer. A few worthwhile examples of those tools would be Paw and Postman. It’s highly recommended to save request files for future use and have a shared place with widely used requests to exchange with your fellow developers. For inspecting traffic, use Charles, Fiddler, or Wireshark.
It’s important to remember that Rome was not built in a day — similarly, your productivity gains will come with time. Don’t try to overpush yourself and install all the possible apps to save time — it doesn’t work this way. Automate one thing at a time, read books and professional literature, network with your fellow coders and see what productivity tools they use, invest in better software, get a mentor, store documentation offline, and finally clear your desk!
I am a copywriter at Soshace.com, a hiring platform for web developers: hire a developer or apply for a remote job. If you have an interesting story to tell, please ping me on Twitter @ MaryVorontsov I would love to hear from you and share your story.