12. Take control of your Google calendar
"As an engineering director who attends a lot of meetings, the most important thing I’ve done to help me manage productivity has been to take control of my Google Calendar," says Etsy engineering director, Lara Hogan. "I use the Event Merge plugin to make it easier to read. Next, I colour-code meetings based on the type of thinking I’ll be doing (for example, one-on-ones, technical reviews or large group facilitations). Last, I’ll see if I can group events of the same colour together, so I don’t have as much context-switching to do from meeting to meeting. This has helped me significantly with brain drain on long meeting days."
13. Automate local dev environments
"I am productive if my coworkers are productive, and this is why I use Vagrant and Ansible to automate our local development environments," says Josh Lockhart, special projects director at New Media Campaigns. "Vagrant creates reproducible and portable development environments. Ansible is a server provisioning and automation tool. Each team member at New Media Campaigns uses Vagrant to create one local virtual machine, and Vagrant provisions the local virtual machine with Ansible to ensure the virtual machine is identical to our production server. This approach is paramount to productivity."
14. Remind yourself why you're working
"A big part of productivity for me is sustained motivation," reveals Aurelia Moser. "I use Reporter to track activities, things I’m proud of, how many coffees I’ve had, how much sleep I have(n’t) had ... It packages this data in a nice little suite of visualisations that I use to remind myself why I’m working so hard, and what might affect that work."
15. Meditate, medicate, caffeine-nap
"Productivity for me is rarely a technical challenge – I use lots of great tools, editors, and environments, all written by people who are far smarter than me," says Alex Sexton, engineer at Stripe. "Once you have a baseline of efficient tooling, productivity becomes more about focus and motivation. You can’t really fake motivation. You can, however, hack focus. You can meditate, medicate, caffeine-nap, Pomodoro, to-do list, and a thousand other things to get yourself in the right headspace. Find something healthy (enough) and repeatable and master it. I do a mix of each of those things and have experimented a ton with the variables. Once you’ve got ‘flow’ , your Vim keystroke efficiency really won’t matter."
16. Make use of hacks
"I recently started taking my clients’ pattern library and turning their code samples into a .sublime-snippet," says Dave Rupert, developer at Paravel. "It’s a really simple XML format that can easily be transpiled for Atom and Visual Studio Code:"
<snippet> <content><![CDATA[<button class="button button- -primary">$1</button>]]></content> <tabTrigger>btnprimary</ tabTrigger> <scope>source.html</scope> <description>Primary Button</description> </snippet>
"A pretty easy little hack to make prototyping out pages with an existing style guide fast, fast, fast."
17. Work smart, not hard
"All my local projects under development are served by a single Vagrant virtual machine, and I’ve written a Bash script to expedite new project creation," says Josh Lockhart. "I can execute create-project [slug] [domain] to spin up a new project. Each developer working on the project appends only one line to their Vagrant virtual machine’s Vagrantfile and executes vagrant reload --provision . The new project is available immediately via the Vagrant virtual machine at https://[slug].nmc/ . If we’re building a Craft, WordPress or Drupal website, we have additional Ansible roles that automate CMS, plugin and theme installation. Work smart, not hard."
18. Identify your patterns of productivity
"I’ll let you into a little secret," teases Cole Henley, technical director at Mud. "I’m a bit rubbish at productivity. I’m one of those people that thrives on deadlines, fuelled by caffeine and repetitive beats. However I have found that recording my work has really helped identify patterns of productivity. RescueTime has proven invaluable by giving me a visual guide to where and how my time is being spent."
19. Deep work
"After reading Georgetown professor Cal Newport ’s book Deep Work, which advocates focusing on tasks without distraction, I revamped my process for content ideation and creation, allowing me to do more work in less time," says Moz associate Ronell Smith. "I make this work by chunking projects in uninterrupted, two-to-four hour blocks ; working from an office with the door closed; and removing apps from mobile devices . The result: I’m getting done in 30 hours what was previously taking me 50 hours to complete."
20. Learn the pleasure of simplification
"I then turn these complex HTML blocks into simple custom tags (that are rendered with regular expressions and cached). A lazy responsive image with a fallback for non-JS users (or old browsers) may look like this:
<photo 480="" 768="" 960="" full="" alt="">
"If I ever change my approach to lazy-loaded responsive images, there’s only one place where I need to go to edit my code. I code faster. I feel quiet and confident. And simplifying complex stuff always gives me a motivation boost."
21. Prevent admin tasks from distracting you
"I’ve come to realise that admin – or, more specifically, email – is a necessary part of everyday work life," says Elliot Jay Stocks, creative director at Lagom. "Once I accepted this fact, I started experimenting with ways to stop admin tasks becoming constant distractions throughout the day. Drawing out a strict day plan didn’t work for me because I struggle to stick to things exactly, but I’ve found it useful to divide the day into two halves: the morning for productivity (heads-down design, for example) and the afternoon for admin-centric tasks: emails, marketing, project management, Slack messages and so on."
22. Automate best practices
"Time is a huge factor in staying productive," explains Google engineer Addy Osmani. "On my team at Google, our ethos is ‘share everything you can’. So for web projects, we try to share and automate as much configuration as possible. We have a shared ESLint config for fixing code-style issues, and a common Mocha and Chai set-up for unit testing.
Illustration by Dan Matutina