Jun 29

Zach Braff.com Launched: Why Flash has a bad name

Tech 94 Comments »

Zach Braff has finally launched a new site at zachbraff.com which makes you groan as you instantly know that the developers don’t get it.

The site is entirely Flash (view source for the urchin.js and flash crud).

Flash itself isn’t bad, but the site is broken due to how they implement things:

  • The page takes a year to load (for a long time it is black)
  • It is totally broken on my mobile device where I first tried to look at this
  • Instead of the standard RSS button, a floating moving hot air baloon is used instead. Try to right click to save the RSS URL? No can do.
  • Silly scrollbars mean that you can’t page down through blog posts
  • Silly scrollbars that you don’t even notice in some places as they blend in so much (on the songs)
  • Hard to read text
  • Lose your right click menus

What do you get for this? You get fun rollovers and whiz bang crud….

Welcome to 1996.


Jun 28

Influencing the Crowds Wisdom

Tech 2 Comments »

I have been working on items that use the “Wisdom of Crowds” to try to come up with better solutions.

A lot of people talk about sites such as Digg as implementors of the wisdom of crowds ‘pattern’, and although they do offer benefits compared to a pure editorial approach, I think that they influence the selection.

The problem is that you can easily create selffulfilling prophecies.

In the book, if a group is asked to solve a problem, and everyone else in the group says that the answer is B, someone is more likely to agree with the rest of the group EVEN IF it is obvious that the answer is actually A. This is just simple peer pressure.

We can push peer pressure buy showing users the results of the crowd.

E.g. if an article has a rating of 5, I am willing to bet tha others are more likely to give the article a high rating than if it was a 1 before they checked it out. This matters even more if you are a competitor and give fake reviews of “1″ to spur things on.

So, for the best outcomes, I think that it is better to not allow people to see what others have said about a given issue before they have voted. This may not be the most usable solution though, and it may easily go at odds with the community aspects of some of the crowd features.

There are many areas in which we can use the wisdom of the crowd in a non-community manner, giving us great results.

Jun 19

Time to get rid of www.?

Tech 7 Comments »

Is it time to get rid of the extra “www.” for your websites? Of course, you need to support users putting in www.foobar.com or foobar.com, but should you just let it work, or should you redirect over to foobar.com (slashdot.org seemed to do this on day one, and it was the first time that I noticed it).

I have been doing this for many years with many of my sites:

<VirtualHost *:80>
ServerName www.foobar.com
Redirect permanent / http://foobar.com/

Can this help with search-engines and duplicate content? Is it just a cleaner look?

I prefer it, and wish that my browsers that take “foo” to “http://www.foo.com” would first try just foo.com.

Jun 19

World Cup at the Airport

Sport 1 Comment »

I had to travel for 24 hours, with 3 flights one way. Luckily the timing of the flights was spot on for the footy action. This meant that I was able to watch yesterdays games at pubs in various airports.

What was interesting about this was seeing all of the people getting together to watch. I saw *so* many people in country football jerseys all over.

It also proved to me the small world philosophy. I was sitting next to a couple from Wales and Leeds, and after hanging out we found out that we both live in the same town in the US. In fact, the guy is the referee for UW Madison. Very cool.

This reminds me of the big screen change at this world cup. In the past everyone was told to NOT travel to the world cup country unless you have tickets to stop fighting in the streets. This cup has been a testiment to the changes, as we haven’t had the same problems (yet. long may it continue).

Also, instead of trying to fit into small bars to watch the game, Germany, and other countries, have setup huge HD setups so you get to watch the game with thousands of people from all over the world. Some friends have said that this experience has been better than the games themselves!

Kudos to the Germs, and everyone having a great time over there.

Now I need to find the perfect place to watch the England game tomorrow where I am.

Jun 16

Smart Select List

Tech No Comments »

I found myself wanting a smart select list that would allow me to bind keystrokes to selections in a nice way.

For example, the good old month drop down.

Do you use the month name? “January” etc

or, do you use the month number? “10″

Most of the time you may think that the name is best, but is it?

For credit card expiration I do not think of the number but rather the month/year combo (e.g. 3/09), so for that drop down I prefer a number.

We could have the best of both worlds:

“10: October”

The problem with this is that select lists iterate over the first character (in this case 1) but it may be nice for people to hit the letter “O” to get directly to October.

A smart month widget could codegen the JavaScript to do the right thing no matter what you user does. A small thing for sure, but little things like this can drive me nuts.

Jun 15

create_many_arrays :foo, :bar, :baz

Tech 1 Comment »

A bunch of lazy programmers that I know looked at some code that had a lot of:

@foo = []
@bar = []
@baz = []

Instead they wanted to do:

create_many_arrays :foo, :bar, :baz

NOTE: watching someone do “foo = bar = baz = []” is fun :)


def create_many_arrays(*arraynames)
params = arraynames.join ','
arrays = ''
attrs = ''

arraynames.each do |name|
thename = name.to_s
arrays += "@#{thename} = []\n"
attrs += "attr_accessor :#{name}\n"

code = <<-END_OF_CODE
alias :__dion__initialize :initialize

def initialize

def initialize(*incoming)
__dion__initialize *incoming

class_eval code

class Foo
create_many_arrays :foo, :bar

f = Foo.new
f.foo << 1

class Bar
attr_accessor :a

def initialize(a)
@a = a

create_many_arrays :foo, :bar

After a broken impl like this, you then realise that there is no real reason to want to do this, and your own code is broken if you want data structures like this.

Jun 15

We have tooltips, let’s use them!

Tech 2 Comments »

I am sure everyone in the world who visits fifaworldcup.com knows that SCG means Serbia and Montenegro (at least for the moment!), but wouldn’t it hurt to at least put in a tooltip so you can hover over the three level crypticness to tell you who is playing, even if you need to keep the three letters for size constraints in the mini table?

Or maybe change the table so a country name can fit?


Jun 13

QWERTY Mobile Interface

Tech 18 Comments »

I have always been in the “I want a small phone that can make calls” camp. However, for a work project, I had to get a bulky smart phone that comes with a QWERTY keyboard.

I thought that it would be so much nicer to type on that versus the cryptic IntelliSense on the numeric keyboard. It is sad that my nephew can spell any word (well, shortened word) in numbers now.

What I found strange was the way my brain worked. As I typed I was looking for the letters on the keys. What the hell? I type enough to fill a book on a daily basis yet I can’t just touch type on the thing? It turned out that it took me awhile to retrain my brain that “although this is a small mobile device, do not think T9!”.

Jun 12

World Cup Thoughts

Sport 4 Comments »

Well, a great weekend spent watching the World Cup.

A few non-profound thoughts:

  • There are no crappy teams. Gone are the years of beating the African teams 10-0. Now Sweden can face a team of 10 men from a country of 1MM and only draw (Go Trinidad!). And teams like the Ivory Coast look great (losing to Argies isn’t a bad thing)
  • Why do latinos fall over in agony every time someone gets near them? I think that players should put on a “pain tester” gadget that lets the referee know if the player is in pain or not (and if so how much). If you clutch your head after falling over you get a red card.
  • I hate my cable company for not having ESPN 2 in HD.
  • England got lucky, but they have time to step up.
  • Footy brings together nations.
  • The US commentary is so painful. I wish I could get the BBC feed
Jun 07

Moxi vs. Tivo

Tech No Comments »

I decided to give Moxi a try when I got a new HD TV, and am still waiting on the TiVo Series 3 that will have HD support and more tuners (the two features I really want from TiVo).

I was ready to poo-poo anything non-TiVo, but although I much prefer the experience that I get from TiVo on my other TV’s, I now have a feeling that TiVo is dead. The other guys are catching up. Quickly.

Moxi has one feature that I really like. When you are in the interface there is space on the top right where the show that you are watching is playing. This is much nicer than TiVo which switches to the UI and turns off the screen and even sound from the item you are watching. They need to change that.

TiVo does win hands down on the stability and usability. With Moxi I often run into issues such as:

  • Crash: While fast forwarding, the system crashes out of the show into the interface (so you need to find the show and resume
  • Lag: The interface can become really slow to respond, as though you are on a browser hitting a server for every keypress :)
  • Interface model: Moxi has a horizontal and vertical interface. You scroll horizontally to get to different menus that you can scroll vertically on. This breaks down a lot compared to the TiVo/iPod style menu system. The guide functionality is crap because there is no space for the guide (just a vertical listing). The worst is when you hover on an item that pops up something, you need to go RIGHT into that submenu which means that you can’t use RIGHT to go to the next item in the horizontal menu. You learn to hit LEFT to get out and then RIGHT RIGHT. Painful.

So TiVo is still ahead, but man they need that Series 3 out quickly, and a few game changing deals.