Tips For Being A Productive Developer

I think one of the more popular discussions that comes up among developers (and designers) from time-time is how to be productive as possible. Personally, I’d go as to far as to say that it gets harder and harder each year (let alone each, say, quarter).

By that, I mean we try to use tools such as IRC, Skype, and Slack to mitigate the amount of email that we have, but they also require that we divide our time between focusing on our tasks at hand and then mulitasking between however many other applications are open (such as Twitter, Facebook, email, and whatever else).

I’m not knocking this at all! It just doesn’t work very well for me. Anyway, just as others like to share their tips for how to be productive, I thought I’d share the ways in which I try to achieve developer productivity (because that in and of itself is a challenge enough) rather than, say, general productivity.

So here are a few things that I do – and I’m curious to hear yours, as well.

Finding Your Productivity

To be clear, the things that work for me won’t necessarily work for you or for anyone else.

We all have different setups, we all work on different things, and we all have different personality types. Some of my developer friends are fantastic at, say, getting things done and chatting in Slack at the same time.

Me? Not so much. I have to “batch” my work (no, I don’t use the Pomodoro Technique). I just mean that I have times in which I have certain applications and notifications active and times in which I don’t.

So whatever I’m about to share is what I’ve found useful for me. Maybe it’ll work for you, maybe not.

Your Tools

Above all else, use the tools that make you happy – that have you enjoy the work that you’re doing.

One of the biggest things developers love to argue about is which IDE or which set of tools work best for a given task. Sure, there are some things that work better than others for certain tasks, but what IDE you use is not necessarily one of those things.


Instead, find the things that make you look forward to writing code – that have you comfortable in the environment that you work with and that help you get things done and get it done in a way that you like working.

Otherwise, you’re going to constantly feel this slight annoyance while you’re working on whatever task you’re focused on.

Your Tunes

We’ve all got our own tastes in music and they vary greatly, naturally. In fact, we’re all fans of different genres in our own tastes in music. To me, finding the right music to help get into the zone is key to making sure I’m as productive as possible.

I know some people who can get into the zone with the TV on, some need absolute silence, and so on. Personally, I gotta have music playing.


Years ago, I could get away with almost any type of music, but for the past few years, ambient tunes have been what have really helped get me into the zone and helped me stay there.

Thank goodness for Spotify and the discovery feature. I’ve found a number of great playlists that help with this.

Your Distractions

Like anything, we’re all distracted by different things. For me, multiple chat clients or having to be available for communication when I’d rather be ‘dark’ is something that can make it incredibly hard to focus.

If I get notifications on my desktop or my phone about an incoming Slack message, Telegram message, email, or whatever else, then it takes me out of the task that I’m working on.


So I close them all or I set up ‘Do Not Disturb’ until the time is good for me to actually open them again. There’s simply too much stuff working for my attention that prevents me from focusing on the primary task at hand – which is usually writing code – to actually get me into the zone long enough to get something useful done.

Your Drink

This is totally a bonus, but one of the things that really does help me focus a bit is having a mug of coffee beside me whenever I’m working on a project.

I know that for some, caffeine induces anxiety and makes it more difficult to focus. For me, it helps me to stay focused on what I’m working on and actually helps me to stay relaxed or de-stressed a bit such that I can more effectively think through the problem(s) that I’m trying to solve.

And when I say mug, I mean a very large mug.

What Else?

But that’s the stuff that works for me. I’m sure I’ve forgotten something, haven’t considered something, or haven’t found something that’s even more useful.

So what about you? What helps get you into the zone and helps you stay there for as long as you need?

16 Replies to “Tips For Being A Productive Developer”

  1. We’d make great office mates!

    And i’m going to throw this one out there: I’ve subscribed for two years now with 0 regrets and a lot more productivity: 

    There’s probably a bunch of dressed up science behind it but two things in particular work for me: a huge variety of ambient music and soundscapes mixed with the ability to set a timer to create blocks in my work. I usually go for 90 minutes at a time, then break, then on to the next project. I use it just about every day.

  2. My Tools are Dreamweaver (code view) and Photoshop. For my drink, it’s a hazelnut cocoa. For my music, it’s generally the 70’s classic rock, but there are many times I listen to Delerium, Enigma, Chorus of Tribes. Time of day is important, so for me, I’m most productive late-morning to early afternoon, plus evenings.

    1. I can totally dig the hazelnut (though I like that in my coffee).

      70’s classic rock is part of what motivated me to pick up the guitar when I was a kid so it’s near and dear to me, but I don’t always have the ability to focus on it while working, either :).

      I agree with you that time of day is important — I try to break up my day with some exercise. Usually it works out alright.

  3. Oh my gosh…

    Where to begin.

    Workflow might be called Whatflow instead Tom LOL.

    IDE’s I use JetBrains PHPStorm for PHP, I’ve tried most out there. This one is quite nice in as far as can be. I use Sublime Text quite a bit as well. Obviously for Windows, Visual Studio. It really “Cranks” me having to go from one to another. Visual Studio is just so wonderful other IDE’s feel like I stepped back 15 years. They are literally where Visual Studio was in VS 97.

    I use Xampp for PHP’n local. Directories mirror to another PC for backup as well as a actual Rack server (not in the rack) when its powered up, that has CentOS 6.5 on it.

    I have an inkjet, large format inkjet, a 24″ inkjet and a 60″ inket, black laser and color laser all connected to a slim P4 for all printing needs. Also a dot matrix wide carriage which believe it or not, still the most useful for code printouts.

    Have a core i3 server for .NET web app testing. Then there is a core i7 gaming PC which seldom see’s its power light on.

    I dont put music on, TV at times. Glancingly watch or listen to a movie I have already saw 50 times on second monitor (Samsung’s, have tuner built on) so still can get hi-res 2048+ on em’. For web development “visual” stuff that monitor is often just auto refreshing. Again, code mirrored to that PC, auto refreshes the page. I HATE flipping back and forth between browser and IDE. If I need get into inspecting elements with chrome, opera or FF, MSIE well… still flippin’ ARG!

    Coffee… Keurig.

    Many folks like use Mac’s for PHP work, ghastly IMHO in comparison to a powerhouse Windows Box. I tried one, got rid of it. Even went as far as a VM with OS/X on the windows box, again, didnt dig it. The wider range of tools for Windows just gets “more done” in less time.

    For example, For somethings I must use Illustrator or PS, other things are WAY better with Corel Draw (can be on the magnitude of 2500% faster) and yet for others, Corel Paint Shop Pro which again, another order of magnitude faster workflow when it comes to images etc.

    Tools such as Smart Draw, Concept Draw, Mind Map I can go on... On the Mac it was like I lost a ton of things for code flow. My only BIG wish would be a fantabulous PHP IDE expansion for Visual Studio that still afford most of the wonderful wonders of VS.

    I started really messin' about with Concrete5 two days ago, its quite interesting. If you have'nt checked it out, do so. I actually looked at it from due to a post on WPTav. Monday I had to talk to Codero where we have a server (these people are the BEST I tell ya in hosting). I and the tech were talking WP for a little bit and he mentioned Concrete5 again. He showed me a few sites they have hosted for clients of theirs and I was pretty floored. Tols me they are seeing a marked increase in people using it. Also told me his brother who works for 1and1 told him that they are noticing both J! and WP sites switching to it. Might be a good "foot in the door early deal".

    But back to it, getting good workflow is a difficult proposition with PHP. It really is.

    Nothing about the environment is truly cohesive. If you have done any work with Visual Studio you are already aware. If you havent then give it a try. If your on a Mac I dont know if a VM for the mac will run it stable.

    Either way one cuts it, the future is that. Microsoft’s been sly as a fox in their steps since 2000. After 9/11 they were given the “full steam ahead” pretty much globally behind closed doors. I encourage any PHP coder to get .NET / C# savvy quick as can. Actually, will be overjoyed in compare to PHP (especially you Tom! since you like “good code”). Doesnt mean its your step in bread winner next month or six months down the road. But within 3-5 years, it is, assuming that the big boys dont gobble up the world.

    The fundamental paradigm shift of us stepping back 35 years to server/smart client (Smart terminals back then… They were’nt) with Windows and OS/X is going to change the face of everything. Everything will be “mobility” first (vs mobile first). Unfortunately PHP is going to get smashed in it. Its just not capable enough to service whats coming. HTML and Javascript (as we know it) will also in time succumb as part of this smart client deal is Object Orientation focused outputs. Thats how we make the smart client event driven and powerfully capable.

    As has been the case in computing history, its the game developers that bust the predefined molds, slave in new concepts and ways and ultimately in time their work defines new standards and ways/means in these technologies. The same base concepts that made online co-op gaming reality in PS/3 and Xbox are the underlying codebases that make for the “Next InterNut”.

    PHP is simply not capable of coping with demand nor does it have the rich codebase that is “predictable”. In other words, while there are buckets of PHP code for everything from data collections to ORM nothing gets standardized into the language or a language library/framework. Not so with .NET and Mono is pudding proof. Microsoft’s “coder” hangup for YEARS (and YEARS) has been the Mac vs Windows, Windows .vs. Linux deal, Apache, Nginx, IIs wars, mySQL, SQlite vs MS SQL Server. Tribesman. Mono breaches that bringing a full powerhouse development environment to coders that is pretty much OS independent. That is the bee sting of death to pretty much all buy Java which will live due to industry for quite sometime to come. FREE.

    Database barriers are breached. Targeting a given DB is a done deal.

    As I noted elsewhere, mySQL being bought by Oracle was not a “We are hedging our bets for the future”. Far from it. Look at the “timing”.

    The EU refused to allow it, then all of a sudden did, unconditionally. WikLeak broke the why’s. Pressure. Governmental pressure, not businesses.

    The seemingly random events of things like, “Oh… Visual Studio free?” and unprecedented GEM of Microsofts .NET Open Source? From a company that since inception has been quite the opposite. Why? Not because they were flailing financially. Because thats been in the roadmap and it was time. What seems like random events are not random at all.

    I dont know where you are spiritually Tom but same same. If you are spiritually aware then you are aware that the same reason’s human kind cant make a random number generator in your PC or even in attempts using atomic based atom smashers is because random doesnt exist. Complexity so far beyond the human brain to understand may seem like randomness is a reality but its not as science is finding with the universal constants now known and surely more to come.

    MS doesnt do random.

    They have made the moves they have made to be the global IT fella’s yet again.

    C# was not fast enough to compete with even PHP scant years back, now, 300%+ faster and thats only going to increase as more multi-core interprocess refinement occurs and new (not really) kinds of memory come into market such as parallel memory groupings with independent bandwidths/busses) No wine before its time.

    Thus… I encourage all of those folks who love coding and what they do to take a little time each day. Learn something new. But dont learn based on the “now” if the “now” is paying the bills. Instead, invest knowledge. Invest on learning a new platform. Even if you hate Windows, get a Win PC, live with it in as far as learning goes. Learn C#, Learn .NET. Its as good as money in the bank (actually better). The future is not a cobbled together InterNut. Quite the opposite. Having the tools, skills and knowledge will keep bread on the table.

    “But Rick, lets say your right for sake of argument, why cant I just learn as I see the transition taking place?” Simple. The technology involved in the transition itself will need be learned. If one needs learn EVERYTHING one is already behind the curve of OPPORTUNITY.

    See… developers/designers etc. Tom… Freelance. Freelancing is going to take a really sizeable hit in this transition. But, those with the skills, vision, moxy, ready to hit the ground running have opportunity. The others will try straggle along, “I must keep my current gig alive” as it wanes and wanes and wanes.

    Tis’ also why I’ve stated numerous times that WP need be ported to .NET and I am not talking what phalanger did. Thats proof puddin’ of performance and performance only as well as C#, .NET, PHP happily running together. I am talking a whole new OOP codebase properly extensible, standards, where backward compatibility can live for some years to come BUT the product is fit and ready for what is coming. Considering WP’s huge market it is important that the transition codebase is underway preferably yesterday before that market gets parceled up. Anyone thinks it wont be doesnt know corporate world. No entity with 20%+ of Internet sites is not a target. In fact, quite the opposite. BIG target.

    Some folks at our suds night last friday brought this up (second time). .NEt developers going, “Why dont we…” That is to say, make a WP compatible CMS yet under the hood, nothing like WP at all. But pluggable.

    I discouraged the yak, from where I stand, Too many roosters in the hen house will end up killing both off.

  4. For music – similar to ambient – I’ve been turning to video game music recently. It’s specially designed to keep you focused on the task on hand (usually playing the game) so it’s fantastic to get me through work.

    I also like to just get up and look away from my computer every 30 mins or so, just for 5-10 minutes at maximum. I work from home so it may be cuddling with the dogs really quick, or doing a load of laundry, but it’s amazing how much that can refresh my mind (and I get a lot of chores done during the day, so double win).

  5. I’m too old.

    I like Celtic Women, people who can sing. Beautiful voices.

    We all go through transitions (I think).

    When I was a yoot I dug Ronnie Montrose, Deep Purple, Kansas, etc etc.

    Got older… Started liking more refined music.

    Want hear something amazing? Listen to the whole song.

    Personally never been a big fan of this lady but literally everyone I have listen to this (especially if you have a good speaker system not just a cheapie mutli-media one (I have cambridge soundworks sub woofer and satellites on this PC) is floored.

Leave a Reply