Why design matters

February 14, 2008 Leave a comment

This morning I was reading Jeffrey Zeldman’s article on A List Apart.  The article has a number of quotable lines, but in addition to being quotable, this is one to be remembered:

Web design is the creation of digital environments that facilitate and encourage human activity; reflect or adapt to individual voices and content; and change gracefully over time while always retaining their identity.

The point of the article is that web design is a different thing than other mediums, like posters or other print, or like TV, film, or games.  Web design is more analogous to a building architect, or a typeface.  It is about making an environment that lets other people’s content get communicated effectively without getting in the way.

The things I build are slightly different from the design that gets discussed much on A List Apart.  My work is mostly in applications and conveying business information.  But the basic thrust of this article still applies.  The interfaces I build need to be easy to navigate, make it very easy to find what you’re looking for, make the process of entering information as straight forward and painless as possible, and generally keep out of the way of whatever the user is really trying to accomplish.  The goal of the design isn’t the design itself, or the tool, but to effectively convey information that I don’t have any real control over, or to facilitate a business process.  The goal is the business goal, and the web is the tool rather than being the goal itself.

Then there’s this:

Madame Butterfly is not less beautiful for having no car chase sequence, peanut butter no less tasty because it cannot dance.

Categories: design

Ticket/task systems

February 11, 2008 Leave a comment

Over the years I have worked with a number of ticket systems. They can generally be grouped like this:

  • Systems that are designed for support requests (Request Tracker, many commercial helpdesk products)
  • Systems that are designed to track bug and feature requests for software development projects (bugtraq, eventum, mantis)
  • Systems for projects that emphasize stuff that management wants but don’t really help with actually getting work done.

Quite a few of the bug tracking systems lack user friendly features needed by support departments. Many of the nicer helpdesk products lack basic funcationality needed to track tasks. I haven’t found any products that really do what I want to do with them. What I want them to do is treat tasks like they are tasks, and give them workflows depending on their type but still keep my task lists completely integrated as “the things I’m supposed to do today and over the next two weeks”.

I’m mostly convinced that even as common as these systems are, there is money to be made in developing a system that tracks tasks in a way that supports the variety of different activities that IT departments and other support and development teams regularly do. It basically needs to treat tasks as tasks, and let you manage them with customizable workflows depending on whether they are support or development or recurring kinds of tasks. And it needs to do it without making everybody feel like they are working with software developed by a perl programmer.

Categories: ideas

reCAPTCHA

February 10, 2008 Leave a comment

If you are looking for a way to prevent post/comment spam, account request spam, or to obscure email addresses, one of the better options at the moment appears to be reCAPTCHA.

There are several reasons to choose reCAPTCHA, some of which are outlined on the web site. Aside from having this done by someone who knows what they are doing and do it pretty well, one of the key benefits I see of using this particular system is that the text is fairly easy for a human to read. Recently on another site that used some other captcha system it took me three or four tries every time I had to solve the “puzzle.” reCAPTCHA doesn’t have that particularly annoying problem. You want to keep the spammers out, but you also want to avoid being so annoying to legitimate posters that they find some easier place to post.

Categories: tools and resources

Flexible array merge

February 10, 2008 Leave a comment

Anyone who works much with php spends a lot of time working with arrays. Most data sources return their results as arrays. Most template systems build tables and other elements from arrays. One of the most common warnings in logs from a lot of software is the result of foreach or other php functions that expect arrays but are passed empty values, or error objects or something else. I have spent a lot of time fixing other people’s code to squash this log clutter.

Not that long ago I wrote a more flexible array_merge to help make merging arrays easier and less prone to errors. Here’s what it looked like.

function nicer_array_merge_recursive(){
  $arrays = array();
  $args = func_get_args();
  if(empty($args)) return array();
  foreach($args as $key => $value){
    if(is_array($value)) $arrays[] = $value;
  }
  if(count($arrays) == 1) {
    $return = array_pop($arrays);
  }else{
    $return = call_user_func_array('array_merge_recursive', $arrays);
  }
  return $return;
}

This function is basically just a wrapper for array_merge_recursive, but it makes sure that the arguments are arrays, and does something nicer than blow up if they aren’t.

Categories: PHP Tags:

Trying out WordPress

September 23, 2007 Leave a comment

Every once in a while I get asked about how to set up some kind of web presence. People want to talk to friends and family. They want to throw their thoughts out into the Internet wind to see where they land. Sometimes they have visions of grandeur. Sometimes they just want to put up pictures of their kids for grandparents to access.

I used to do web hosting, on a traditional hosted server. I don’t like supporting it, and it doesn’t make any money unless you have hordes of customers, which I don’t really want because I have a perfectly good job, thanks very much. Hosting on a small scale just isn’t worth the hassle. Hosting on a large scale isn’t what I want to be doing.

So what do I tell people? I tell them to go look at WorldPress.com and other blogging hosts, for one. But even though I’ve been on the Internet since, well, a really long time, I have never had a WordPress blog. Not even an account. Just never did it.

So how can I tell people “Just go open a WordPress account” if I’ve never done it? Well, now I have done it. Now I can say “I used that WordPress thing, and boy was it cool.” Or maybe I’ll start telling people to go elsewhere. I doubt that last bit. But now I’ll find out.

I’m also trying out an account over on Blogger. So far, WordPress has a nicer interface and feature set, maybe by a good margin.  But I use Google for a lot of other things.  Not sure where I’ll end up.  Probably back hosting my own sites.  We’ll see.

Categories: blogging Tags: