Silicon Glen, Scotland
Country drop lists for form validation
Many books on usability state that you should not have an excessive number of items in a drop list so that you do not have to scroll unduly. However, nearly every website designer somehow feels its necessary to put every country in an absurdly huge drop list when asking where you live (and few ever include Scotland or Eire). With Afghanistan at the top and commonly used "United States" and "United Kingdom" several hundred entries later, do you really think this is the best way to do data entry and form validation? This extremely long and frequently changing list is adapted from ISO3166 yet does the average website user know or care?
Rather than putting several hundred names in alphabetical order and simply doing a cut and paste job from ISO3166, how about serving up something which is useful to your audience and the information you are trying to gather. If your site is about Scotland for instance, it's probably useful to differentiate people from Scotland itself versus people from the rest of the UK. It's not easy to determine this by postcode.
If most of your customers are from the US, why not put that top of the list? How about dividing up the countries by continent, that would make it a lot more maneagble.
Why bother about validation at all? Chances are that for all but one or two countries on your list, you aren't verifying the rest of the address against any official list of addresses (e.g. a postcode database), so why do it for the country? There's no drop list available when I write an address on an envelope and the world didn't end if those records weren't perfect. If it's important to have valid addresses, then surely you should be validating the whole address and not just the country where someone lives?
Suggestion: Have the country list as a drop list for your top markets and the ones where you can validate the rest of the address. Then for the countries where you can't validate the rest of the address, make the country name a mandatory text field with a button next to it to see the list of countries.