Thursday, October 12, 2006

Pythonic Success after PHP Failure

http://www.python.org/about/success/rackspace/

From the article -
...
After a couple of years, the result was a big, un-maintainable mess of thousands of PHP pages and modules that had been written and maintained primarily by one person. The limits of PHP (then version 3) had been stretched thin, the system was too much for one person to maintain, and it was difficult to bring in new people to help with it.
...
Our first attempt to update the system came when PHP version 4 was released. This release promised better object oriented capabilities, and the time was right for Rackspace to dedicate more people to the project.
...

Memory leaks, inconsistent interfaces, inconsistent internal data model, randomly freed objects, multiple object copies despite explicit use of references, internal PHP errors, and untraceable code failures all but made the task impossible to accomplish in PHP.

Even after we achieved a relatively stable code base, we were nowhere near our goal of Core Objects Reused Everywhere because we had to depart from pure object-oriented methods just to work around the problems inherent in PHP. It became clear that PHP was unsuitable for our large scale, mission critical projects. A new solution had to be found.

...

No comments: