PHP London Meet and Some Heckling

I’ve been in London on business again this week (hopefully my wild travelling will calm down a bit now) which had the nice side-effect of allowing me to get to the PHP London meetup on Thursday. It was nice to see people that I met at the conference the previous week and also to meet some people who I hadn’t managed to catch up with previously.

The talk was from William Coleman of Microsoft talking about FastCGI and using PHP on Windows. He’d have done better to not say “We’re all guys here” in his opening remarks as I found myself heckling a speaker for the first time in my life!! I counted 4 women there out of 35 or so people, so a minority but a definitely existing one. He did apologise (about 17 times and after digging a bigger hole) and I had a brief chat with him later on, and gave him my phpwomen.org business card.

The talk was good and interesting, and he brought with him a remarkable sense of humour, which he probably needed since there were lots of smart comments coming from all angles. He did however impress upon us that performance of PHP on Windows is now comparable to performance of PHP on Linux, which was actually very interesting to know. Personally I have been staying away from PHP on Windows for 5 years or so but since I now work for Ibuildings who are Zend partners, then I guess I need to have more of a clue! Other than a few confusing moments where a comparison was made between running PHP on Windows against running it on Apache (what? Is Windows a web server now?) it was a good session and its nice to hear about these developments. My feeling is that no matter how stable PHP is on Windows, its the stability of Windows itself that means I’ll be avoiding it in my production servers for some time yet.

The punchline of the evening? Apparently microsoft have invented this great thing, called a shell, where you can just type comands in to your server rather than clicking on things, so you can manage servers remotely …

PHP London 2008

On Friday was this year’s PHP Conference in London and I must say it was a roaring success. The whole conference had completely gone up a gear from last year (the only other time I’ve attended) with a larger venue, choice of tracks, more attendees and better food.

I was there representing phpwomen.org with a stand and some t-shirts to give away as well as some information about the group. We took 30 t-shirts and they were all completely gone by lunchtime, which was a great response. Even after that the stand was buzzing all day with people dropping by to ask about the group and how to get involved/get more t-shirts/help us gain more recognition. I was surprised and pleased by the response of attendees, both male and female, I met so many interesting people that I can’t begin to list them here but it was great to chat to you all! Its great to be able to raise awareness at events like these and the phplondon committee were wonderfully supportive of us throughout the organisation phase and during the day itself.

My new employers, Ibuildings were sponsoring the event so I was also able to spend some time with my colleagues and meet some new ones. I also briefly rebranded to the distinctive red ibuildings shirts at one point, to look like part of the team while we took some photos. It was great to see the guys doing the Zend Platform demos and to be able to hang around with them – including the guys from the Netherlands who were there. Ivo Jansch (CTO over there) gave a talk which I enjoyed and was well received all round. I didn’t realise until then that I actually work in the tallest team ever! I’m one of the smallest – at 5’11” this is pretty unusual :)

Since I was doing so many other things on the day I didn’t get to a lot of the talks but what I did see was well-prepared and the audience were great, with some really interesting questions being asked in all the sessions I attended. There were two tracks, in rooms just across the corridor from one another, and the rooms were well-managed and ran smoothly throughout the day. The conference also provided a “recharge room” with juice for people and devices alike. The venue was great and was big enough for everyone without any crowding or bottlenecks.

All in all I’d like to congratulate the organisers on a great event – can’t wait for next year :)

Offline Geeking

I don’t spend a lot of time hanging around with geeks in the real world. I spend a lot of time hanging around with them in virtual spaces and some of the people I have met there are my closest friends. Offline meets are … quite different. Lots of geeks are quite shy, for starters. Some are quite egotistical, like the guy I met last year at the pre-conference social for phplondon and was horrified to hear that I create PHP using vim instead of a “proper IDE” and said how happy I was that I had made the effort to reach out to the conference and that he was sure I would learn a lot – the implication being that anyone who writes code with a keyboard is clearly a n00b. I’m hoping to avoid a repeat of that experience. I know I don’t look like a PHP developer but the friends I meet online can’t see that and I kind of forget … until an offline meet.

Perhaps experiences like these put me off doing the real-life thing but I am honestly so excited about PHPLondon tonight and tomorrow that I can’t imagine staying away. I’ll be promoting phpwomen at the main conference and I’m really excited about that too – look out for flocks of girls in bright purple t-shirts!

(OK, maybe not flocks…)

PHP London and Another Busy Week

I heard last week that the PHPLondon conference is completely sold out – I had a funny feeling it might be :) I will be there, this Friday 29th February and looking forward to a great event. I’ll be at the pre- and post-conference socials, if you are an online acquaintance please stop me and say hi – I should be easy to spot as I’m female, tall, and have curly hair, there aren’t a lot of us around! I would be very pleased to meet you anyway so do say hello.

PHPWomen.org will be represented there, we have information about the group plus some women you can talk to (whether you are a woman or not, we’re not discriminatory!). We will also be giving away a few t-shirts, we don’t have a lot though so do come and demand one if you want one.

Once again things are very busy this week as I am travelling on business so I won’t be online a lot. Only been back a few days and it would be an understatement to say that I’m tired but hopefully things won’t carry on at this rate forever. Anyway its Sunday which usually means I should be packing …

Speaking at Dutch PHP Conference

A quick announcement: I’m speaking at the Dutch PHP Conference this year, my talk is entitled “PHP Deployment with Subversion”. The conference is in Amsterdam, you can find out more on its website http://phpconference.nl, and it takes place on June 14th. It’ll be my first big speaking engagement, and I’m also really looking forward to meeting a lot of Dutch friends there.

PHP Women at PHP London

On Feburary 29th the PHP London 2008 conference will take place in London. Things have been very busy for the guys organising, there have been a few tweaks to the schedule but its looking like things are coming together nicely. I’m all set and have booked tickets and a hotel already – for Thursday *and* Friday nights so I can go both the pre-conference and post-conference socials, which is essential. If you haven’t booked your tickets yet, or you have to get your employer to do it, I suggest that’s something you might want to sort out fairly soon as I imagine it’ll be oversubscribed – in fact if everyone who has told me they are thinking of going does try to book tickets, I think they’ll sell out!!

At this event I will be busy with phpwomen, wearing my t-shirt and generally making a noise and raising the profile of the group. If you are attending the conference then you are morally obliged to pop over to us and say hello, we like to meet new people. If you are extra nice to us we may give you a t-shirt! There will be women from the UK and also elsewhere in Europe and it’ll be great to meet those I haven’t met yet and also see some old friends from other conferences. An excellent way to spend Leap Year Day in my opinion :)

PHP5 Soap Server

Recently I wrapped a class up and provided it as a SOAP service. Getting it working was a bit of a struggle and its clearly not something that people are doing a lot of, so here’s a quick roundup of the main issues and how I tackled each one.

Start Small – Build and Check A Class

I firstly built some unit tests using PHPUnit (more about that another day perhaps, but let me say it is excellent and I tumbled to it really easily once I’d started), then wrote my class and verified the tests were passing. This was to avoid trying to debug the PHP functionality through the added layer of the SOAP.

Simple SOAP Starting Point

My next step was to get a working SOAP service. This isn’t remotely tricky except that PHP can’t generate its own WSDL file (for extremely valid reasons but that doesn’t help me), so you either need to write it by hand or you need to generate it somehow.

As my starting point I took the whole working code from this fantastic example and checked that it worked for me.

SOAP setClass() and WSDL Fiddling

Having got this far I changed my SOAP server code to use the setClass() method and pointed it at my own original class. I then hand-edited the WSDL (one function at a time) to reflect the data types and arguments that would be moving through the service.

The actual service code looks like this:

require_once('lib/myClass.php');
ini_set("soap.wsdl_cache_enabled", "0");

$server = new SoapServer("service.wsdl");
$server->setClass("MyClass");
$server->handle();

The example WSDL supplied by the JimmyZ tutorial has a single function in it at the early stages, and I started with that, then adapted it for one single function from the class. This is perfectly valid providing you don’t try calling anything else! The PHP function declaration took this form:

function getAccountStatus($accountID)

The function returns two variables – it passes back the account ID and also returns information about the number of credits on the account. The accountID is a string of up to 8 characters, the other variable is a number. Here is the WSDL adapted for this purpose:


   
   
     
   
   
     
     
   
   
     
       
       
     
   
   
     
     
       
       
         
       
       
         
       
     
   
   
     
       
     
   
   

Once I discovered that WSDLs are best read from end to beginning, I was able to expand the example above for all the other various functions I needed.

Hopefully this helps someone get started. There are various tools available for generating the WSDL, in particular try either George’s suggestion, the offering from phpclasses.org, or check out the automatic generator in ZDE. Certainly there are tools available, but I didn’t manage to find one that did the trick for me.

If you are writing, or have written, a SOAP service in PHP5 then drop a comment and let me know – I certainly felt like I was in a minority on this project. Similarly if I’ve missed anything then I’d appreciate comments so I know for next time.

Donate to PHPWomen and Win

Its exciting times at PHPWomen.org. There is the new addition of a “Donate” button, for anyone who would like to contribute to our cause. As if we aren’t reason enough, the adorable Cal Evans from Devzone has given us 10 elePHPants (remember he sent me one?) to give to the first ten people to donate more than $50.

PHPWomen finances goodies to give away at conferences and also assists members who perhaps would not ordinarily be able to attend conferences to get there and participate. More women at conferences …. can that be a bad thing?