The article starts by identifying the 3 target types of users:
- End users – who just want to be able to do what they want to do
- Site administrators – who just want to be able to do what they need to do; and
- Site installers and programmers – who just want things to work.
then moves on to define what the perfect CMS would comprise:
My "perfect" CMS would make it as easy for users to do stuff as I want to make it for them. It would never make them go "Huh?"
My "perfect" CMS would have a good README file, so that I know how
the database is supposed to e set up, where the files need to go, which
ones need special access setting, and where all of the default settings
My "perfect" CMS would let me do all of the the admin tasks with no
idea of what code is hidden in the background. It would give me
complete flexibility in my entire configuration. It would let me enable
and disable features and functions easily. It would get stuff out of my
way that I’m not using.
My "perfect" CMS the code would have comments. Code blocks would
have explanations in them, so I can find out what each one is supposed
to do. There’d be a description in each module that gives concise
descriptions of the module functions, what they do, what they expect to
get passed, and what they pass back. There’s be html comments embedded
in each module’s output, so that I can look at a page source and see
which part of each page is getting written by which module, and where I
can find debugging information and error messages Would it increase the
page size? Sure – a bit. Would it make it easier for me to
troubleshoot, modify and customize things? Sure – a lot.
Keep in mind that Scott’s point is view is quite unique in that he has literally tried, tested and installed hundreds of PHP CMSs, just look at his site for proof – a luxury few of us can afford.