Growing with the Web

Five years


Five years have passed since I posted my first article on the blog. Time for a retrospective!

My year

Growing with the Web

The time I have available for blogging has definitely taken a hit lately. I published only 8 articles this year, compared to 16 last year. There has also been more of a focus on VS Code and OSS compared to before.

Here are some of the improvements I’ve been making to the site:

  • Started to migrate some posts over to a new “evergreen” URL format, where my posts that are more reference pieces that I expect to age well are separated from the blog. For example the Fibonacci Heap post was moved from /2014/06/fibonacci-heap.html to /data-structures/fibonacci-heap/overview/.
  • Continued expanding code sample language coverage, some of the bigger call outs here is that the AVL tree article now features a JavaScript implementation and all sorting articles feature implementations in C#, Java, JavaScript, Python and Ruby!
  • Converted the remaining SMIL SVG animations to use anime.js as the technology has been deprecated in Chromium.

Visual Studio Code

This February marked a year I’ve been with Microsoft working on Visual Studio Code. Here are some of the bigger things I’ve done since joining:


As part of the terminal work on VS Code I’ve joined xterm.js as a maintainer and forked the unmaintained pty.js into node-pty and made a bunch of improvements.

In the last few weeks I also open sourced the VS Code theme generator which I’ve been using to build my theme. It supports the upcoming terminal and workbench theming options in VS Code and attempts to get around the complexity of authoring textmate themes by allowing authors to theme things like keywords, strings, booleans as opposed to targeting the textmate scopes.

Analytics insights

Here are some interesting stats on the traffic to the site, comparing them to last year.

Traffic source

  1. 86% organic search
  2. 9% direct
  3. 3% social
  4. 2% referral
  5. < 1% email & unknown


  1. 75% Chrome
  2. 13% Firefox
  3. 5% Safari
  4. 3% Internet Explorer
  5. 1% Edge (↑ was #6)
  6. 1% Opera (↓ was #5)


  1. 90% desktop
  2. 9% mobile
  3. 1% tablet


  1. 26.80% United States
  2. 14.10% India
  3. 5.35% United Kingdom
  4. 3.51% Germany
  5. 3.30% Canada
  6. 2.10% Brazil (↑ was #7)
  7. 2.04% Russia (↓ was #6)
  8. 2.01% France
  9. 1.88% Australia
  10. 1.81% Poland

Here were the most popular posts of the year (bold posts were published this past year):

  1. async vs defer attributes published 26 February 2014 (↑ was #2)
  2. ASP.NET MVC display and editor templates published 16 December 2012 (↑ was #3)
  3. Handy adb commands for Android published 14 January 2014 (↓ was #1)
  4. Func<> and Action<> basics in C# published 5 August 2012
  5. Bucket sort published 15 June 2015 (↑ was #7)
  6. A* pathfinding algorithm published 3 June 2012 (new)
  7. Determine if a string is a palindrome published 21 February 2014 (↑ was #9)
  8. Fibonacci heap published 15 June 2014
  9. Binomial heap published 19 January 2014 (↓ was #6)
  10. Mastering VS Code’s Terminal published 3 March 2017 (new)

I noticed that Triangles in CSS dropped out of the top 10 for the first time since it was published.

My favourite posts this year

These are my favourite posts for the past year:

  1. Radix sort - Radix sort had been the most searched term on the internal search for a long time so I had been meaning to get to this for a while.
  2. Mastering VS Code’s Terminal - I go over many of the lesser known capabilities of VS Code’s terminal, I’m planning on keeping this up to date as new versions are released.
  3. Enabling pull requests on GitHub wikis - A detailed look at how to enable pull requests on a GitHub wiki.
  4. Build heap proof - My first attempt at breaking down a CS proof and trying to explain it as simply as possible.
  5. Syncing VS Code extensions - I shared my system for synchronising VS Code extensions across computers.

Like this article?
Subscribe for more!