Time Lapse of Mt. Rainier visibility from Kerry Park in 2012


Mt Rainier from Kerry Park

Visibility of our surroundings is a key aspect of the experience of a place. I live in Seattle and one thing everyone here is obsessed with is Mt. Rainier. It’s common to hear the phrase “The mountain’s out”. How many times in a year can you see Mt. Rainier from Seattle? Some people claim that it’s a “few days a year”. This time-lapse shows that in 2012 you could see Mt. Rainier a total of minimum 83 times. That translates to once every 4-5 days.

Since I am only looking at pictures taken at exactly 3pm every day, the actual number of times you can see the mountain at least once is definitely higher if you consider other times of the day you get a peek at it.

Pictures taken by the awesome folks at Puget Sound Clean Air Agency. I recently found out about them but am in no way affiliated to them. Watch their visibility camera here: http://www.pscleanair.org/airq/visibility/default.aspx

I wrote this simple perl script to grab the images from the website and then actually used iMovie to put them together and manually added the counter.


Quick git workflow for small teams


Here is a simple and straightforward way of using git in small teams. I have tried different approaches and think this works well for teams up to a size of 5 people. Beyond that, you may incorporate some more sophistication in the workflow, but that can be in a different post.

For this post, assume that the team is set up with github as the remote from where everyone cloned. I won’t go into the details on how to clone from github and get setup with remotes etc. If you follow simple steps, this is a very standard configuration. However, if you do need help with this, try one of these useful books.

Master should never be broken

The master is the branch that is never broken. It is the branch that is deployed to the production site. You should always have full confidence that deploying the master doesn’t break anything.

git workflow small teams

The workflow

Before you start working on a feature do this:

git checkout -b my-awesome-feature

As you make your changes you can commit them

git commit -m "made an awesome change"

To back things up, also just push your branch up to your remote. The following command will automatically create a branch called “my-awesome-feature” on your remote and your commits will be available there cleanly in a separate branch

git push origin

To make sure the world hasn’t changed too much since you started working on this feature, you want to grab the latest from master and make sure your changes are still valid on top of it. If you rebase often, you will have less surprises when you merge.

git rebase master

Happy with what you have? create a pull request. Go to Github, find the repo, look for your branch and select “create pull request”. This way someone on your team can review your changes and give you a quick code review. When they are happy with your work, they can press the “single green button” to merge that into master.

Now, master has the latest code, so you can delete your branch safely.

git branch -d my-awesome-feature
git push origin --delete my-awesome-feature

Deploy the master to your production server using whatever deploy method you like. It could be heroku, or your own server with shell scripts, build or CI system or whatever floats your boat.

Three symptoms of the problem with Surface RT


Ballmer is reported to have said recently that Microsoft built more Surface RTs than it can sell. I think there are three symptoms of the product that hint at some of the reasons why it didn’t do as well as expected.

Surface RT

It’s called Surface RT

Seriously, you are betting the future of your company on this but you still don’t have the discipline and focus to do one thing right? Pro, RT, what??? This is symptom of a deeper problem at Microsoft where paralyzed by deciding what to focus on, they bet on doing more than is needed. It’s ok to experiment and cast a wide net, but not at the expense of diluting efforts.

Surface with Kickstand
The best Kickstand in the world

How many tablet users complain that the biggest annoyance they have with tablets is the lack of an inbuilt stand. Yes, stand-like accessories are sold a lot, but it only kicks in for specific use cases that aren’t core to what a tablet needs to be. This is a great example where Microsoft uses the best minds to create the slickest, most awesome kickstand in the world, but was it a problem worth solving? Why take on more complexity, moving parts, and make your hardware opinionated for an unvalidated problem? It kinda breaks, you know, and then users have to shell out $300 to get it replaced! Wouldn’t Microsoft be better served by focusing hardware innovation on battery life and weight – which is a more significant differentiator? This is another symptom of Microsoft not being good at understanding and solving for top user frustrations. This also shows that Microsoft thinks of tablets as work and productivity devices while Apples design approach is for the tablet to be very universal with no right orientation and infinite possibilities – be unfettered to laptop use cases.

iPad and Surface RT side by side
It was priced the same as the iPad

What an unfortunate assumption to think that people can’t do math. A brand new, sub-par, v1 hardware software combo with no apps being priced the same as an iPad??? An iPad with 16bg of usable space and retina display at that time was priced at $499. The Surface RT with 16gb of usable space was also priced at $499. With the much touted keyboard costing an additional $129. The reason the iPad 1 flew off shelves is that when they announced it everyone thought it would be $700+. $499 was such a sweet price for what at that time was the only thing like it. Apple’s most wicked move here was pricing it at $499. Had Surface RT launched with $349 as the start price, we would be having a very different conversation now.

I think Windows 8 is  a great leap forward. I think the quality of visual design is awesome. I still think that the interaction design of Windows 8 is subpar which complicates the experience more than it needs to, but I like the possibilities it brings. No organization is too big to take a lean approach to innovation, though, and a lot of the issues here would’ve been mitigated if the development was more iterative and incorporated more external feedback loop. I want healthy competition in the marketplace and would like Surface to take their rightful place – but it’s going to be a lot of hard work to do less and get it right.

Thoughts on the Trayvon Martin case


Please listen to this audio clip before you continue.

This is a picture of a glacier on Mt. Kilimanjaro which I took when I was there last year. It clearly shows that the glaciers have shrunk in the past years. I believe climate change is real. I believe at a minimum some amount of it caused by humans. The popular documentary “The inconvenient Truth” uses Kilimanjaro as a poster example of climate change. Makes sense? Unfortunately that is bull shit. Scientists have shown that the shrinking glaciers on Kilimanjaro have nothing to do with climate change. Even though climate change is real, Kilimanjaro is a bad example because it doesn’t apply here.

Kilimanjaro glaciers

When we believe something strongly, we are always looking for facts that validate our assumption – that’s basic human nature and scientific experiments show that we are likely to accept something that confirms our hunches than something that challenges it. Using Kilimanjaro as an example of climate change is an unfortunate waste of energy and detracts from actual facts that should instead be considered.

When I first found out about the Trayvon Martin incident I was outraged that they hadn’t even filed charges. I joined in to the Internet activism and was happy to hear that 45 days later they did file charges. I admit I didn’t watch the trial closely but was confident all along that Zimmerman was caught red-handed and of course he will be found guilty.

Climbing Mt. Adams in one day


It can be done in one day but it’s more comfortable to do it in two. But if you plan on two days then you end up carrying more weight which slows you down and justifies doing it in two days. So it’s a cyclical argument.

Mt Adams Summit

We decided to summit Mt Adams in one day. Conservative estimate was 14hrs round trip to do the 6,800 ft up and down but we ended up taking 17hrs to get back to the trailhead. Really started to drag above 10,000 ft but I successfully managed to keep my Acute Mountain Sickness at bay with the right breathing techniques and rest. Good thing we had excellent weather on our side so we renegotiated our turn around time and pushed through to the summit. However, due to the delay the glissade chutes had re-frozen with hard rough ice. While sliding down the 30° slopes at 9 mph the skin on my lower back got exposed to all the friction and I got some minor burns. But descending 3000 ft in 60 mins by sliding down a mountain is a fun experience and was the delayed gratification that kept us going up in the first place! The only thing we could’ve done better is plan for more sleep before getting started 🙂

Heap of snow creates a higher summit Summit on the way up - looks deceptively close Lots of layer changes during the day At the summit

By planning on doing it in one day, we carried less stuff than we usually would for an overnight climb. Which helps us move fast, which in effect also makes you safer and you need less mitigation. Look at what speed can mean: