Developer++

This weekend I popped home to Bristol for Web Developers Conference 2011 and while I was mainly going to see a few friends I came away inspired to make some changes. Three of the talks at first seemed to be the common "This is how I went from being an inexperienced dev to being part of an awesome company" but the combination of different approaches and characters complimented each other perfectly and left me thinking for most of the day. By the time Paul Boag finished his talk I was ready for some big changes.

I’ve been working up in Newcastle recently on the longest stay of my Nomadic Web Development mission, wandering the globe and country getting things done.

This weekend I popped home to Bristol for Web Developers Conference 2011 and while I was mainly going to heckle Elliott Kember and see a few friends I came away inspired to make some changes. Three of the talks at first seemed to be the common “This is how I went from being an inexperienced dev to being part of an awesome company” but the combination of different approaches and characters complimented each other perfectly and left me thinking for most of the day. By the time Paul Boag finished his talk I was ready for some changes.

On the whole Neil Dennis, Ben Bodien, Elliott Kember, John O’Nolan and Paul Boag got me thinking how to improve myself as a developer, business owner and as a person in general.

What grinds your gears?

The word “emotional” has negative connotations and to most if somebody is emotional they are weak minded, prone to random fits of crying and is likely to have mood swings. This thinking is absolute crap as we are all emotional and emotion drives almost every single decision we make, how well we sleep or even what we buy, whether it’s buying a flash car to look good and feel important, or anger when somebody insults us.

Learning to identify the things that invoke these emotions can be the first step in making yourself a better developer. Ben described how after every project he looks back in review and works out what elements of the project made him happy, proud, relieved, stressed, angry, frustrated and “ready to smash a baby squirrel with his fist”. By going over these points in a project (A client asking for a stupid design, scope creep, the feeling when the site launches perfectly and gets in the press, etc) he can think about how each of these things came to be and strive to repeat the good and avoid the bad.

Things that recently have made me frustrated are:

  • Constant streams of emails causing distractions
  • Complaints
  • Non-constructive feedback
  • Being constantly busy

These are pretty common problems for people working in the web industry thanks to the high expectations, low understandings of what we do and ease in which we can work out of hours.

How do I plan to get past these issues?

Remove your distractions

Paul Boag pointed out that if you have your email coming in every 5 minutes then you are being distracted about 22,000 times a year. That’s a fucking lot! He suggests that your check your email once or twice a day, but by turning my emails down to come through once an hour then I have massively reduced the number of distractions. It gives me nice one-hour blocks to get work done, and if I finish a task then I can pick another task. Anything else I’ll just tell people that I’ll look into it in the morning. Got server up-time to worry about? Set up some rules with AwayFind.com.

I’ll also be setting up rules for things like pull requests. I am incredibly happy that CodeIgniter, FuelPHP and PyroCMS are all doing so well that there is almost constant discussion on GitHub but damn is it distracting. Almost every 5 minutes a pull request comes in that needs discussion or feedback, other people need to be consulted, testing needs to be done, arguments randomly spring up for and against, people start moaning about stuff and BAM I am distracted. It’s non-stop. From now on all emails from GitHub go in a box, and I’ll open that box for one hour every evening if I feel like putting my open-source hat on. I’ll do that when I am not distracted and in a good mood, meaning I am likely to respond to everything better and give my best answers.

Learn to love complaints

John O’Nolan made a genius point and turned my thinking about complaints on its ass. He said “If somebody takes the time out of their day and explain in detail to you all the ways in which you are shit, they are amazing. If you can have a conversation about them about why and improve on this then they will be the first to turn around and be your biggest evangelist. We had this on the PancakeApp project with people calling it a terrible product because it was lacking features they wanted. We wrote those features quickly and PancakeApp as a whole became better for it, but even better we had the complaining user turn around and start tweeting our praises to his thousands of followers which lead to a mention by Smashing Magazine. That was Lee Tengum’s job and he did it well, while my first reaction would have been to call the guy an unreasonable ass for being so complacent and point him to the Feature Request forums.

From this point on I’ll be thanking people for their complaints and try my hardest to get a conversation from them as to what the issue is. If they are then just unreasonable and offer nothing constructive they are an idiot. John points out that in this position he will normally just say “Ok, you make a better one and then we’ll talk” because if they cannot offer advice as to how something should be improved then they obviously have no base for their complaints and should be ignored. Simple!

Why are you so busy?

This is a problem every freelance developer has. Paul explained how so many of us like to wear it as a badge of honor and none of us can pretend that we don’t. How many times have we seen or written the tweet “I’ve worked for 18 hours, drank 12 coffee’s and I still have more work to do! #fml”. Fuck I think that might be a direct quote from me! It’s not a good thing and thinking about it it’s just stupid. If anyone has that much work to do they need to have a think about why.

If it’s the case of your boss having unrealistic expectations of your time then fuck them: that needs to change. Your boss either values you highly and will be forced into action when you try to quit, or is treating you like an idiot and you would be better off elsewhere.

It could be the case that you are the boss and if you still have that much work then you need an employee. I am currently being asked for enough hours to keep 3 clones busy and I am tired of saying no to people, it’s obviously time to start saying yes.

Things really do seem that simple right now. I’ve employed before when I was 18 and inexperienced. My company did not last long after the start of the recession which made me cautious about going down that road again, but now I have five more years in the industry, way more demand and a company that is behind several interested products. I’ll be starting the recruitment process formally soon, but HappyNinjas Ltd are looking for a FuelPHP developer.

Summary

These speakers pointed out some things to me that should have been obvious. Look at who you are, concentrate on what is important, ignore things that you don’t need to worry about and try to solve things instead of simply accepting them as standard.

I would be interested to see other posts from you guys about how you see your career at the moment and how you can see it changing in the near future. What are you going to do to make yourself less stressed, more content and in return more productive?