Living Outside Asia, Customer Service and Transportation

A recurring theme in our household; comparing our life in east Asia to that here in Europe. I know we shouldn’t generalize because people live in bubbles but we can’t help it. The topic goes back a few years, when talking to a Korean friend at a Daejeon bar in 2008, we ordered beer with one of those remote tokens with buttons (beer/bill etc) that are common every where these days. He was surprised these weren’t common yet in the, what he called developed world. (even though South Korea is
developed, it arrived at such standards much much later) He was surprised that I praised the technology in Korea. He expected all of that would be more than common. It wasn’t.

So while a developed country might seem more comfortable, and there are lot’s and lot’s of perks, some things just haven’t arrived yet; Traveling back and forth to Korea can feel like a time travel. That feeling is probably due to the little things; Opening doors with keypads, watching TV in the metro, faster trains etc etc.

Second recurring theme is that of customer service. Chinese customers are raising the bar for service expectations as competition is fierce. Our feeling in The Netherlands is that customers simply don’t expect high customer service.

I’ve asked some friends from Asia that moved to Europe and North America. A Chinese replied on Weibo:

Life quality here is definitely better than in China. Air quality, food quality and so on. But because the smaller population, it’s not very convenient. Especially public transportation. The subway has only two main lines in this city and the taxi’s are too expensive. Most people living downtown have to buy a car.

Talking to them, the recurring theme seemed to be: Transportation. On the food part, friends were divided. Chinese seem to be able to get their foods abroad and thought food quality improved. Korean and Taiwanese friends seem to miss their home food (fruit!) a lot.

In the end, if you have a choice… one should just be happy where he/she resides I suppose. There are pro’s and con’s at every corner of the earth.

Vagrant Up

Somewhat smarter working method for web developers: When building projects, work inside virtual boxes instead on your workstation directly. Why? Each project has it’s own characteristics and software dependancies. Each programmer added on the project has to spent time configuring his or her workstation to your project.

Does the following sound familiar?

We work with OSX so you better bring a mac. No, your are running 5.3, our project is build for PHP 5.4. You need to set the following env variables. Allow .htaccess. Oh, why don’t you have Git? And GD? etc etc.

You know what I mean right? Meet vagrant.

Interpreting the guide below and my brief experiement this morning, Vagrant allows quick starting (and sharing) of Virtualization boxes on workstations. A new employee enters the project, receives a laptop with instructions on how to pull the right vagrant/puppet setup, types ‘vagrant up’ and has a Linux distro of our choice with the right software installed due to chef firing up.

If this triggers your interest, I followed the instructions by ShawnMcCool on Github this morning and already moved one project inside the box. I’m going to experiment a bit more before I move all projects.

Vagrant / Chef instructions by ShawnMcCool on Github

Quick Glance at I3 Window Manager

I have been using the i3 window management over the weekend.

Now, what is i3? i3 is a tiling window manager created by Michael Stapelberg. Tiling means that instead of the floating windows on your conventional windows or mac desktop, windows are presented in tiles.

I just happened to pass by it and got intrigued. Working a lot in terminal emulators, I sometimes wondered what the desktop experience could be without all the clutter and the heavy use of mouse gestures. A tiled desktop essentially means that your applications are always visible and you have a clear overview. Applications will not hide behind each other but are displayed next to each other. Furthermore, there is no desktop. when you add a window, it’s added and your
screensize is reduced, unless you select a stacking mode.

I watched a presentation of Michael and he explained that the tile based window manager isn’t new. There was one before called ‘window manager improved’, then followed ‘windown manager improved improved’ and thus the name of his version became ‘i3’.

After playing with it for some time, I decided that I’ll keep it for some time longer. However, at work I still use OSX.

Thinking about all those OS’es reminds of a quote by David Field:

The thing about an Operating System is, you spend a huge amount of time invested with it, be it on your Mobile or Desktop its a very personal experience. You put your choice of apps, and your data on it, and spend most of your day using one, in some cases you probably spend more time with your OS than the people you care about. Its a personal choice you’ve invested in, one which is you’re tool of choice.

In the end it’s about picking the tool to do the job. Seeing a different approach to a method we’ve all be aquanted to is a fresh breeze. I can’t wait to work with it some more.

The Big 30

This week will mark my 30th birthday; Since it’s a round number it sounds like a milestone. Wowzers: 30 years… Old for some, young for others.

Octopress Update

Octopress is a highly customizable blogpost generator. Posts are written and stored in Markdown and Octopress allows easy Jekyll distribution as HTML through S3 or Github. If you use Octopress, I recommend following ’Making Octopress Fast’ written by Eric Wendelin. The guide will help you setup a GZipped website on Amazon S3. It worked like a charm but I lost two important elements: Previewing and quick deploys.


After following the guide, all HTML/CSS and JS files are stored as GZip-9 files. Unreadable unless you add a ‘Content-Encoding gzip’ to the header of each file and enable a deflate mechanic to your local webserver. Besides, Jekyll is shipped with a preview WEBrick server which is rendered useless.

Solution: Preview from the public folder and add a second directory for compression.

I’ve added a referral to a compressed directory. Then make sure that all directives for minifying and combining read from #{public_dir} and that all zipping is delayed until after task tocompressed is invoked.

desc "Copying public contents to compressed folder"
task :tocompressed do
   puts "## Copying to compressed directory"
   puts "\n## copying #{public_dir} to #{compressed_dir}"
          cp_r "#{public_dir}/.", "#{compressed_dir}"
                 cd "#{compressed_dir}"

Adding an extra directory to the process results in a public folder which can be previewed. Deployment is done from compressed_dir.

Iterative deploys

Here is the problem I was experiencing. Deploys became long and dreadful after adding GZip to the deployment process. The s3cmd tool allows incremental uploading but since I started GZipping the files, s3cmd seems to just upload everything. At first I thought this might be because I was adding ‘Content encoding’ headers to the files I was deploying. Then I wondered if I could get around it with the ’ –skip-existing ’ parameter to the s3cmd command.

Solution: The problem was
caused by GZip leaving a timestamp inside the zip file. This was solved by adding the -n parameter to the gzip commando.

desc "GZip HTML"
task :gzip_html do
puts "##GZipping HTML"
  system 'find compressed/ -type f -name \*.html -exec gzip -9 -n {} \;'
     Dir['**/*.html.gz'].each do |f| test(?f, f) and File.rename(f, f.gsub(/\.html\.gz/, '.html'))

I still find myself evaluating the Octopress environment but it seems highly customizable so what’s not to love?

Final Week for Google’s RSS Reader

Google will kill it’s reader on the first of July, as mentioned here. I have been trying alternatives since their announcement last March. If you haven’t made up your mind, now is the time to check out this huge list of Reader alternatives. I’m still waiting for the Digg reader to appear, but after reading Macdrifter’s Feedly review i’m pretty certain that at least, I’ve found a promising alternative.

Don’t Worry About China Making Cheaper Products

A friend in Shanghai pointed me to this story today; The fastest computer in the world:

The Tianhe-2 was built by the National University of Defense Technology in China.It will be deployed at the National Supercomputer Center in Guangzho – two years ahead of schedule.

Amazing. From a t-shirt economy to railroads, highways, planes; And just look at the rate Chinese are registering patents. One phrase comes to mind: “You should not worry about China making cheaper products, you should worry about China making better products”.

Beautify Terminal With Oh My ZSH

Beautify terminal with Oh My ZSH

Get a marvelous terminal with just a few steps. If you are already using ZSH as a shell yet you might like to try this. If you are using bash I’d recommend giving it a go and see what you like best.

I installed ZSH using brew:

brew install zsh


Then I installed Robby Russell’s Oh My ZSH using:

curl -L | sh

Now edit your profile like so:

vim .zshrc

And you can setup your theme. I’ve chosen ‘af-magic’ for my terminal.