New Patio and Garden Gate

There haven’t been any house updates for a while – because I haven’t been here so haven’t done anything! However we did realise earlier this year that we were never going to find the time to lay our own patio, we’ve been in the house two years now (can I get a little “yay!” for that?) and still nowhere to sit outside, so I found a local garder who could come and do it, he even has a website so look up Character Gardens if you need a gardner. Lee and his team were friendly and the results are good!

Here’s the obligatory before and after shots:

Patio - before it began Finished Patio

They also came and fitted us a garden gate, ours has always been hopeless and it actually fell off its hinges about 3 months ago. Now I have a shiny new one with a catch that goes “click” when you close it.

Garden Gate

(and look, my lavender hedge is getting bigger!)

Updating Memcached on Ubuntu Jaunty

I’ve been working with memcache-related things lately and ran into a problem where the library I was using just didn’t seem to do what its documentation said it would. It turned out that it was making a “gets” call rather than a “get” call – and this functionality wasn’t introduced to memcached until version 1.2.4. Closer inspection shows that although Ubuntu Jaunty Jackalope (9.04) is only a few months old, and memcached 1.2.4 is about 18 months old, its not included and Ubuntu versions Hardy, Intrepid and Jaunty all had 1.2.2 version of memcached.

Credit to the Ubuntu people for resolving this issue already – since memcached 1.2.8 is currently pencilled in for Karmic Koala release of Ubuntu later this year – but I can’t wait that long so I updated my own memcached, it was pretty easy so here are the steps in case anyone else wants to do the same.

  1. download memcached from http://www.danga.com/memcached/download.bml
  2. check you have the dependencies you need. The only thing I didn’t have was the libraries for libevent, which you can install through aptitude with aptitude install libevent-dev
  3. compile as you usually would: configure/make/make install

The final step is to get memcached running – I actually did aptitude remove memcached to get rid of my old version and stop myself from being confused later. Then to start it from command line I used:

/usr/local/bin/memcached -m 64 -p 11211 -u nobody -l 0.0.0.0

The above worked for me and allowed me to use the functionality available in the newer library (specifically I was looking to use the cas (compare and swap) functionality in the new PHP memcached extension) – it probably works on other distros too but I didn’t test it, if it works for you or if you have anything to add then please leave a comment!

Dutch PHP Conference

Often when I attend PHP conferences, I blog as I go along, upload a few photos and generally share with others who aren’t in attendance. At DPC this year I completely failed to do any of the above – no excuses, I was just having too much fun :)

I travelled over on Wednesday and met up with a bunch of colleagues/friends at the airport, so we could make our way to the hotel together. We arrived to find colleagues and speakers already in the bar and it was great to see so many old friends and meet new ones. Thursday was tutorial day, this is a separate day with in-depth sessions that run all day. I attended the Zend Framework tutorial delivered by Matthew Weier O’Phinney from Zend, which was really good. There was a similar session last year but that was quite basic – since then I’ve worked a bit with Zend Framework so this session suited me really well and showed me some stuff that I’ve been struggling with. We rounded off the day with an Ibuildings social, giving me chance to catch up with my colleagues and enjoy the free bar (thanks Ibuildings, great opportunity to see everyone!).

On Friday the sessions got off to a flying start with the keynote from Andrei Zmievski, Open Source Fellow at Digg. One thing that I always find simultaneously wonderful and intimidating is how the speakers at these events mingle with everyone regardless of how qualified they are. This creates a great atmosphere at the events, and makes the speakers very available. You couldn’t pay for the experience of running into someone in the bar whose talk you saw and having them happy to answer a couple of your questions about it. I have no idea if this happens in other industries but it surprises me every time.

Probably the biggest “problem” at this conference was the excellent schedule. Its a good problem to have but it does mean that I had issues with every session deciding what I wanted to see – more so than any conference I’ve been to yet (are you listening, conference organisers?). I only sat out for one of the time slots and that was mostly because I was very tired and the talk I wanted to see was packed :) Friday ended with a happy hour social at the bar next to the venue, which was great – it seemed like all the speakers and most of the attendees were there, and everyone was moving around and talking to everyone else, which was a lot of fun.

Saturday was more great sessions and held a couple of highlights for me – two friends of mine, Ian Barber and Juliette Reinders Folmer, gave their first conference talks at DPC this year, in consecutive sessions. I was able to attend both sessions and they were both excellent (and handily they both spoke on subjects I was interested in!) – and I even managed to put my head around the door of the Oracle Installfest which was also happening through Saturday morning. Saturday afternoon saw the last of the sessions and a closing keynote entitled “The Cal and Ivo Show (with friends)”, in which Cal and Ivo talked over a couple of points between themselves and then invited some of their “friends” onto the stage to be asked a few questions. It turns out I fall into the “friends” category so despite the fact that I wasn’t there as a speaker, I still managed to find myself on stage with a microphone!

I’m a big fan of conferences, I like to get to a few each year. Sometimes I’m an attendee, sometimes a speaker, and sometimes an organiser – if you’ve seen me talk about communities, professional development, or speaking then you’ve probably heard my thoughts on these events and how much can be gained whatever the reason that you attend. DPC is a pretty special event – Amsterdam is well connected and we had attendees from all over Europe, some from the US, and even a few from further afield! The sessions, as I say, were the best I’ve seen and I wish we could do it all again so I could try to get to the bits that I missed. Its a great crowd at the Dutch PHP Conference, always someone to talk to and I actually know quite a few people who attend – and I don’t often manage to see some of those as they live elsewhere in Europe.

I hope everyone who attended had as much fun as I did – see you all next year!

Creating a Banner Bag

Often at PHP Conferences, the organisers are good enough to give PHPWomen a table, and we have a banner we use on these occasions.

PHPWomen stand

Its kind of an annoying thing to lug around with me – its about a metre high and usually travels in a cardboard tube. I’ve been all over the place with it, had to shorten the tube to get it in my suitcase for going to London this year, and then when you get to a place you still have to carry it and its awkward. So, I made a bag for it, ready for this week’s trip to DPC in Amsterdam.

One Banner Bag

Its along the same lines as the yoga mat bags that I keep seeing patterns for – just a tube with a circle at the bottom to make it a cylinder, some webbing sewn into the seam to make a strap and a cord to pull tight at the neck, I took some pictures as I went along.

Bag Template Cord Sleeve
Bag Tube with Handle Radial Pins

First I cut out a rectangle, longer than the tube by about 4 inches and wide enough to go round (very easily round). Then I made the little pocket at the top for the cord to go through (best to do this first as otherwise you’ll probably sew it shut later – thanks mum!). Once you’ve made the pocket then you have a right side and a wrong side, this next bit is easy to get wrong so pay attention! Lay out the rectangle with the right side up. Lay the strap ends against an edge, then fold the other edge over to meet and make the seam – you should have the hem of the cord sleeve on the outside, and a tube with the strap hanging in the middle of it, now pin straps and seam and sew. I went back and forth a couple of times over where the straps were attached.

Time for some maths!

First measure across the tube with it flat. Double that number and you have the circumfrence of the shape you need for the bottom of the bag. So, divide that by 2 times pi (6.283 ish) to get the radius of the circle to cut out. Don’t forget to add seam allowance to this. I had a compass to make my circle but a piece of thread and a pencil would do in a pinch. Once you have cut out the circle, put loads of pins in facing outwards, and then sew round the outside, over the pins. Turn bag the right way out, thread cord through sleeve, and you’re done :)

I just hope it hangs together for a while, got a few conferences to get to this year!

DPC09: Looking forward to the Dutch PHP Conference

This time next week I’ll be full of new ideas and enthusiasm as the Dutch PHP Conference 2009 will have ended. Last year was the first time I attended the event and I have memories of a great crowd and some fabulous sessions, also my first experience speaking at a conference (yes really, a year ago!). This year it looks like the event will be better than ever with an extra day and a schedule absolutely rammed with fabulous content. And best of all, I work for Ibuildings, so I get to attend (I’m not speaking this time around).

Conferences are a great opportunity to meet some like-minded people, find a peer group to drink socialise with, and of course get to hear all the sessions that are around and chat to the speakers. Amsterdam is a great place to do this, its well connected and there are speakers and attendees from right across Europe and beyond. Since I know the PHP community quite well, I’m looking forward to getting to spend time with this cool crowd – and of course all my developer colleagues will be there as well so a party spirit is guaranteed :)

There’s a few other things going on around the main conference – with social events and add-ons like the Oracle Installfest. I hear there are still tickets remaining so if you’re feeling a bit left out – come and join us! If you’re there, do stop and say hi to me – I know more people this year than I did last but its always nice to meet new faces too. Next stop, Amsterdam!

PHPNW09 – PHP Conference in Manchester

Last night at the PHPNW user group we announced this year’s conference – PHPNW09. We don’t have a lot of detail but here is a run-down of all the information I have:

  • Date: Saturday 10th October 2009
  • Location: Manchester Conference Centre. It’s a new venue but just as central and actually easier to get to.
  • Website: http://conference.phpnw.org.uk which currently points at last year’s conference but feel free to click around to get a feel and we’ll update that soon.
  • Focus: PHP in the team – we’re having a real focus on PHP teams, tools and practices for them.
  • Price: We’re aiming for the Early Bird tickets at 50 GBP + VAT, similar to last year (OK so last year was inc VAT but hey, it’s still excellent value). This price will run until 10th September, a month before the conference, at which point they’ll become more expensive.
  • Speakers: Yes please! Like last year, we’ll be running a call for papers and we’ll be looking for some well-known speakers and some we haven’t heard of yet. Like last year the speaker’s package will include the speaker’s dinner, a conference pass and hotel accommodation, but won’t include travel expenses – if you are interested then look out for a CfP in August
  • Schedule: See previous point ;)

Did I miss anything? If so, drop me a comment.

The timescales (all subject to change for no apparent reason and without warning) are something along the lines of getting the site live in June, the tickets on sale in July, the CfP out in August, closing towards the end of that month, publishing the schedule at the start of September to give people chance to get tickets still on the early bird rates which expire on 10th September – then another month for people who like their tickets more expensive and finally the event itself on 10th October.

A few other things I would like to mention:

  1. We want sponsors, including some quite small ones! If that’s you, please contact us or just leave a comment with your details
  2. We will need some volunteers on the day, all of whom get free entry – again, let us know if you are up for that
  3. We’re considering running a “day 0”, probably a hands-on day on the Friday, currently we don’t have either venues or clear plans for this so if you have any thoughts or ideas, add a comment!

Top Tips from Linux-Fu

I have recently been giving a talk entitled “Linux-Fu for PHP Developers” (slides are here) and although it includes some really basic commands, even some quite experienced people have thanked me for particular bits that they picked up. I’m considering dropping some of the sections from this talk so here are the things people most tell me they learned:

cd –

If you pass a single minus as the argument to cd, you will change back into the directory you just came from. Ideal for those switching-between-two-deep-links situations.

pushd and popd

I didn’t include these in my talk formally but I mentioned them almost every time I gave it (or one of the attendees did!). I don’t actually use these commands, but they are like an extension to “cd -” – you can build up stacks of directories and then jump around between them. They sound pretty handy so do take a look.

ls -lrt

I got a lot of negative comments for including “cd” and “ls” in my talks – but I had quite a few people say that the -t (to sort by time) and the -r (to reserve the sort) switches were new to . I use these together for viewing which files are new in a directory, great for logfiles or upload directories.

Hope these are helpful to someone, let me know if you use these or have others you’d like to share!

Architecting Web Services – FOWA Tour

I spoke at the FOWA Tour event in Leeds yesterday, as their local speaker (they set aside a slot for each place they go). It was a great event, good atmosphere and I really enjoyed the both crowd and content. I can’t imagine what the logistics for something like this are like but it seemed like everything was going pretty smoothly.

My talk was “Architecting Web Services” – just a half-hour slot to give an overview of what services are and take a look at some things to bear in mind when designing them. The slides are on slideshare so feel free to take a look and let me know if you have any comments or questions.

I had a great time meeting up with so many friends – old and new – yesterday. Hope that I’ll see some of those again at future events or online. Anyone for Bar Camp Leeds?

php|tek 2009: Quick Round-Up

Last week I was at the php|tek 2009 conference in Chicago. This was a really exciting trip for me – only my second conference as a speaker and the first time I’d attended any of the MTA conferences. I was absolutely delighted to have three of my sessions accepted into the schedule – although it seemed like a lot of preparation, I actually headed out to the conference feeling relatively prepared.

Tutorial Day

I spent the morning finalising slides with my co-presenter Matthew Weier O’Phinney … well, we looked at the slides before we wandered off to Starbucks anyway :) The trouble with preparing talks with someone that is both on the other side of the world and has a wildly important job (and gets promoted in the middle) is that its sort of hard to get together and organise these things. Actually the material was in surprisingly good shape on the day and our session was well-received – the slides are available.

Matthew and I delivering our tutorial

Immediately after our session, Matthew and I were interviewed by Keithy Casey and the video is available if you’re interested.

Thursday

After a relaxing Wednesday where all I did was show up to sessions and get my picture taken with the phpwomen, Thursday was a pretty crazy day. I had two talks scheduled, and both were in rooms that turned out to be unbearably hot. First I gave a talk on a topic I’m actually really excited about – Linux-Fu for PHP Developers – which was an overview of the commands I type when I’m working with linux. You can see the slides but I’m considering splitting this talk into two sections if I want to give it again – one introductory and one all about the tools I used. It’s the tools that are most exciting and I think that came across when I was giving the talk.

A couple of hours later I gave a talk entitled “Using and Understanding the Community” with my Ibuildings colleague Stefan Koopmanschap. I was surprised how many people attended the talk – there was a great atmosphere in the room and best of all were the people who came up to me later to say we’d inspired them to get more involved. I was even more surprised to have Cal Evans inform me later in the day that we had a slot scheduled in the uncon for the following day to give the talk again for those who missed it! There are no slides for this talk, since we only had one slide with a few URLs on it, however the second edition of the talk was recorded so the audio I guess will get published at some point – I’ll post here when this happens.

Things got a bit more light-hearted at this point as we had a slot in the unconference for a PHPWomen Craft Hour. All sorts of people turned up and knitted, crocheted, made lace, dismantled novelty cars, made pipe cleaner animals, and all sorts of other things. We had a great laugh and it was cool to meet some new faces. Hope we do this again sometime!

phpwomen crafty uncon

Finally for this day I gave a more serious uncon slot (with the craft still going on at the back of the room!) entitled “Architecting Web Services” – this is a talk I’ll be giving in Leeds this week at the FOWA Tour so it was great to try out the session with such a qualified audience at php|tek. Many thanks to those to attended and gave their input, I’ve re-worked the slides and will post them after giving the talk tomorrow.

Conclusion

All in all it was a great week – meeting new friends and catching up with old ones, and getting some great technical content in terms of both talks and hallway discussions too. Thanks to everyone who helped me have such a great time there – hope to see you all in the future :)

Linux-Fu For PHP Developers

The slides from my talk at php|tek are now online – Linux-Fu for PHP Developers. Thanks to everyone who attended and left feed back for me on joind.in. Feel free to leave a comment if you were there or if you have any questions about the slides!*

* Unless the question is “why didn’t you include X?” in which case the answer is that an hour-long slot was nothing like enough :)