You know what they say about pessimists? They jump out the window and are no longer involved.
- James Burke
One of the the things I was testing on this vacation was getting a foreign sim card to work on my Verizon Samsung Galaxy S3. LTE phones on Verizon all take sim cards now, and as of the 4.1 update for the S3 it's supposedly unlocked as a world phone, at least the internet largely said so. As a dry run for the Hong Kong OpenStack summit I wanted to figure out if this was true or not by trying it in Canada.
Adventure #1: finding a Rogers
Rogers is one of the big telcos in Canada, and has a pay as you go plan with data. This seemed to be the best bet to figure this all out. Finding an actual Rogers though, turned out harder than expected. The address we had for Saint John didn't have anything obvious, and unlike the states, there wasn't a cell phone store in every little town. That meant that by the time we actually found a Rogers it was about 3 days into Canada, in Truro, in the mall.
The last time I did this was with a pre-smart phone in Germany, where their were telco stores in every transit hub, so I hadn't actually expected the stores to be that sparse.
Adventure #2: the sim
Apparently the way I read everything online was only about half of what's actually going on with Rogers. The prepaid plans existed, were a little differently structured than I expected.
The Rogers rep was very skeptical that a Verizon phone was going to take a Rogers sim, but they popped one out anyway, we rebooted the phone, and it didn't lock out. It just showed a little funny icon in the notification area that there was a non-verizon sim in there.
This isn't actually a problem, and you can long hold on it, realize the Setup Wizard is the app causing it, and kill it. Then you don't need to look at it until a reboot, or about a week (it came back later for me which is how I got the screen shot).
Some time on the phone from the Rogers office and I had a Halifax number, a 500 MB data allowance, and some credit for overruns on phone and texting. It cost me about $60 CAD. The cell phone was on their network, Rogers sent me a few texts with my number, and off we went to Cape Breton.
Adventure #3: data
On the drive to Cape Breton, I realized there was no data service on the phone. That was kind of the point of all this, to have data. Of course without internet, it was hard to debug. Also, complicating things, was the fact that Cape Breton is a bit sparse on cell coverage. Which meant even if I could figure out a fix, it wasn't really testable up there. A couple days in I started searching to figure out what the deal was, and eventually I got to the bottom of it.
While the Rogers sim did everything correct to get on the phone network, and the radios all worked for that, to get on the data network you need to define an APN. Pre Android 4.0 there were APIs for this. Post Android 4.0 there are not, however on the S3 you can manually create an APN. There is this good app in the market called Offline SIM APN Database which has all these settings, and lets you copy and paste them easily. A couple of minutes later you'll have defined an APN. After that, reboot, it doesn't really like to take APN definitions live.
So when we were leaving Cape Breton headed to Halifax, on the highway, back in civilization I finally had data on the phone. Just let it prefer Global mode and it was working. However, pretty quickly I noticed it was edge only.
Adventure #4: edge
Edge is basically the GSM version of 1xRTT (for people that live in CDMA land), and is slow. More searching basically led me to the fact that this was as good as it was getting on the S3. While the S3 was eventually opened up to be a global phone, it didn't start that way, and it wasn't really a design point for the Verizon version which added the 700 Mhz LTE radio. So the silicon doesn't have 2100 Mhz, which is basically where most GSM telcos implement HSPA, their 3G. So we were on Edge for the whole trip where we had data.
Things that work fine on edge (even though they are slow): Google Maps, Foursquare, Facebook, Gmail
Things that get goofy on edge: Untappd, Accuweather (both seem way to data hunger, and not very happy if things reset connections).
I turned off sync while on the Rogers sim. Given the slowness of data this was very helpful for battery life, and for not having something else in the way when I wanted the data connection.
Conclusion: it works
At the end of the day, this all worked. Not having 3G was annoying, but fine. From what I can tell the S4 has all the radios to do 3G on GSM, as do some of the more recent Motorola phones on Verizon.
Alternatives: Verizon International Plans
When I finally figured out the APN issue, I also found my way to Verizon's international plans. They aren't actually all that bad, especially if you are trapped on edge, so data isn't going to be used all that heavily. And even more so with Canada, which after you add the international plan, all the calls and texts are free.
I think that for future Canada trips (especially if we're there for something shorter) we'll just enable that on our phones instead of doing the sim route. However, on this trip the sim route was a learning experience as much as anything else.
Update (Jan 4 2014): Hong Kong
Because this post is getting a bunch of new finds on "the google", I wanted to add a little more data. I went to Hong Kong a couple months after this. There I was able to get a 7 day unlimitted data sim for ~ $12 US. They set it up in the kiosk and I was online in about 5 minutes.
In Hong Kong I actually had 3G (HSPA+). So realize that 3G bands vary by country, and whether you'll get 3G on your phone is actually hard to completely figure out in advance.
Also, I'm on Verizon stock firmware, and I've had friends have difficulty with this on Cyanogen mod on Verizon phones.
Note: everything else about the vacation is going to be positive, but I needed to mini rant about this one.
One of the unfortunate things about leaving the country is returning. Not because it's not great to come home, but because of the stark contrast between border crossing outbound, and border crossing inbound. I've done this border crossing enough that when going to Canada I plan that entering Canada adds 15 mins to the drive, entering the US adds 1 hour to the drive. Here's how it went this time.
No line of cars, pull up to security checkpoint, stop, hand over our passports.
Guard: hey folks, where are you going today?
Me: Vacationing in Nova Scotia for the next couple of weeks.
Guard: Any Tabaco or Alcohol?
Me: Half a bottle of Port.
Guard: ok, but no Tabaco or Firearms?
Guard: how long you going to be here?
Me: About two weeks.
Guard: Ok, enjoy the vacation.
Elapsed time: 3 minutes
Crossing back to the US
Wait in line for 10 minutes in line of cars. Get to booth, stop, hand over our passports.
Guard: hey folks, where you headed?
Me: home to Poughkeepsie, NY, back from a couple weeks vacation.
Guard: how long... oh you said a couple of weeks.
Me: yep, about two weeks.
Guard: any alcohol or tabacco?
Me: yes, we're bringing by alcohol from a distillery in Canada
Guard is typing away with passports, not actually paying attention.
Guard: what was that, sorry?
Me: we've got some alcohol from Canada.
Guard: how much and what kind?
Me: 3L, some vodka, rum, a couple other types.
Guard: that's from a Canadian distillery right, not Cuban?
Me: yep, from a microdistillery down in Luneburg.
Guard: ok, any Tabaco?
Guard: can you roll down your back window?
Guard: you folks bringing any produce back into the states?
Susan: I think we've got some celery and a pepper in the cooler.
Guard: the celery is ok, but we'll need to take the pepper.
Susan: ok, if it matters they both actually came from the US.
Guard: doesn't matter miss. Where is this?
Me: in the cooler in the back.
Guard: can you pop the trunk sir?
Me: should be open.
Guard goes to back, opens it, struggles with the cooler a little bit.
Me: would you like any help?
Guard: no, sir, stay in the car.
Guard gets back to the guard station, elicit pepper that's been travelling with us for two weeks in hand. Guard goes back to typing on computer.
Guard: miss, did you loose you passport at some point?
Susan: yes, my bag was stolen in India back in 2000-2001 with my passport.
Guard: (type type type) ok, we'll need you folks to pull to the side up there. Please pull into bay #2 and go inside.
We pull into bay #2, there is a big sign that says "wait for guard".
Me: hmmm... so do we wait, or go in?
Susan: I don't know, lets wait, they'll tell us what they want.
A couple of minutes pass, Guard hands off passports to Guard #2 chats to him a bit, then walks over to our car.
Guard: folks, I need you to go inside.
Me: no problem.
Go inside, come up to desk. Guard #2 and Guard #3 start typing at things and looking at passports and us. Guard #3 seems to have gotten the role of checking out our passports.
Guard #3: so miss, you lost your passport?
Susan: yes, my bag was stolen in India, back in 2000, so I had to get a replacement.
Guard #3: ok, and this passport is a renewal?
Guard #3: so this would be your third passport, so to speak?
Guard #3: when were you folks last in Canada?
Me: we were just trying to sort that out. I think I was last here in Ottawa back around 2007.
Susan: I think my last time was 2005 when we did a Vancouver trip.
Guard #3: what about 2008, 2009?
Me: huh, no I don't think we were here then.
Guard #3 is now clearly looking at our other travel records, but he didn't actually tell us he was interested in anything beyond Canada.
Guard #3: where else did you travel in 2009?
Me: ... I think that might have been India, or maybe that was the year before. We were in Germany around then as well.
(honestly, we travel enough, that I have a hard time keeping the order of trips sorted, especially being 4 years ago).
Guard #1 comes back, Guard #3 and #1 start trying to find something on the computer. Some linke. Guard #3 asks what he's actually supposed to do. Guard #1 says go to some system, plug in her (Susan's) name and birthday.
Guard #1: hey folks, can you take a seat for a moment.
Note, there aren't any seats, but there is a stone window sill on the other side of the room. We go and sit there.
There is typing, and more typing. Guard #1 comes and goes. At some point I think Guard #1 had to log into something with his credentials because Guard #3 couldn't get into the system they needed. About 10 minutes pass, Susan and I chit chatting during it. Guard #3 calls us up.
Guard #3: miss, what is your mother's maiden name?
Susan responds with her mom's full maiden name, first and last.
Guard #3: what was that? (clearly he was expecting only last name)
Guard #3: ok. (Hands back our passports) you folks are free to go.
We walk out the door and head out.
Total elapsed time: 40 minutes
Note, this isn't the first time that Susan's gotten pulled aside because of the stolen passport, though they only seemed to start doing it in 2008 (back from India, where they didn't want to let her get on the plane without a second form of ID), and 2009 (on our trip from Germany where Susan got swept off into a back room for 30 minutes after we landed). My guess is they implemented a new software system that flags more people. I'd have thought that after a few of these conversations they'd have annotated the records, but apparently our tax dollars hard at work means that they really like talking to her on every border crossing. Especially given that the stolen passport wouldn't even have valid dates on it any more, because it was 12 years ago that it was stolen.
Realistically this was still less than the hour I'd allocated for the crossing. But it just always frustrates me that border crossing back to our own country is such a dreadful experience, and a think I always loath at the end of the trip.
I learned something interesting over these last two weeks, which is how to disconnect from work on vacation without loosing the connection to home and friends. In a connected age, it's hard to get one without the other, but it turns out that the way I've set up my social networks I have a reasonable balance.
Step #1 - Turn off Twitter - I really love twitter, it's where I spend most of my social time. But the downside in being so connected to so many other stackers is that twitter pulls me back into a work mindset. Basically after our first two nights out I realized I need to just give up twitter for the duration to really disconnect.
Step #2 - Stop reading RSS - I basically just stopped from about two nights in, until this morning. The world could do it's own thing for the last two weeks, and I'm happy with that. And in general stop reading news. That can all wait until I get home.
Step #3 - Facebook. I actually used facebook more than I usually do during the vacation. Once or twice a day I could post something fun from the vacation, and once I figured out the perennial misconfiguration of my eyefi card, I was able to post pictures from the trip from my real camera, via my cell phone.
Step #4 - Foursquare. I really seem to use Foursquare mostly when traveling. It's kind of a travel log for me to go back and see things later.
I'm slowly starting to reconnect now, probably not fully until I get back to the office on Tuesday. But this strategy worked well enough on this long trip that I think I'll be using it again in the future. Definitely curious what other folks use to disconnect on vacation.
It's a common thread among computer professional to complain about "kids these days" when we look at potential new hires. It's always hard to separate how much of that is real vs. how much of it is what people do when they get older, i.e. complain about those young-uns that are on your lawn.
So this was an interesting refreshing look at what it means that Kids can't use computers, especially when it comes to what we screwed up on.
But the curriculum isn’t the only area in which we’ve messed up. Our network infrastructures in UK schools is equally to blame. We’ve mirrored corporate networks, preventing kids and teachers access to system settings, the command line and requiring admin rights to do almost anything. They’re sitting at a general purpose computer without the ability to do any general purpose computing. They have access to a few applications and that’s all. The computers access the internet through proxy servers that aggressively filter anything less bland than Wikipedia, and most schools have additional filtering software on-top so that they can maintain a white-list of ‘suitable sites’.
I hadn't thought about that perspective before, but in playing network lock down, you reduce computing skills. I actually wonder if this same problem is happening at corporate networks as well, and one of the reasons large companies get so bad at organic innovation. Lock everything down, and no one can actually explore new ideas.
Even though I was only 4 at the time, Cosmos left a distinct impression on my when I was a kid. My path into science and engineering probably can be traced back to being filled with things like Cosmos and NOVA during my formative years by my parents, something made easier by the fact that PBS was one of only 3 channels we got over the air on our 13" TV.
A few years ago I watched through all of Cosmos again. There were things I remembered, things that I didn't. And, while certain things look dated, the material surprisingly holds up quite well. More importantly, it was still inspiring, and still held really interesting ideas to ponder.
So I am incredibly excited that we're going to get a new Cosmos this spring. The teaser for this was released at Comic Con this year and is amazing
I seriously can't wait. I love the fact that they kept the starship of the mind as part of this, and the cosmic calendar. And I love that this is going to be network TV, not hidden off in a specialty cable channel.
From Rafe Colburn's post on Seven signs of dysfunctional engineering teams:
Preference for process over tools. As engineering teams grow, there are many approaches to coordinating people’s work. Most of them are some combination of process and tools. Git is a tool that enables multiple people to work on the same code base efficiently (most of the time). A team may also design a process around Git — avoiding the use of remote branches, only pushing code that’s ready to deploy to the master branch, or requiring people to use local branches for all of their development. Healthy teams generally try to address their scaling problems with tools, not additional process. Processes are hard to turn into habits, hard to teach to new team members, and often evolve too slowly to keep pace with changing circumstances.
You can think of it another way, tools encode behavior in a way that takes away choices. Which is great, because then you don't have to worry about making the wrong choice. Then you can focus your mental energies on real problems.