Darren's Work Pages

Work Top Page
Darren Cook <darren@dcook.org>


Keywords: CMS, content mangagement system, php, zend, doctrine, XML, Smarty, Pear, Quickform, UTF8, i18n

I have developed a large number of PHP-based websites, SNSes and CMSes for various clients. In most cases part of the requirements was that an off-the-shelf package would not be flexible enough. Support for multiple Asian languages - not just Japanese - has usually been a requirement.

They are usually based around an SQL DB (typically MySQL, SQLite or Postgresql), though in one case the data was both read and written from a very complex XML file (the same file was used for the print version of the data: a prestigious scientific journal). CSV is used as a database format for certain applications. I find phpMyAdmin can be used as a admin interface to an SQL DB for new projects; but I've also written many customized database interfaces for administration staff.

Zend Framework and Doctrine (doctrine 1) was used as the basis for one website. I like the abstraction Doctrine brings, though I have some concerns about performance. In contrast I found Zend Framework to introduce as much complexity as it abstracts, and have been mostly unhappy with it.

Smarty was used as the template engine for some (older) projects. I have found this easy to use, powerful and easy to extend. Designer resistance seemed common, but no better alternative was ever suggested. I have used Pear::QuickForm on a couple of projects, and similar to Zend, found it introduced as much complexity as it saved for non-trivial projects.

I have used gpg and pgp to encrypt data that is sent out, and have a solid understanding of public key encryption, as well as general security issues for web development (SQL injection, XSS, password hashing vs. encrypting, etc.)


Work Top Page   *   Personal Home Page   *   Email me at: darren@dcook.org   *   PGP Public Key

Last updated: 3rd Oct 2011, © Copyright Darren Cook, 2011.