John Lamping


Previous Principal Scientist at Xerox PARC, previous Senior Staff Engineer at Google

John Lamping has had difficulty focusing his career. He worked on network drivers before getting a PhD in computer science from Stanford University.

He was a principal scientist at Xerox PARC, where he worked in various fields, including Aspect Oriented Programming, visualization, optimal lambda calculus evaluation, and natural language semantics.

He was a senior staff engineer at Google, where he worked on the core ranking function, notably leading the project that automatically learns synonyms from search logs. It probably helped get the results for the last query you did on Google.

He is an inventor on about 50 patents.

Recent Papers

Aspect Oriented Programming

A Fast, Minimal Memory, Consistent Hash Algorithm


John Lamping Inventions, Patents and Patent Applications

YOW! 2016 Melbourne

The One Weird Trick for Analyzing Big Data … Eyeball it Early and Often!

TALK – View Slides

As programmers, we tend to treat data as generic stuff to feed into the algorithms and architectures we love. We don’t really pay attention to the data itself, especially when we have terabytes or petabytes of it.

Huge mistake. And we are trained to make it! It is why it takes a year for a new programmer to be productive at working on the Google ranking algorithm. It held back progress on genome sequencing algorithms. It has cost me more time than I’d care to imagine.

The good news is that you don’t have to look at all of your petabytes of data. Just eyeball a ten record sample when you start, and repeat as you work the data. Even then, eyeballing can be hard work, and done wrong can be worse than doing nothing. But done right, it can be fun, and the data will almost always surprise you. Better yet, you can use your favorite algorithms and architectures to build tools to make eyeballing your data easier and much more effective.