CMS Focus - Sunday, September 1st

I've decided that the future CMS, if I plan to release, should start with a smaller focus and expand from there.  In that regard, I think the very first thing I will set up to actually focus on will be tutorials.

There's a few good reasons for this.  First, a great deal of the code is already in place, albeit for different reasons.  The TinyMCE based editor I use already includes basic WYSIWYG editing, Image insertions, and now YouTube embedding as well.  Mixed with categorizations, permalinking, and tagging, and we have a halfway decent setup already.  Secondly, this will allow for others to create tutorials for a variety of subjects, but also for the CMS itself.  I think this will create a bit of a community if people decide to use it, and tutorials can be written that will allow others to write even better tutorials or alter the code to their own liking.

 One direction I'm considering is to have the MySQL database hold a great portion of the CSS information.  In doing this, it will allow a user to quickly manipulate their own setup via something like color pickers, rather than support hard-coded themes like WordPress currently does.  I'm not sold completely on this yet, because WordPress themes have the ability to also add powerful functionality themselves via their included functions.php and other files.  However in my experience, this itself comes with downsides for advanced users who want to add functions only to have lost visual changes when the theme updates.

In easy to understand terms, it's a matter of someone downloading and using something that allows them to choose everything themselves regarding color, sizes, fonts, and layout, versus getting started with something and choosing between things that have been prefabricated.  Both have varying levels of convenience, so it's a toss-up.  Supporting both is neither easy nor truly possible without a lot of extra work.

In the meantime, I'm going to keep doing what I'm doing - adding very dynamic functions and creating a very easy to use experience.