blog

Working from Amtrak

by | Apr 16, 2013 | Developer Blog | 0 comments

Telecommuting often means working from home, a coffee shop, or a coworking space.  But freedom from an office can open up a broad world of possibilities.  For me, that translated into an Amtrak rail pass and a month-long perambulation of the United States, where my workspace has been observatory cars and friends’ apartments paired with a lightweight laptop and cellular tethering.

Image of train

The Vermonter arriving into White River Junction, VT


My route: Vermont -> New York City -> Philadelphia -> Washington, DC -> New Orleans -> San Antonio -> Austin -> Los Angeles -> San Francisco -> Portland -> Seattle -> Chicago -> St. Louis

When I pull myself away from the scenery and the new friendships found on the train, work itself has been generally smooth.  There’s joy and time for writing code in the long rides, with rolling vistas, power outlets at every seat, and the gentle rumble and rocking of the rails.
The biggest setback has been intermittent connectivity.  Amtrak’s WiFi is only available on a few trains and is often overcrowded, so a Verizon MiFi device or smart phone tethering is a necessity.  Even with those options, though, cell service can be hard to find through most of Montana, and switching cell towers at 70 MPH can make Skype conversations stutter and fail.  I’ve had to plan my calls accordingly, and prep sufficient offline work before the train ranges too far from cities.
Amtrak is also known for exasperating bureaucracy (that becomes unimportant once you’re actually on a train and taken care of by the kind and quirky conductors), and for a penchant for delays (due to mud slides, freight traffic, and inebriated passengers).
With those drawbacks in mind, and a reading of the excellent commentary “Traveling the USA via Amtrak Rail Pass” by a pair of self-styled “technomads”, I’d recommend working from Amtrak to anyone with the travel itch and liberty to roam.

+ more

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more