my PHP experience

I'm responding to a comment that my time blocks of PHP experience are not long enough for a given job. I address this in several parts:

  1. The version of my resume that that the commentator saw may have used the term "LAMP" instead of "PHP." If so, please see and browser-word-search my current resume for PHP.

For the rest, see elaboration below this list:

  1. The commenter may not have gone far enough back in my resume to long blocks of PHP
  2. I list some PHP achievements, including new stuff that may not have been on the relevant resume
  3. I address why some of the blocks didn't go longer
  4. No matter how long or short they were, I argue that my jobs were much harder than than those of most who do long blocks.
  5. I point out the consistency of JavaScript and databases, which are or will be a part of the job in question.
  6. PHP Debugging / IDEs - a correction to the record

Long Blocks of PHP

Real Estate Call Tracker: 2007 - 2010

It runs on my web site. It's meant for anyone to create a user and experiment. I also encourage you to talk to the real estate broker who commissioned the work, Craig Hatcher of Georgia Residential Realty.

It only recently occurred to me that perhaps not every highly paid developer can complete medium-complex applications such as this from scratch.

I haven't released the source code for reasons I discussed at some length with the interviewer. In brief, the goal was to have a running example, but I didn't want to spend enough time on the code to get it to opus magnum status--clear enough code that the documentation would write itself. With that said, I'll release parts of the code that I'm proudest of upon request, or perhaps all of it.

Blood Analysis Application: 2005 - 2006

The original version isn't online but had some cool features. The person who commissioned this will endorse it. She can be produced upon request.

As for what is online, the front end features are exactly what the client called for. The JavaScript code is probably horrible; I don't care to look 9 years later. There is a lot to be said for working code, however.

What remains is JS and not PHP, but JS is relevant to the job, per the interview.

(Other) PHP Achievements

In addition to the above and what is on my resume as bullet points, see some PHP source code and articles below, some of which may not have been on the version of my resume in question:

PHP installation dictated from a mountaintop

In addition to commissioning the real estate application, Craig Hatcher is the one whom I stepped through a WAP--Windows, Apache, PHP--installation while I was on top of a mountain. My interviewer remembered seeing that story on my resume months ago, at his previous job. Craig is disappointed that he hasn't told you that story.

If it needs emphasis, this episode means I not only know enough to install WAP but enough to communicate it to someone less technical, from a mountain with no (usable) internet phone or even anything to write with. Listing my technical communication credentials would be another document.

Why Some Projects Were So Short

I've been freelancing as a way to avoid working 9am - 5pm; we discussed this during the interview. Given that I usually avoid expensive-to-you recruiters because they usually can't solve the 9 - 5 problem, I wind up with 1 - 2 employee companies. Given this, most projects petered out for one of two reasons:

  1. The client ran out of money
  2. The client insisted on using outdated servers (more below)
  3. Both

I'll be happy to discuss in detail what happened to each project, and you can verify it with the client.

In a number of cases, the code conflict between my up-to-date development server and the outdated production server cost time-money we didn't have. I could try to describe the client's reasoning for keeping their servers, but I'll admit that this was likely an inter-personal failure on my part: I should have built an overwhelming argument for moving servers.

In one case, I was asked to use a version of Fedora Core Linux that was 5 years old and pre-dated "yum." This was absurd and led to great technical grief and waste of time-money.

I want to point out that I want "complex" virtual servers with root access. That's what I'm confortable with. I love Amazon Web Services EC2 despite its being "complicated." I generally can't tolerate shared hosting--servers for dummies.

A Further Word on Stability

I hope I made it clear during the interview that I am looking for stability. I don't want short blocks of anything anymore. This is an opportunity to gain stability and solve the 9 - 5 problem. That's all I want.

The Past (not Future) Advantage of Freelancing

Some PHP developers with long blocks of time have analysts giving them specifications, they do the same thing for so long that they rarely encounter a new challenge, and they have people who know more to ask questions of. I haven't had any of that. I've been alone in the wilderness getting my trial by fire. I'd like to come out of both that heat and cold, but that experience has made me better than most of them.

JavaScript and Databases

Some of my detours from PHP--the McClellan projects, and / or the Chrome and Firefox extensions--involved very complex JavaScript and / or databases--these are relevant to the job at hand, or will be.

PHP Debuggers / IDEs

I think I left the impression that I had never used a PHP IDE / debugger. To clarify, I admitted my foolishness of not doing it until recently. As of a couple of months ago, I started using NetBeans. I used Eclipse for Python before that.

Page History

HTML 5 validator