rc3.org

Strong opinions, weakly held

Month: November 2007 (page 1 of 4)

A guide to judging a Layer Tennis match

I’ve surprised myself by becoming a huge fan of Layer Tennis. Every Friday, two graphic designers take turns creating images in a graphic design thrown down. The tool of choice is usually Photoshop, but this week’s battle is a Flash battle, and a couple of weeks ago there was an Illustrator battle.

There are 10 shots per match, and the competitors take turns. A coin toss determines which competitor gets the first shot and which gets to wind things up. The appeal is in seeing what someone can do in 15 minutes. Audiences have seen hand-drawn text, staged photographs with models, and some really amazing Photoshop work.

There are no real rules, or criteria for judging which player should win — some players take the idea of layering to heart and others throw out everything and start over when it’s their turn.

Good Layer Tennis is like jazz. A clever riff on the previous shot or a shot that ties together the ideas both players have used previously is always a winner for me.

Here’s a short list of things I look for:

  • Aesthetic appeal. Is the current shot beautiful? Is it clever? Do I like what I’m looking at?
  • Degree of difficulty. Was the shot hard to compose? Do I look at it and boggle at the idea that it was completed in 15 minutes?
  • Cohesion. Did the current shot use elements of the previous shot? Is there a larger point here? Many players wipe the slate clean and create an image that’s completely new, but I disfavor this approach. I like shots that are in the flow.
  • Spontaneity. To survive in Layer Tennis, I’d imagine that you must start the game with a plan and a trunk full of techniques and clip art that you’re ready to use. There isn’t enough time to wing it completely. However, I give the most credit to players who seem to be doing more work during the match. Applying art that you created previously is less challenging than designing and executing shots in the 15 minute window provided.

Although there’s no formal voting process, your opinion does count. The judges read the posts in the official match forum and take them into account when deciding the winner. So memorize these criteria and post your opinions.

Anthropological evidence, or fairness if you prefer

Tyler Cowen has a great post on the willingness of arguers on both sides of any debate to ascribe motivation to their interlocutors without any evidence of those motivations:

I’d like to propose a new research convention. Anytime a writer or blogger talks about what The Right or The Left (or some subset thereof) really wants or means, I’d like them to list their personal anthropological experience with the subjects under consideration. Davies presents Friedman as a shill for the Republican Party; I’d like to know how many (public or non-public) conversations he has had with Friedman about the topic of the Republican Party. I’ve been present for a few, and while I’m open to feedback from Davies, my guess reading his post is that he hasn’t been there for any. Yet he writes with a tone of certitude: “it’s clearly not intellectual honesty that makes American liberals act pretend that Milton Friedman wasn’t a party line Republican hack.”

And he wraps it up with:

It is sad that anthropological research has such a low status among so many smart people. It is fashionable to open up data sets for replication. So let’s do the same for research into ideology or even just proclamations about the ideology of others, especially those you disagree with. Tell us how much field work you did, who you did it with, how much they trusted you, and what you wish you could have done but didn’t. That is easy enough in the on-line world.

Fred Clark made a similar point back in March. He noticed that 84% of right wing bloggers surveyed believed that Democrats in Congress want the U.S. to lose the war in Iraq for political reasons. I’ll quote him:

Civility requires — that is, is impossible without — a presumption of charity. This is as fundamental to honest and meaningful conversation as the similar principle, the presumption of innocence, is to the legal system. Yet here are 84 percent of right-wing bloggers surveyed cheerily admitting that they view anyone who disagrees with them as guilty until proven innocent. Not just guilty, but treasonous, reprobate, evil.

This underscores why civility means so much more than politeness or decorum. Incivility of this degree renders conversation impossible. If you begin with the presumption that those you are talking to do not mean what they say then you have no basis for listening or responding to them. Their words, and the intent of those words, cannot be trusted. All that matters is their malevolent secret agenda, which of course they will deny because they are malicious liars.

This is from the guidelines for Wikipedia editors:

Assuming good faith is about intention, not action. Well-meaning persons make mistakes, and you should correct them when they do. You should not act as if their mistakes were deliberate. Correct, but do not scold. There will be people on Wikipedia with whom you disagree. Even if they are wrong, that does not mean they are trying to wreck the project. There will be some people with whom you find it hard to work. That does not mean they are trying to wreck the project either. It is never necessary that we attribute an editor’s actions to bad faith, even if bad faith seems obvious, as all our countermeasures (i.e. reverting, blocking) can be performed on the basis of behavior rather than intent.

This guideline does not require that editors continue to assume good faith in the presence of evidence to the contrary. Actions inconsistent with good faith include repeated vandalism, confirmed malicious sockpuppetry, and lying. Assuming good faith also does not mean that no action by editors should be criticized, but instead that criticism should not be attributed to malice unless there is specific evidence of malice.

This also ties into Larry Lessig’s crusade against corruption.

Sadly, there are entire industries built on the presumption of bad faith. Bill O’Reilly’s accusations that there is a war on Christmas center on the idea that people are out to get a holiday for some nefarious reason, even though it’s obvious that he’s reporting on a series of unrelated bureaucratic overreaches.

The bottom line: if you find yourself assuming bad faith on the part of someone you disagree with absent concrete evidence of its existence, you probably need to take a step back.

The new sports media empire

The mathematicians behind Baseball Reference, Pro Football Reference, and Basketball Reference are joining forces to launch a company to support their sites. All three sites were started as hobbies, but have grown to be as essential in their own areas as Wikipedia is in general. Baseball Reference was the original and motivated the creators of the other two sites, and all three of them are friends who met at math conference.

It’s nice to see the guys behind them turn them into a real business, rather than seeing them just get sold to ESPN or die because they become too much work to keep up and running on a part time basis.

The hobbyist Web site turned business is perhaps my favorite Web business model.

Timing out attempted socket connections

I have some code that opens a socket, sends a message, receives a response, and closes the socket. I need to add a timeout to shut down the socket connection if it takes longer than a specified duration. This code is written in Java, but this is a design question.

Sockets support a read timeout. To see how it works, read about setSoTimeout() in the Javadoc for java.net.Socket, or try man 2 getsockopt on your local Unix machine. All socket implementations provide this same timeout functionality.

Anyway, the way the read timeout works is that you can set how long the socket will wait without receiving data before the connection is automatically terminated. If I open a socket connection with a 5000 millisecond read timeout, and the other end of the connection sends me no data before 5 seconds elapses, the connection will be dropped. In Java, this results in a SocketTimeoutException being thrown.

This timeout is somewhat useful, but only in limited circumstances because the timer only begins once the connection is established (and is automatically restarted as soon as the socket stops receiving data from the other end of the connection). If a network issue prevents the socket connection from completing but doesn’t block the attempt to connect outright, the timeout counter never starts, and the connection just hangs indefinitely. You see this sort of thing happen sometimes when you try to connect to a server via SSH. If there’s a network issue, the connection will hang without being dropped. On the other hand, if you connect and don’t enter your password, the server will drop your connection after awhile due to inactivity. That’s the socket’s read timeout kicking in.

Anyone know the best approach for timing out when you attempt to connect and are unable to do so? I haven’t found any solutions in my research, although I do confess that I have not looked at any of the Stevens books yet.

Google Storage, the next logical step

The Wall Street Journal reports that Google is going to offer free-form online storage in the next few months. They already provide specialized storage for email, documents, and pictures (via Picasa), so it’s no surprise that they’re moving into offering storage for everything else digital.

To go meta a bit, I wonder whether Google leaked this information to the Wall Street Journal, and if this is more evidence that Google is managing its product life cycle in a more traditional way. Back in the day, you found out about new Google products when they launched. Now we have announcements like Android, and here’s an announcement by leak. Is this an attempt to get people to wait for Google’s offering rather than use Amazon S3 and other similar products?

On the topic if online storage, I find that my preconceived notions about how to use it were a bit off. I had the bright idea to use S3 to back up all my files, but I never even got to step 2. Why? S3 was too slow, mostly, and handling the backup process turned out to be a pain. Now I plan on buying an external hard drive to use for backups so that I can take advantage of Mac tools like Carbon Copy Cloner and Time Machine.

What I’m now thinking is that the “cloud” is more useful for storing files I’m actively using, and that traditional media is better for backups. I’d love to have my iTunes library in the cloud so that I can access it from any computer. And having my bookmarks and email in del.icio.us and Gmail have both been huge wins in terms of productivity. Flickr is a perfectly good place to keep my photos, and pretty much every piece of code I work on is stored in a Subversion repository that I can get to from anywhere as well. I’m now thinking of backups more in terms of disaster recovery and less in terms of archiving, and I expect anything I store in the cloud to be backed up by whoever provides the storage.

The Cambrian Explosion of communications

James Governor, riffing on Tim Bray’s blog post On Communication, coins the idea of a Cambrian explosion in forms of communication. Both posts are very much worth reading.

The question at hand is whether or not it’s difficult to decide which form of communication to use for a particular message. I think my answer would be, “at times.” Generally speaking, a lot of factors go into those decisions, but they rarely take me long to make.

Apple needs to handle tabs more elegantly

Back in April I talked about how I like the convention of using Command/Alt-n to navigate between tabs in an application. What I’ve learned is that Apple is not with me on this.

Safari maps Command-n to the bookmarks in the bookmark toolbar. Yuck. In Leopard, the Terminal application supports tabs, but unlike iTerm, the Terminal application maps Command-n to terminal windows, rather than tabs in the active window. Everybody who’s used to tabs in a terminal has been using iTerm, so why go against that existing convention? Spite? (Generally speaking, the Leopard terminal privileges new windows over new tabs in a lot of ways. That’s kind of a shame.)

iChat in Leopard also provides support for tabbed chat windows, and again does not support the Command-n convention. (Once again ignoring the conventions established by Adium and Chax, the IM applications used by people who cared about tabbed windows in the first place.)

I notice that Apple’s Human Interface Guide does not provide any guidance for navigating among tabs in an application. Somewhat surprisingly, the guide doesn’t seem to discuss tabbed interfaces at all. You’d think Apple would want to take a position on this given the popularity of tabs among application developers and their increased usage in Apple’s own applications as well.

The cure is worse than the disease

You know, I expect a certain level of idiocy from half-baked ad blocking shareware, but you’d hope for more from a big company that sells software bundled with millions of PCs. When it comes to Symantec, that’s not the case. Tony Spencer ran into a little problem with his classified ad application:

After getting several more of these I became concerned and managed to get a few users to send screenshots and HTML source. We were all stumped. The page was fully loaded except the links to the classified ads were missing. There were no errors in the logs.

What could be the problem? How about Norton Internet Security running on the users’ computers. Here’s how NIS works:

Ad Blocking maintains a list of more than 200 HTML strings that are associated with advertisements

For example, Ad Blocking prevents Web pages whose URL includes www.ad.siemens.com from being displayed because the URL includes the HTML string “AD.”

That’s dumb, and people actually pay for it.

URLs by design

URL shortening services have been much discussed this week because TinyURL blew up. Twitter uses TinyURL to reduce URL sizes, so most of the URLs people were putting in their tweets were broken. This is bad, and if Twitter continues to gain popularity, it’ll be worse. Plus there are the larger issues of putting an intermediary (TinyURL) between users and content. If users pass around the shortened URL, and that eventually goes away, it hardly matters if the actual destination URL lives forever. It’s all inelegant.

Dave Winer has an idea to solve this problem:

Every web app that produces long urls should provide a built-in url-shortening facility. The user interface would be similar to the one in Google Maps they call “Link To This Page.” You click on it, and up pops a box containing an address you can use to point to the page.

I think that’s a good start on a solution, but more is needed. Think about Twitter — they have an automated URL shortening process. If I paste a long URL into Twitter, they go out and use TinyURL to generate a shorter URL without any intervention by me (the poster) or the person who owns the real URL being pointed at. We could help Twitter out by creating some kind of convention for grabbing shortened URLs from a site. I’m thinking of something like the link elements that are used to discover RSS feeds. Either you could include a shorter URL in an appropriately labelled link element, or you could have a more general link to a preferred URL shortener for your site.

The idea here is that not only should humans be able to get short links from your site, but software should be able to as well. All we need is a whole bunch of Web sites to start doing this the same way.

Dave also mentions this:

Now that URL length has become an issue for users, it might be even better for designers to view URLs as part of site design.

I think that the good news here is that good developers have been thinking about URL design for some time. That’s why we see most newer frameworks providing elegant, useful URLs. I think Rails is king here, but plenty of PHP frameworks also make it easy to do a better job with URLs, and most Java frameworks provide plenty of flexibility in the URL department if you choose to use it. I don’t think that brevity is the soul of a good URL, as there’s some value in a descriptive URL as well. We’ve come a long way since the bad old days. (See also: Brent’s Law of CMS URls.)

Random Kindle thoughts

The big news of the day is that Amazon.com has officially released Kindle, its electronic book reader. The device sells for $399, and the default price for books is $9.99 apiece. You can also subscribe to newspapers on the Kindle — the New York Times is $13.99 a month, and the Wall Street Journal is $9.99 a month. Here are a few things that struck me:

  • Wow, the device is ugly. Really ugly. What’s with the angles? What’s with the ugly keys? I imagine it’s probably pretty nice to use once you have it in hand, but in photos it looks awful.
  • I can’t wait to see the screen in person.
  • What do people think of the $399 price? That’s the same price as the iPhone, and the Kindle is a much more limited device. (I can read the New York Times on my iPhone for the price of $0 per month.)
  • The EVDO-based networking capabilities look really interesting, especially given that there’s no monthly service charge. I assume that the free networking is the reason why there’s no email client on the Kindle.
  • They make a point of saying no syncing is involved in using the Kindle, but how do you get the notes you enter about what you’re reading onto your computer?
  • Amazon was smart to include a blog reading client in the Kindle. The fact that they feature Michelle Malkin’s blog specifically on the Kindle product page is incredibly galling.

I can’t wait til somebody I know gets one so that I can play with it, but I don’t see myself buying one.

Update: I didn’t notice that there’s a $0.99 to $1.99 monthly fee per blog subscription for the Kindle. No word at all on whether any of that money goes to the blog publisher, or how you set up your blog so that Kindle users can subscribe. If anyone sees any links for blog publishers or publishers in general, please post them in the comments. (I looked at the Web site for Amazon.com’s various programs and they don’t seem to have any Kindle-specific information available yet.)

Update: Joel Johnson has posted some actual facts about the device. Blog publishers do get a cut of the subscription fee Amazon.com charges.

Update: Kindle does include a Web browser, and you can use it without paying any additional fees to Amazon.com. I wonder which browser it is? Are we looking at yet another device that uses Webkit?

Update: John Gruber has some concerns about the file format and DRM used by Kindle. I don’t want to buy books that are copy protected and locked to a single device.

Older posts

© 2024 rc3.org

Theme by Anders NorenUp ↑