PHP Next Generation

The PHP Group has put up a post about the future of PHP. They say, ‘Over the last year, some research into the possibility of introducing JIT compilation capabilities to PHP has been conducted. During this research, the realization was made that in order to achieve optimal performance from PHP, some internal API’s should be changed. This necessitated the birth of the phpng branch, initially authored by Dmitry Stogov, Xinchen Hui, and Nikita Popov. This branch does not include JIT capabilities, but rather seeks to solve those problems that prohibit the current, and any future implementation of a JIT capable executor achieving optimal performance by improving memory usage and cleaning up some core API’s. By making these improvements, the phpng branch gives us a considerable performance gain in real world applications, for example a 20% increase in throughput for WordPress. The door may well now be open for a JIT capable compiler that can perform as we expect, but it’s necessary to say that these changes stand strong on their own, without requiring a JIT capable compiler in the future to validate them.’

Lunch 2.0 with Bing!

Well, it’s official. The folks over at SHIFT Communications, especially Marie Williams and team, have done it again… Done what you ask? Well, I’ll tell you — they have thrown a wonderful get together known to Bay Area folks fondly as Lunch 2.0. It was over at Powerset’s sweet office and was a wonderful chance to meet the Bing team. Not only did they have some amazingly tasty grub, as well as some great beer and other non-alcoholic beverages (for those got to go back to the office types), but they also had a stellar collection of Bing swag (like these ultra-nice beanies) to take home for a warm fall day in San Francisco.

I can’t wait to see some of the photos taken by non-other than the world infamous and elusive PHP terrorist. Until the next the Lunch 2.0 color me satisfied!

Microsoft Bing Party | Web 2.0 Summit 2009 | ZendCon 2009 | Ruby Skye

So, Microsoft Bing had a huge party at San Francisco’s famed venue, Ruby Skye. Some of us, from the PHP Community were fortunate enough; to attend this exclusive party…  and as if that wasn’t enough in and of it’s self. Josh Holmes, and John Coggeshall thought hey, I have an idea –  (let’s take this pilgrimage from “ZendCon 2009” in San Jose, to the “Microsoft’s Bing” party in San Francisco, to the next level) let’s go ahead and hire a Party bus… yeah that sounds like a great idea! So, in true geek fashion about 34 fortunate souls, piled on a Party bus destined for San Francisco, oh and did I forget to mention that John Coggeshall and Scott MacVicar (in true Scottish fashion, no, no really I kid you not) decided that a regular old Party bus just could not be enough so they stocked that bad boy… with roughly, $150.00 dollars worth of liquor! It was a great party and Microsoft was gracious enough to provide a copy of “Windows 7 Ultimate” to all attendees…. sweet!

Monitoring Gearman over Telnet port 4730

So, the only way to monitor the Gearman daemon is via telnet to port 4730.

The current monitoring supported commands are really fairly basic.

I could not locate any documentation on the support commands so had to, “literally look at the code to figure out the supported commands” (the below command documentation is copied from the comments in code).

Note: There are plans to include more set of commands in the next release.

Command: STATUS

The output format of this function is tab separated columns as follows, followed by a line consisting of a full stop and a newline (”.n”) to indicate the end of output, below are the columns shown:

– Function name : A string denoting the name of the function of the job
– Number in queue : A positive integer indicating the total number of jobs for this function in the queue. This includes currently running ones as well (next column)
– Number of jobs running : A positive integer showing how many jobs of this function are currently running
– Number of capable workers : A positive integer denoting the maximum possible count of workers that could be doing this job. Though they may not all be working on it due to other tasks holding them busy.

Notification    1    0    1
GroupNews    2    1    1

Command : WORKERS

This command show the details of various clients registered with the “gearmand” server. For each worker it shows the following info:

– Peer IP: Client remote host
 Client ID: Unique ID assigned to client
– Functions: List of functions this client has registered for.

12 :: – : Notification
11 :: – : GroupNews

Any other command text throws a error “ERR unknown_command Unknown+server+command”

Here is a simple PHP class, to get the output of the two currently supported monitoring commands:

GearmanTelnet.php (GitHub)

Join the PHP Evangelism Team

As, fellow members of the PHP Development Team we are all called to be developer evangelists to the PHP Community.

So, what is our cause, our reason for being… how are we trying to change the “Web 2.0″ world?

The goal of the PHP Evangelism Team is to bring together the right people, resources and experience from across the PHP Community to provide developers with the process guidance and best practices needed to create new opportunities for the web.

We also ensure the various PHP User Groups, get adequate support – as well, as publicize PHP related events.

Patrick Reilly
PHP Evangelism Team

To subscribe send a blank email message to: or, use the Mailing Lists page on

Also, you can show your support for our collective efforts by joining the group on Facebook.

php|works is now over – back to work

Well, it started off a little weird – Paul Reinheimer was a total tard to me (just kidding man – glad we worked through that stuff). Note: Should totally learn to speak Canadian one of these days… maybe Sean Coates offers a small course to those south of the Canucks’ border.

Chris Shiflett’s keynote, “PHP 4 is dead! Migrate your code” was short but, sweet – although I think Shiflett’s Mom was a bit confused by it. [ But, I am sure she was proud of her little baby. ;-) ] But, to be totally honest the nightmare that night wasn’t cool – the image of Wez Furlong as a zombie was hard to shake and that crazy White Russian with the Edward scissor hand action was a bit hard to handle as well.

Terry Chay did such a wonderful job with his, “Finding Art in the Software Architecture” talk it really isn’t funny – he so reminds me of a young Guy Kawasaki (no offense Guy…). I really felt that it would have been better suited as a keynote. It didn’t really have much technical content unless you count the fact that he provided a description of viral growth using the exponential function  !, x(t)=x_0 e^{kt} — (e.g., exponential growth…). Not bad for a south bay kid with a masters degree in something like Theoretical Particle Physics from University of Illinois.

LHB got to have a little East Coast festive occasion at a nice little spot conveniently located in mid-town Atlanta called Sutra Lounge — we now have an additional sixteen or so Andrei Zmievski and random unicode fan photos to post (stay tuned).

In closing, the final keynote was a cool concept – nicely executed – hope Paul/Sean still have a job… when they get home.

All I can say is good work to the entire php | architect crew… it was a good educational event for all in attendance. Looking forward to their spring conference – if you missed this one you totally owe it to yourself to attend their spring conference in Chicago.