• +44(0)117 230 6023

Author Archives: Andy

£40 an hour sound like a lot?

So, I quoted on some modifications for one of my Events Manager Payment Gateway plugins recently. It was basically a question of updating it to work with some of the improvements to the Events Manager Pro plugin. It seemed pretty simple so I quoted two hours on it.

Modifying the code actually only took an hour and a half, but add to that setting up the dev enviroment with the latest versions of WordPress, Events Manager and Events Manager Pro as well as the necessary testing and I was already up to four hours. Things were further complicated with a bug I uncovered in Events Manager by doing this (no problem there, Marcus is incredibly responsive and had it fixed for the next release) and further testing once that bug was fixed.

There was the standard pre-sales and quoting time put in to secure the job. In this case just under an hour, which is pretty quick to be honest.

The plugin was delivered to the client, but they come back saying it doesn’t work. I was pretty confident it did, having tested it extensivly, but ultimately, the customer is not happy unless it works, so this is where I have to get stuck in to help. Issue number one, Events Manager and Events Manager Pro plugins are not compatible with each other. Events Manager has been updated, Events Manager Pro had not. A relief to find the issue is not with my plugin, but annoying to have to log in myself to investigate, especially when there is user feedback telling admins just that.

Second problem, the system exits with an error message upon returning from the Sage Payment Gateway. Ok, at least this time the issue is definitely related to the plugin but why did it fail here and not on my servers? It took two and a half hours, but it turns out this is a Web Server config related. The payment gateway in question sends back lots of encrypted data via GET. This, however was not available in PHP even though other GET vars were. Reducing he size of the offending GET var enabled it to get picked up.

I suspect Apache’s Limit Request Line directive is to blame here, although I’ll have to wait till next week (and the prospect of some more testing) to find out for sure.

£40 an hour does sound like a lot, but those are the billable hours. This particular “2 hour tweak” is now close to 8 hours now bringing it down to a more sobering £10 an hour.

Notes to self…
– I’m still quoting too low! There is always more work than just the code.
– If client issues are bugs or tweaks these should be free of charge, but if it is config issues unrelated to my code, then it should be chargable (especially for such small bits of work).



I’ve just discovered the magic of Twitter’s Bootstrap framework. Ahmed, who I’m working on with the Crowd Advisor project, mentioned it a while back but only this week have I had time for a good look over the documentation. Ok, a lot of what it offers I can do similar things with jQuery UI but this seems cleaner and more flexible, and keeps the markup separate from the javascript.

I just know that this is a framework that I will be making extensive use of, and in a few months time will wonder how I ever managed without it (especially given the amount of cross browser issues I’ve been having of late).

Check it out at http://twitter.github.com/bootstrap