How a NASA Lisp Expert Built Google AdWords While Flying to Work

This article recounts Ron Garrett’s unlikely journey from NASA’s JPL to Google, his weekly plane commute, the chaotic development of the first AdWords system using Java and JSP, the billing bugs he faced, and how his work became the foundation of Google’s multibillion‑dollar advertising empire.

Java Tech Enthusiast
Java Tech Enthusiast
Java Tech Enthusiast
How a NASA Lisp Expert Built Google AdWords While Flying to Work

In 1988, Ron Garrett, a freshly‑minted master’s graduate, joined NASA’s Jet Propulsion Laboratory (JPL) and quickly became one of the most‑cited computer‑science researchers there, despite his devotion to Lisp in a C‑centric environment.

After a failed Lisp rover project, Ron stumbled upon a cryptic newsgroup post that mentioned Google. Curious, he visited www.google.com, found a superior search engine, and applied for a job. Within 15 minutes he received a call, passed the interview, and was hired—though his salary was lower than at JPL, the stock‑option potential and a travel stipend made the move attractive.

Because Google’s Mountain View campus was 500‑600 km from Los Angeles, Ron began commuting by plane every Tuesday, spending early mornings at the airport and arriving at Google by 10 am, then working late into the night. He spent three days a week at Google and the rest traveling.

Assigned to the advertising team, Ron became the chief engineer of the fledgling AdWords system, which at the time was built in Java with JSP‑based user interfaces. The development environment was primitive: editing JSP files in a basic editor, mixing HTML and Java, and debugging without syntax highlighting or bracket matching. A representative code snippet from that era looks like this:

<h2>User List</h2>
<ul>
<%
List<String> users = (List<String>) request.getAttribute("users");
for (String user : users) {
%>
<li><%= user %></li>
<%
}
%>
</ul>

The system’s core workflow was simple: (1) customers submit ads, (2) the ads are displayed alongside search results and tracked, and (3) a billing component charges the customers’ credit cards. Early on, the billing module produced massive overcharges—sometimes millions of dollars—due to multithreading bugs in the C++ ad‑server that wrote random data during restarts.

When a serious billing error surfaced, Ron halted the billing process, added sanity checks to stop charges that exceeded reasonable limits, and manually apologized to affected customers. Surprisingly, his manager did not reprimand him; he was simply told to fix the issue.

Google’s founders, particularly Larry Page, insisted on launching ads instantly without prior review, believing that “instant gratification” for advertisers was essential. This bold decision—compressing the traditional submit‑review‑schedule workflow into “fill‑form, swipe‑card, go live”—proved revolutionary and turned AdWords into the company’s biggest cash cow.

Despite the chaotic engineering practices—micro‑management, root‑access for everyone, and a codebase riddled with bugs—Google survived and grew into a tech giant. Ron later reflected that he felt part of history, working on a system that would generate billions of dollars annually and that his contributions could have made him a billionaire had he stayed.

Images illustrating the story (e.g., Ron’s commute, early AdWords UI, and the “disaster‑level” engineering practices) are retained for context.

Ultimately, the article shows how a talented but under‑resourced engineer helped turn a rough prototype into a transformative product, highlighting the messy, high‑pressure reality behind Google’s polished reputation.

Javasoftware engineeringGoogleJSPTech historycareer storyAdWords
Java Tech Enthusiast
Written by

Java Tech Enthusiast

Sharing computer programming language knowledge, focusing on Java fundamentals, data structures, related tools, Spring Cloud, IntelliJ IDEA... Book giveaways, red‑packet rewards and other perks await!

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.