Friday, February 19, 2010

screen 1024 the standard?

While trying to figure out if it was still important to support screen resolutions of 800x600, I pulled up several of the most visited websites to see where they fall. Here are the ones that work in a width of 800 or less:

  1. baidu
  2. blogger
  3. go
  4. google (also: gmail, google calendar, google reader)
  5. rapidshare
  6. skyrock
  7. twitter
  8. wikipedia

And here are the sites that aim for 1024px and require horizontal scrolling at 800px:

  1. amazon
  2. aol
  3. bbc
  4. bing (aka
  5. cnn
  6. craigslist
  7. dailymotion
  8. ebay
  9. facebook
  10. flickr
  11. friendster
  12. imdb
  13. linkedin
  14. microsoft
  15. msn
  16. myspace
  17. orkut
  18. photobucket
  19. wordpress
  20. yahoo

And w3schools says it is at about 1% for their visitors. Sure seems like support for 800px wide displays has gone out of style. Guess those iPads will spend most of their time turned sidways.

Thursday, February 18, 2010

removing a file when the filename starts with a dash

When you royally goof up a command, you may end up with some strange filenames.
$ echo "hi" > -oops.txt
And filenames that start with a dash can be tricky to delete.
$ rm -oops.txt
$ rm \-oops.txt
$ rm "-oops.txt"
All the above commands treat the -o as an option, and return the following error: rm: invalid option -- 'o'. Luckily, Ubuntu returns some extra help in the error message.
rm: invalid option -- 'o'
Try `rm ./-oops.txt' to remove the file `-oops.txt'.
Try `rm --help' for more information.
So all you need is a path on the front of that nasty filename.
$ rm ./-oops.txt

Wednesday, February 17, 2010

book review: designing visual interfaces

Designing Visual Interfaces: Communication Oriented Techniques

This book gives (what I can only assume is) a thorough treatment of the design of visual interfaces, with a focus on computer interfaces. I can only assume it is thorough because I skipped or stumbled over several sections with dense and confusing wording. For example:

The triadic structure of the sign permits the sign process (semiosis) to be considered at three levels. Syntactics addresses the internal structure of the representamen itself, particularly in terms of the relationships among its parts. Semantics addresses the tacit relation between representamen and sign object (that is, the intended meaning of the sign). Pragmatics considers the effect of the syntactic and semantic aspects in relation to a particular interpreter in their personal psychological context.

There were plenty of gems in this book, and the way illustrations (and screenshosts) were employed to explain the different concepts was very useful. However, the style of the writing often made it unpleasant to read, and I came away feeling like I had missed as much as I had learned.

The thoughts I came away with:

  • be consistent with the surroundings (OS, app, form, controls, etc)
  • align elements along vertical horizontal grid lines
  • use the same (or multiples of) height and width for all controls
  • make clear visual representations of grouping and hierarchy

Sunday, February 14, 2010

book review: beautiful code

It's always disappointing when a book with such a great potential falls short, and sadly Beautiful Code: Leading Programmers Explain How They Think (Theory in Practice (O'Reilly)) is a victim of a great idea with a poor execution.

The basic idea was to get a bunch of great programmers together and have them tell stories about their experiences in the real world: developing a new system, learning the value of reading other people's code, squeezing every ounce of performance out of some critical code, or being inspired to implement some clever new algorithm. This would had worked wonderfully if they had just limited the number of people that contributed to the book. Instead they crammed over 30 people into 500 plus pages, and ended up with about 16 pages each.


This book tried to soar to such great heights and suffered the fate of Icarus. If only they had picked 10 programmers and given them each 50 pages, this could have been a book with some real meat. Instead the brief chapters feel like a series of taste tests collected while wandering around the supermarket -- too brief and unsatisfying to call a meal. Sorry, but this one is not worth reading.