Why Gatsby was my choice

May 03, 2020

Background

I have been a Drupal developer since 2010. At that time, I had 0 development experience and I didn't know HTML, CSS, PHP, etc. I fell into a situation where the small mom-and-pop operation needed a commerce website to sell their product. And with 0 knowledge in my pocket I felt I could build a site.

I asked my friend who was doing web development and she said "You should build a Drupal site". Drupal 7.x just launched (I believe it was in BC), and drupal commerce 1.x had just come out. So building a commerce site on Drupal was definitely the way to go.

Since then, I have cut my teeth quite a bit, I have learned a lot and have built countless websites with the beautiful codebase and contrib modules that comprise the Drupal ecosystem. There are things I love and things I loathe, but I know it quite well to whip up this simple blog without hesitation.

But I chose not to.

Why

  1. A friend told me about Gatsby. I listen.
  2. I'm cheap. I don't want to pay for hosting this site.
  3. My time is worth something.
    • I don't want to spin up a server to host this website. (Can I, yes. Should I, no.)
    • I don't want to maintain a server with my blog on it. I do that enough in my day to day affairs
  4. Gatsby is built on React
  5. Drupal is coupling with React
  6. I love writing my posts in Markdown.

Why I regret it

  1. My time is worth something.
    • While I learned a lot with this project, I'm not sure it was overly useful or the time savings I was expecting
  2. Because this is my first react project, I'm not sure what is specific to Gatsby and what is best practice. See the above point about time.
  3. I traded the complexity of Drupal/Modules for Node/Packages. When I come back to this in a year to do some dev work, how many things will be out of date and how easy will it be to fix it? Time will tell.

Lessons Learned

  1. Have fun.
  2. Templates are always the best way to learn. Take it apart, focus on it and really ingest what is happening.
  3. I missed writing.