profile

Human Who Codes Newsletter

Nicholas C. Zakas

A once-per-month newsletter discussing topics important to senior-level software engineers, with a particular focus on frontend technology and leadership.

Featured Post

Human Who Codes Newsletter - Google

Thoughts on Google In 2023, Google Search generated $175 billion in revenue. The next closest unit was Google Cloud with $33 billion (YouTube generated $31.5 billion, in case you were wondering). That’s a pretty big step down from your top money-maker to second place. And that’s why we’ve seen a big change in how Google is operating. For over two decades, we’ve been trained to think of search as the way to find important information. Need to know where the closest supermarket is? Google it....

11 days ago • 3 min read

Thoughts on Open Source Takeovers This past month saw one of the most well-planned open source software supply chain attacks in history. A program called xz Utils, which provides lossless data compression for most Linux distributions, was found to have a backdoor that affected sshd. As Ars Technica reported, “Anyone in possession of a predetermined encryption key could stash any code of their choice in an SSH login certificate, upload it, and execute it on the backdoored device.” There are no...

about 1 month ago • 5 min read

Thoughts on JSR This past month saw the public release of the JavaScript Registry (JSR), a direct competitor to npm. The folks behind JSR are the same folks behind Deno, a direct competitor to Node.js. While it may not be surprising that a Node.js competitor would also create an npm competitor, Deno actually started with a theory that the JavaScript community didn’t need npm or any other package manager. In fact, in Ryan Dahl’s original talk announcing Deno, he explicitly mentioned npm as a...

2 months ago • 5 min read

Thoughts on Burnout As tech layoffs continue to fill up news sites, I’m reminded of how hard I used to work as a full-time employee at companies who could dispose of me without warning. Not only was I giving my all to my work, but then I was working on open source and books in my spare time. For years, I had very little downtime as I bounced from one task to the next, all the while pushing through burnout and not taking any time to recharge. It’s no surprise that I ended up so sick that I’ve...

3 months ago • 6 min read

Thoughts on Decision Documents When you start a new project or significant feature, it's likely that you've written a technical specification. Tech specs often lay out the overall design of a system or feature such that it can be implemented by following the spec. Tech specs answer the question, "how?" Knowing how to build something is useful, but there's an equally important question: “why?” That’s where decision documents come in. A decision document outlines the thought process around a...

4 months ago • 4 min read

Thoughts on Social Capital When I first became a tech lead, I was met with the same challenge as others before me: how do you convince people to do things? With my peers, it was about earning their trust and confidence. But with my manager and others in leadership it was a different story. Trust and confidence wasn’t enough. The most impassioned speeches didn’t do it. Technical analysis wasn’t enough. The answer was social capital. Social capital is a topic that isn’t discussed often but is...

5 months ago • 4 min read

Thoughts on GitHub Copilot About a month ago, I decided to turn on GitHub Copilot in Visual Studio Code and see what the latest version of the AI pair programmer was all about. I wasn’t quite sure what to expect. I’ve played with ChatGPT a little bit but found it more challenging to think of things to ask about than I expected. And whenever I did ask, I always felt underwhelmed by the response. So my expectations were set appropriately low for GitHub Copilot. Copilot integrates with Visual...

6 months ago • 5 min read

Thoughts on Opportunity Cost Every month my credit card bill comes in with a charge of around $0.29 USD from Amazon Web Services. Every month for at least the last three years. I have no idea what I still have running on AWS. At one point, I had a lot of my website infrastructure on AWS, but now, everything is on Netlify. You might be thinking to yourself, “That’s ridiculous, just go in and delete your AWS account!” And you’d be right, except this is a decision I’m purposely making. How long...

7 months ago • 4 min read

Thoughts on Open Source Drama This past month, David Heinemeier Hansson (DHH), announced that Turbo would be switching from TypeScript back to JavaScript. DHH is well-known for creating the Ruby on Rails web application framework, which has influenced the design and behavior of many other web applications frameworks ever since. The announcement was made the same day that the pull request removing TypeScript from the codebase was submitted and merged without responding to comments. DHH’s...

9 months ago • 5 min read

Thoughts on Code Spelunking My recent work on ESLint led me into a part of the code I didn’t write and am very unfamiliar with: code path analysis. Code path analysis is another type of static analysis that ESLint does that traces code execution throughout a program, constructing code paths and branches with every condition that it comes across. As a simple example, an “if” statement may cause a branch if the condition evaluates to true. Code path analysis is what lets ESLint determine if...

9 months ago • 5 min read
Share this page