Behind the scenes at xbox.com – RSS enabling web marketplace
A number of people were requesting additional RSS feeds for the xbox.com web marketplace. (We had just one that included all new arrivals)
Looking across our site as the various lists of products we display today the significant views are:
- Browse games by department
- Search results
- Promotions (e.g. Deal of the week)
- Game detail (shows downloads available beneath it)
- Avatar item browse
These views also have sorting options and a set of filters available for things like product type, game genre, content rating etc.
So we had a couple of options:
- Write controller actions that expose the results of specific queries as RSS
- Introduce a mechanism whereby any of our product result pages can render as RSS including any user-defined filtering
Our web marketplace is written in ASP.NET MVC (like most of xbox.com) so while option 1 sounds simpler MVC really helps us make option 2 more attractive by way of a useful feature called ActionFilters that let us jump in and reshape the way existing actions behave.
ActionFilters
ActionFilters can be applied to either to an individual action method on a controller or to the controller class itself which applies it to all the actions on that controller. They provide hooks into the processing pipeline where you can jump in and perform additional processing.
The most interesting events are:
- OnActionExecuting
- OnActionExecuted
- OnResultExecuting
- OnResultExecuted
Writing our ActionFilter
The first thing we want to do is identify that a request wants the RSS version. One way is to read the accepts header and switch when it requests mime/type but this can be a little trickier to test, another is to append a query parameter on the url which is very easy to test.
Once we’ve identified the incoming request should be for RSS we need to identify the data we want to turn into RSS and repurpose it.
All the views we identified at the start of this post share a common rendering mechanism and each view model subclasses from one of our base models. For simplicity though we’ll imagine an interface that just exposes an IEnumerable<Product> property.
public class RssEnabledAttribute : ActionFilterAttribute
{
public override void OnActionExecuted(ActionExecutedContext filterContext) {
var viewModel = filterContext.Controller.ViewData.Model as IProductResultViewModel;
if (viewModel == null)
return;
var rssFeedTitle = FeedHelper.MakeTitle(viewModel.Results);
filterContext.Controller.ViewData.Add("RssFeedTitle", rssFeedTitle);
var format = filterContext.RequestContext.HttpContext.Request.QueryString["format"];
if (format == "rss" && rssFeedTitle != null) {
var urlHelper = new UrlHelper(filterContext.RequestContext);
var url = QueryStringUtility.RemoveQueryStringParameter(filterContext.RequestContext.HttpContext.Request.Url.ToString(), "format");
var feedItems = FeedHelper.GetSyndicationItems(viewModel.Results, urlHelper);
filterContext.Result = FeedHelper.CreateProductFeed(rssFeedTitle, viewModel.Description, new Uri(url), feedItems);
}
base.OnActionExecuted(filterContext);
}
}
This class relies on our FeedHelper class to achieve three things it needs:
- MakeTitle takes the request details – i.e. which page, type of products, filtering and sorting is selected and makes a title by re-using our breadcrumbs
- GetSyndicationItems takes the IEnumerable<Product> and turns it into IEnumerable<SyndicationItem> by way of a foreach projecting Product into SyndicationItem with some basic HTML formatting, combining the product image and setting the correct category (with a yield thrown in for good measure)
- CreateProductFeed then creates a Syndication feed with the appropriate Copyright and Language set and chooses the formatter – in our case RSS 2.0 but could easily be Atom 1.0, e.g.
public static SyndicationFeedResult CreateProductFeed(string title, string description, Uri link, IEnumerable<SyndicationItem> syndicationItems)
{
var feed = new SyndicationFeed(title, description, link, syndicationItems) {
Copyright = new TextSyndicationContent(String.Format(Resources.FeedCopyrightFormat, DateTime.Now.Year)),
Language = CultureInfo.CurrentUICulture.Name
};
return new FeedResult(new Rss20FeedFormatter(feed, false));
}
The FeedResult class is a simple one that takes the built-in .NET SyndicationFeed class and wires it up to MVC by implementing an ActionResult that writes the XML of the SyndicationFeedFormatter into the response as well as setting the application/rss+xml content type and encoding.
Advertising the feed in the head
Now that we have the ability to serve up RSS we need to let browsers know it exists.
The ActionFilter we wrote above needs to know the title of the RSS feed regardless of whether it is rendering the RSS (which needs a title) or rendering the page (which will need to advertise the RSS title) so it always calculates it and then puts it into the ViewData dictionary with the key RssFeedTitle.
Now finally our site’s master page can check for the existence of that key/value pair and advertise it out with a simple link tag:
var rssFeedTitle = ViewData["RssFeedTitle"] as string;
if (!String.IsNullOrEmpty(rssFeedTitle)) { %>
<link rel="alternate" type="application/rss+xml" title="<%:rssFeedTitle%>" href="<%:Url.ForThisAsRssFeed%>" />
<% }
This code requires just one more thing – a very small UrlHelper which will append “format=rss” to the query string (taking into account whether there existing query parameters or not).
The result of this is we can now just add [RssEnabled] in front of any controller or action to turn on RSS feeds for that portion of our marketplace! :)
[)amien
Typography in 16-bits: System fonts
With the 8-bit system fonts post being so popular I just had to jump right in and look at the system fonts available on the 16-bit machines!
IBM CGA Adapter (1981)
Specifications
Bold serif
6-7 pixels
7 pixels
ASCII+code pages
320×200 (40×25 text)
640×200 (80×25 text)
IBM
Download in TrueType

The IBM PC’s first color graphics card was known as the Color Graphics Adapter.
Unusual characteristics
- Mix of serifs and non-serifs depending on space
- Off centre ‘|+:’
- Squished ‘Q’ to avoid using descender
- Wide ’0′
- Inconsistent ‘t’ point and lack of serif on ‘j’
Rationale
The large bold letters work well on the low-resolution displays at the time and many of the quirky were unlikely particularly noticeable there.
Influences
Unknown.
Apple Macintosh (1984)
Specifications
Bold sans
1-11 pixels
10 pixels
Mac OS Roman
512×342
Susan Kare
Download in TrueType

Apple’s second attempt at a GUI (after the Lisa) was the Macintosh. The system font was called Chicago initially as a bitmap font which was replaced with a scalable TrueType version. With Mac OS 8 it was replaced with the similar Charcoal typeface and then dropped entirely in Mac OS X which uses Lucida Grande for the UI.
This font was dusted off again in 2001 and with a few minor tweaks became the system font of the iPod (classic & mini) until the higher resolution color display model.
Unusual characteristics
- Proportional letters not fixed-width
- Some symbols are not bold at all ‘#%”/\*@^`’
- Lovely flourish on ‘&’
- Curve on ‘a’ actually touches the lower bowl
- Designed specifically to avoid diagonal strokes (jaggies) on the Mac’s low-res screen
Rationale
The high-resolution display let the designers really pay attention to detail and even though it was only monospaced it really looks beautiful for the time. It was little wonder that when Jobs went to NeXT they went with incredibly high-resolution mono displays again (at least initially).
Influences
It’s unlikely they were digital.
Commodore Amiga 1.x (1985)
Specifications
Bold serif
6-7 pixels
7 pixels
ISO 8859-1
320×200 (40×25 text)
640×200 (80×25 text)
320×256 (40×32 text)
640×256 (80×32 text)
Unknown
Download in TrueType

The Amiga started with ex-Atari engineers desperate to design a 16-bit machine that was eventually purchased by Commodore. It offered incredible graphics and sound for the time that put Mac’s and PC’s to shame. Despite shipping with many fonts and supporting proportional text the default system font was the fixed-width Topaz/8.
Unusual characteristics
- As well as some letters touching some symbols such as ‘\/’ touched horizontally allowing nice ASCII art
- Unusual lower-case ‘g’ somewhere between double and single story
- Unusual almost comic-like ‘!’
- Some non-bold pixels for flourishes on ‘t&’
- Pixels missing on some curves ‘aS’ especially obvious in low resolution
- Over-extended ‘r’ looks odd in any resolution
- Alternate Topaz/9e – 10×9 (2 for descenders) – modified some glyphs like ‘g’ and available from Preferences as Text 60
Rationale
The Workbench booted in white-on-blue (shown) and was intended for use either with their own Commodore monitors or home TVs. Despite the choice of a serif font it worked quite well on these displays although interlace was quite unusable without specialized displays.
Influences
Very similar to the IBM CGA system font, very likely to be derived from there.
Technical
The Amiga shipped with it’s own font editor called ‘Fed’ found on the Workbench Extras disk in the Tools folder.
Commodore Amiga 2.x (1991)
Specifications
Bold sans
6-7 pixels
7 pixels
ISO 8859-1
Configurable
Unknown
Download in TrueType

Commodore’s update to the Amiga saw all sorts of changes in the ROM and Workbench for the GUI including some revisions to the font and the ability to change what font the workbench used.
Unusual characteristics
- Over-extended top of ’1′
- Open elements on ‘%@’
- Messy ‘Q’ is hard to distinguish
- Alternate Topaz/9e – 10×9 (2 for descenders) – modified some glyphs like ‘g’ and available from Preferences as Text 60
Rationale
The Workbench booted in black-on-grey (shown) and the new font looked a lot more friendly as well as being a more legible choice for home TVs.
Influences
Obvious modification of the prior 1.x font to remove serifs and improve legibility.
Technical
WBScreen allowed you to choose which font to display in Workbench including some of the proportional fonts included.
Atari ST Low/Medium Res (1985)
Specifications
Bold sans
6-7 pixels
7 pixels
ASCII+proprietary set
320×200 (40×25 text)
640×200 (80×25 text)
Unknown
Download in TrueType

The Atari ST was Atari’s answer to the Commodore Amiga after they failed to purchase back the talent and technology. The machine’s GUI was based on GEM from Digital Research.
Unusual characteristics
- Descenders are cut very short on ‘pq’ despite ‘gy’ not following this style
- Inconsistent positioning between ‘,’ and ‘;’
- Ugly braces ‘()’ from the 8-bit font retained
Rationale
The font was very clear and worked well in both square pixel (low resolution) and rectangular pixel (medium resolution) modes.
Influences
Almost identical to the Atari 8-bit font but with the capital letters, symbols and numbers extended a pixel higher (inverse symmetry was no longer a concern) and more consistent/cleaner lower-case letters ‘sj’.
Technical
It is possible to change the system fonts used by the GEM desktop using the ST Font Loader.
Atari ST High Res (1985)
Specifications
Bold sans condensed
6-7 pixels
12 pixels
ASCII+proprietary set
640×400 (80×25 text)
Unknown
Download in TrueType

Unusual characteristics
- Very tall letters – some glyphs 14 pixels high but still only 6-7 pixels wide
- Avoids every trace of a serif except usual ‘Iil’ monospace hack
- Short descenders on ‘pq’ still
- Inconsistent choices for ‘c’ and ‘R’ and ‘w’
Rationale
Given that this screen mode was only available on high-resolution monitors it is very rectangular and failed to really take advantage of the unique situation in which it would be used.
Influences
Very likely based on the medium resolution font with some redrawing.
IBM PC VGA (1985)
Specifications
Bold serif
6-7 pixels
10 pixels
ASCII+code pages
640×400 (80×25 text)
Unknown
Download in TrueType

Unusual characteristics
- Very tall letters – some glyphs 14 pixels high but still only 6-7 pixels wide
- Top bar of ‘T’ is two pixels thick
- Too-high double quotes ‘”‘ also styled inconsistently
- Another bubbly ‘!’ like the Amiga’s Topaz 1
- Inconsistent sizing between ‘,’ and ‘;’
- Very large ‘$’ even bigger than the capital ‘S’
Rationale
A reasonably nice serif font that gave a serious look if somewhat inconsistent in places.
Influences
Very likely based on the medium resolution font with some redrawing.
Technical
Can be overridden by tools like fontedit.com.
[)amien
Typography in 8 bits: System fonts
My love of typography originated in the 80′s with the golden years of 8-bit home computing and their 8×8 pixel monospaced fonts on low-resolution displays.
It’s quite easy to find bitmap copies of these fonts and also scalable traced TTF versions but there’s very little discussion about the fonts themselves. Let’s remedy that by firing up some emulators and investigating the glyphs.
Commodore PET (1977)
Specifications
Regular semi-serif
5-7 pixels
7 pixels
PETSCII
320×200 (40×25 text)
Leonard Tramiel
Download in TrueType

Commodore’s first business machine was the PET which came with a built-in monitor and a full character set unlike other machines at the time.
Unusual characteristics
- Primarily sans-serif but serifs present on ‘BDJa’
- Slightly stylized ‘£’
Rationale
The font is good choice for the original PET and it’s original monitor. It was unfortunately also used on the Vic-20 despite having half the screen resolution where it made a poor choice.
Influences
While not visibly influenced from anything else an almost direct rip of this font appears to have been used in the Apple Lisa debugger.
Technical
Unknown.
Apple ][ (1977)
Specifications
Regular condensed sans
3/5 pixels
7 pixels
ASCII
280×192 (40×24 text)
Signetics+?
Download in TrueType
![Apple ][ system font](http://images.damieng.com/blog/Apple2e.png)
Apple's first professionally built computer was the Apple ][ which from rev 7 onwards added lower-case letters.
Unusual characteristics
- Uppercase letters can touch descenders on the line above as the full height is used
- Only first 7 columns per glyph otherwise would have been 35×24 text
- Vertical stems for '[]{}’ are 2 pixels wide (bold)
- Very small slashes ‘/\’
- Upper-case is consistent although ‘A’ is very angular, ‘G’ unpronounced
- Lower-case less consistent – ‘gf’ has soft curves, ‘mw’ square, ‘nhr’ ignore curve of ‘u’
- Numbers – unusual ’3′ but ’96′ over-extend
Rationale
The font is well suited to the default high-contrast white-on-black (often green-on-black) given the machine was intended for use on their own monitors.
Influences
The upper-case, numbers and symbols were copied from the Signetics 64 × 8 × 5 character generator 2513 chip used in the Apple I and II in revision 0 to 6.
The later Texas Instruments TMS9918 Video Controller Chip used on Sega, Nintendo, Colecovision and TI/99 machines re-used this font with only a couple of pixels changed.
Technical
Changing the font requires replacing the 2 KB 2716 pinout ROM with your own EPROM or alternate ROM.
Atari 400/800 (1979)
Specifications
Bold sans
4-6 pixels
6 pixels
ATASCII
320×192 (40×24 text)
Unknown
Download in TrueType

Atari’s entry into the home computing market put out some very capable machines with all sorts of hardware tricks (the creative geniuses behind it would go on to form Amiga). The same font was used on all Atari 8-bit models from the original 400/800 to the XL and XE models in the late 80′s.
Unusual characteristics
- 6 pixels uppercase causes some vertical imbalance especially on ’9′
- Braces are overly bold being 3 pixels wide.
- Less than and greater than symbols are too tall.
- ‘MWw’ make great use of width to nice effect
- Bar on ‘G’ too low, ‘U’ overtly square, ‘X’ very blocky, ‘S’ does not extend enough
Rationale
The machine boots in a low-contrast blue-on-blue and is designed for use with TV’s which explains some of the odd characteristics above like the square U to distinguish it from the V. It is likely the 6-pixel choice is to allow the letters to be centered when using inverse letter mode.
Influences
Unknown.
Technical
One byte per row, 8 sequential bytes making one glyph. You can reprogram this by poking address 756 with the page number of the new font (default of 226 for ROM location 0xE000).
POKE 756, 226
Acorn BBC Micro (1981)
Specifications
Bold sans
4-7 pixels
7 pixels
ASCII only
320×256 (40×32 text)
Unknown
Download in TrueType

The Beeb, as it was affectionately known, has its own font which could display in three different modes – one wider and one narrower but many users might not recognize it all as it booted into ‘Mode 7′ utilizing a Videotex chip (used in the UK for text-on-TV and travel agents as well as in France for Minitel) that had a different font of its own.
Unusual characteristics
- Drops bold in tight spaces e.g ‘$&@’
- Outlines the tail on the ‘Q’ to make it much clearer
- Unique and beautiful ‘*’
- Does not extend low bar on ‘e’ as much as expected and ‘f’ seems to wide
- Vertically squished ‘?’
- Style of single-quote ‘ is inconsistent with comma
Rationale
The machine generally shipped with good quality monitors and the combination of high-contrast colors and this bold font made it very readable indeed.
Influences
It’s quite likely it was influenced by the Atari 8-bit font but with larger capitals and ascenders and a much more consistent look.
Technical
The system font is stored at 0xC00-0xC2FF with each character being represented by 8 sequential bytes (left pixel is high bit).
You can replace the font used by system text routine OSWRCH (0xFFEE) using the VDU command 23 followed by the ascii code and then 8 rows of data, e.g.
VDU 23,65,11,22,33,44,55,66,77,88
Sinclair ZX Spectrum (1982)
Specifications
Regular sans
6 upper, 5 lower
6 pixels
ASCII + own
256×192 (32×24 text)
Nine Tiles
Download in TrueType

Sinclair’s successor to the ZX81 added color and lower-case letters – again preserving the upper-case and numbers from it’s predecessor but finally mapping them to ASCII. This font was re-used on Jupiter Ace and Timex machines but the ZX Spectrum was the most popular.
Unusual characteristics
- 6 pixels uppercase leaves many unevenly balanced ‘BEFS’ and ‘X’ with ugly 2×2 center
- Full stop is 2×2 pixels (bold) but colon, semi-colon and comma are not
- Capital ‘MW’ are very slight with latter hard to distinguish from ‘V’
- Uneven styling ‘c’ omits curves, ‘e’ is soft ‘g’ is not, ‘f’ and ‘k’ are thin
- Only the copyright symbol uses to the top row of pixels
Rationale
While the machine has a default high-contrast scheme the video output was poor because of the quality of the RF modulator and home TVs it was connected to. It looks like the designer decided to increase spacing between letters after the ZX80 from one to two pixels which greatly limited what could be done with the letters themselves. This was likely done for the same reasons it was done on the Atari 8-bit – namely to allow the letters to be centered when using inverse text modes.
Influences
Sinclair ZX81 (no lower case), ZX80 (7 pixels wide).
Technical
The system font is stored at 0x3D00-0x3FFF with each character being represented by 8 sequential bytes (left pixel is high bit). You can replace the system text routine (RST 10) by poking the new fonts memory address into the system memory map at 23606/23607 minus 256 bytes (the first 32 characters are non-printable, 32×8 = 256)
LOAD "newfont" CODE 49152, 768: POKE 23606, 0: POKE 23607, 191
Commodore 64 (1982)
Specifications
Bold sans
6 pixels
7 pixels
PETSCII
320×200 (40×25 text)
Unknown
Download in TrueType

Commodore took to take their success with the PET and applied it to the home first with the VIC 20 and then later with the wildly successful Commodore 64.
Unusual characteristics
- Inconsistent shapes/style across ’147,&<>@Q’
- 2×2 pixel of ‘.’ is not carried through to ‘;:!’
- Ascenders not as tall as capital letters
Rationale
The bold font was essential for the low-quality TV’s Commodore were aiming at. The inconsistencies across the font may have been intentional to help make the letters look different (A vs 4, 1 vs I, 7 vs T) given the limitations of the displays or just poorly implemented (see below).
Influences
Lower-case is identical to the Atari 8-bit font and likely copied wholesale as they do not match the upper-case well. Symbols, numbers and upper-case are a bolded version of the PET font that looses the serifs and also could explain the odd reproductions of 1, 2, 7 & 4.
Technical
See comment from Paolo below for details!
Amstrad CPC (1984)
Specifications
Bold serif
6-7 pixels
7 pixels
PETSCII
320×200 (40×25 text)
Locomotive Software
Download in TrueType

Alan Sugar’s foray into the UK market came a little later than the other 8-bits in 1984 with the Amstrad CPC series.
Unusual characteristics
- Full use of 7 pixels for upper and 1 pixel for lower means glyphs can touch
- Serif choice is unusual and not consistently applied because of space constraints
- ’0′ is wider than would be expected (copied from
- Very distinctive curves on ‘CGOQ’
- ‘X’ looks like a different style because of high mid-point
Rationale
Sugar wanted the machine to look more professional than other home computers at the time. The choice of a serif based font to look like PCs which also featured serifs (at a higher resolution) reflects that desire.
Influences
Very similar to the IBM CGA font with some adjustments (fixes) to the horizontal positioning of some symbols. Many characters completely identical and some bearing style similarities too (wider 0, X choosing one side to be longer than the other). Some other characters bear similarity to the BBC Micro (Q uses the same trick to keep it distinguished) and a number of symbols and lower-case letters being the same where serifs would not fit.
The Amstrad CPC manual shows the system font but is different in some areas. It is possible it is a transcription problem (z is shifted up one pixel, missing pixels on ’37PRz~’ and extra pixels on ‘#b’ ) although it could have been an earlier version from the designer as ‘rG?’ are subtly different.
Technical
Redefine using the Amstrad BASIC command SYMBOL that takes an ascii code and then 8 comma-separated values one-per-row in much the same way as the BBC with the VDU 23 command. SYMBOL AFTER must be set first e.g.
SYMBOL AFTER 32
SYMBOL 65,11,22,33,44,55,66,77,88
MSX (1983)
Specifications
Regular condensed sans
5 pixels
7 pixels
ASCII Extended
320×200? (40×25 text)
Microsoft?
Download in TrueType

The MSX differs from the other machines here in that it was a standard rather than a specific machine. It was very popular in Japan and did hit UK shores although I only knew a single person that had one apart from our school which had acquired several Yamaha models to control MIDI keyboards. Given the multiple manufacturers it’s not surprising that some models had slightly tweaked fonts but the one shown here seems to be the most popular.
Unusual characteristics
- Full use of 7 pixels for upper and 1 pixel for lower means glyphs can touch
- Only 5 pixels wide for the letters
- Pixels touching on the curves of ‘db’ etc. look quite ugly
- Very angular curves on ’5′
Rationale
An unusual choice that feels very quirky.
Influences
Most likely influenced by the Apple ][e.
Technical
Unknown.
Mac users should try Cathode – a retro terminal emulator I helped add some of these fonts to.
For more system font analysis read the sequel Typography in 16-bits: System fonts.
[)amien
From somewhere small: Transport in the USA (well, Seattle)
Just over three years ago I packed up my Guernsey life to come and work for Microsoft in Washington. I thought it might be fun to share some things I’ve learnt. This one is about transport.
Customs & immigration
Be prepared for cross-referenced questions and mandatory fingerprinting to make you feel like a replicant even though you’ve done nothing wrong and your eyes don’t glow in the dark. The gatekeepers at immigration are all-powerful and take their job seriously so you should too as I found out when I had a case of the giggles.
Some countries need a Visa to visit and while the UK (and Guernsey) doesn’t coming to a job requires a work visa. Mine took a mountain of paperwork and a lot of work (for Microsoft) to get an all-important H1-B which means you have “mad skills we need”. The application is field before April 1st and there aren’t too many applications that year (there is a limit) and everything is ok you start work on October 1st for 3-years (extendable to 6).
Once approved you get an I-95 card stamped into your passport. You turn this in when you fly out of the country but if you’re driving up to Canada and coming back soon they may let you keep it. Scan it after you arrive and don’t loose it as it takes over 3 months to get a replacement and they’ll need the number as they can’t look up.
The TSA
The Transport Service Authority are the guys and gals tasked with keeping air travel safe.
Taking off shoes is compulsory because somebody hid a bomb in a shoe. Liquids are only allowed in tiny quantities because somebody planned a liquid bomb and many airports want to bombard you with x-rays or technologies to peek beneath your clothes because somebody blew up his underwear.
The Americans are pushing back against this last-threat-chasing approach and loss of dignity but Congress have no idea what it’s like as they fly private charter flights. For now you can at opt-out of the potentially dangerous x-ray and wave machines.
Airports
US airports are much like everywhere full of shops and restaurants for you to roam while you wait but most feel less crammed than Heathrow or Gatwick (with the exception of JFK).
Seattle’s main airport (SeaTac) has free WiFi which is unusual but welcome – it has that in common with Guernsey’s airport.
Rail
Trains in the US were a casualty in love affair with the car. The routes and timetables are limited with high fares high and long journey times. The lack of investment is quite apparent and a real shame as it’s hard to watch the beautiful country and road at the same time.
Esteemed entrepreneur and philanthropist Warren Buffet is pouring money into rail – whether this is an investment or a charitable donation time will tell.
Bus
Busses are regular and punctual in Seattle and some offer free WiFi. The reserved lanes let them blast past the traffic at busy times and even the rnon-Express routes can be quicker than driving at peak times.
The time-table at each stop lists not when the bus will arrive but when it starts the route from somewhere else which save printing a time-table for each stop but also renders it useless. Fire up your mobile device with an app or Google Maps although the latter throws curve balls (and not just for buses). I wondered if was a ploy to disrupt the Microsofties but a visit to San Francisco showed it just as confused in their own backyard.
Anyone hoping to catch a bus in downtown Seattle should be aware that many routes downtown are inside a large underground tunnel beneath the roads and the entrances are not clearly visible. Don’t be standing in the cold for ages before jumping in a cab.
Roads
Do people drive SUVs because of the potholes or do they cause them?
The naming and numbering system is simple and the biggest begin with I for interstate because they span more than one state. In Seattle this includes the I-5 which starts at Mexico, comes up through California and Oregon and right through Seattle before turning into the BC99 at the Canadian border and on towards Vancouver. We also have the I-405 which runs parallel to the I-5 but only from Seattle to California and the I-90 (not to be confused with the immigration form of the same name) which starts in Seattle and spans across to Boston on the east coast. Interstates are like English motorways and there is nothing like them Guernsey.
Highways are smaller and get just a number. The most popular here are the 405 that runs north-south parallel with the I-5 for a while but on the east-side and the 520 east-west between downtown Seattle and Redmond via Microsoft HQ which runs almost parallel with the I-90. Both the 520 and the I-90 cross Lake Washington which sits beautifully, if a little inconveniently, between downtown Seattle and “Eastside” where everything else exists. They are comparable with dual-carriage ways and there is nothing like them in Guernsey… well, maybe the 50 meters leading up to the town roundabout.
Traffic
The speed limit in Guernsey is 35mph so getting comfortable with 60mph can take months. I’m never sure it will feel completely natural but there’s nothing wrong with being alert and edgy on these roads.
Driving at 60mph means I want to leave the proper distance between myself and the car in front. Unfortunately that space will immediately be filled by three cars and a semi-articulated truck. There is no sweet spot where you get good stopping distance nobody will fill.
Be aware that people drive with little concern for their own safety let alone yours.
Lights
Many towns and cities are laid out on a grid and almost every intersection has traffic lights. I wondered why so many sit on highway traffic jams when smaller roads exist and now I know it is impossible to keep momentum through the grid.
You do get to turn right at red lights after stopping and yielding though – unless a sign says otherwise.
Everyone here goes through on orange and call it ’squeezing the orange’. Don’t squeeze too hard though or it’ll be red and you’ll find a souvenir to capture the moment for prosperity arriving in the mail and a bill for $70.
License
Get a license as soon as you arrive even if you don’t intend to drive. Rental companies are confused by a Guernsey driving license, bars only accept passports and US drivers licenses and insurance takes how long you’ve had a US license into consideration. Domestic flights require government ID and carrying your passport everywhere is a liability given how hard it is to replace your passport, I-94 and visa. Trust me on that.
The test is easy. Sit down in front of a PC for traffic rules and regulations (most of which are like the UK except regarding school buses.
The DMV is efficient once you get to the front but getting there can run to hours so Go to their web site, find all the offices and keep an eye on wait times for a few days to spot a good time and location. If you can’t find one go and pick up your number, subtract 15 minutes from the wait time and then go and have lunch, meet friends, start a family and then come back and take your turn. In my case it was 2 hours better spent elsewhere.
Insurance
Is going to be expensive at first – your maximum no-claims-bonus isn’t going to help so get that license early.
With more people comes more danger and add in crazy hospital costs and litigation the policies will need high limits and people should be careful on the roads. They’re not in both cases.
Accidents
Accidents are common and we sat in traffic for over 45 minutes while somebody had a Carbeque (car on fire).
As a pedestrian I’ve been almost hit 3 times. Some factors I suspect are:
- Rear windshield (windscreen) wipers are rare – drivers never look behind
- Orange turn signals (indicators) are often absent – a flashing red brake light is much less obvious
- Automatic and cruise controls exist – concentrate on anything but driving
- SUVs, minivans and trucks obscure the visibility of all around them – and give a false sense of saftey
- Drink driving is less strict – many will happily drive after a few
- Lack of spacial awareness – also a problem in supermarkets with carts (trolleys)
Automatic vs manual
Driving on the ‘right’ side of the road isn’t difficult. The steering wheel can still opposite the curb so all is well unless you drive an import (don’t) and its easy for the entire left-side of your body to fall asleep with nothing to do.
All rentals are automatic.
If you do buy a manual (or stick as they like to call it) then choice disappears quickly, fuel economy improves and resale gets harder. We went with a Subaru Impreza for AWD winter ski trips and a hatchback for transporting stuff. You’d be shocked at how few models support manual AWD hatchbacks that aren’t an SUV here.
Don’t let this put you off, it’s a great place to live, work or just visit… but bring a raincoat.
[)amien