Skip to content

My new adventure…is my old adventure…sort of

zendDear Reader,

I have spent the last 14 months of my career at Pantheon. They are good people with a great product. However, when new or old opportunities present themselves, you have to give them a look.

One such opportunity presented itself about a month and a half ago. The process moved slowly because both parties had to ensure that this truly was a good idea. However, after many good meetings and conversations, I am pleased to announce that as of April 3rd, 2015, I am returning to Zend.

I feel am not moving to a new job, I feel like I am coming home. I left Zend in 2008 but remained closely tied with them. I have had – and still have – good friends that work there. I’ve done contract work for them in the intervening years, and even helped with ZendCon ’10. So it is no surprise that when this position became available, I was intrigued. This time around, my title will be “Technical Manager of Training and Certification”.

As with any job change, I will miss my old friends.  Even so, I am excited for what the future holds.

This would not have happened if it were not for my very good friend, Mr. Adam Culp. Thank you Adam for everything. I am in your debt.

Until next time,
I <3 |<

Setting Up a (FREE) WordPress Development Site

Dear Reader,

The Problem

Most of you who read this blog are software developers. You know the importance of separate DTAP (Development, Testing, Acceptance, and Production) environments. However, not everyone understands this. I was recently at the WordPress Nashville meetup when someone mentioned having a development environment for their blog and you could here the crickets chirping. A lot of the attendees of that – and many other WordPress meetups – are not developers and may have never considered the need for a development area, after all, they don’t develop, right?

Everyone however, experiments. Whether it’s a new theme or a new plugin, you really, really need someplace to test things. one of the worst thing you can do is what I do with this blog, just install things and play with them in production. You need someplace where you can try out new plugins, new ideas, new themes. Not necessarily someplace where you post all your content, WordPress does a great job of allowing you to test things out content-wise before committing.

Development systems used to mean having your own server; as a matter of fact, I still do have one running here at the house. I do not recommend this though. It’s a gross waste of resources if you are just testing out a single blog, or even a few. You could also load WordPress on your laptop or desktop but I don’t recommend this either. To make it work though, you have to install and maintain a complete “web stack” (Apache, PHP, MySQL) This is just more software on your machine that has to be kept up to date.

There is a solution though, actually, I’ll present you with two. One for PHP developers who know what they are doing and want control, and one for regular bloggers who just want someplace to test plugins and themes before pushing them live. In both cases though, the services are free.

The Developer’s Solution

If you know what an ssh key is, and you understand source code control systems, then the solution you want is it’s a free service from Zend that is specifically designed for developers. is a cloud-based development hosting. They host your project that you are working on, not the ones in production. You can’t use for production systems. (and by can’t I don’t mean it’s against their ToS, I mean it won’t work. it’s not designed for that.)

Getting setup is easy.

  • Create an account. Find me on twitter if you need a beta invite and don’t know how to get one.
  • Create a Container.
  • Create an application inside that container. At this point, you have the option of selecting what kind of application, select WordPress.
  • Using git, clone the application to your local machine.
  • Code or experiment, commit, push, test, rinse repeat.

Again, this is a developer solution. I left out a lot of small details like setting up keys, etc. The docs tell you how to do that but if you aren’t familiar with the concepts, . You wouldn’t play with a jackhammer just because you thought ti was pretty, don’t play with tools like unless you understand them.

Using you can install themes, plugins, hack the core, (don’t you dare) or do just about anything else. To install plugins, you unpack them locally in the plugins directory, commit them to the repo and push. Then go into your test area and activate them. It’s not quite as simple as using the built-in installer but you know the saying “with great power…”.

Once you have tested a plugin, theme, widget or idea and know that it works properly, feel free to install in production knowing that you’ve done your due diligence.

I will mention one downside of for WordPress developers. The automatic install and upgrade system will not work. You can try, you can fiddle with permissions all you want but at the end of the day, it’s just not going to work. Boaz and the team are aware of this shortcoming and it’s on their roadmap to fix.

The Blogger’s Solution

Ok, if you aren’t a developer, there’s still a way for you to get a free development area and it’s still important for you to test thing before you start mucking around with your production system. For you non-developers, use the free offering from my friends over at Like, there are limits to what you can do with the free offering but you should be able to get up and running with the free offering. The main limit you will hit is the 20MB space limit on your database. If you like, you may want to consider either setting up a pay account or moving all your hosting over to them. If you do the latter though, don’t just use your testing area as your new production area. If you do, you are really missing the point of this post.

  • Create an account at
  • Once in, select your “Shared Cloud”. (There is a button for it.)
  • Create an app in your shared cloud.
  • Select WordPress
  • Answer the questions.
    One of the questions is what domain name to use. If you are not familiar with DNS settings, use a subdomain. It’s easier that way. If you do understand DNS and know what you are doing, you can setup or or something like that.
  • Be patient. No matter what it says, it can take up to five minutes for your app to be created.

Now you can begin installing plugins, themes, and widgets. If you are working with a developer, they can setup their ssh keys and get to the source code. Unlike you can use WordPress’ automatic install and update tools to keep your test site up to date.


No matter which way you go –,, or some other solution – every WordPress blogger needs to have a development area that is wholly separate from your production environment. This means don’t just install another instance of WordPress on your production server and call it test. It needs to be separate from your production server.

In this post we’ve discussed two solutions that you can use to get a test system up and running for free but there are other ways to accomplish this. The takeaway is not to use one of these services but to get a test system setup and use that for all your experimenting.

Until next time,
I <3 |<

Photo Credit: Huasonic
Released under a Creative Commons license.

Seven Things – Tagged by Matthew Weier O’Phinney

Dear Reader,

I’m really curious about the origins of the Seven Things Meme. Anybody know where it started? Anyhow, I’ve been tagged by my friend Matthew Weier O’Phinney so I’ll play along. (It forces me to blog, something I’ve not done a lot of in the past 6 months)

  • My super power is thinking up titles for things
    Everybody has a super power, some of us just have to look harder than others to find them. Luckily for me, mine manifested itself early in life, I am good at making up titles. It doesn’t matter what needs a title, I can look at something or hear an idea and come up with a title for it. (examples would be this blog you are reading, or this one, or this one) Unfortunately for me, it’s not a power I can control. They either come to me, or they don’t. So if you are ever stuck coming up with a title for something, ping me.
  • I wrote my own PHP framework.
    Ok, so who hasn’t? The only difference is that I wrote a PHP framework back in 2001. Apparently, SourceForge doesn’t clean out it’s closets often because it’s still there. The name of the project is a good example of how my super power doesn’t always work. (Matthew, you are not allowed to laugh at my code, it’s like shooting fish in a barrel)
  • I didn’t have to take English 101 because I wrote a perfect paper
    This one will come as a surprise to anyone who followed DevZone closely. I can’t spell and I regularly butcher the English language. Names are my specialty. Give me a name and I’ll show you at least 3 alternate spellings. However, when I started college at the University of South Alabama, my first class was English 101. The first day, the assignment was to write a paper on what you did that summer. I turned mine in and the next day I was informed that I had passed the class because there were no grammatical or spelling errors in the paper. No one was more surprised than my mother, an English teacher. :)
  • I want a tattoo
    I’ve wanted a tattoo for some time to complete my mid-life crisis. Kathy even designed me one but she won’t finish it up. Her design centers around “Property of Kathy” written in Tengwar.) (Do me a favor, drop @kateva a note on twitter and encourage her to finish it.)
  • I used to produce live concert videos
    I wore a lot of hats before I donned the battered Fedora and started writing about PHP. A few years ago, that hat was a beret because I was in “the biz”. I produced over 40 live concert videos. Most of them were for Southern Gospel groups but I did a couple of contemporary Christian groups and even two comedy videos. I’ve moved on now and while I love programming computers, I can honestly say that producing videos are some of the most fun and yet the hardest work I’ve ever done in my life.
  • I met The Lovely and Talented Kathy while we were both working at Walt Disney World
    The year I graduated high school, Walt Disney World opened EPCOT Center. That summer, they went on a hiring spree to staff up for the fall opening. It was during this spree that I sneaked in, with the help of a couple of nice ladies who went to church with my grandparents. I was hired into “Cash Control”, basically, the bank for all of the stores in the park. (For those that care, it’s in “the tunnel” directly beneath the Carousel.) On my first day in Cash Control, I met The Lovely and Talented Kathy and knew I was going to marry her. Unfortunately, she didn’t quite see it that way. (I was a mere child of 18 at the time and she was…well a year or two older than me) One night, after we closed the park and then closed Bennigin’s, her car wouldn’t start. With a straight face and more than one Banana Banshee in her, she looked at me and said “Hey, my car won’t start, will you ride home under the hood and hold the distributor cap on?” The sad thing is that I was so smitten with her that I would have done it. That’s ok, she eventually came around…or I wore her down, I’m not sure.
  • I got my job at Zend quite by accident
    Back when I was at Jupiter Hosting, I actually had time to write some code. I didn’t get to write a lot, but between meetings and other management crap, my team would take pity on me and give me a small project to chew on. One of the projects I wrote (I forget which one) I thought was pretty good. There was this company named Zend that had a code repository (it’s gone now) and I wanted to submit the project to it. I submitted the project and waited…and waited…and waited. After about 2 days of hearing nothing, I started emailing people asking what was up. I ended up talking to Jayons Minard who told me no one was managing the repository anymore, so I volunteered. I ended up managing it for about 4 months while I was working at a small start-up back in Nashville.

    When the start-up went tits-up, I started doing contract work until I found something I liked. One of the contracts I started working on was this new site that Zend was building and Jayson was in charge of, DevZone. One thing led to another and after about 3 months of working on contract for Zend, and constantly asking Jayson if there were any positions open at Zend, I got an email from him. He said that Mark de Visser, his boss, would be in Nashville the next week for a Red Hat conference and wanted to interview me. I had a great interview with him and had an offer letter in my email in box when I got back home.

    It was probably the weirdest journey to a job that I’ve ever traveled, but it was worth it. :)

Ok, there are my Seven Things. Now for my Seven People. I think this part may be harder than the seven things.

  • The Lovely and Talented Kathy – She will have to post her entry here because she’s yet to join the blogger nation.
  • Mark de Visser – The best boss I ever had and the man who taught me the value of a community to an open source project.
  • Louis Davidson – My long time friend whom I talk to maybe once a year but think about every day.
  • Joe Stagner – Because if more people at Microsoft were like him, it would be a much cooler place.
  • Allen Fuller – Who if he doesn’t already know Keith Casey, probably should.
  • Sebastian Bergman – the official photographer of the PHP community.
  • Christian Flickinger – Spooooooooooooon!

And now, the rules:

  • Link your original tagger(s), and list these rules on your blog.
  • Share seven facts about yourself in the post – some random, some weird.
  • Tag seven people at the end of your post by leaving their names and the links to their blogs.
  • Let them know they’ve been tagged by leaving a comment on their blogs and/or Twitter.

Until next time,

Change is in the air…

Dear Reader,

Wow, what a day today was!

I’m going to cover a lot of ground in this post so unless you are friend or family, you may just want to read the next summary and skip the rest.

For those in a hurry

For those who have not heard, yes, I will soon be leaving Zend and moving to Ibuildings. Yes, that means I am also leaving Nashville, TN-US for Utrecht, Netherlands. No, the lovely and talented Kathy will not be going with me immediately but will be joining me after my son graduates high school. Yes we are both very excited about it.


The first question most people ask me is why? I mean a lot of people asked me that. As I’ve said to just about anyone who would listen, I have a great job! Zend is a great company to work for, they provide for their people, and I have absolutely no complaints about my time at Zend. This will come as a surprise to a few Zenders as all they have ever seen me do is complain. I’ve been allowed to create my role at Zend and that is a rare thing at any company.

I was originally hired at Zend to be an editor for DevZone and I was just supposed to write articles and code. (those of you who have seen my spelling and grammar gaffes can stop laughing now) Over the course of 2.5 years, Mark de Visser, with the backing of Andi, Harold and the rest of this awesome company, put up with my antics. They paid me to work with the PHP community. I got to travel to conferences, hang out in IRC, they even let me be the Master of Ceremonies of ZendCon. This truly is a dream job. It is so great that in the 2.5 years, I’ve turned down most offers to interview and the few serious offers that came my way. This was were I felt at home.

So back to the question, why leave a dream job at a great company? The only answer I have is “opportunity“. Most of you have never read my article “Nerd Herding” (and I don’t recommend you bother now) but in it I talk about the fact that for developers, interesting projects are just as important as a good salary. While I still love what I do at Zend, the opportunity offered to me by Ibuildings was just too great to pass up. So that is why, after over a month of thinking about it and discussing it with the lovely and talented Kathy, we decided that this was a chance I couldn’t pass up.

/me <3 PHPC

One of the great things about my job, both at Zend and at Ibuildings is that I get paid to work with the PHP community. I told someone this at ZendCon but it bears repeating here.

PHP is my fifth programming language, that means I’ve been a part of 5 programming communities. None of those communities have come close to being as vibrant, fun and welcoming as the PHP community. PHP developers should not take this community for granted, it is something special.

It is to this awesome group of mixed nuts that we call the PHP community, that I give a big hug and say thank you. Thank you for all the tweets, blog posts, IMs and irc well wishes today. Thank you for your friendship. Thanks you for welcoming me in even when you didn’t have to. You guys and gals are teh awesome and I wish I could call each of you by name and say thank you. (if I tried, we’d be here a while an even then, I know I’d leave someone out so I’m not going to try) It has been a blast working with you while at Zend and I look forward to working with you at Ibuildings!

Looking Forward

I’ve talked a lot about Zend in this post but I can’t close without saying a big hello to my new Ibuildings family. Thank you for welcoming me in such a warm fashion. I’ve never had this much attention paid to me coming to a new company. Honestly, it humbles me to think that I’m moving to a new company and country and yet I already have good friends in both. I am looking forward to working with each of you!

I am positive that Zend will be hiring someone to take over DevZone and my other duties. I know that phpc will embrace them as you did me. (because again, you guys and gals rock!) DevZone has become a regular daily stop of a lot of PHP developers and I am sure it will only get better.

As for me? well, I’m not going anywhere. (figuratively speaking) I’ll still be hanging around on Skype, IRC and IM. If you need to contact me, my contact info is always on my EPK. I encourage you to ping me if I can help you.

It’s been an awesome 2.5 years at Zend and I look forward to a number of awesome years at Ibuildings!

Until next time,

Amsterdam Wrap-up: The Directors Cut

A good chunk of this blog post was posted over at DevZone. However, this one contains more personal observations and general nuttiness.

I’ve just returned from my second trip to the Netherlands and, as with the first one, I had a wonderful time. This time, I was honored to speak at the PHP Business Seminar put on as a joint project by my good friends Ibuildings and my new friends Sogeti.


Amsterdam is a beautiful city and I always love when I get to travel there. The weather was beautiful and I was lucky enough to have a couple of hours to myself. Last time I was there I was so jet lagged that I got a whopping 30 minutes in the Van Gogh museum. This time I got there in the morning and spent about 2.5 hours wandering and admiring his art.

Shopping Mall?Obligatory Tourist PhotoHotel Sint Nicholas

Also, there was a street fair happening in one of the city squares (I believe it’s called Waterloosplain but I am probably wrong.) It was really fun, not because it was big or because I paid 3EU to rinde rides, it was fun because all the music was old 70’s tunes that had been re-mixed into techno dance tunes. One part of the fair was this wheel on the long arm of a pendulum that would swing back and forth as the wheel rotated. People sat in the wheel. This thin had to come within 20 feed of the Madam Tussauds building and at it’s apogee lined up with the big glass window on the 4th (?) from of Madam Tussauds.

Dinner With Friends

Monday evening Ivo Jansch, CTO of Ibuildings stopped by the hotel and picked my up for dinner.
Me and my PHP Homies!
Ivo and I joined Stefan Koopmanschap, Michelangelo van Dam and Remi Woler for dinner and drinks (and one fine Cuban Cigar provided by Michelangelo, dude, seriously, you rock!) It was great catching up with old friends and as one would expect from that group, the conversation never strayed far from PHP. We ate and drank way to late. Remi blogged about dinner here and posted a picture that Stefan took.



Tuesday morning, the day of the conference, came way too early after a late night with friends. Lucky for me, the conference was in the afternoon and evening. Ivo Jansch, CTO of Ibuildings, drove me out into the beautiful Holland countryside to a great hotel where the conference was being held. There I met 70+ people, both management and developers, all gathered to talk about PHP.

To be honest, I did not pay attention to any of the sessions; in my defense, they were all in Dutch. I did, however, manage to catch a few of the phrases like “Zend Platform” and “Zend Studio” and eventually figured out that “Pey-Ah-Pey” meant PHP. My cue to start paying attention was when the host for the day started speaking in English. At that point, I was pretty sure it was for my benefit only.

My Presentation

Presenting my session was fun, ok it was fun for me; I hope it was fun for the audience. The slides can be found on SlideShare, it’s my slideshow called Gardeners, Not Gate Keepers but honestly, there are only 14 of them including the vanity slide and if you weren’t there for the conference, they won’t make much sense. I talked about the fact that thanks to things like RIAs, Mashups, APIs and cool tools like IBM’s Mashup Hub (built on “Zend Framework”: and WS02’s Mashup Server, our roles in IT were changing. We no longer need to be the Gate keepers to the infrastructure but we need to be gardeners of the application. We need to provide the tools for our users and let them participate in the building of the application. (In retrospect, Groundskeepers might have been a better analogy) Anyhow, I tortured the analogy for 45 minutes before it was all over. As I told the audience, my presentation wasn’t a “Do this or else” type of presentation but more of an “Here’s an idea I have, see if you can use some of it where you are” presentation.

The audience was great for the session and afterwards I was asked several good questions and had some great discussions about the session and PHP in general while eating dinner.

One question asked in the evening session was:

“Why would I want to allow users to build mashups inside my application? Won’t I just be creating a mess of single use applications that I then have to mantain?”

My answer to this is, yes, of course you will. However, no more so than you are doing now. It’s really a mindset change. By (as someone put it on twitter today) supplying them with the rakes and showing them how to use them, we are encouraging users to help take control and responsibility for the application. You have to see the whole show to really grasp it because I am certinly not advocating allowing anyone and everyone to start tinkering with code.

This is my current presentation and I’m available for Business Seminars, users groups, kids parties and weddings, so drop me a line if you’d like to talk about me coming to your meeting.

Following dinner, we changed audiences and went at it again. At this point I need to say a big thank you to my friends at Ibuildings for bringing me a RedBull. I’m pretty sure I would not have made it through the second session with out it. (As it was, I managed to shave 10 minutes off my best time with it.) The evening’s audience was almost all developers, the majority of them from Sorgeti and Ibuildings but there were a few from other companies that snuck in for the fun. Peter C. Verhage and Robert van der Linde from Ibuildings and Sogeti respectively both reprised their sessions as did I. I’ll have to say, I had a lot more fun in the evening talking only to developers.


All in all, it was a great, but all-too-short conference. With only 1/2 a day and a hand full of breaks, there was no way I could meet everyone. The people I did meet were all great and I hope to run into them online to continue the friendships that were formed. I would like to say a special thanks again to both Ibuildings and Sogeti for putting forth the effort to put on a conference like this. As PHP’s popularity grows, it’s good for managers to know that companies like Ibuildings, Sogeti, and of course Zend, are there to help them.

So, as my tradition, as the sun was slowly making it’s way across the sky, I mounted my mighty steed of steel donned the battered fedora and headed off to the next conference. (Actually headed back home to recuperate before my road trip to php|tek…but that’s another story!)