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. What time is the playoff game? Google it. What was the name of the drummer in Aerosmith? Google it. All Google had to do was keep the servers running and the money printing machine would continue to print money. Then ChatGPT came onto the scene.

Enter ChatGPT. While ChatGPT opened our eyes to a lot of things, the most important from Google’s perspective is that you can now find information without search. Instead of typing that question into a Google search box, you can ask ChatGPT. Instead of being met with a page of links you need to investigate, the first four of which you scroll by because they’re ads, you get a concise answer from ChatGPT.

To get a sense for the fear this struck in Google, it helps to understand that ChatGPT was publicly released in November 2022. In January 2023, Google laid off 12,000 employees to “focus on AI” and then laid off hundreds more in 2024. Google understands this deeply: AI chatbots are coming for search. They are building their cash stockpile for a cold winter that could come sooner than anyone thinks.

Search’s days may be numbered. Google is consistently rolling out announcements about Gemini, their own model. Most of the time, they seem to be significantly behind the work at OpenAI, but at this point, that might not matter. The only question now is whether people will prefer asking a question to an AI or searching. Even if a small percentage choose the AI experience, that could cut into Google’s search advertising significantly.

Even if Gemini proves to be superior to GPT in the long run, that still doesn’t guarantee Google anything. Summarizing what people are looking for doesn’t lend itself to advertising. To date, there is still no strategy for effectively monetizing AI. AI startups aren’t making money. So even if Google wins the AI battle, it may lose the monetization war.

When you see people bemoaning that Google isn’t the friendly, open company they once were, and that they’re putting profits before everything else, this is why. Google correctly identified AI as an existential threat to their money-printing machine (search advertising). Now, they are doing everything they can to convince shareholders that they are ready to face this challenge. But are they?

Key Takeaways

  • AI is an existential threat to Google's core search business.
  • As such, Google is aggressively cutting costs to strengthen its balance sheet.
  • Even if Google's Gemini beats out GPT, its search advertising may not be the reliable income source that it has been.

Understanding JavaScript Promises

I just updated my e-book, Understanding JavaScript Promises, for 2024! It now includes information about Promise.withResolvers() and a whole new chapter on using and creating abortable functions.

Stuff I've Enjoyed this Month

📚 Don't Shoot the Dog by Karen Pryor
While this book is ostensibly about dog training, it is actually a much deeper exploration into what it takes to teach and train any animal, including humans. Includes information from both research studies and the author's personal experience. Highly recommended.

📚 Writing for Busy Readers by Todd Rogers and Jessica Lasky-Fink
I'm a fan of books that teach you how to write better, and this book became an instant favorite for me. It details all the ways we now use writing (books, articles, text, email, etc.) and how to better communicate your points regardless of the medium. If you enjoy writing and want to improve, you'll enjoy this book.

🎬 The Latest in Web UI by Chrome Developers
One of the few non-AI talks from Google I/O delves into all of the recent amazing additions to HTML and CSS that allow you to create beautiful, accessible UIs using very little JavaScript. Definitely worth sitting through the entire video.

🎬 JavaScript Visualized - Event Loop, Web APIs, (Micro)task Queue by Lydia Hallie
This is quite possibly the best visual representation of how the event loop works in web browsers. This short video walks through all of the common tasks that the event loop does, including timers and promises.

📝The problem with new URL(), and how URL.parse() fixes that by Kilian Valkhof
The web platform API has a class called URL that you can use to manipulate URLs safely. However, the constructor actually throws an error for invalid URLs, which may be unexpected depending on your use case. This short post explains why URL.parse() is a better option.

What I'm Working On

🏠 Real Estate: It has been a slow month for my rental properties, which is a good thing! My home, on the other hand, received an upgrade in the form of a resurfaced back deck. I replaced old rotting wood with a composite deckboard. Follow my Instagram for real estate photos.

📝 Writing: I wrote a blog post explaining how someone temporarily took control of one of my subdomains. This was quite the learning experience.

💻 ESLint: One of the big complaints after ESLint v9 came out was that the migration was difficult. I spent a lot of time hunting down the problems people were having, resulting in a pull request to Rush Stack, a new migration tool, and submitting pull requests to several projects who requested help.

Human Who Codes Newsletter

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

Read more from Human Who Codes Newsletter

Thoughts on Node.js, Deno, and Bun For well over a decade, if you wanted to run JavaScript on the server, your only choice was Node.js. It has been battle-hardened by some of the most demanding companies in the world, many of whom paid employees to help maintain or contribute to the project. Then in 2018, Node.js creator Ryan Dahl announced Deno, a new server-side JavaScript runtime that was intended to fix a lot of the problems of Node.js. Fast forward to 2023, and Bun was released as...

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...

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...