Recent Articles

User Interface: Be Nice!

0 comments. 26 June 2008

A short post for a busy week.

I just downloaded the Spore Creature Creator, and this file showed up on my desktop: 792248d6ad421d577132c2b648bbed45_scc_trial_na.exe.

Why not “Spore Creature Creator Trial Install.exe”, or, if spaces aren’t your thing, “SporeCreatureCreatorTrialInstall.exe”? Either would be infinitely more meaningful than an MD5 hash followed by an acronym and a region code.

While the developers may have had a reason (though I can’t imagine it’s a good enough reason) to use this file name, the web team has no excuse.

There’s a lesson here: be nice to users. Whether it’s just a file name or helpful error messages or designing a user interface/experience, don’t treat your users like machines that parse your (bizarre) internal formats.

And Will Wright, if you’re listening, ask someone to rename that file.

Organizing CSS

0 comments. 23 June 2008

Looking at WordPress themes usually makes me cringe. It’s as if there was a memo on semantic markup and the community of WP developers didn’t get it.

Some themes waste kilobytes of HTML source on something that could be achieved with 75% less markup. Some use blatantly non-compliant code. Almost none use semantic names.

But what really irks me—I’ll cop to using meaningless code to make it look good—is the style of CSS that seems to be spreading: breaking up definitions into a half-dozen chunks, no line breaks, lack of organization. I think their heart is in the right place (a section for colors, so don’t have to worry about layout; a section for typography, so the precious padding is protected) but the result is a horrid mess.

I blame Michael Heilemann, the designer behind the bland and semantic-free default WordPress theme. I imagine theme developers, many just starting with HTML and CSS, started by looking at his code, and thought that was the way to do it. Then it spread like a virus.

Here’s an example from “Autumn Concept 1.0″:

#topbar {background-color: #4b7c44;}
#footer {background-color: #4b7c44;}
#mainpicinner {height: 250px; background: «
  url(images/mainpic01.jpg) top left «
  no-repeat #fff; border: 1px solid #fff;}
/* typography */
#logo a {color: #3a4032;}
.textbkg {border-left: 4px solid #ebf0cf;}

(« is an inserted linebreak.)

Wow. Line breaks? Readability? Was this passed through a bad version of JSMin?

This is from the “Color Scheme” section, but the first directive for #mainpicinner is height. It also has a border, not just border-color but the whole thing. What’s the point of having sections if you proceed to ignore them immediately?

The rest is filled with classes like cols01 and box01 (while there are other cols##, there is no box02).

But that isn’t my real problem. My real problem is about 20 lines further down:

body {position: relative; background: #1f1f1f; «
  font: 70% Verdana, Arial, Helvetica, «
  sans-serif; text-align: center; letter-spacing: 0;}
#container {float: left; display: block; width: 100%;}
#topbar {float: left; display: block; width: «
  100%; background-image: url(images/topbar.png); «
  background-position: top; background-repeat: «
  repeat-x; text-align: left; padding: 13px 0 6px 0;}
#topbar div {padding-bottom: 0;}

#container is back. (As are backgrounds. Pick a spot, already!)

This kind of CSS is hard to read, hard to maintain, and hard to customize. Even if the initial version is perfect—which doesn’t exist—things will start to break as soon as someone opens the file. Even in this published style sheet, the author couldn’t decide if background images and borders belonged in “Color Scheme” or “General Styles.” What chance does a maintainer have?

I am, admittedly, obsessively strict with my style sheets. I like to make very sure that every style affects only what I intend it to affect. But I never let the styles for one element single get broken into two places. Instead, what I try to do is keep similar styles in a similar order inside those blocks:

blockquote.dropquote {
  float: right;  font-family: Arial, «
    Helvetica, sans-serif;
  font-size: 130%;

color: #662020;
  background-color: #ddd;
}

div.login {
  position: absolute;
  top: 0;
  left: 0;

  font-size: 80%;

  color: #fff;
}

Get the idea? Within each selector, I try to keep things in the same order. I almost always keep positioning styles first and then do either typography or color. To me, this is much more readable and maintainable. If my header div is 3 pixels too wide, I don’t have to comb through all the #header sections. I go to one place and fix it.

I like to extract the CSS order from the document order. This doesn’t necessarily stay complete or strict, especially when you have classes that can be used anywhere or you’re controlling tags directly. The header styles do come before the content styles, though, which come before the footer styles. That just makes sense.

Am I the only one who can’t stand this “style” of CSS? Do you use it? Why?

Expertise and Authority 2.0

1 comments. 21 June 2008

Jeff Atwood is a self-proclaimed amateur:

“It troubles me greatly to hear that people see me as an expert or an authority, and not a fellow amateur.”

“There is absolutely no reason any of you should listen to me.

But somehow, I have 75,000 RSS subscribers and over 50,000 page views/day.”

Assuming a moderate amount of overlap, there are probably 100,000 people reading and listening to Jeff every day. If you had 100,000 people listening to him speaking out a window, you’d call it a successful rally.

Blogger or Dictator?

I don’t really think Jeff Atwood is an Italian dictator.

Jeff is, however, an authority. When Jeff gives advice like “Don’t Go Dark,” thousands of people are likely to follow that advice.

Wikipedia has been the biggest source of contention on what makes an “expert” or “authority.” Does someone with 10,000 edits have more say than someone with a PhD? If the article is about medicine, probably not, but if it’s about social networking or wikis, experience and research can both bring value.

Technorati defines your “authority” as the number of blogs linking back to you in the past six months. Twitter proudly displays your number of followers. LinkedIn, Facebook, and MySpace all tell you how large your network is, and want you to make it bigger.

Do 9000 people follow @chrisbrogan because he’s an authority, or do people consider him an authority because he has 9000 followers?

My wishy-washy answer is, of course, “both.” Chris and Jeff Atwood both produce intelligent, well-written material and provide valuable perspectives. Chris is an experienced marketer and Jeff an experienced programmer. But consistently large audiences make both authoritative. After all, why would so many people listen if they didn’t know what they were talking about?

Humans are social animals. We’re not particularly strong, or fast, but we are very good at forming groups and working together. When we see something or someone that is valued by a large group, we attribute value to it.

Don’t believe me? Fine, then explain why Paris Hilton is famous.

Authority does not make you an expert, but expertise can help you gain authority. You get followers on Twitter by sharing good links and starting good discussions; you get readers and subscribers by producing quality content and offering something of value.

Then something happens: followers retweet you, readers send links, bloggers write about you, friends-of-friends friend you. Your audience reaches a point where it begins to grow by itself. That audience makes you more authoritative to new readers, new followers. They jump on your bandwagon. It’s the same reason you see “Best Seller” on book covers.

So is Jeff Atwood an expert? As much as anyone in his field. An authority? Definitely.

A Twitterer’s Tipping Point

1 comments. 19 June 2008

Explaining Twitter to non-tweeters is still a difficult process. “It’s like Facebook status without Facebook” doesn’t do it justice—or sound very appealing. “It’s a public, non-realtime messaging system” convinces no one to sign up.

All the Twitter users I know have learned about it through word of mouth and been very confused initially. But everyone I know who joined has organically started to discover just how useful it is.

I typically see people go through three stages:

At first, users are tentative. They don’t know what to post, or why they should. They may discover some friends or family on Twitter and follow them, more out of friendly courtesy than genuine interest. Posting is slow, irregular, and primarily through the web site.

A small tipping point happens when the user starts following people they don’t know personally. Maybe a blogger or another content producer, but someone who is interesting, not just familiar. This person probably posts links, and the burgeoning tweeter may start sharing a few links of their own. They discover tools like TinyPic and s.hort.cc. Posting becomes a little more frequent and regular. They may start using a client like Twhirl, or may stick to the web.

Now they start following more and more people. Some go too fast and are flooded with noise. Most end up unfollowing at least a few users fairly quickly. I followed @nytimes for a few days before realizing they posted dozens of things I didn’t care about.

The real tipping point comes when new tweeters discover messaging. They might have used it but there is a moment when Twitter becomes more about multi-directional communication than about posting your own status. Now they’re posting frequently, having discussions, responding to questions and asking their own. They almost definitely use a client or IM (when it works).

There’s no common time frame, as far as I can see. It took me three months to hit the first tipping point, and another five to get to the next. You can see the shifts in my tweet history.

My father (@irasocol) seems to have jumped all the way stage three in less than two months.

How long did it take you? If you’ve watched people start tweeting, what kind of progression did they go through? What about you?

Exploring the Web

4 comments. 17 June 2008

Last week, as I was demonstrating Ning in my office, someone asked me how I find things like this. Honestly, I could not remember when or how I discovered Ning, which prompted me to pay attention over the past week, and to ask you.

(It was also a good excuse to write a short post since I’m still recovering from some wrist strain.)

So what did I find in the past week or so, and where did I find it? Twitter, unsurprisingly, has been the best source, though not always directly. Second best is what I’ll call “secondary finds,” when I visit one project and then follow to the author’s other projects. Blogs were a close third.

I should admit that I didn’t keep notes or stats, but I’m fairly good at keeping track of things like this, so I trust my own numbers.

CheckYesOrNo.info is a nifty, Twitter-friendly site for yes-or-no poll questions like “Will you participate in Mozilla’s FF3 Download Day June 17th?” (Yes.) Found it when @benrasmusen tweeted a question.

Issuu is a publishing social network. They have some kinks to work out but I see definite potential here. Found it when my cousin tweeted a link.

Twingly is like Technorati reborn, a new, more focused blog search tool. Chris Brogan blogged about it.

LaterLoop helps you store sites to read later. Very popular on Twitter.

TimeToMeet.info is from the same people as LaterLoop, and is a very slick multi-timezone meeting planner.

These are just some of the highlights of this week. I’ve perused quite a few little projects here and there, some good, some bad. I think there are three things that lead to discoveries like this:

Keep your eyes open. When people link something, check it out (or use LaterLoop and do it later).

If you see a link like http://checkyesorno.info/93, try getting rid of the “93″ and visit the site itself. Visit the site, not just the page.

If you like a site, scroll down and look at the footer. Most projects, particularly by independent developers and small companies, have links to the developer’s site, which probably has links to other projects. Look at their other projects. If someone had one good idea and put it together, odds are they’ve had others.

Any more ideas from out there in the blogosphere?

More Posts

« Newer Posts Older Posts »

Tags

Popular Posts

Recent Comments

Search

Meta

Tweets

Links

Incoming Links