Return on Investment: Example

I gave a talk at the weekend which talked in outline terms about Return on Investment or ROI. It was a keynote so I skated over the details, but I wanted to include a specific example to illustrate what I meant.

Imagine the scenario where, given 3 days to work on it, a developer can get the deployment time for their code down from 3 hours to 20 minutes. This company does, on average, 42 deployments per year (you can guess these numbers are totally imaginary).

So 3 days at 7.5 hours per day means we are investing 22.5 hours on this.

The return is the difference between the deployments, multiplied by the number of deployments that are needed. So 3 hours is 180 minutes – so we save (180 – 20) = 160 minutes with each deploy. We do that 42 times in a year so we’ve saved 6720 minutes (per year) which is 112 hours or 14.9 days.

Project managers might not like to lose 3 days from their schedule but how do they feel about having a spare 3 weeks each year?

PHPNW10: Teach a Man to Fish

Last weekend I gave a talk at PHPNW10 in Manchester, entitled “Teach a Man to Fish”. This is a keynote about teams and how to use the resources around you to create a team where individuals and the whole team continues to learn and develop. The slides are not very detailed, but I’ll be blogging some of the items I mentioned (requests welcome, if you saw it and would like to see any of it written down then just leave me a comment!). Slides:

Two-Strand Crochet Ripple

If you’re reading my main blog feed, this post may take you by surprise – however at one time I enjoyed crafting and blogged about it often. Recently I’ve been finding more time for this, helped by the inspiring news of pregnant friends, so hopefully this is the first in a resurgence of craft-related articles. There are category-specific feeds if you’d rather only read the tech and/or php content.

So, I crocheted a blanket for my friend’s baby (welcome, Benjamin!)

DSCF2981.JPG
Continue reading

My Three Favourite Opera Features

I’m an Opera user, and one of the reasons I am is that I can control my browser entirely from the keyboard. I think everyone uses browser keyboard shortcuts, and in a lot of ways Opera has similar functionality to other browsers, but it also has keyboard spatial navigation, meaning I can jump to the next element in whichever direction I choose. Opera also has per-site preferences, which actually make the web usable for me.

Continue reading

How to Be a Good Conference Citizen

I get to a lot of events and the crowds at each one are different and there’s a different atmosphere – but at every event there are people who are making the whole thing less enjoyable for everyone else. Probably a lot of those people don’t much care what effect their behaviour has on other people, but if you want to avoid being one of those people, these are my tips:

Continue reading

Authenticating with OAuth from PHP

I’ve been looking into OAuth recently and really like what I see, so I started looking at actually starting to play with something that uses it (and isn’t twitter). In the pursuit of this, I spent some time walking through the process of how to actually authenticate using OAuth, as a client. I chose Yahoo!’s service, because they have some fabulous developer documentation and have a standard OAuth implementation. Although you don’t strictly need any special libraries to handle OAuth, that would be a bit like decoding XML with a regex, so I used the OAuth Package from PECL. For others (including me after I’ve slept), here’s an outline of the process.

Continue reading

Missing pcre.h when installing pecl_oauth

I was playing with pecl_oauth last week (more about that in a later post) and when I tried to install from PECL, it grabbed the files, ran the configure step but stopped with an error status during make. This is bad news for those of us who are ubuntu users rather than compile-happy linux users! Closer inspection showed this line around the point things started to go wrong:

Error: /usr/include/php5/ext/pcre/php_pcre.h:29:18: error: pcre.h: No such file or directory

I didn’t have the header files for pcre installed – in ubuntu the headers are in the -dev packages so I just installed what I needed:

sudo aptitude install libpcre3-dev

Re-attempting the pecl install, everything worked as expected. This is on Ubuntu 10.04 Lucid Lynx, and from reading around you’d want to install the same package in response to this error message, regardless of what you were doing to cause it. Hope this helps someone.

Celebrating 10 Years

Today I’m celebrating 10 years dating the same man (since we’re not married, we don’t have an official anniversary but we celebrate this one). He’ll be mortified when he realises I wrote about it on my blog but hey, this is important (and if you date a blogger, this is going to happen!). It’s been a privilege and a pleasure; surprising, challenging, and wonderful all at the same time. Here’s to another 10 years!

DSC07590

Speaking at PHP London, October 2010

In October I will be speaking at the PHP London user group on Thursday 7th at the Theodore Bullfrog pub in London. I’m giving a new talk called “The Source Control Landscape”, looking at the products currently available in the source control arena, how the distributed systems have changed the landscape, and how we can choose between them all today. I’m really looking forward to the event, it’s always a good crowd and I love to meet new people as well as meet up with existing friends – see you there :)

Tips for Event Hosting: Content, Feedback and Socials

This is the final post in a short series about hosting events, based purely on my own experience and no specific expertise, in the hope that they will be useful to others doing similar things. If you are interested, you can read the first two posts, about preparing for the event and what to do on the day. This post is about some of the additional things about an event; sharing the content afterwards, getting feedback from attendees, and the most important bit – the social event.
Continue reading