Sea Turtle — dives

Shoutin’, typing’ an’ screamin’ — that be how we sail.

Have you ever seen Pirates of the Caribbean? It’s a Disney film series based on the exploits of various fictional pirate characters and pirate lore. The film’s make being a pirate sound cool as a sea cucumber but in reality, the average life expectancy of a pirate was around 26 years, a dangerous life indeed.

So why am I talking about pirates? My point is that freedom in life just like freedom in code is not always a good thing. That’s why I love Typescript. Coding can be freeing but…


Photo by Flying Carpet on Unsplash

Ahoy! There be buried treasure and email ahead.

Ok, so mostly email but hopefully, you will treasure this guide.

I recently discovered SailsJS when I had the crazy idea to create an email newsletter API service for my startup. The idea is simple to aggregate content into a single source and send it out to my readers. I needed something easy to pick up and fast to develop.

SailsJS was a breeze to learn so I set sail with IMAP in hand but quickly found deployment to be an anchor. …


Photo by Freddy G on Unsplash

Markdown and Blog Posts

The modern man’s equivalent to the ’60s nuclear family is a website; and today, building one is easier than ever. With plenty of platforms to choose from, it’s not difficult to find which one suits your needs — but once you’ve found it, there’s still work to do.

Regardless of where your site is hosted or what platform it’s built on, the one thing they all have in common is blog posts. That’s something to think about before moving from another host and changing platforms as well.

Fortunately, Gatsby has your back with their perfect static website builder for blogs…


Photo by Franki Chamaki on Unsplash

Follow me on Twitter to get this article and others free: @SquashBugler

SWR for making fetch requests

Vercel has made some great libraries and frameworks in the past so it’s no surprise that the SWR library would be any different. I’m going to show you how to fetch and manipulate data from a REST API with Vercel’s SWR library. This post has a quick overview of the Vercel library, but if you want to learn more about the library and how it works, you can read the full documentation here.

What is SWR?

The idea behind SWR which stands for stale while revalidating is defined in the docs…


Photo by Marvin Meyer on Unsplash

Follow me on Twitter to get this tutorial and others: @SquashBugler

Gatsby is a great framework for building and designing a website but what about authentication? Well, That’s where firebase comes in, I’ve read a few articles and posts about how to integrate firebase with GatsbyJS but most of them didn’t involve typescript support. They also failed to explain keeping a user logged in, or setting up private routes. It’s important that authentication be tracked in the browser and app state. That’s why my approach will provide further customization and help you follow security best practices, let’s get started!

Setting up the Gatsby project

I’ll…


Photo by Freysteinn G. Jonsson on Unsplash

You know them and love them that’s right I’m talking about React hooks. They are the most useful and reusable code bites around. I guess you could say I’m hooked.

But not all hooks are created equal. The basic ones get used regularly and usually do the job. But sometimes extra utility is needed, here are 10 useful custom React hooks I’ve come across.

1. useWindowSize

I can’t overstate the importance of responsive UI and I won’t try. If you’re reading this you probably already know the pains of responsive design.

Luckily we have this hook to make our lives easier. I…


I’ve discovered the best way to do something — A developer (2021)

We’ve all had that feeling, the one where we decide once and for all that we’re correct. Congratulations we say, this is the new and best way to build something. It doesn’t get any better than this.

I’m not sure if it’s an over-correction for imposter syndrome but it does feel good to think you know what you’re doing as a developer.

I’ve had plenty of moments where I’d rather be that guy who knows what he’s doing no matter how pompous it might seem. But the reality…


For me first starting out with HTML and CSS I thought it would take years and a bachelor’s degree to land a job, I was very wrong.

It’s been a joke for some time that I’ve told but unfortunately, the punchline is real for too many poor souls. How many todos does it take to get a job as a developer?

You know because there are a million todo app tutorials out and more come out each year. It’s been done so many times that I can imagine a world where prospective employers take todo apps as currency for employment.

Tutorial Hell exists


Photo by Hans Vivek on Unsplash

Follow me on Twitter to get this article and others: @SquashBugler

A lot of starting developers wonder what is the best way to export something. Maybe for you it’s just about your personal preference and what you’re used to but surely there must be some sort of best practice right? Should you use default exports or named? Should you export from the file itself or an index? The answer to these questions is yes.

I'm going to make a bold statement here. The code you write isn't for you. (Unless you're the type that enjoys being a hermit and never…

John Grisham

Software developer and all around geek.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store