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 :)

Day Camp For Developers

I’m very excited by a new virtual event which is coming up, and at which I have been invited to speak. This is Day Camp 4 Developers, an event aimed at developers of all disciplines and focussing on the soft skills that sometimes we miss in our pursuit of technical excellence. I’ll be giving my talk “Open Source Your Career”, which looks at how being involved in open source outside of work can improve our professional development. The event is on November 6th, and you can buy tickets here.

There are a number of things that really appeal to me about this event: Continue reading

Working with Web Services – Froscon 2010

This weekend I’m at froscon in Germany, giving two talks. One had no slides (but may have video, if I see it then I will post the link here) and the other was “Working with Web Services” which I gave this morning in the PHP room. My slides are here:

Thanks to the PHP room organisers for accepting me as a speaker and to Sebastian for twisting my arm in the first place – it’s a fun event!

CodeigniterCon 2010

I spent the weekend in Bristol so I could attend cicon2010 – a volunteer-organised first-edition conference around the CodeIgniter PHP Framework. It started on Saturday morning with registration at 8:30am and the first talk at 9am. When I arrived (at about ten to nine) there were no organisers there. I took this photo around 9:45 (the camera is on GMT) as they attempted to set up the projector.

DSCF2309.JPG

I saw two talks, both of which were actually really good, which is pretty impressive when you’re going on stage to a rather fed up audience! Kudos to Kevin Prince and Joel Gascoigne for their talks. By this time we did get an announcement about what times the other talks would happen and I snuck out for lunch and cups of tea.

When I popped back (I assume there was a long lunch as I didn’t get there until almost 4 and still caught the last two talks) I saw Adam Griffiths and Phil Sturgeon round off the day with their talks, and I must admit that I think the talk content was spot on, although the speakers were mostly pretty inexperienced, they all had some great thoughts to share and I did get some technical content from it (and a list of new friends, thanks Phil!)

I had been looking forward to the conference social but after hanging about in a strange city on my own waiting for a promised tweet of time and location, I bailed. The people I met at cicon were a nice crowd and I’m sure it would have been fun but I got some other stuff done instead which was also useful.

In summary: nice people, useful content. worst event I think I’ve ever been to (sorry guys).

I tweeted about my disappointment and got a couple of people asking me what my advice is for events organisers. I’ve now done a few technical events and will wrap up my advice into a post (now I’ve outlined it, probably more than one post!) so look out for that over the next few weeks.

(as a total aside but kind of for the record, for an event with 40 ish people, I was disappointed to be the only woman there)

Leeds PHP User Group

There’s a new PHP user group which has sprung up in my home town of Leeds – Leeds PHP. So far it has met twice and its been a good crowd both times. Our meetings at the moment are at Brewery Tap, which is not only the closest pub to the train station in Leeds, it’s also got some great beers!

Meetings are the third Monday of the month, so the next one is 16th August where we’ll have Ben Waine speak about Xdebug. If you’re within commute of Leeds, then you should definitely head along there one month, look forward to seeing you!!

Keynoting at PHPNW10

I’m slightly surprised but mostly wildly excited to announce that I’ll be the keynote speaker at the PHP North West Conference in October. It is held in Manchester in the UK, which is about an hour from where I live in Leeds, so it is definitely my “home” conference, and this makes me even more excited since I know I’ll be in such great company!

The talk is Teach A Man To Fish: Coaching Development Teams and really it’s about how a little investment of time or effort can build your existing team into something better – and how that team can then sustain its improvements and continue to raise its performance and the game of the individual team members. All in all I am pretty excited about this talk – as with most of my conference talks, it started life as a rant in a bar, and I’m now excited to be preparing it for a more formal setting!

The event itself is a must-see for anyone doing PHP or allied technologies that can get there (Manchester is pretty central and pretty cheap – if you’re in the UK, you have no excuses!). It’s a Saturday event, 9th October 2010 and tickets are on sale – the Early Bird prices are still available and we’ve held the prices as low as possible again, we don’t need frills, we just want lots of people to be able to join in! I hope to see quite a few of you there, let me know if you’re coming :)

SugarCRM 6 Installation Error

I noticed that SugarCRM have just released their new version 6.0.0, and since my sugarcrm installation is madly out of date and I’m about to start using it again, I thought I’d just throw the old one away and install from scratch. I had no problems until I reached the final installation stage, when clicking the “install” button would return a 404. This is tedious because then you have to follow the instructions and change config.php so that “installer_locked” is false (but the installer does remember all the information you give it, which makes this less annoying)

After a couple of times around the loop I looked properly at the warnings on that final page before the “install” button, and made some php.ini changes in line with what it requested – increasing the memory_limit and the upload_file_size. I also installed php5-curl (I’m an ubuntu user so this is just an aptitude package for me) and the install ran like a dream at that point. I’m disappointed that SugarCRM couldn’t give me better feedback than just a 404, but it seems like it needed some settings that I didn’t have – so if you see the same behaviour, don’t give up but heed the warnings and it should be able to install itself absolutely fine. Hope this helps!

Giving Up The Day Job

The In-A-Nutshell Version I have resigned from Ibuildings. I will complete my notice period here in a couple of weeks and then move on to a wide and interesting variety of well-paying freelance assignments covering development, consultancy, writing and speaking. Hopefully.

The slightly longer version really is this. Two and a half years ago, I left a job at a type of company I usually describe as a yet-another-website company, where literally every new project was another CMS website. Which was fun for about the first 4 months and got old pretty quickly. Two and a half years at Ibuildings and I haven’t done yet-another-anything, the projects have been technical, challenging and my colleagues are the best qualified set of people I’ll probably ever work with.

Along the way I’ve also done a wide variety of other things, most of which are achievements beyond my wildest dreams, some within the scope of this job and some on my own time but of course influenced by all that I’ve learned. I’ve delivered training, led projects, been published, become a regular conference speaker and travelled internationally doing so, collaborated on an open source project, edited a developer portal and hosted a major international PHP conference. I’ve even learned to say those things about myself in public without feeling too much of a fraud!

At this point, there are so many things I want to be doing, writing, speaking and so on, as well as some interesting development projects, that holding down my 9-5 as well has become untenable; that’s the main motivation for this change. I don’t intend to take another full time job, although I don’t have a lot of paying work lined up so please bear in mind that I am looking for some ;)

Things I would like to be doing:

  • Working with development teams on skills, tools and process (think teach a man to fish, rather than sell him a fish)
  • API development
  • Technical writing
  • Meeting cool and interesting people and embarking on cool and interesting projects together

Advice on achieving any or all of the above is appreciated – if any of you can also think of me when discussing business, write me a linked in recommendation, or retweet my announcement of my news, that would be fabulous!!

If you’re still reading, then I’ll share a little something with you. I decided that with a career move, I needed a little rebrand, so here is my new angel avatar. I hope you like her :)

Wish me luck in my new (ad)venture, I’ll be keeping everyone up to date as always!

Retrieving Product Attributes from Magento’s V2 API

I’ve been working with the API for Magento in recent weeks and I had a bit of a struggle explaining to the V2 API which attributes of a product I wanted to retrieve. Actually I had issues talking to the V2 API at all, but that’s a different post so I’ll skate over those for now. Instead I thought I’d share (or rather, record for the next time I have the same problem!) how to specify which attributes about a product to retrieve.

It actually wasn’t complicated but without V2 API documentation, it wasn’t at all clear what to feed in to get the result I was looking for. It turns out you can just pass an array of desired attributes, shown here with the info method from the product_catalog:

    // connect to soap server
    $client = new SoapClient('http://magentoinstall.local/api/v2_soap?wsdl=1');

    // log in
    $session = $client->login('user', 'pass');

    // product info
    $attributes = new stdclass();
    $attributes->attributes = array('product_title', 'description', 'short_description', 'price');
    $list = $client->catalogProductInfo($session, , NULL, $attributes);

There were two tricks – one was realising that I could pass that final (undocumented) argument, and the other was understanding how to format that. Hopefully anyone doing battle with the same thing will find this post and get over this little challenge much faster than I did :)

Speaking at FrOSCon

In August I’ll be attending FrOSCon in Germany for the first time, and speaking there. It’s a mixed technology conference, with rooms set aside for separate scheduling for various projects and technologies. I’ll be speaking in the PHP room, delivering “Working With Web Services”, a talk which covers how to consume all sorts of types of web service from PHP. I’m excited about that and even more excited to hear that I’ll also be speaking in the main track, where I’ll deliver “Open Source Your Career” – stories and advice about how involvement in open source can positively influence the career path for each of us.

I haven’t visited this part of Europe before so I’m also including a couple of days to see the area, and really looking forward to the trip. Since there are technologies other than PHP, and since I’m rarely in Germany, I know I’m going to meet a lot of new people … and I can’t wait :)