Daily Reading Tracker

Habit Formation

An experiment in habit formation and data visualization/2016


  • Client -
  • Role UX/UI/Front-end


  • UX/UI User flow, visual design
  • Front-end HTML/SCSS, SVG, D3.js, Google Apps Script

Case study—Can some accountability encourage daily reading?


This is a semi-serious attempt to stimulate habit formation through visual feedback and accountability. The goal is to get through a selection of books one at a time by committing to reading at least 20 minutes a day. To track progress, I submit the number of minutes I read through a web form on my phone. This hooks up to a Google sheet that acts as a database for the visualization.

This is about cultivating a habit that isn’t directly tied to professional development or pure entertainment. As this develops further, the plan is to increase the level of reading difficulty but not the time commitment.

Criteria for books

  • Mostly non-fiction
  • Outside of UX industry
  • Help reshape how I look at everyday objects, environments, systems


I’ve used spreadsheet to log my goals but never considered hooking up the data to a visualization. Using a combination of Google sheets, forms, and apps script, I’m able to contribute data to a visualization by submitting a form that I’ve conveniently bookmarked on my phone. This project was also an introduction to the basics of D3.js and the SVG image format.

Launch visualization

Web form and spreadsheet used to submit data

Daily minutes are submitted through a web form that stores data in a spreadsheet.

Diagram of user interactions and behind the scenes technology

How data is submitted to the visualization spreadsheet