Posts in category personal
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 if you’re coming not to visit but to work you’ll require 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 filed before April 1st and if 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 lose it as it takes over 3 months to get a replacement and they’ll need the number as they can’t look up.
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 backscatter machines.
US airports are much like everywhere – full of shops and restaurants for you to roam while you wait – but 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.
Trains in the US were a casualty in the love affair with cars. 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.
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 non-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.
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.
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.
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.
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.
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 are common and we sat in traffic for over 45 minutes while somebody had a Car-B-Q (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 safety
- 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 it is easy for the entire left-side of your body to fall asleep with nothing to do. The hard part is remembering to look left first then right when arriving at a junction.
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.
This small box sat silently, patiently even, in our classroom for the best part of a year. On the few occasions our teacher was brave enough to flip the switch the machine would chirp into life with it’s two-tone beep and would state on capital white letters on a black background that it was BASIC. At this point the teacher would key-in the mythical incantation of CHAIN “” – handily jotted on a nearby note – and feed the beast a cassette tape.
Some time later the machine would announce it’s vague disappointment with the contents of the tape and be put back to sleep. One time, and one time only, I recall a screen full of bright colors masquerading as pirates looking for treasure.
I was 11.
Such a tantalizing taste of computing left me hungry for more. I knew precisely two people who owned computers. One possessed a cut-down version of the BBC Micro from my classroom called the Acorn Electron and guarded it like a sacred treasure, the other was a friend and more accommodating so much so that he agreed, with little optimism, we could type my program listing into his computer.
What combination of childish scrawl, lack of understanding of programming concepts or the cobbled-together dialect of BASIC was responsible for his Texas Instruments TI-99 rejecting my program I would never know. However neither that failure nor the subsequent arrival and rapid departure of a ‘programmable’ Philips G7000 Videopac from my home would quench my thirst.
A new school year started and for me that meant a new school and new subjects the most interesting of these was named Information Technology or IT for short. I don’t recall much of these early lessons other than some exposure to word processing, videotext and a simplified geometry-base programming language for drawing shapes called Logo.
This fixed schedule held little interest to me although the machines themselves did and the teacher opened the room of fifteen or so BBC Micro’s equipped with 5.25″ floppy drives to the ever-changing line of misfits queued outside to play games. But unlike my old school a few people here actually knew a little about these machines.
Chuckie Egg and Mr. E were favorites while masochists would fire up Castle Quest, Citadel and Repton 2 despite being impossible to complete and lacking a crucial save-game option. Fewer still braved the open-ended and Elite space trading/combat game which would let you resume your position each day. Right on commander!
Games consisted of a few files passed between easily damaged 5.25″ floppy disks that students had mysteriously acquired. Remembering which file to CHAIN, *EXEC or *LOAD was a task in itself made worse by the ever-changing scene of kids and games. Now I finally had a machine to myself for a brief period each day I set about solving the first real world problem I encountered here and wanted to create something that would automatically boot and let you select a game by pressing a letter or a number.
Scouring magazines, loaning one of the few BBC BASIC programming manuals from the teacher and occasionally LISTing other people’s I came up with something that worked. Before long it had double height text, colors and some basic animation. Included in the program were some basic instructions on how to edit the program to fit the games on your own disk and it spread like wildfire.
Shortly after my father, who made gadget trading one of his hobbies, brought home a Sinclair ZX Spectrum 16KB. It was less powerful than the BBC’s at school and had to be hooked up to a television and cassette record to be of any use and had small rubber keys that were hard to type on. I played and programmed on it for hours without interruption and it finally became mine when my mother made it clear to my father it couldn’t be traded out for the next gadget. Within a few months the machine had died after something metallic got in through the edge connector.
I was heartbroken but found a neighbor was selling his Spectrum 48K and persuaded my parents to buy it. The extra memory was useful but even better was the hard-key keyboard and the original Sinclair BASIC programming manual I’d been missing. That year my parents split, my father moved out and we moved to a new parish on our little island of Guernsey which meant new friends and a new school. A school that had IT sharing lessons with technical drawing.
My hopes weren’t high…
- Settling down in the Redmond area and being with my team are some of the things I’m most looking forward to in October.
- Sometimes I am so deep in thought when people ask me a question I look dazed and confused, failing to answer them.
- People grow and situations change and that’s why there is a saying, “never say never”!
- When I’m down, I take a nap, wake up and do something different or creative.
- Microsoft Building 35 is where you’ll find me most often.
- A rainy day is good for splashing in puddles, getting wet and drying off near something warm with cocoa.
- And as for the weekend, tonight I’m looking forward to wrapping things up, tomorrow my plans include going out with my Vancouver friends one last time and Sunday, I want to go do parkour and start packing!
How old were you when you first started in programming?
Some time between 10 and 12 when my father bought home a ZX Spectrum and I ended up delving into the excellent programming manual when I finally ran out of games to play. At the same time my school opened up the computer room at lunchtimes…
What was your first programming language?
BASIC on the Sinclair Spectrum (evenings) and BBC Micro (lunch-times and after school). Multi-platform from the outset ;-)
What was the first real program you wrote?
Probably the MultiFile +3 disk & file management tool for the Spectrum in a mix of assembler and BASIC but I was also creating menu and copy protection for the BBC Micro around the same time.
I also trashed an expensive 3” disk drive at the time with a small bug in my end-of-disk detection code that resulted in the drive trying to step itself beyond the end several times and knocked it out of alignment.
What languages have you used since you started programming?
Well I’ve *used* the following although ones in italics for only brief periods involving one or two small applications.
- BASICs: Sinclair, BBC, Microsoft, QBASIC, Mallard, QuickBasic, ASIC
- Assemblers: Z80, 6502, 8051
- Visual Basic, VBA, VBScript, VB.NET
- Turbo Pascal, Delphi, SQL, PHP
- COBOL, RPG, SmallTalk, Algol, Prolog
I’m not sure if XSLT/XPath or RegEx’s count.
What was your first professional programming gig?
Writing IBM AS/400 (iSeries) banking applications in COBOL age 17 joining a team where the leader was already known as the Kindergarten Cop as everyone in his team was “only 23-25”. I got to delve into the kernel, general ledger and securities systems eventually single-handedly developing intricate multi-base-currency support leaving days before my 19th birthday. (Okay, a little pride there ;-)
If you knew then what you know now, would you have started programming?
Without a shadow of a doubt.
If there is one thing you learned along the way that you would tell new developers, what would it be?
Enjoy the journey, new languages are going to come and go so learn them just-in-time ;-)
It’s a shame computers and languages are more complex now but with the Internet and great books available there is no real barrier to entry.
What’s the most fun you’ve ever had programming?
Any application that brings a smile to a users face :)
Some ‘interesting’ moments have been revisiting school-level physics for a pool game and an on-the-fly domain class construction system for an international configurable payroll package.
Who am I calling out?
I’m not sure any of them are reading my blog any more but you never know ;-)