What Firefly/Serenity Can Teach Us About PHP

At the risk of alienating some of my readers out there…who am I kidding – most of you liked Firefly, didn’t you? Having just watched Serenity yet again and recently seeing several episodes of the canceled-before-its-time series Firefly, I noticed that there’s some similarities between it and PHP as a whole. So, here’a quick list of a few I’ve noticed – feel free to add some of your own in the comments:

  • Just because it’s not the latest and greatest version, it doesn’t mean it’s not good. Sure, everyone wants to run on PHP 5.3 – we all love the thought of late static binding, namespaces and the whole list of lovely enhancements that come with this latest PHP version, but for some it’s just not a reality. Most of use are using a ship…er, code that’s been around for a while (except the fortunate enough to be doing new development each time) and has been coasting along in the land of PHP 5.2.x series. It’s not the latest model and it’s probably going to take a little doing to get up to the sort of things PHP 5.3 has to offer, but that’s not an excuse to abandon the code and not try to get as much out of it as you can. Squeeze that last boost that caching that data gives you, refactor that part of the code you just found a better method for – but don’t forget where the code came from and all that you’ve been through to make it exactly what it is
  • Just because you don’t understand something, it doesn’t mean you shouldn’t embrace it. Sometimes the real power of something sits just under the surface and without really getting to know it, you might miss out. Much like the skills of a certain female in the TV/movie, only the right situation brought out the real value of her skills. There’s features in PHP that you might now be using, but don’t dismiss them just because you haven’t used them before. Sometimes there’s a hidden gem in there that you might not see unless you took the time to check it out. So you’ve been using simplexml for a while? Why not see what kind of things XMLReader can do for you. Never checked into the Standard PHP Library? You should! You might never know what you’re missing out on unless you look around and find the right PHP pieces for the right situation.
  • There’s nothing stronger than a bond between those who care. Much like the crew of the Serentity, there’s nothing more powerful than people helping others when they really care about the outcome. A lone PHP developers is only as good as his own skill level. As soon as he reaches out to other developers, he interacts with a whole new skillbase and a whole world of new people. It can be posts on a forum, chatting in IRC or even attending a conference – as long as the bonds are formed, that developer has something more than they did before. Before long, they’ve made connections with other developers with other skillsets that can help to broaden their knowledge and make them stronger as developers.
  • It takes all kinds to make the ‘verse go ’round. Despite what those hiring PHP developers lately want to think, there’s divisions in PHP developers in the same way there are in any other social group. Some developers focus on how the language works and adding features the entire web will enjoy. Others look at the current feature set and think of ways to to squeeze every drop of performance out of it. Still others are working their way up, trying to do their best with the code they’ve been given. PHP developers are as varied as population in general, and it’s definitely a good thing. The PHP language will only develop into something even more robust with a panel of varied developers at the helm.
  • Use only what you need. Just because there’s something out there that’s shiny and looks good to use, it doesn’t mean your application really needs it. Remember, the real key to applications is the performance – that’s what the world tests it on. Don’t worry about the latest and greatest if it’d not going to help. Features shouldn’t be included if they’re not needed – they’ll only cause trouble otherwise.
  • A good team is nothing without good leaders. The PHP community has some excellent “captains” at the helm – people like Cal Evans, Keith Casey, Eli White, Derick Rethans, Andrei Zmievski, Chris Shiflett and Stefan Koopmanschap have helped to shape the PHP language and community into what it is today. There’s countless others (largely ones with the CVS….er, SVN access needed to make updates to the C code that powers the language) that have made their marks on PHP to help it grow and evolve into the powerful development language that it is.

As it can be said that life imitates art, so it can be said that programming, in this case PHP development, shows the same strong points as those that flow from the mind of Joss Whedon – emphasizing the good, venturing into the unknown, the power of a human-to-human bond, diversity is good, use just what you need and, of course, a community is only as good as those who lead.



  1. Clever theme for a post!

    Thanks for considering me a PHP captain. πŸ™‚ I hope to be back to blogging and interacting with the community more frequently as a result of recent changes.


  2. Interesting theme indeed, you don’t happen to read freelanceswitch.com, do you? πŸ˜› They recently did a Buffy themed post.

    Regardless, the suggestions are solid!


    1. @chris Thank *you* for being a leader in the PHP (and security) communities!

      @rian Nope, but I gave it a read just now – good stuff! Pop culture references are always more fun πŸ™‚


  3. Excellent post. I am flattered to be considered one of the captains of the PHP community, especially given the list of other people I’m listed as being a part of. You should definitely not forget yourself though, you are a very solid part of all serious php developers’ lifes.

    oh and btw, there’s a missing http:// in the URL of my link πŸ˜‰


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s