The danger of doing too much

Freshness Warning
This article is over 13 years old. It's possible that the information you read below isn't current.

Deane asked his readers how to provide clients with an easy way to update a small portion of a static site. His particular example is a company who keeps adding and removing locations from their "Where to Buy" list. Apparently he’s got a lot of sites that need some sort of simple updates but don’t warrant a lot of custom programming because he’s toying with the idea of building a application framework that would let him handle these mini apps easily and asks his readers for ideas.

One person suggests using Wordpress or another lightweight CMS to manage these pages. Deane responds

This is great for things that fit that data model, but what about things that don’t? What if they want to maintain a list of Supreme Court cases, complete with about 10 extra fields of data.

I suggest Deane would probably want to start looking at a custom web app at that point. The stated goal of the framework is to allow a simple customer-editable section without requiring lots of custom programming. The list of Supreme Court cases sounds more complex than that.

Developers run the risk of doing too much when they spec an application. They start looking at all the possible edge cases for their app and trying to incorporate them. This leads to a sort of analysis paralysis where the design becomes so complicated that nothing gets built.

Start simple. Look at the problem you have and solve it. Don’t start thinking about how this isn’t going to solve X or Y. Solve one problem and iterate. Another case comes up that doesn’t fit in? Iterate. Design your framework to be flexible enough to handle iterations, but don’t over-design. You’ll never get anything done that way.

Be simple.

And for Deane’s original problem of letting a customer update a list of locations without requireing lots of validation routines and such, I’d suggest something simple. Give them a text field that overwrites a file. The web page reads that file and displays it. Perhaps add Markdown or Textile processing to the file if they want fancy formatting options. Five minutes of programming work and the customer’s happy.

Deane
December 15, 2005 11:12 AM

Providing the Supreme Court example was a huge generalization. As the rules I stated in the post indicate, I'm talking about a single table of data -- one table, a set number of columns, a bunch of rows -- with CRUD functionality. Could you do a simple table like this to list Supreme Court rulings on a particular topic? Absolutely -- a potential client actually asked me for this once, and I mapped it out on a napkin. But you pick your data. Let's go back to the "locations" example -- I'm very partial to a generalized app with SQLite as a backend, so it's all self-contained. (And, dude, when you put two n's in my name, I become a woman. "Dee-anne.")

Timothy Appnel
December 15, 2005 2:12 PM

Agreed. Throw Xinha[1] in with that text field that overwrites a file and your set. [1] http://www.hypercubed.com/projects/firefox/

Your comments:

Text only, no HTML. URLs will automatically be converted to links. Your email address is required, but it will not be displayed on the site.

Name:

Not your company or your SEO link. Comments without a real name will be deleted as spam.

Email: (not displayed)

If you don't feel comfortable giving me your real email address, don't expect me to feel comfortable publishing your comment.

Website (optional):

Follow me on Twitter

Best Of

  • Rounded corners in CSS There lots of ways to create rounded corners with CSS, but they always require lots of complex HTML and CSS. This is simpler.
  • The mouse and me Not only is the mouse very destructive, but it's evaded all attempts to capture or kill it so far.
  • Embrace the medium The Web is different than print, television, or any other medium. To be successful, designers must embrace those differences.
  • Let it go Netscape 4 is six years old.
  • Newly Digital Newly Digital is an experimental writing project. I've asked 11 people to write about their early experiences with computing technology and post their essays on their weblogs. So go read, enjoy, and then contribute. This collection is open to you. Write up your own story, and then let the world know about it.
  • More of the best »

Recently Read

Get More

Subscribe | Archives

Recently

Product Manager Career Ladder (Aug 19)
What are the steps along the product management career path?
Building the Customer-Informed Product (Aug 15)
Strong products aren't composed of a list of features dictated by customers. They are guided by strong visions, and the execution of that vision is the primary focus of product development.
Assumptions and project planning (Feb 18)
When your assumptions change, it's reasonable that your project plans and needs change as well. But too many managers are afraid to go back and re-work a plan that they've already agreed to.
Feature voting is harmful to your product (Feb 7)
There's a lot of problems with using feature voting to drive your product.
Encouraging 1:1s from other managers in your organization (Jan 4)
If you’re managing other managers, encourage them to hold their own 1:1s. It’s such an important tool for managing and leading that everyone needs to be holding them.
One on One Meetings - a collection of posts about 1:1s (Jan 2)
A collection of all my writing on 1:1s
Are 1:1s confidential? (Jan 2)
Is the discussion that occurs in a 1:1 confidential, even if no agreed in the meeting to keep it so?
Skip-level 1:1s are your hidden superpower (Jan 1)
Holding 1:1s with peers and with people far below you on the reporting chain will open your eyes up to what’s really going on in your business.

Subscribe to this site's feed.

Contact

Adam Kalsey

Mobile: 916.600.2497

Email: adam AT kalsey.com

Twitter, etc: akalsey

Resume

PGP Key

©1999-2019 Adam Kalsey.