{"id":2893,"date":"2012-06-29T12:32:14","date_gmt":"2012-06-29T20:32:14","guid":{"rendered":"http:\/\/blog.mozilla.org\/webdev\/?p=2893"},"modified":"2012-06-29T12:34:40","modified_gmt":"2012-06-29T20:34:40","slug":"vagrant-up","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/","title":{"rendered":"vagrant up"},"content":{"rendered":"<h3>Tales of the Travelling Programmer, Part One<\/h3>\n<p>I travel a lot. I work remotely, which I think describes what was once known as &#8220;telecommuting&#8221; much better than &#8220;working from home&#8221;. &#8220;Working from home&#8221; no longer feels like an adequate description for those of us who also work from airports, cafes, co-working joints, friend&#8217;s houses, and even parks. If you&#8217;ve ever <a href=\"http:\/\/37signals.com\/svn\/\">read anything from 37signals<\/a>, you&#8217;ve likely heard all about the virtues of working remotely: why it leads to better productivity; how it results in less disruption; that you&#8217;re an utter fool if your team isn&#8217;t distributed across nine continents. I largely agree with their viewpoint and admit they&#8217;re one of the reasons I became so interested in working remotely.<\/p>\n<p>But what about the <em>hows<\/em> of working remotely?<\/p>\n<p>Yes, there&#8217;s IRC and email and Skype and GitHub and everything in-between, but what about all the non-technical aspects of remote work? What about when you&#8217;re ready to take working remotely to the next level: travelling to a foreign place while still being productive. Well, I spent the past five months without a permanent residence of my own, travelling around the globe while still working. I&#8217;ve since made Montreal, Canada my home, but in-between I went to some of my favourite cities and to places I had never been before. <br \/>All while still committing code to Mozilla&#8217;s webdev projects.<\/p>\n<h3 id=\"transpacificism\">Transpacificism<\/h3>\n<p>Last January, I started what would unknowingly be a streak of adventures by packing up everything I owned into a tiny car and parking it in a friend&#8217;s driveway, then hopping onto a plane to Bangkok, Thailand. At the time I was living in Halifax, Canada, and it took three planes and over thirty-five hours in transit to get to Bangkok&#8217;s humongous airport.<\/p>\n<p>I was very fortunately greeted by a friend who helped me get into town, but I was pretty exhausted after that journey. Although not jet-lagged, I was mentally exhausted for the next few days taking in the sites; adjusting to the language, heat, and commotion; and just generally feeling quite out-of-place. Although going from an American to Western European city might not feel <em>too<\/em> different, heading from Canada to Thailand was crazy taxing. That brings me to my first point:<\/p>\n<h3 id=\"catchyourbreath\">Catch Your Breath<\/h3>\n<p>Even if you&#8217;re only going from Los Angeles to London: give yourself a day or two to get re-adjusted and confident in your surroundings. Working outside an office can mean less distractions &#8212; but if you plop yourself down in a foreign place with zero knowledge of it, you&#8217;re going to feel bombarded by absolutely everything around you. It&#8217;s going to be like Innotech if there were 100 Lumberghs.<\/p>\n<p>Take a break and allow yourself to be wowed by your new environment before smashing your head against that redesign you&#8217;ve been struggling with the past week.<\/p>\n<p>Once you have mobile data you can still do things like reply to email, chat with coworkers, and even attend Skype meetings, but don&#8217;t try to get down and code like crazy your first day in a new place. Get confident that you have a sense of where you are on a map, a bit about how transit there works, and what the social norms are around remote working where you are.<\/p>\n<figure>\n<img decoding=\"async\" src=\"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg\" alt=\"Soi in Bangkok with many motorcycles and motorcyclists outside\" \/><figcaption>Across from my apartment in Thailand was a very cool motorcycle repair shop, but there weren&#8217;t many cafes.<\/figcaption><\/figure>\n<p>For instance, in Bangkok it was pretty hard to just walk into a random cafe and connect to their free wifi; there were remarkably few cafes in my area at all! Starbucks is a safe choice for a quick coffee and wifi in North America, but the Starbucks in Bangkok had pay-per-minute wifi. If you take what you know about home, try to apply it to a foreign place, and start working immediately: you&#8217;re gonna have a bad time.<\/p>\n<p>By getting to know my neighbourhood, I found an <a href=\"https:\/\/foursquare.com\/v\/touch-cafe\/4c4551f62d3ec9b6c51f30ae\">English-friendly cafe with unlimited wifi and power outlets I could frequent<\/a>. Aces.<\/p>\n<h3 id=\"getmobiledata\">Get Mobile Data<\/h3>\n<p>Don&#8217;t feel disconnected when you&#8217;re already in a foreign place. Usually people look for ways to disconnect and not be tethered to their smartphone and work; when you&#8217;re far away from &#8220;home&#8221;, you&#8217;re going to have the opposite problem. Either pick up a cheap unlocked Android phone or get a factory-unlocked phone and a <a href=\"http:\/\/prepaidwithdata.wikia.com\/wiki\/Prepaid_SIM_with_data\">prepaid data plan<\/a>. Fretting over not being able to speak a language is hard enough; don&#8217;t fret over your Internet connection or you will go insane.<\/p>\n<figure>\n<img decoding=\"async\" src=\"http:\/\/lonelyvegan.com\/blog-images\/meme-starbucks-wifi.png\" alt=\"The Starbucks wifi... is not free.\" \/><figcaption>The sad truth of every Starbucks I&#8217;ve been to outside North America.<\/figcaption><\/figure>\n<h3 id=\"overcommunicateobscenely\">Overcommunicate\u2026 Obscenely<\/h3>\n<p>Make sure everyone you regularly work with knows where you&#8217;re going to be, and make sure they know <strong>well in advance<\/strong> (whenever is possible). If your coworkers expect you to be working on Atlantic Time and find out you&#8217;re suddenly on Indochina Time: <strong>it&#8217;s going to be a bit jarring<\/strong>. Try to alert people with where you&#8217;re headed a few weeks in advance, when you&#8217;ll be available, and how to reach you. If you&#8217;re going to be so far away timezone-wise that you may not be able to instantly reply at points &#8211; spend a few extra minutes on every email and communicate <strong>very clearly<\/strong> what you mean. This is especially true for code reviews: be very thorough and explicit; if you aren&#8217;t clear and can reply in five minutes on IRC it&#8217;s great, but if it&#8217;s going to be another ten hours please be clear.<\/p>\n<p>Letting people know where you are and asking them to overcommunciate to you can help lots too; there&#8217;s nothing worse than wasting a day (or at least leaving a project in neglect for a day) because you need to wait for follow-up from someone fifteen hours away.<\/p>\n<h3 id=\"dontvisittheresort\">Don&#8217;t Visit The Resort<\/h3>\n<p>If you&#8217;re going to try your hand at travelling and working, don&#8217;t try to recreate the environment you have at home in a foreign place. It&#8217;s not going to work: you&#8217;ll either fail practically (because you <em>can&#8217;t<\/em> recreate it) or you will fail at travelling (because you spent so much time making Bangkok feel like Boston).<\/p>\n<p>There are some travellers who visit Bangkok and never venture outside its very tourist-friendly &#8220;downtown&#8221;, but things there &#8211; like any tourist-y area &#8211; are as pricey there as in the West. There&#8217;s nothing wrong with visiting an expat pub once or twice, even if just to see how the locals interpret bangers and mash, but if you want accommodations like you&#8217;re used to at home: stay home!<\/p>\n<figure>\n<img decoding=\"async\" src=\"http:\/\/lonelyvegan.com\/blog-images\/barcelona-internet-cafe.jpg\" alt=\"An Internet cafe in Barcelona, with ancient MSN and Netscape signs\" \/><figcaption>Although this wasn&#8217;t far from my apartment in Barcelona, Internet was not on every corner there as it is in North America. Not that I&#8217;m convinced MSN Network and Netscape would stand up to a modern web developer&#8217;s standards anyway.<\/figcaption><\/figure>\n<p>An example: I spent last May in Barcelona, where free wifi at cafes simply did not exist. Even Starbucks had a convoluted system that gave you forty-five minutes of wifi &#8217;til you were kicked off the network until you ordered another coffee. That works out to about $4\/hour for wifi, not to mention a serious over-caffination problem after a few hours. But working from my apartment wasn&#8217;t always ideal, especially as Internet speeds there were a bit lousy.<\/p>\n<p>I don&#8217;t frequent co-working spots where I live but in Barcelona: co-working offered the best Internet in terms of both price and speed. Mobile data was expensive and slow in Barcelona, so I decided to work from a local Barcelona co-working joint: <a href=\"http:\/\/domenech7.com\/\">Dom\u00e8nech 7<\/a>. It was perfect: I got to experience co-working as it was done in Barcelona, meet cool locals (including one who is visiting Montreal this summer), and have a swell place to work out of. There are lots of things that are stressful about travel: don&#8217;t make your Internet connection one of them. <strong>Trust me.<\/strong><\/p>\n<h3 id=\"enoughtogetofftheground\">Enough to Get Off the Ground<\/h3>\n<p>I think working remotely while travelling can be a really rewarding experience: it forces you to think outside the box about communication &#8211; if you&#8217;re fourteen time zones away from all your coworkers, will daily Skype standups still work? Were they ever the optimum method of communication in the first place?<\/p>\n<p>Switching up your environment and routines can be a great way to find weak spots. They could be with yourself or with your process; it could even be you discover you&#8217;re operating under some assumptions you just take for granted. For a community-driven, distributed, and open source organization like Mozilla, or even for Webdev as its own entity, it&#8217;s important to take stock of how you work; for some things: it&#8217;s the only way you&#8217;ll ever get better at it.<\/p>\n<figure>\n<img decoding=\"async\" src=\"http:\/\/lonelyvegan.com\/blog-images\/bangkok-rooftop.jpg\" alt=\"Rooftop photo of Ratchada\" \/><figcaption>Taken from the rooftop of my place in Bangkok. Unlike New York or Europe where it feels more like the old mixing with the new, Bangkok felt like a bizarre clash of Buddhas and technology; I got very used to seeing monks carrying their smartphones around town.<\/figcaption><\/figure>\n<p>I really hope this post has sparked your interest in travelling and working &#8212; after all: it&#8217;s really quite fun. For those of you already interested: I hope this has convinced you that it&#8217;s more doable than you think.<\/p>\n<p>Next time I&#8217;ll blog about some of the lessons I learned about my own and my teams&#8217; workflows: what worked, what didn&#8217;t, and how we improved things for remote workers in any timezone.<\/p>\n<p>Until then: <a href=\"http:\/\/translate.google.com\/?hl=en&#038;tab=TT#th|en|%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%94%E0%B8%B4%E0%B8%99%E0%B8%97%E0%B8%B2%E0%B8%87%E0%B8%97%E0%B8%B5%E0%B9%88%E0%B8%AA%E0%B8%99%E0%B8%B8%E0%B8%81!\">\u0e01\u0e32\u0e23\u0e40\u0e14\u0e34\u0e19\u0e17\u0e32\u0e07\u0e17\u0e35\u0e48\u0e2a\u0e19\u0e38\u0e01!<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tales of the Travelling Programmer, Part One I travel a lot. I work remotely, which I think describes what was once known as &#8220;telecommuting&#8221; much better than &#8220;working from home&#8221;. &#8220;Working from home&#8221; no longer feels like an adequate description &hellip; <a class=\"go\" href=\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/\">Continue reading<\/a><\/p>\n","protected":false},"author":331,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[53,20258,14284],"tags":[20262,19534,20260],"coauthors":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>vagrant up - Mozilla Web Development<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matthew Riley MacPherson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/\",\"url\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/\",\"name\":\"vagrant up - Mozilla Web Development\",\"isPartOf\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg\",\"datePublished\":\"2012-06-29T20:32:14+00:00\",\"dateModified\":\"2012-06-29T20:34:40+00:00\",\"author\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/710b01118eeaa5607349ae02103de5d8\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#primaryimage\",\"url\":\"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg\",\"contentUrl\":\"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.mozilla.org\/webdev\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"vagrant up\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#website\",\"url\":\"https:\/\/blog.mozilla.org\/webdev\/\",\"name\":\"Mozilla Web Development\",\"description\":\"For make benefit of glorious tubes\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.mozilla.org\/webdev\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/710b01118eeaa5607349ae02103de5d8\",\"name\":\"Matthew Riley MacPherson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/image\/77cc8f7f43cdabbe5a275a420a0cbd33\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4a1b8066eff77b9b5a3b82c64ce140b3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4a1b8066eff77b9b5a3b82c64ce140b3?s=96&d=mm&r=g\",\"caption\":\"Matthew Riley MacPherson\"},\"description\":\"Matthew Riley MacPherson (aka tofumatt) is a Rubyist living in a Pythonista's world. He's from Canada, so you'll find lots of odd spelling (like \\\"colour\\\" or \\\"labour\\\") in his writing. He has a serious penchant for pretty code, excellent coffee, and very fast motorcycles. Check out his code on GitHub or talk to him about motorcycles on Twitter.\",\"sameAs\":[\"http:\/\/lonelyvegan.com\"],\"url\":\"https:\/\/blog.mozilla.org\/webdev\/author\/mmacphersonmozilla-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"vagrant up - Mozilla Web Development","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/","twitter_misc":{"Written by":"Matthew Riley MacPherson","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/","url":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/","name":"vagrant up - Mozilla Web Development","isPartOf":{"@id":"https:\/\/blog.mozilla.org\/webdev\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#primaryimage"},"image":{"@id":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#primaryimage"},"thumbnailUrl":"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg","datePublished":"2012-06-29T20:32:14+00:00","dateModified":"2012-06-29T20:34:40+00:00","author":{"@id":"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/710b01118eeaa5607349ae02103de5d8"},"breadcrumb":{"@id":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#primaryimage","url":"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg","contentUrl":"http:\/\/lonelyvegan.com\/blog-images\/bikes-in-bangkok.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.mozilla.org\/webdev\/2012\/06\/29\/vagrant-up\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.mozilla.org\/webdev\/"},{"@type":"ListItem","position":2,"name":"vagrant up"}]},{"@type":"WebSite","@id":"https:\/\/blog.mozilla.org\/webdev\/#website","url":"https:\/\/blog.mozilla.org\/webdev\/","name":"Mozilla Web Development","description":"For make benefit of glorious tubes","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.mozilla.org\/webdev\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/710b01118eeaa5607349ae02103de5d8","name":"Matthew Riley MacPherson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.mozilla.org\/webdev\/#\/schema\/person\/image\/77cc8f7f43cdabbe5a275a420a0cbd33","url":"https:\/\/secure.gravatar.com\/avatar\/4a1b8066eff77b9b5a3b82c64ce140b3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4a1b8066eff77b9b5a3b82c64ce140b3?s=96&d=mm&r=g","caption":"Matthew Riley MacPherson"},"description":"Matthew Riley MacPherson (aka tofumatt) is a Rubyist living in a Pythonista's world. He's from Canada, so you'll find lots of odd spelling (like \"colour\" or \"labour\") in his writing. He has a serious penchant for pretty code, excellent coffee, and very fast motorcycles. Check out his code on GitHub or talk to him about motorcycles on Twitter.","sameAs":["http:\/\/lonelyvegan.com"],"url":"https:\/\/blog.mozilla.org\/webdev\/author\/mmacphersonmozilla-com\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/posts\/2893"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/users\/331"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/comments?post=2893"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/posts\/2893\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/media?parent=2893"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/categories?post=2893"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/tags?post=2893"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.mozilla.org\/webdev\/wp-json\/wp\/v2\/coauthors?post=2893"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}