Rick Hurst Web Developer in Bristol, UK


Category: zend framwework

Plans for 2009

Inspired by Elliot Jay Stocks post “Goals, Old and New”, I thought i’d jot down a few goals* for 2009. In no particular order:-

  • Launch a web app – the original reason for starting Olivewood. We already have a working prototype (a web based trading/ procurement/communication hub – successfully in service for a distributor over a year), it just needs some refactoring to make it suitable to be released to additional clients with slightly different needs.
  • Relaunch Too Old To Skate – it’s a personal project, and it’s important for me to be working on at least one non-paying project, to remind me that i’m not just in this for the money. I’m already part of the way there with a sweetcron based mashup. I intend to launch it, unfinished or not in January.
  • Attend at least one web conference – last year was just too manic, and combined with bad timing I only managed WDC this year. On my possible list are FOWA dublin, bamboo juice in cornwall, plone conf in budapest, Europython in Birmingham and the list goes on.
  • Attend at least one barcamp. BathCamp this year was great.
  • Fix on a php framework and use it on a “from-scratch” commercial project, and get really, really good with it. Cake is the current fave, though will likely be using Zend Framework too on a magento based project.
  • Get to grips with plone 3 skinning – I want to consider myself a plone skinning expert again.
  • Get further than “hello world” with Django – ideally at least one commercial project. I’m not beating myself up too much over this, I thrive on examples, so i’m letting other people do all the early adopter stuff 😉
  • Better customer service – by managing my workload to avoid juggling projects, saying NO occasionally, and generally working in a more controlled and predictable manner.
  • Put up a proper portfolio on this site, maybe even a redesign – working on this website is always last on the list, it’s still using the default wordpress theme from way back.
  • Use and understand some technologies that i’ve been ignoring – JSON, WSGI, Zope 3
  • Do more on-site freelancing for agencies. I seem to thrive in that environment. Maybe it’s my agency background, or maybe it’s because I get to focus on the task in hand rather than the whole “business” side of being a freelancer. There’s also the whole co-worker thing.
  • Keep trading and survive the credit crunch recession (Touch wood) i’m already booked up for the first few months of 2009 – lets hope the work keeps coming!

* web/ career related – i’ll save the more personal goals for drunken new years eve conversations with friends!

archived comments

Nice one, Rick! I think that “saying no” one is a very wise tip indeed. I must learn to do more of that!

Elliot Jay Stocks 2008-12-22 16:19:42

Nice Rick. I wish you good luck and all the best for your 2009 projects.

Nicolas Alpi 2008-12-30 00:25:26

zend framework and isapi rewrite on IIS (and why)

Recently I decided to standardise on php/zend framework for future ground-up development (where I have a choice/ influence). As some of you may have gathered, i’m a bit of a “jack of all trades” when it comes to web dev and I have a legacy of projects using different technologies. One of these is a sprawling classic ASP/ mysql app for a distribution company which is a (very successfully) working prototype of something I want to rebuild in a more generic, modular and industrial way, as a flagship product for Olivewood to develop and sell.

To be honest the classic asp works fine for most purposes, but is becoming increasingly obsolete, along with availability of developers, and I have been trying to move on from it for years. The obvious choice for migrating a classic ASP app would usually be ASP.NET, but frankly the idea of spending the rest of my working life tied into windows-only development, and the fighting with software licences and scarce availability (it seems, at least in this town) of contractors makes me want to give up try a different career altogether. So I decided on php a while back (mainly because I wanted something open source, with an abundance of developers – I think if you throw a coin randomly in the watershed in bristol, chances are you would hit a freelance php developer).

So with php decided on, I then spent time evaluating a few frameworks. They all look good – this was a difficult decision – but I decided on Zend because Olivewood will be primarily concerned with eCommerce and eProcurement, and with magento being built on zend, and the “big industry” partnerships, it seemed the right fit. It also seemed to be useful and provide structure without being overly prescriptive. Also by writing this here i’m hoping to commit myself to at least something!

So, I also wanted something that would work cross platform, even though the obvious choice is to run open source web apps on linux/ apache, it was important to me that it would also play nicely with IIS, as many businesses have already invested in windows servers and already run other apps on IIS and wouldn’t be happy supporting anything else. This gets an indignant response from many “purist” developers/ sysadmins, but i’m basing this on real-life situations, and I hate the idea of a potential client ruling out open source software because it won’t run on their IIS server.

The other factor here was that I wanted something that would coexist with my classic ASP app until such a time that I have rewritten everything I need to make it a pure zend framework/php app. The classic asp scripts will handshake with the php code by dumping session data to the database and passing credentials via a cookie, so the session data can be shared between the two. This is vital to the plan, as it is a long term project – and much of the investment in migrating this will be my own time and money.

Installing Apache on the same server and setting up some kind of proxying would be another option, but not on the live server that this app runs on. I also needed to prove that it would work on just IIS before betting my future business plans on it, even if the first thing I would do is suggest that it is run on Apache.

I wasted a monumental amount of time getting this working, although it turned out to be fairly trivial once I had cracked it. The red herring is that there are two versions of isapi rewrite – version 2 and version 3. All the zend related documentation I found (hardly any) seems to be for version 2 (although this wasn’t mentioned!), which I just couldn’t get to work at all for my setup, but eventually I gathered that version 3 has been almost completely rewritten to work with apache mod_rewrite rules. So now I have a classic asp app, with a single folder (caled “zend”) containing my front controller from where all the php will be served the application folder (with all the models, views, and controllers) is outside the site root.

My httpd.conf file looks like this:-

RewriteEngine on
RewriteBase /zend/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !.(js|ico|gif|jpg|png|css|asp)$ /zend/index.php

Remember this is for version 3 of Isapi rewrite. All quite simple really, when you know how. It’s a pity it took me about 9 hours to work out how!

archived comments

Useful information, thanks!

My clients don’t allow ISAPI_Rewrite, so I’ve written a router that handles GET requests.



Rob… 2008-04-24 12:14:15

thank you i had the problem that I was using the wronth path to files, all I had to do was this no way

jenn 2008-05-31 15:01:45

I cannot use ISAPi_Rewrite, what would be the alternative to run zend effectively on IIS 7.5 ?

Thank you.

Sam 2010-07-13 19:55:45