ZendCon 2010: 3 Questions with Matthew Weier O’Phinney

MatthewIf you have hung around the PHP community for any amount of time, you’ve probably heard of MWOP, Zend Framework’s Supreme Allied Commander, the man, the myth, the legend, Mr. Matthew Weier O’Phinney. (MWOP…see how that works?)

Matthew is a busy man these days working on Zend Framework 2.0, speaking at local user groups and in all his spare time being a dad and husband. I recently caught up with up with Matthew on IRC and in between answering my Zend Framework tech support questions, he agreed to answer…3 Questions.

  1. Did the community elect you “Supreme High Commander of Zend Framework”, were you appointed, or was it a bloody coup?

    I was appointed first Software Architect and then Project Lead by Zend, based on a variety of factors, including my involvement in the community, the volume of contributions I’d made, and the role I’d played in architecting a number of key components within the framework.

    Somewhere along the line, I think during php|tek 2008, Keith Casey started introducing me to folks as “Supreme Allied Commander” of Zend Framework, and the title has, well, stuck in infamy.

    My business cards simply list “Software Architect”, and feature no superhero or military insignia whatsoever.

  2. I just got a handle on Zend_Forms, why are you ripping the rug out from under me and creating ZF 2.0?

    The fact that it’s taken this long for you to learn Zend_Form is precisely one of the reasons for re-architecting components with Zend
    Framework 2.0. I want you, Cal Evans, to be able to grasp forms without pestering me in IRC. :)

    [Editor’s Note: Ouch.]

    To quote our requirements document,

    “The primary thrust of ZF 2.0 is to make a more consistent, well-documented product, improving developer productivity and runtime performance.”

    Many features in ZF1 are difficult to understand, due to either incomplete documentation (which can be from anything, including lack of examples to missing configuration option narratives) or poor architecture (yes, I’m perfectly capable of looking objectively at my own framework). Additionally, a number of design decisions (or lack thereof) have led to some poorly performing code.

    We want to improve these situations. Already, we have identified several bottlenecks both in terms of user education as well as performance, and are trying to make these simpler and faster — changes to autoloading and plugin loading alone could lead to exponentially greater improvements in performance, while simultaneously making the underlying code easier to understand and use.

    As an example, when profiling changes to plugin loading, I discovered that the ZF1 solution took no fewer than 15 calls before initializing a plugin class; the equivalent code in ZF2 took 4. This is not only more efficient code, but it makes the code easier to debug — which typically also means the code is easier to grasp for new users.

    I’m still in the initial stages of examining our MVC structure, but I’m seeing a number of similar situations that we can dramatically change for the better — meaning simpler and faster. This will be a huge win for Zend Framework users.

  3. Do you want to comment on the rumor that your blog name, “phly boy,phly“, is a subliminal message to convert Ruby programmers to convert to PHP?

    I started blogging in 2004. I’d heard of Ruby, but Rails had yet to be born. I’d read a book on blogging somewhere, and one piece of advice it had was to give your blog a unique, memorable name. I knew I was going to blog primarily on PHP at the time (I was using PHP full-time at my job, along with the occasional Perl, JavaScript, CSS, and SQL, and needed a place to put things so I could remember them), and, well, my last name has a “ph” in it already, so I started riffing on “ph-” names. I never intended for it to stick, but I’ve never really found a need to change it, either. I mean, really, flying is much faster and more expedient than the train most days, right?

Matthew is one of the speakers at ZendCon 2010. Purchasing a ticket is the easiest way to find out more about Matthew, Zend Framework and PHP in general.