Doing Things Wrong

Feature Creep

From Wikipedia:

"Feature creep is the excessive ongoing expansion or addition of new features in a product, especially in computer software, video games and consumer and business electronics. These extra features go beyond the basic function of the product and can result in software bloat and over-complication, rather than simple design."

That's exactly what has happened to my WordPress theme. What started out so simple that I named it "Simple" is now anything but simple. In the year since I started on it, it has grown into a monster. The main reason for that is that I dislike WordPress plugins. Rather than use or write a plugin for some feature, I prefer to bake it into the theme. ( A WordPress theme is really just a special type of plugin anyway. )

There are several advantages to doing this:

  • All features can be controlled from a single Dashboard
  • You don't have to worry about dependencies between features
  • You can't accidentally turn off a feature by accidentally disabling a plugin
  • You'll know right away if two features conflict with each other
  • Your back-end code can be much more efficient

For example, I store all the options for the site in a single entry, rather multiple entries, or (gasp!) each one in its own entry. This eliminates many database calls - a single query at the start, and I have everything I need.

However, it is still simple to use. Once the code is written, everything happens automatically. The automatic tree-structured page navigation menus are the centerpiece - they allow WordPress to scale from a blogging system where pages and menus are an afterthought, to a full Content Management System. I don't think there is anything else like it in the WordPress world.

There are so many other features that I could hardly even list them all.


image

The belt attachment is what makes it far superior to an ordinary spindle sander. Belts have a far greater working area than the small cylinders most spindle sanders have. They last longer and are cheaper to replace, and are available in a wider variety of grits. The #36 belt is ideal for removing material to make a rough shape, then clean up with a #80. The big end of the belt drive is a 2-1/2" diameter, which turns out to be by far the most useful part of the machine, and exactly matches many of the curves on a Fender neck. Of course, there are smaller spindles all the way down to 1/2" for tight spots. The flat on the belt will cut reasonably straight for small parts that fit entirely in it, but anything that overhangs the ends is going to be gouged by the rollers unless you are very careful - light touch and always moving the workpiece. It's good exercise.