Articles

Software engineering lessons from production, raw and honest from the heart โ€” almost 20 years of them. Jump to a year in the sidebar, or browse categories and curated collections.

87 articles from 2021 ยท show all

August 2021

Build simple backends with Gatsby Serverless Functions

Until recently adding a little backend to your Gatsby site meant 2 options: 1. Climbing the AWS learning curve 2. Rewrite with NextJS Now there's an /api directory ๐Ÿ˜ฑ

WorkInProgress kills your progress

If it takes 6 engineers 10 days to complete 6 projects in parallel, why does it take 8 days when you work together ๐Ÿคจ

Reader question: "When do you fix tech debt?"

Long time reader Phil asks when do you fix the tech debt you used to ship faster. Heroic efforts don't work. The real answer is "always" โ€“ a mindset of gardening.

Tech debt is a tool

If your house was on fire, would you mow the lawn first?

Complex vs. complicated

Would you rather work with a complex system or a complicated system? ๐Ÿค”

July 2021

Pay yourself first

Profit is not what's left after expenses, expenses are what's left after profit.

You don't need a big team to automate your work

The opposite of folks who follow every FAANG trend and over-engineer their companies to death, are the folks who *never* take advice from the big boys.

Tips for a fulfilling tech career

When I dropped out of college to focus on freelancing back in 2012, I set 3 ground rules:

React 18 and the future of async data

Friend, I have glimpsed the future and it is amazing. React 18 is shipping with Suspense and startTransition for deferred component rendering, but not data loading. That's coming in a future 18.x version.

What I learned from Software Engineering at Google

When I first picked up Software Engineering at Google I thought it was another one of those FAANG books full of lessons that make no sense at human scale. I was surprised, lessons apply to teams as small as 5.

Your career needs a vision

In his book, The Art of Science and Engineering, Richard Hamming says the key to a great career is vision. What does that really look like?

Preventing RSI for programmers

I've been computering daily for 24 years, since I was 9, and managing RSI since high school. People often ask how it never gets bad. This is the article I always wish I had written.

Why a coding AI like Github Copilot won't take your job

It might. What's your job? If you're in the *"write code to exact specifications"* business ... now's a good time to start leveling up. The AI's not ready yet.

How to own projects like a senior engineer

The best skill you can learn is ownership. The second best is to let go.

June 2021

Hacking the React AST for fun and profit โ€“ #CodeWithSwiz ep34

This is hold my beer level of hackery. It didn't work but we learned lots in the process.

A surprising feature of JavaScript optional chaining

This blew my mind, thought you'd like it too. You can do more with ?. than you thought.

Use Netlify's _redirects on Gatsby Cloud

Something always goes wrong when you change hosting providers. ๐Ÿ˜… For me it was redirects. A vital feature of any site migration.

Do important work

Next time you finish a project, ask yourself: *"Might this work be important?"*. Add the polish.

A better React 18 startTransition demo

Demoing startTransition is hard. Modern computers are too fast ๐Ÿ˜… โ€“ Dan Abramov, a React core team member, helped me fix it up. Here's what I learned

Trying out React 18 Alpha

I read everything about React 18 Alpha, trawled through the work group, and ran some experiments. Here's what you'll wanna know.

Words that scare developers

Words that scare developers are powerful tools that are not meant to be safe. That is a valuable lesson.

A fun security bug with static rendering โ€“ CodeWithSwiz #31

The flash of unlocked content is great fun for any paywall

May 2021

Software Engineering is the 2nd best job

Ok so I've been doing lots of research into the Software Engineer job market โ€“ Some highlights ๐Ÿ‘‡

Why you need a positioning statement

High value experts use positioning statements to say what they do for whom. Most engineers don't have one. ๐Ÿคจ

Build privacy-focused blazing fast tweet embeds โ€“ CodeWithSwiz 30

Twitter embeds every tweet on your page as an iframe. Loads 1.2MB of JavaScript, makes 20+ HTTP requests and uses 100+ DOM nodes. ๐Ÿ’ฉ

What matters in a senior engineer job interview

Degree matters if you have nothing better to show, consulting and BigTech backgrounds are negative, too many seniors can't code.

Twitter embeds without JavaScript, pt1 โ€“ #CodeWithSwiz 29

Continuing our quest for better Lighthouse scores, more reader privacy, and less JavaScript we attacked the next biggest culprit ๐Ÿ‘‰ Twitter.

April 2021

the trashcan metaphor

2 quick tips for 250% better Lighthouse scores โ€“ CodeWithSwiz 28

Your site may be fast for users, but Google don't care. Official metrics or bust.

Flow good for programming, not engineering

Friend, how good are you at your best? ... Nobody cares. How good are you at your average? What about your worst?