Why I wrote a WhatsApp bot

In 2011, when I entered into the final year of my undergraduate degree, procrastination was the norm amongst my peers and I. I doubt that this is any different today, or even that it was different 30 years ago, but with the advent of smartphones and social networks becoming increasingly…

Managing Subviews in Backbone

The debate on how best to manage subviews in Backbone has always been relatively contentious. As intended, Backbone gives us the structure but not the solution, which has resulted in a myriad of different strategies created by the community. Many people seem to be turning to other libraries to handle…

Handling RESTful HTTP errors with promises

Preface I understood the basic concept of promises before I started working at Expensify but I had never really used them in production code before. Since then, I've taken a lot of the things I learnt over to Uber with me and have applied that knowledge to the projects I'm…

RESTful search with Backbone

The auto-complete box is the todo list of search in Backbone. There are hundreds of examples out there which cover searching through a collection. Almost all of these, however, are just searching the already fetched collection on the client side. While working on a new project at Uber, I needed…