5 Things To Do With A Training Budget of Zero

Training budgets are never generous enough to give us everything we think we need to keep our skill sets improving, however many people will be lucky enough to get something. If your training budget totals precisely zero pounds (or euros, or dollars, or whatever your local currency is), what do you do? Sulk until they give you something more? Or make the most of what you have? Continue reading

Generating Callgraph with XHGUI

I had a frustrating bug the other day with a new XHGUI install, I am working on creating a VM for my new PHP tools course I am teaching in March and I wanted to pre-install and part-install a bunch of things so that I can show some great tools in a limited amount of time. My XHGUI wasn’t quite right though; it couldn’t generate the callgraph for me. Instead, it said:

failed to shell execute cmd=" "" -Tpng"

Continue reading

Thoughts on Running an Open Source Project

I spoke in the unconference at PHPUK last week, on running an open source project. I thought I would collect together my thoughts into one place before I lose the scratty piece of paper I wrote them down on. I’m not sure I’m the right person to be giving advice exactly, but these are the things that, having been project lead on joind.in for a while, I think are important.
Continue reading

Wedding Stationery

In case you missed it, ours was a small wedding – which means that the majority of our friends and family weren’t actually there! We loved our small wedding but I knew that I still wanted to share a small flavour of the day with some of those friends and family, and also get some mementos for our home.

When browsing the moo.com site (it is usually best to hide all payment cards out of reach before doing this!) I had seen the postcards that they make and decided this would be a great way to send a small selection of photos to a few people. Once we got the “official” photos in, I ordered some postcards, and I think they turned out rather well!

Wedding Postcards
Continue reading

WordPress Contact Form 7 Without Captcha

When this blog moved to wordpress, we added a contact form into the footer, which was available on every page. This seems awesome until you see the sheer volume of spam I got from it in the first day or two. I hate captchas, not least because I usually fail them at least once myself, so I was in search of alternatives and found two: akismet and the honeypot plugin. Continue reading

Google OAuth 403 Response

I had an issue this week on a system which has been working fine for a while, but stopped fetching some data from google’s user account API. I was getting a 403 response from the API, which seemed odd. Luckily I was logging OAuth::getLastResponse() to my error logs (this is PHP code, and you need to call OAuth::enableDebug() before you make the request to get this output) so I could see that I was getting the following back from Google:



  
    GData
    sslRequired
    SSL is required to perform this operation.
  

Closer inspection shows that for one of the google endpoints, I had a prefix of http:// rather than https://. Those single-character bug fixes that take hours to find are my favourite!

Speaking at DayCamp for Developers

I am delighted to announce that I’m speaking at the upcoming DayCamp for Developers in early March. The idea behind the daycamps is to bring important but non-technical skills to developers everywhere – so the sessions are virtual and so are the speakers! This time around the topic is Business, so we have a series of speakers to give you advice from a practical, developer-centric point of view – on everything you need to know!

My own talk is “Time and Money”; both are pretty important concepts to have a handle on when you are in business, either as a freelancer or when starting or helping to start a bigger business. Even as an employee, these are really important concepts to understand; most of what I learned about business I learned working with business people in the jobs I had beforehand.

Time is important because we need to figure out how much we have and how to share it around. Money is important because we all like to get paid. I’ll be sharing my own tactics for keeping both of them under control so I hope you’ll join us!

Mercurial “Not At A Branch Head” Error

Although I write and speak a lot about various kinds of source control (git and subversion are the most popular still as far as I can see), my own development projects are on BitBucket under mercurial (bitbucket also offer git hosting these days, and their tools are great). Recently I was working on an upgrade for BiteStats (note shiny new theme, with thanks to @miss_jwo) and I kept getting this error from hg tag

not at a branch head
Continue reading