Skip to main content Accessibility Feedback

The value of the right tools

Earlier this year, my wife and I bought a camper and took a trip up-and-down the East Coast of the US. We’re hooked, and plan to do a lot more of it!

(This will circle back to web development. I promise!)

Our entry-level model is not designed for cold weather camping, so I’ve spent the last few weeks modifying it to work in the freezing temperatures that winter in New England brings.

I upgraded to lithium batteries, installed heating pads on our water tanks, and I’m in the process of rerouting our water lines from the underside of the camper to inside (where they’ll stay warm).

It’s been a lot of work, and one big takeaway for me has been how important choosing the right tool for the job is.

Sometimes, you need to tools with more power.

My last drill was a cheap construction store special. It would get stuck if wood was too hard, and always wobbled a bit while drilling holes.

My current drill is a Makita. It drills through wood so easily that sometimes I worry I missed the stud, and drills perfectly straight, every time.

Other times, a tool can be really powerful, but just isn’t the right choice.

The spot where I was installing a battery monitor for our new lithium battery already had a hole. It wasn’t big enough, but it was bigger than any drill bit I had.

At first, I tried running a large drill bit along the edges to widen the hole. It worked, but it was taking a while, and the bit kept slipping and scratching up the surrounding wood.

Eventually, I switched over to what’s called a grinding bit. Its a cylinder with rough edges, designed specifically for grinding away material. That worked like a charm!

What the hell am I rambling about, exactly?

Well, we have a tool problem in web development.

I often see people reach for powerful tools that just aren’t the right choice for the job. Usually it’s React, which has become the drill bit of the web: the one tool people grab for basically everything.

I less occasionally see students try to code things completely from scratch that are absurdly complicated, and probably better offloaded to a library.

Sometimes, a tool (or library) is the right choice. Often, the ones we reach for are wrong.

I’d love to see us find a more healthy balance with how we build for the web.