Published on 2009-02-18 by John Collins. Please follow me on Twitter for more:
I heard a story today about a previous company where I worked. While there, I designed and implemented a conference room booking system for their internal meeting rooms in PHP/MySQL. The system proved very popular with staff, so was maintained and upgraded heavily by a small team of PHP developers after I'd left the company. Since then for various reasons the PHP team has disbanded, while the IT department of the parent company will not support a PHP-based application, so there is nobody left in the company to maintain the application.
The problem is, staff love the application so much that they are continuing to use it every day, even though rooms in the building have changed and been given new names! The staff know to mentally map the old names in the PHP application to the new names in the building while booking a room online. So what is to be made of this scenario?
I am sure that this is a situation that has played out many times over in different organizations, and shows a real failure of thinking at a senior management level. Good software should ultimately satisfy the needs of the target audience, and improve productivity for an organization. My old booking room system does both things, and at a very low cost as it is built on open source. The fact that it is written in a language that your IT department does not support should not be a threat to it surviving, instead senior management should be asking their IT department to take a hard look at their skill sets and policies, or at very least take in a PHP contractor for a few days!
Updated 2020 : note that the above post was originally published in 2009, but is left here for archival purposes. Since I wrote this post, the company in question has moved to a brand-new building, so I would be very surprised if this still holds true: "The staff know to mentally map the old names in the PHP application to the new names in the building while booking a room online."