0 - Preface
I am a React developer, and I am a fan of Dan Abramov’s. In December of last year, he created a new blog site called overreacted.io 😲 I really love the theme and the typography he chooses just personally. And he also has those coffee indicators for how long it might take to read. 
And as a thought leader of our industry, he also suggests that we keep a blog to catalog our thoughts. 

  • If you feel like you’ve learned something in the past few years I deeply recommend starting a blog, if only to catalog your thoughts. 

When talking about why he switched from Medium to Gatsby, Dan mentioned:

  • I like to have full control over the experience. 

And if you’ve been checking in at his blog site every now and then, you might have noticed a couple of things: First, the posts have become longer. And consequently, the coffee indicators for read time can be scary:
️???

He added a variation for the read time indicators. When there are more than 5 cups of coffee, it is converted to 🍱 time! Wins 🎉

export function formatReadingTime(minutes)
  let cups = Math.round(minutes / 5); 
  let bowls = 0
  if (cups > 5) { 
    return `${new Array(Math.round(cups / Math.E)) 
      .fill('🍱') 
      .join('')} ${minutes} min read`
  } else
    return `${new Array(cups || 1).fill('☕️').join('')} ${minutes} min read`
  } 
}


Now, I’d like to say that that is how I want to build my blog. I want it to represent my mind, my technical skills, and my taste.

If you are a React developer, then you have a great edge. Since you write professional level React components in your day job, you enjoy the highest level of expressiveness of what you can build on your Gatsby sites.

Even if you are not, the simplicity to get started building your site with Gatsby makes it a great chance for you to get familiar with React.

Let’s dive in.

References