Book Impressions — 2019-Q2

Bad Blood by John Carreyrou

This book tells the story of the meteoric rise and fall of Theranos, the Silicon Valley unicorn that claimed to have technology that could analyze blood samples with just a few drops of blood. It’s written by the Wall Street Journal reporter who broke the original piece exposing them as a fraud so it had an in-depth view of the whole situation stitched together from numerous sources (including himself).

It’s a really interesting story outlining the mania that can happen in Silicon Valley startups when you mix a charismatic founder, a world-changing idea, powerful connections, and cheap VC money. This is really a case of life being stranger from fiction. The dysfunction that occurred at Theranos is just simply unbelievable considering they raised more than $700 million and peaked at over 800 employees with almost no revenue. Here are just a list of some of the ridiculous things that happened:

  • Elizabeth Holmes idolized Steve Jobs so much so she started wearing black turtlenecks as her uniform.
  • She also would consciously speak in a deep baritone, a few octaves below her real vocal range to have more presence.
  • Employees at Theranos were compartmentalized so much so that the technicians trying to work on the blood tests and the engineers building the actual device were only allowed to communicate through Holmes and her inner circle.
  • She had 5-star generals, former secretaries of state and billionaire CEOs on her board of directors, none of whom had any doubts that Holmes had build a revolutionary technology (in fact, they defended her from any criticism).
  • Any criticism from employees would result in immediate termination and a team of the country’s most powerful lawyers threatening lawsuits (the same ones who dealt with the Microsoft anti-trust case, Al Gore’s presidential recount case, and more recently, Harvey Weinstein’s accusations) and other intimidation tactics like having them being followed around by private investigators.
  • Some patients in Arizona actually received false blood tests for things as serious a syphilis or HIV.

It’s an incredibly interesting story and the unbelievable part is how Holmes was able to systematically convince the whole world that her technology actually worked — including the employees at Theranos who could plainly see that it wasn’t working — and, more importantly, how she wasn’t exposed for years. We still don’t know if she actually believed that she was changing the world or it was just a big con. Either way, this book is definitely worth a read.

Shoe Dog by Phil Knight

This is a great book! I heard great things about it and I took it with me on vacation and devoured it. It’s an autobiography from the founder of Nike, Phil Knight, detailing his (and Nike’s) incredible journey from nothing to IPO. It’s written in an easy-to-read, more informal style. Knight is a great story teller (which is what makes it hard to put down) and also sprinkles in loads of wisdom and insight along the way.

The reason why I liked the book the most is because I can identify with a lot of the ups and downs he has had while building Nike. Being part of a startup from early days to (hopefully) success is a unique experience that is hard to describe. Shoe Dog does a great job of conveying that feeling and putting a lot of perspective on the whole experience.

Here are some random thoughts from the book that stood out for me:

  • Crises! Boy were there a lot of them! It seemed at almost every turn there was a new crisis where Nike was on the brink of collapse. I think one of the most important things Knight captured in this book is the mood and feeling of those crises. When you have an early stage startup, it really is touch-and-go where the whole thing can come crumbling down at a moment’s notice. Having this view into one of the most successful companies in the world, and knowing they also experienced the same thing, has given me so much perspective.
  • Cashflow is king! Among the many crises that Nike had, chief among them were cashflow problems. Sometimes us in technology don’t think about this much because the marginal cost of producing software is zero (you can just copy it), but when you actually have to manufacture a physical good, you need enough cash to bridge the time between paying supplies and actually selling the final good to your customers. On top of this, when you’re growing extremely fast (doubling sales every year) your need for cash is magnified (more cash is tied up paying suppliers but before you have made the sale to the end customer). In the 70s, venture capital was almost non-existent save some early efforts in Silicon Valley, so Nike had to turn to borrowing from friends and family, the bank, and its suppliers. You might thing that everyone would love to invest in a high-growth startup but the banks, being conservative institutions, actually wanted them to slow their growth! With VC money coming easy nowadays, it’s easy to forget that it wasn’t always like this.
  • Trade-offs: The other thing that was apparent was the trade-off Knight made between between family life and business. Nike was all consuming for him (and many early employees) and had dramatic effects on his personal life. He admits that his relationship with his sons could have been better and that his wife also put up with a lot. I think this is the harsh reality of building these companies. You have a fixed number of hours in a day and if you’re going to build a new company, it’s going to take up a huge portion of your time, not to mention your mental energy. Life is full of trade-offs and we shouldn’t fool ourselves into thinking otherwise.
  • Competition: Throughout their history Nike dealt with some shady businesses both in Japan and America. When you have your primary manufacturer plotting behind your back to drop you, and your competition lobbying the government to tax you to bankruptcy, it’s hard to survive! We like to think that modern economies are relatively fair meritocracies but lots of shady stuff still goes on.
  • Maniacs: Knight had built a team of “maniacs”! This diverse group of misfits (his words), who were just as fanatical as he was, really pushed Nike to success. I would wager that this is probably a recurring them for most super successful companies.
  • Bias: Throughout the book Knight acknowledged some of his mistakes related to some shady stuff they did (stealing documents from Japanese business partners) to his absence on the home front. It’s great that he included some less favourable views of himself but ultimately, humans will be humans. I did feel that most of these events had a very positive spin on them but it’s interesting to see how we interpret our own mistakes.

In summary, great book, go read it.

Trust Me I’m Lying: Confessions of a Media Manipulator by Ryan Holiday

I think I came across this book in the comments section of Hacker News. The person who recommended it was effusive that it was worth a read, I usually try to pay attention when I hear something like that. Suffice it to say, this book is a definite recommendation from me.

The author, Ryan Holiday, used to run marketing at American Apparel and now consults on various branding and marketing campaigns, particularly in the new age of internet media. The premise of the book is pretty simple: the instant gratification, free, and always on incentives of the internet has created a situation where it’s very easy to manipulate the general public into believing something false. Not only that, the first half of the book goes on to show you example after example of how he (and others) were able to accomplish it. The second part of the book then goes on to show the dark consequences of this brave new world of media manipulation.

The interesting part about this book is that the original edition was published in 2012! This was well before “fake news” became a common part of our vernacular or the awareness of foreign manipulation of democratic elections. At that time, Holiday basically gave a playbook on how manipulate the media and the public (although not specifically for interfering with elections). I don’t know about you, but I certainly like to understand when and how I’m being manipulated.

After reading this book, I’ve become much more aware that most of the “interesting” articles I read on the internet are probably half-truths, exaggerations or outright lies. And for the most part, it’s not malicious by the actual authors of the blog posts, articles or tweets — it’s more of a necessity based on the economics of internet media.

Let’s take a simple case: you’re a writer for a popular internet news media outlet (or even a traditional one). Your company makes money by people viewing ads on your website. This means that the articles on your site need to grab the attention of your audience. Now keep in mind, the average internet user is a fickle creature. Anything can easily divert their attention from a new flashy hyperlinked headline to a picture of a cute dog. So naturally you, as a writer for this site, make your articles with click-baity type headlines, make it simple and short to read (above the fold) and make sure you are the first to actually publish it (who wants to read old news?). Add on top of this that you get paid by the volume (not quality) of articles you produce, putting you in a state of constant grind to write the next viral article.

All of these facts lead to our current state of internet news: barely researched articles based on a single source, exaggerated and misrepresented to get you to click. An exaggeration? Maybe but probably not too far off.

If that weren’t bad enough, this internet news cycle makes it incredibly easy to “suggest” news to these people in order to get your story to the top. I won’t go into too much detail (you should read the book) but if you sat down and thought hard about it, you probably could come up with a handful of ways to do it yourself.

Anyways, this book is definitely worth your time to read. It’s a pretty easy read and the anecdotes about manipulation are both interesting and a bit appalling at the same time — just what you would expect from Holiday.

Books Started but Paused

These are a couple of books that I started to read but put down because I wasn’t getting into them. I saw an interview by the author of Farnam Street who said that we all should get over the need to finish books. You should decide what you want to get out of it, if you got what you wanted out of it but didn’t finish it (or you’re not getting what you want out of it), then stop reading it. There’s no shame in that, instead it’s just rational (we’re not in school anymore, we don’t get marks for finishing books). Anyways, here are a couple of books in that category:

  • Retail Disruptors: The Spectacular Rise and Impact of the Hard Discounters by Jan-Benedict Steenkamp and Laurens Sloot: I actually find the topic very interesting from a business model point of view and also because Rubikloud is in the retail industry. However, I just wasn’t in the mood to read the book. It’s a much more academic treatment compared to the above books which are told much more through stories and anecdotes (although I wouldn’t say Retail Disruptors is dry like academic papers, more like digested research for the mass public). It’s probably because I was still in the mood for some great story telling that I put it down (coming off of Theranos and Shoe Dog). I’ll probably pick it up again at some point.
  • Deng Xiaoping and the Transformation of China by Ezra F. Vogel: I’ve been meaning to learn more about Deng Xiaoping, the successor of Mao who opened up China and started it along a multi-decade growth streak. The book was ambitious at 900+ pages. I only got through the first 70 or so, which interestingly covered most of Deng’s life (the last 800 pages covered the last decade or two under Mao and afterwards). The issue with this type of biography is that it’s very much told as a series of events rather than a story. I have a hard time getting into these types of books because the whole reason I want to read biographies is to “get to know” the subject, not learn a bunch of facts. I do understand the difficulty for the author though, Deng was an incredibly secretive fellow, never writing anything down for fear it could be used against him. On top of that and he grew up in a time of turmoil where record keeping likely wasn’t a priority. I might end up picking this book up again but I’ll definitely need to be in the right mood to do so.

Book Impressions – 2019-Q1

One of my goals for this year is to read more consistently. It’s really hard because I’m quite busy, and for the last few years reading has been a bit sporadic for me. So far I’ve kept up my goal of one book a month (not much, but I’m a pretty busy guy). So here are my “Book Impressions”, not quite reviews but shorter thoughts on the book as a whole

How Children Succeed: Grit, Curiosity, and the Hidden Power of Character by Paul Tough

I thought this book would be primarily about how “grid, curiosity and the hidden power of character” are the main factors affecting lifelong success. Although that was one of the main ideas, the approach to explaining it was less interesting for me personally. The author follows a few different lines of research and stories, mainly revolving around poorer and less fortunate kids in America, and how it is incredibly challenging to teach them to be successful due to their unfortunate circumstances at home or in the community.

I was hoping to have a broader understanding of child development from this book, in the context of kids that I interact with (such as my nieces). The book didn’t quite touch upon these cases as the focus was mainly on helping less fortunate kids, which, of course, is an important challenge, but not what I was hoping for. Overall, I would say if you’re interested in this subject and the context, it might be something you want to pick up.

Artificial Unintelligence by Meredith Broussard

This was a cute little book that I came across through Twitter (someone posted about it). The main idea of the book is that artificial intelligence (as it currently stands) has many limitations and the robot revolution isn’t coming any time soon. This idea is very close to me because most people have the wrong view (in my opinion) of where AI is going — it’s much less developed than people think, and this book touches on some great points towards this viewpoint.

The author starts off introducing computers, coding and AI/ML, which I mostly skimmed over (it was a good attempt targeted towards non-technical folk but it’s hard to explain difficult concepts concisely). She then proceeded on to describe several very interesting experiences with AI both as a user and as a creator. Some memorable ones involve almost dying in a self-driving car and creating an AI for investigative journalism and then telling people about it who then are extremely disappointed it’s not something closer to science fiction.

The other main idea she talks about is technochauvinism, which she coins as “the belief that technology is always the solution”. I thought this was illustrated very nicely in many different places in the book as well. The focus isn’t so much why all these silicon valley types are ignorant but rather that we need humans in the loop to solve some of our most complex problems (e.g. social, environmental etc.). This aligns perfectly with my viewpoint on technology. It’s so seductive to think technology can fix everything but once you start working in the real-world, you’ll realize how messy it is (just ask Bill Gates and his efforts to combat disease). Overall, I’d definitely recommend this book.

Principles of Product Development Flow by Donald G. Reinertsen

I found this book through a post on Erik Berhardsson’s blog (highly recommended) a while back and I finally decided to read it. The main concepts of the book are about how to optimize product development (in the broader sense of the word product e.g. software, consumer good etc.) and the differences from optimizing manufacturing processes. He attempts to (very loosely) model product development using mathematical or technical models such as queueing theory, economics, network routing etc.

The first few chapters of the book are all over the place because the author doesn’t spend much time defining terms or even clarifying what “product” means (I was quite confused). But… after getting into the main body, he has many nuggets of wisdom. His big idea is that we should pay attention to queues (of work) and manage them appropriately. In particular, shortening queues, having extra capacity and shortening batch sizes are recurring themes. Another really good idea is to quantify tasks directly in terms of economic value and not secondary metrics like throughput.

The chapters are organized into principles, where each principle has a page or so of description along with some examples. He covers many different cases in many different forms. Definitely something to go back and reference later for the particular situation.

It has some strong ideas that can definitely help shape and optimize a product development process. At first, I was a bit turned off on the “hand-wavy” usage of mathematical models but then I came to appreciate how it at least has some foundations in math vs. a pure anecdotal approach. I wouldn’t take every idea as a law of nature but definitely leverage the ones that make sense and experiment with them.

Overall, a pretty good book and definitely worth a read if you’re thinking about how to optimize a product development flow.

2018 Year-In-Review

It’s been a busy year! So much so that I’ve barely even had a weekend to myself to reflect on things. Thankfully, I have a couple of weeks off for the holidays to write this year-in-review. I did this last year and I think it was an extremely useful exercise. Sometimes things move so fast that we don’t get a second to stop and think about what’s happened, what’s happening and what’s coming down the road. At least with this year-in-review, I can make sure I do it once a year.

Last year, I mentioned how I look back at myself and I’m surprised how much I’ve learned (I believe the words I used were just how stupid I was). Funny thing is these lessons learned are almost never technical, and this year is no different. It’s always something new about human relations or how the way the world works, which really follows what’s really complex in this world — the people and their interactions. This ignorance removal process (à la Buffett and Munger) is what really gets me going and I have to say is one of the big drivers of my modest success. I’m looking forward to a bright 2019 loaded with more ignorance removal and hopefully sprinkled with some wisdom acquisition if I’m lucky.


This has been a pretty good year for me and I’m quite proud of all that I’ve accomplished. Here’s are the highlights.


This has been a really big year at Rubikloud (my fourth this past September). We were able to raise our Series B round, which came with a lot of expectations on growth. It wasn’t easy but I’ve built a great team of data scientists and machine learning engineers, essentially doubling the team size from last year. All the while, I’ve been learning how to step into bigger shoes being a manager of managers: setting expectations for my teams, getting cross functional teams working properly, and most important of all making sure that I don’t forget about the people involved. It’s by no means an easy task and there is still a ton that I’m learning. I do have to give a shout out to the Raw Signal Group.  All the managers at Rubikloud attended their amazing Leadership Workshop where Johnathan and Melissa Nightingale taught us that people managing is a serious skill, that it can be learned, and that it’s not easy! I’m really fortunate that I’ve had the opportunity to grow along side Rubikloud because I couldn’t even imagine learning and accomplishing a tenth of what I have anywhere else (at least in this short a time).

Academic Research

I’m not really a researcher anymore, not since graduate school, which is why it’s so surprising that I have this entry! I’ve had the pleasure of working with a few great graduate students as part of Rubikloud’s data science research internships. This year we were able to publish two papers at the International Workshop on Data Mining for Service (held in conjunction with ICDM):

  • T. Doan, N. Veira, and B. Keng, “Generating Realistic Sequences of Customer-level Transactions for Retail Datasets”
  • T. Chen, B. Keng, and J. Moreno, “Multivariate Arrival Times with Recurrent Neural Networks for Personalized Demand Forecasting”

These papers are applied academic papers relevant to a couple of topics we’re interested in at Rubikloud. I’m incredibly proud that we were able to get them published (retail isn’t a popular topic now a days!) I thought that my days writing academic papers were long gone, but I guess not!

Adjunct Professor at Rotman School of Management

This was even more unexpected than the research papers that I co-authored. This past summer, I was appointed as an Adjunct Professor in Data Science at the Rotman School of Management at the University of Toronto. My responsibilities include helping shape the data science education and research through my work at the Management Data and Analytics Lab, the Master of Management Analytics program and interactions with faculty and students. I was extremely fortunate that Rotman has recently decided to push their data science and analytics capabilities and my experience building AI systems for enterprise companies was a good fit. This is one of those opportunities that came out of left field.

A friend at work happened to be having dinner with one of the vice dean’s at Rotman who was good friends with his mentor. At this meeting, the vice dean mentioned that he wanted to connect with some AI experts. My friend recommended me, and the vice dean and I got to talking. Coincidentally, before our meeting he read my blogs (personal and technical) and was particularly impressed with my ethos on learning and my explanations of variational autoencoders. After a few more meetings, he recommended me to meet a couple of other professors who just happened to be overseeing the Master’s of Management Analytics program. They happened to be looking for someone with industry experience in AI to help complement the academic instructors they had already gathered. A few more meetings later, I had a contract and a letter from the dean appointing me as an adjunct professor.

This little event shows how success is really preparation meeting opportunity. I’ve been writing on my blog for years with no immediate rewards (except learning for myself, which is really the only reason I do it). However, the right opportunity just happened to come along where my blog turned out to be incredibly useful. There’s no guarantee of success in this world because there is luck involved (e.g. the right opportunity) but you can definitely increase your chances with preparation and hard work. (As a side note, I find looking at things probabilistically a much better model of the world.)

This part-time position is in addition to my full-time job at Rubikloud, and one that often keeps me busy on the evenings and weekends. This is the main reason why I don’t have many new posts on either my personal or technical blog. Despite the large time commitment, I’m really enjoying having one foot back in academia (and not from the student’s point of view).


This year I’ve undershot my goals for posting. In particular, there were a couple of ideas I wanted to post on my personal blog and half a dozen more on my technical. I was able to pump out six technical blog posts this year though, three of which I’m particularly proud of on tensors, manifolds, and hyperbolic geometry. All very complex topics especially if you’re learning them through self-study! Hopefully, things will move into steady-state for Rotman and Rubikloud (unlikely) and I’ll have more time to write but I’m not getting my hopes up.

Music and Chinese

These are my two main hobbies, and I’ve made some progress on them. For the amount of time that I put in, I’m pretty happy with the result. I think I’m hitting that point where I’ve learned most of the “easy” stuff and now I’m starting to hit the “long-tail” (this is one of the topics I wanted to write about). For music, I think it’s really solidifying some of the basics like pitch and rhythm, which should directly transfer to singing and playing at the same time. For Chinese, it’s really learning that long-tail of words beyond everyday simple conversation. Finding time is probably the hardest thing for me nowadays but I’m hopeful that I can make steady (if slow) progress on these two hobbies.

Health and Fitness

Due to the busy schedule that I have, health and fitness are usually not on the top of my list. My one saving grace is that my wife convinced me to start a personal trainer last year and he has been the main reason why I’m in decent shape. I only train with him once a week but boy that 1 hour is pretty killer. The one big quantitative gain that I’ve seen has been in my pull-ups. In the past, I struggled doing even one (I’ve always been pretty bottom heavy). But recently, I’ve consistently doing three at a time! Okay, I know… not spectacular, but it’s pretty surprising to me. Hopefully, I’ll be writing about this next year with a much bigger number.


Perhaps more important than discussing my achievements, failures are where I can work on ignorance removal.  It’s important because I (like most people) have a tendency to gloss over failures because it’s embarrassing to see how stupid I was.  But it’s precisely because of this tendency that it’s even more important to focus on them so that I can learn.

Building and Overseeing Multiple Cross-Functional Teams

In my mind, this topic has got to be my biggest failure for the year.  While I can’t get into all the details, I’ll say this: scaling a data science team at a startup is hard!  At the beginning of the year, the data science team at Rubikloud was a handful of people working on probably two distinct projects; now it’s more than a dozen, and we’re working on half a dozen different projects (not all distinct though).  Moreover, these projects involve not just data science but engineering, analytics, client solutions, product, and the list goes on.  There are two big things that I took for granted: cross-functional teams and their oversight.

It’s funny that I took cross-functional teams for granted because at the start of 2018 I had just finished reading Andy Grove’s High Output Management (great book), which has a chapter specifically on this topic (Hybrid Organizations)!  At the time though, we didn’t have that problem because we were still relatively small.  There’s so much less communication overhead when the team is small, and so much less context switching that happens when you have fewer projects.  The major issue with cross functional teams is (duh!): how to get different functional members to work together effectively.  The complication is that our organization’s reporting lines are primarily functional (data/product engineering, data science, analytics etc.), while our working teams are cross-functional.  This means that while each function is very tightly knit, we have to do more work cross-teams.

Without getting into all the details, I think the main thing I learned is that you have to put in much more work to make cross-functional teams work (I suppose if you had mission oriented teams, you would have the opposite problem at the function level).  This wasn’t so much a problem when you’re small with only one or two projects.  Everyone knows each other, you have shared context and you don’t really need to spend much time on it.  Once you get bigger, you can’t rely on that shared context because the teams are often newly formed; don’t have a founding team member leading the project because we’ve doubled in size; and, to be honest, much more pressure because of the increased venture funding.  I suppose most high-growth startups deal with this at one point or another, that’s why it’s so interesting.

The other big issue is the oversight of many different cross-functional project teams.  I’m primarily responsible for the data science aspect of a project but also (of course) concerned about the overall success.  The main issue from my point of view is that I need to be able to clearly articulate what results I want to see (not necessarily how to get them though) at frequent enough checkpoints so that I can give feedback to the on-going data science projects but — and here’s the key point — without being on the project team!  When you’re small, you of course are elbow-deep in all the on-going projects, as you get bigger this is just not feasible.  The hard part, especially with regards to data science, is that I still need to define the “requirements” of the data science function.  This is not easy because (contrary to Kaggle competitions) it’s not only some fixed metric that we’re chasing after.  Additionally, the difficulty from a management point of view is getting a good read on the progress of the project (which is usually very non-linear) and giving feedback on the results at frequent intervals.

For both of these issues, we’ve done some pretty good work on improving them that I probably won’t share here because of the company-specific details.  But you can check back next year to see if this still tops the list of my failures!


One of the big issues that I’m still struggling with is getting a routine to de-stress.  The pressure of a high-growth startup combined with my additional duties at Rotman have really put a lot on my plate.  I spend a lot of my previously free time on Rotman work, which I do enjoy, but it leaves less time to relax.  In particular, one issue I have is that I often wake-up in the middle of the night and my mind is thinking about a problem causing me to have difficulty going back to sleep.  This (obviously) happens much more often when I do work right before bed.

Last year, I already cut out a lot of caffeine (no caffeine after lunch), and as I mentioned above I have a more consistent workout schedule.  One goal for the new year is that I need to work out more often.  Once a week (even if it’s intense) doesn’t really cut it to de-stress.  I need that “workout high” more often to let my mind relax and get my body tired.  Related to this is obviously diet too, which is a hard one for me because I really like junk food (especially sweets).

The other (also obvious) thing that I need to do is to have more downtime before bed.  This means I need to be more efficient and/or shift work earlier in the day (e.g. morning).  I’m trying to shift all the random things I do like read internet news or hobbies to later in the evening, while moving “work” earlier in the day.  This way I get a break for my mind to rest before I sleep.

These two things are probably my main tactics but I’ll experiment and try others as I find them.  These two are simple things but, as usual, easier said than done.  I do have good motivation though because I really do like having a good night’s sleep!

Relationships: Family and Friends

The other big gap in my goals is relationships: spending more time with family and friends.  When it’s not busy, I see my friends and family at regular cadences.  With family it’s usually weekly or bi-weekly.  My friends are a different story.  With one group, we try to at least meet once a month or else we find that we go for months on end without seeing each other.  For another group, it’s actually been months!  I think the once a month idea is great and I really should keep it up.  It’s much harder to keep up with because everyone’s so busy, not the least of which is me!  Still, this is an important part of my life and it should get the attention it deserves.  So I’m definitely going to make progress on this in the coming year.


Last year, I wrote about a few habits that I’ve been trying to pick up.  I think I’ve regressed on at least a couple of them.  For the best hour of the day (first hour after I wake up), I’ve been slacking for the past half year or so, partly because I’ve been working like crazy at Rubikloud, partly because I use that time to work on Rotman work too.  I still think it’s valuable though (why give it away to others when I can keep it to myself?), so I’m going to change that.  Hopefully that will translate to more posts (either here or on the technical side).

As for the flashcards, I stopped midway through last year.  Once I got to a couple thousand flashcards, even with spaced repetition, I found that I had too many to do in one day and I got frustrated.  I also guessed that it outlived its usefulness as a learning tool — I was wrong.  I do think I had to change the way I was using them though.  Two big ideas: (1) don’t start adding random words, only add words you’ve experienced (read or heard in context) or else you won’t be able to use it properly; (2) I started also practicing to form a sentence with the word and ghost writing it, in addition to just recognizing it.  Using it actively in a sentence is really the most important part, while ghost writing helps with remembering it (I don’t intend to hand-write Chinese anytime soon).  I’ve also reset my flashcards and I’m starting from scratch.  This means a lot of the “easy” words are gone from my deck.  Hopefully this clean slate will also help adoption.


Déjà vu: Again, this year I haven’t spent much time reading books.  One of them, again, I spent reading over Christmas break.  It’s either because I feel guilty I haven’t read much or because I actually have the time.  Anyways here is the list with a few comments about them.

  • My Life (Bill Clinton): A while ago I heard a friend say good things about Clinton’s biography so I decided to pick it up.  It’s quite interesting.  Bill Clinton is obviously a very complex man.  What struck me is that his thinking was quite rational and that he was much more focused on the economy than some of his successors.  He did after all oversee a big economic boom that actually took the government budget into surplus.  The other interesting thing from a historical perspective is how harshly the Republican opposition was hounding him about some alleged campaign spending misappropriations.  In fact, they appointed an incredibly biased special council who intimidated (via expensive lawyer fees) his friends and colleagues who might be suspected in the scandal.  Time after time finding nothing related to the initial investigation, they finally stumbled upon his sex scandal.  On the surface, you can superficially see a lot of similarities to today’s special council investigation.  It’s interesting that what feels like such a big deal with the current situation, played out in a very similar way a couple decades ago.  The problem is people my age would have no sense of that unless they’ve read up on the past.  That’s at least one reason why reading about history is important: it gives you a lot of perspective on current situations (it’s not predictive though).
  • Ten Great Ideas About Chance (Persi Diaconis & Brian Skyrms): This is a book that was recommended to me by a friend at work.  It’s literally what the title suggests: going back to some of the earliest ideas about probability all the way to modern implications of it in computing and physics.  The book starts off slow then gets really deep into mathematics.  Depending on the chapter, complex notation and ideas are jumped into without much reference to building up the background.  This is definitely not a book for general audiences but rather someone with university-level mathematical training.  For a couple of the chapters closer to the end, the mathematics went above my level, so definitely not for the faint of heart.  Overall, I thought the book was just “ok”.  I like the idea of explaining big ideas in mathematics but I would have hoped it would be more accessible and, in particular, give me a more intuitive and clear way to think about these big ideas.  It was able to accomplish it for some of the chapters but not others, especially not for the more math heavy ones in the back half.
  • The Manager’s Path: A Guide for Tech Leaders Navigating Growth and Change (Camille Fournier): This is a recommendation I got from one of Erik Berhardsson‘s post (great blog by the way).  It’s probably one of the best technical-focused management books out there right now.  It details all aspects of leadership and management from tech lead all the way to CTO.  For each one, Camille outlines the responsibilities, “gotchas”, and gives insight to what the role entails.  Most new to management (not just technical) haven’t studied this in school and haven’t even had any training on it!  This is nuts because it’s probably one of the most important roles in a company.  There are key ideas at the strategic, tactical and day-to-day level that are important for managers, and especially technical managers, which I do think require special treatment.  I like it so much I’ve actually bought a few copies for my colleagues so that they can use it.  I’d definitely recommend this book to anyone who is even thinking about moving into a technical leadership role, whether that’s just mentoring an intern or becoming a VP of Engineering.
  • Sapiens (Yuval Noah Harari): I’ve heard a bunch of good things about this book and so I decided to pick it up before a flight at the airport.  It’s a very accessible book, easy to read and written in an engaging manner.  It’s thesis is about “shared fiction” that we humans create in order to work together in large groups from companies to cities to societies.  All of these things around us (e.g. the concept of money, society, country etc.) are all really just “fiction” in the sense that there’s no physical representation of it but he convincingly shows that these abstractions are necessary in order for us to be able to work in large groups together.  The “fiction” label for me is a bit extreme (although definitely eye-catching), I view them more as “abstractions” but maybe that’s only because I come from a computing background.  Anyways, the majority of the book is actually a detailed run-through of human history (back from pre-historic times), which is always an interesting subject.  Nothing was particularly new to me because I’ve read a lot of this before in Guns, Germs and Steel and probably some others that I can’t quite remember.  It was good to get a refresher and it was a very engaging read (at least compared to Guns, Germs and Steel in my opinion).  Definitely recommend it to those who haven’t read much about human history.
  • Mastering the Market Cycle (Howard Marks): Howard Marks is widely considered one of the great value investors of our time.  He’s respected by those in the community including Warren Buffett.  Buffett actually convinced him to write his first book (which is also great).  A lot of the ideas in his books (including this one) arise from his memos, which are freely available online.  In this book, he goes in depth into market cycles, what causes them, and how to approximately deal with them.  If you’ve been reading his previous material, I don’t think there’s anything too surprising but one thing I like very much is his focus on uncertainty; in other words, probability.  Every outcome is one of the many possible outcomes, and it’s important to understand the many possible outcomes, not just the observed ones.  For example, I wouldn’t say that I’ve good at picking lottery numbers just because I won.  Marks’ writing style is very accessible and the ideas are clearly laid out.  Definitely worth a quick read for any value investor.
  • The Examined Life (Stephen Grosz): This is a book my wife found in the Harvard book store on a short vacation we had to Boston.  This is probably the most engaging book I’ve read on psychology.  The book is a collection of short (anonymized) true stories from a psychoanalyst and his patients.  It’s written in a super engaging manner from the point of view of the author (the psychoanalyst).  The most interesting part is that he does not try to explicitly impart any lessons after each story.  He just leaves the story as is (often without any satisfying resolution) and moves on to the next one.  This forces the reader to draw any lessons that may be there for themselves but in the process makes the lesson on human behavior so much more visceral.  The stories are incredibly enthralling from things like why we lie to ourselves all the way to how we sabotage ourselves.  Bear in mind, all of his patients are very broken people but upon reflection I was able to see resemblances to both myself and those around me.  It’s probably one of my favourite books and I would definitely recommend it (we’ve already bought a couple of copies for friends).
  • How F*cked Up Is Your Management?: An Uncomfortable Conversation about Modern Leadership (Johnathan Nightingale, Melissa Nightingale): This book was given to use during our leadership training with the Raw Signal Group.  The authors were the one giving us the training.  It has a bunch of short excerpts on a variety of topics, particularly for smaller, growing tech organizations.  It’s got a lot of useful tidbits of information.  The one big idea that I really like from the book (paraphrasing): “The best predictor of an employee’s performance is how well they understand the business.”  Good stuff!  (Also highly recommend their leadership training.)
  • Measure What Matters: How Google, Bono, and the Gates Foundation Rock the World with OKRs (John Doerr): This is written by one of the early proponents of the OKR (Objectives and Key Results) system and one of the early backers in Google.  He introduced this to Google with great success in the early days and this system has been a popular goal-setting framework for many famous tech companies.  The idea of OKRs is excellent, and definitely should be considered if you want to introduce a good framework around goal setting.  The book had a lot of interesting anecdotes about OKRs, written by actual people from the companies (e.g. Google, Gates foundation etc.).  I thought the treatment of OKRs probably could have been more clear.  I’d say this book is good at giving you inspiration to start using OKRs but probably a better way to learn about it is to go through Rick Klau’s tutorial on YouTube.
  • The Dictator’s Handbook: Why Bad Behavior is Almost Always Good Politics (Bruce Bueno de Mesquita, Alastair Smith): This is one of the best big ideas that I’ve read about in a very long time.  The book introduced a very different explanation for why things are the way they are in politics.  For example, why do so many scandals happen both in politics and companies?  Why do politicians and CEOs alike do things that are counter-productive towards the goals of the country or company?  Or even, why does foreign aid more often helps dictators and not the people actually in need.  This gives a much more predictive view of why leaders behave badly, which fundamentally starts with the incentives of leaders: staying in power.  What could be more obvious?  Anything that they do really starts from that premise.  A good overview of the subject is covered by CGP Grey in his video “The Rules for Rulers“.  Definitely worth reading (especially if you have ambitions of being an authoritarian leader).

The Coming Year

The coming year is going to be busy for me.  Lots of things to do from working at Rubikloud to teaching at Rotman to the long list of things I still want to learn.  Good luck to both you and me in 2019!

2017 Year-In-Review

With the way the pace of my life is moving, I feel like I haven’t had much time to reflect on longer term accomplishments and lessons.  So I thought doing an annual review is a great chance for me to reflect on the past year and figure out what I’m doing right and what I’m dong wrong.

For as long as I can remember, I have looked back at my past self and realized just how stupid I was.  Okay, probably better to put it more positively, I look back at myself and realize how little I knew.  And I think that’s a testament to my learning ethos, and it’s something that I want to make sure I continue to achieve.  So I’m hoping that this annual review will help me with becoming less stupid.  Here’s to 2018!


I’m quite proud of my accomplishments in 2017.  I’m not sure the best format to describe these things so I’ve just grouped them into buckets.


I’m quite proud of the work I did at Rubikloud in 2017.  In the past year, I’ve built up a great team of data scientists and we’ve worked together with our incredibly talented product and engineering teams to ship some really cool machine learning products, which are making a huge impact at the businesses of our retail enterprise customers.  This is the second startup that I’ve been a part of and I’m still amazed at how much value a small team of motivated individuals can create in such a short period of time (although not without a ton of hard work and chaos).  We recently raised a $37M Series B round led by Intel Capital to scale out our business, so 2018 is definitely going to be an exciting year!

Technical Blog

I’m quite proud that I’ve been able to keep up posting on my technical blog (although not so much on my main blog as you can see).  I’ve written 8 full-length posts, most of them with some sort of implementation.  This has been my primary method for learning about non-work related technical topics.  This year I finally started getting into more deep learning topics with a particular focus on a bunch of the various flavours of autoencoders.  It’s nice to have an outlet to learn about non-work related topics.  It’s very seldom that the work you do at a job aligns precisely with the topics that you’d like to learn about.  And while one of the main tangible benefits is a public record of my technical prowess, the reason I can keep it up is that I actually enjoy it a lot!  It’s one of those things that I’d keep doing even if I didn’t need to work.  Hopefully this year isn’t too crazy that I can’t keep working on it.


I’ve been taking guitar lessons for a few years now with an amazing teacher, Ryan Carr.  At the end of 2016, we started working toward one of my goals which is to sing and play at the same time.  To give some context, when I started singing I had absolutely no sense of tone.  That is, I couldn’t match pitch, tell if one note was higher than the other, or otherwise have any “natural” talent that would be helpful when singing.  Despite my lack of talent, I kept practicing (which was especially painful for my wife in the beginning because she has much better tonality than me).  It’s quite amazing how far I have progressed.  From not having a sense of tone in the beginning, to now where I have at least some vague sense of what’s going on is quite an accomplishment for me.  It’s hard to describe it because a lot of it is unconscious and through feeling.  For someone like me who is used to consciously understanding things, it was (and still is) a big challenge.  The big leap of faith is that you keep working at it, knowing that you are making progress even if you can’t see it.


I’ve been taking Chinese lessons for the past year or so at this great Chinese school.  Some background: for the longest time I’ve had very basic Mandarin skills.  Growing up, I had heard it at home and half-heartedly learned it at Saturday school when I was younger but never was able to go beyond a very basic vocabulary, which revolved around things you do around the house (eat, sleep etc.).  But after going to this school (1.5 hours every week) for a bit more than a year, I’m quite amazed at how far I have progressed.  From barely being able to read 100 or so words, I can now read stories with a vocabulary of somewhere around 1000 words (as long at they’re the right words).  And even on the speaking front, I’m much more comfortable (barely) carrying on a conversation, whereas when I started I would frequently get stuck unable to find the right words to express myself (listening was never a major problem for me though so long as it was within my vocabulary).  It’s also very gratifying to get external praise.  My wife’s family is telling me that I’ve been improving (they speak Mandarin most of the time at home) and one of the Chinese teachers was jokingly saying that I improved much faster than her expectations as well (understandably, I’d have low expectations of myself if I was her as well!).  Just like guitar, language is something that is learned unconsciously.  At some point, you’re just able to recognize more characters, speak more comfortably, and feel more confident conversing.  Of course, it’s still a lot of conscious work reviewing characters daily, memorizing stories, forcing yourself to speak when you know what you’re going to say is wrong.  It definitely is a bit of a grind but it’s amazing to see how much one can progress in just a year.


Failures are always something that I haven’t had a habit of keeping track of explicitly (actually accomplishments I don’t either unless you count my LinkedIn).  But every successful person that I’ve read about says that it’s of vital importance to reflect on them.  It shouldn’t be hidden and covered up, rather it should be explicitly stated and encouraged so that we can then improve ourselves, a kind of “de-stupification” process.  It’s kind of like finding bugs in software, it’s a behaviour we want to encourage!  Finding more bugs, means fixing more bugs, means making the software better!  So with that, let’s hope this makes my “software” better.


Since 2006 I’ve been managing my own portfolio of stocks.  Although, I’ve done better than the index, I’ve also made a huge number of mistakes.  The 2017 year in particular has been quite challenging because everything looked quite expensive so my trigger finger was getting itchy (a great recipe for disaster).  I’ve know for a long time that activity for activity’s sake yields poor performance but knowing something and applying it are two different things.  A huge advantage that individuals have over actively managed funds or trading groups at investment banks is patience.  Individuals can wait years (since they’re saving for their retirement after all), while actively managed money needs to show results in months.  I recall Charlie Munger mentioning that he sometimes waits years just sitting on cash waiting for the right time to pull the trigger.

Recently, I’ve been dabbling with options in the past year.  In general, leverage is a great way to lose all your money.  However, I’ve been reading about a particular trade that involves long dated call options (LEAPs) that is closer to long-term investing rather than gambling.  Basically, you use the same logic as picking long term investments except with a bit of leverage.  The idea is you just hold the LEAP and roll it over as it comes to expiry to maintain your position in the company.  Anyways, over the past couple of years I’ve had a bunch of successful trades with options always buying when the price of a security is way below some rough calculation of intrinsic value for companies I’ve been pretty confident in.

However, I started venturing out this strategy a bit (again because of my itchy trigger finger) to binary outcome trades (using options or otherwise).  Basically when a stock is undervalued dramatically it’s usually due to some terrible news.  It could be that the news was overblown and the market will come realize this and the price goes back to a reasonable level, or it could be that the doomsday scenario happens and it goes to zero (or actually anything in between).  So I started betting (and notice that I’m using gambling terminology here) on a few of these trades sizing my bets using the Kelly Criterion.  So long as my estimation of outcome is in the right ballpark, if I do a lot of these trades, it should average out to a positive gain.

One of trades is working out (so far), the other I’ve taken a loss.  The one that I took a loss on was Chicago Bridge & Iron Company (CBI).  My reasoning for
going into the stock was not very well thought out.  It’s been a stock that has been much talked about on the stock board I follow and it suddenly had a big drop due to poor economic outlook due to a few factors.  So I made a bet that it would rebound.  However, even at the time it was an ill advised decision because I personally had done very little research into the company.  I didn’t even read the latest annual reports or conference call transcripts, all my information came from the stock board.  This was a big failure on my part.  It’s so easy to get lazy and just buy a stock, but this is exactly what you should be avoiding (especially in a concentrated portfolio like mine).  Thankfully, I didn’t bet a big amount because I was not especially confident in the turn around and the Kelly Criterion sizes the bet smaller.  I should do well not to buy stocks on a whim but only after thorough analysis (at the very least understanding the business model and the current state of a company’s business).

Connecting with People

Being an introvert, I have a harder time than most people connecting with new people.  When meeting someone new, it feels like it requires a ton of energy.  As a result, I frequently just avoid these types of situations because, quite frankly, they are exhausting.  It’s almost as if I have to force myself to be “on” to be able to connect with new people.  It’s a bit hard to explain the feeling if you’re not an introvert.

However, this doesn’t mean it’s not worthwhile.  I think I’ve avoided these situations more in the past year (it waxes and wanes), giving myself excuses such as “I’m tired”, “I’m busy” or worse being apathetic (“I’m not interested in connecting”).  This is a failure on my part.  Of course, it is worthwhile, it just take a bit more effort.  My hypothesis is that like most things, it’s a sort of like a muscle, the more you work on it the better you get.  So this is definitely something that I’m going to consciously work in order to reap the benefits of meeting and connecting with the people around me.

Rationality vs. Relating

One of the things that I definitely need to improve upon is communicating an idea that contradicts with the listener’s point of view.  When discussing an issue, sometimes I have a very clear idea about how to approach the solution but it may contradict, negate, or otherwise mismatch with my listener’s point of view.  My usual strategy is to just explain it rationally.  Sometimes this works, other times not so much.  Most people (myself included) feel slighted when someone brings up an idea that is dissonant with their world view.  It’s difficult to suppress that feeling and rationally look at a problem.  In those cases, sometimes I still push forward with my rational explanation strategy, a failure on my part as a communicator.  I think a better alternative is to understand where the other person is coming from, start from there and then lead them to my solution.  It’s much harder because you actually have to understand the other person.  It’s not natural for me but like the one above, I’m of the belief that the more I practice the better I’m going to get at it.

In a similar vein, when giving feedback to someone, no one likes to hear the feedback straight up.  A contrived but effective gambit is the compliment
sandwich: compliment, feedback, compliment.  The only caveat is that you need to be genuine with the compliments (I’m assuming the feedback is real).  It’s very unnatural but with practice I’m told it becomes much easier (so says my wife who is great at it).  The key here I think is still to work harder at understanding the person, that’s what communicating is about in the end isn’t it?


One of the things that I’ve learned is that good habits can go a long way to getting to where you want to go.  My current model is that most big accomplishments (e.g. learning a language, being an expert in a field etc.) are not a one time big effort but rather a bunch of small, consistent steps in the right direction.  Working at something day in and day out is pretty hard!  It’s a grind sometimes.  So habits make this process much easier.  They’re the default action you take, which means that you are much more likely to do them, automatically driving you in the right direction.  Anyways, here are some good habits that I’ve been picking up.

Best Hour of the Day

Following Charlie Munger’s advice, I give the best hour of the day to myself.  Now that I have a more regular schedule going to bed at a normal time (thanks to my wife), I can wake up relatively early.  At this time before I get ready for work, I work on my own projects.  For the past couple of years, this has been my technical blog (see above).  Of course, I don’t do this every day, sometimes I go to bed late and sleep in, other times I have early morning meetings but being a habit, it’s my default behavior.  Definitely something I want to keep up going forward.

Filling in Downtime

I’ve been learning Chinese and one my strategies is to use spaced repetition on a flashcard app on my phone.  Every time I encounter a new word, I add it to the deck and everyday when I have some downtime (usually during breakfast or waiting for the subway) I work though the day’s cards.  It actually is not the most efficient way to learn because I’m just casually going through the cards so I’m not using 100% of my brain power.  However, just by the fact that I’m doing it nearly daily (and with spaced repetition), it helps over a long period of time.  The most important part being a default behavior.

In a similar vein, I’ve also been trying to practice singing during miscellaneous tasks.  Now that I can tell (mostly) if I’m singing something wrong, I practice singing while cleaning, showering, waiting for the elevator etc.  It’s not focused practice but similar to the flashcards, it definitely helps supplement the dedicated practice sessions.  Just have more practice using my voice has been a big reason why I can progress with relatively few dedicated practice sessions (of course if I had more time I would want to have more dedicated practice sessions).


Sadly this year I haven’t spent much time reading books and actually two of the books in the list below I read over the Christmas break.  Definitely something I want to change for next year.  Here’s a list of the books I read this year and some commentary.

  • Intelligent Fanatics: How Great Leaders Build Sustainable Businesses (Ian Cassel and Sean Iddings): Nice short book describing some great lesser-known business leaders (e.g. Les Schwab, Simon Marks, John Patterson, Sol Price) and how they built their businesses.  The book doesn’t spend too much time on each leader and the story telling is a bit factual for my liking.  It’s an easy read and enjoyable but nothing too insightful.
  • How To Read A Book (Mortimer J. Adler): This is a serious book!  Originally published in 1940, it’s about how to get the most out of reading by applying active reading strategies.  I actually didn’t finish the entire book, got through roughly 3/4 of it.  But my main take away, that I’ve started doing, is to always read with a pencil in my hand!  Marking up books is a great way to help retain knowledge (even though it feels a bit wrong marking up a pretty book, definitely picked up during school when the teacher would scold me for this) and it allows you to go back and re-read the important parts that you missed.  Many times in the past, I’ve passively read something and not remembered it.  Although that can be useful in its own way, wouldn’t it be better if you remembered it?  Anyways, if you want to pick up some strategies for reading, I’d definitely recommend picking this book up.
  • Rational Optimist (Matt Ridley): This book’s thesis is very simple: despite all the terrible things going on in world today, it’s getting better!  He goes through a lot of history citing evidence of how things are getting better with the main idea that trade and specialization in human societies (so called “collective intelligence”) is the reason why we have been rapidly advancing.  And further the rapid advancements are the things that are solving humanity’s problems (e.g. over population, global warming etc.).  He urges us to continue trading and specializing and reject the idea that we must slow development down because the rapid pace of development is exactly what allowed us to solve the problems in the first place!  It’s a highly convincing book with a lot of historical evidence, definitely recommend it.
  • High Output Management (Andrew S. Grove): This is a book I just got before the break from my colleague.  The author is the late and former CEO of Intel.  It’s probably one of the most useful management books that I’ve read in a while because it’s not just business book fluff.  He actually goes into specific tactics that he has applied at Intel ranging from a model of how to think about your business “output”, to specifics on how to conduct 1-on-1s and meetings, to what a manager’s main duties are (“training” and “motivation”).  He peppers the book with lots of examples and specific situations.  It’s a great read for any manager.  It’s also short, so it’s easy to go back and re-read certain sections (or look up the notes you made in the margin, thanks “How To Read A Book”!).
  • The Tao of Charlie Munger (David Clark): This book is just a bunch of quotes by Charlie Munger.  It’s not very useful and I wouldn’t recommend it because if you’re a fan of Charlie Munger you would have read all of these quotes, if you’re not a fan, it’s definitely not a good way to learn about him.  I’m just a sucker for Charlie, so I’ll buy any book that might let me learn more about him.
  • A Man for All Markets (Edward O. Thorp): This is an autobiography by the great Ed Thorpe.  He’s not as well known as Claude Shannon but he’s made a huge dent in the practical application of mathematics in the background.  He’s infamous for working out the math to beat blackjack, he also ran a statistical arbitrage hedge fund in the 70s/80s and independently (probably prior) discovered the Black-Scholes option pricing model.  His returns at his fund were insane topping more than 20% annually for more than two decades, mind you with relatively little risk.  The interesting part of his thinking is that he was never interested in the money in both cases, the problem is what he enjoyed.  The application of the mathematics in both these domains were really just about experimenting to see if his math really worked.  This is evidenced by him writing books, not long after he validated the ideas, describing in detail all his methods.  He’s incredibly interesting person, definitely genius caliber.  It’s also an easy read but you can tell his story telling is not as polished as some other biographers.  This actually adds a bit of authenticity since he probably did write most of it himself.  Definitely recommend!
  • Fearless Salary Negotiation: A Step-By-step Guide to Getting Paid What You’re Worth (Josh Doody): This is a book I saw recommended by Patrick McKenzie a while back, so I bought it and had the e-book sitting on my Kindle for a while.  I decided to do a quick read of it over the break and I was pleasantly surprised.  All the information is the book is kind of “obvious” but also incredibly useful.  Salary negotiation is a hard topic because most employees will have only done it a handful of times while the HR people do it daily.  The information in this book balances this information asymmetry giving details on how the whole thing works.  It goes further to give you a step-by-step guide on how to approach the entire process, either negotiating a salary for a new job or trying to get a raise from an existing one.  Definitely recommend, it’s a short read and worth the probable increase to your salary by applying these techniques.

The Coming Year

2018 is going to be a busy year for me.  There’s still a ton of work to do at Rubikloud, lots of things that I still want to learn in machine learning, and a few interesting side opportunities that might pop up for me as the year progresses.  It’s a bit daunting but also exciting.  Here’s to good fortune in 2018!

Two Steps Forward, One Step Back

Learning is one of those funny things that we never learn how to do — we just do it.  As children, we somehow learn to read, do math, and play sports all without thinking too much about how to learn or what it feels like to learn.  Learning is just a natural thing when you’re growing up.

As a child, you’re given lots of guidance, lots of opportunities and most importantly lots of time to learn.  Contrast this with learning as an adult:

  • You rarely have explicit guidance — you’re an adult, teachers are for kids!
  • You have fewer opportunities to learn — you’re an adult, you’re supposed to be able to identify and seize opportunities for yourself!
  • You have so much less time to learn — you’re an adult with a full schedule every day!

Which basically leads me to this fact: it’s much harder to learn as an adult!  As opposed to not being as capable to learn as an adult, which I think is a myth.

My situation was a bit different from most because I extended my schooling with graduate school.  Although everyone there was still an adult, there was still a lot of guidance, (self-directed) opportunities, and most importantly time to learn.  Now that I’m working in the “real world”, I’m finding myself bumping up against all of these challenges to learning as an adult.

But I digress, what I really wanted to talk about in this post was a phenomenon with learning that I have recently been thinking a lot about.  It’s the idea of “two steps forward, one step back” in learning.  As you learn a new skill in a subject area, at times you feel like you’re making good progress (“two steps forward”), but quickly realize you’ve hit some kind of wall and your progress grinds to a halt (“one step back”).  Incrementally you make progress but the process is grueling.

When in school, I rarely thought about this process.  You just keep moving forward, course after course, test after test.  It’s all such a whirlwind that you rarely have time to think about the actual process of learning.  More importantly, since it’s your full-time job to learn, this phenomenon may not be as apparent.  However, when your full-time job is actually your full-time job, and learning is just a hobby, you start to think about it more.

I most recently experienced this “two steps forward, one step back” phenomenon in three very different areas of learning:

  • Machine Learning: I’ve been trying to stay on top of (or catch up on?) all the recent developments in machine learning.  I’ve been pretty good at posting on my technical blog trying to explain concepts and ideas that I’ve learned.  Part of this process is really digging into the details of a particular topic including the math, the implementation and the intuition.  But the more I dug into a topic, the more apparent it was that my knowledge of the area was relatively superficial.  The math, the implementation, and even the concepts went so much deeper than I could have imagined.  Two steps forward, one step back.
  • Music: I’ve been taking guitar lessons with an amazing teacher for a while now, and recently just started vocal lessons with him too.  When I started out I was pretty terrible, I mean really terrible.  I struggled with the most fundamental skill of simply knowing if I was matching pitch, never mind actually trying to match pitch.  The analogy I like to use is that I was completely in the dark.  As I progressed, I gradually got better at telling if I was on pitch and correspondingly matching pitch.  I went from completely blind to having just really bad eye sight.  However, as I was able to “see” more, the distance between two notes that initially felt so small, felt like they had much more space in between.  But I soon after came the realization that there was yet another layer of detail that I was missing.  Two steps forward, one step back.
  • Chinese: I recently decided to take Mandarin lessons at a great Chinese school in the evening after work.  Part of my inspiration came from Lee Kuan Yew, also of Chinese descent, who learned Mandarin in his thirties.  So I thought: if one of the greatest minds of the last century could do it, why couldn’t I?  Obviously, it was a lot harder than I anticipated.  One particular thing I was proud of early on, was how many Chinese characters I learned in a short period.  There is this great little Chinese learning app called Plecko that has a flashcard program built-in.  Every time I hear a new word, I add it to the program.  At one point, I hit 1000 flashcard entries and it felt like a big achievement!  The next lesson, I got put back in my place.  I realized just how little I knew.  In addition to a flurry of new vocabulary that I had never seen, there was a whole slew of new grammatical structures and phrases that were foreign to me.  Two steps forward, one step back.

This idea of making progress, but feel like you’re not, is nothing new.  It’s part of learning, especially in a time-constrained way where you are bound to feel it more.  As soon as I realized this pattern, I started to feel a bit better about it.  Learning is rarely easy, there’s always a grind, especially if you’re trying to do it in a short period of time.  Among the many quotes available, here’s one by Confucius:

Real knowledge is to know the extent of one’s ignorance.
— Confucius

So the fact that I feel like I’m taking one step back is actually a sign of gaining more knowledge.  Life is full of these little paradoxes.  Now if someone would just tell me where I’m going to die so I won’t go there.