I was teaching Teradata in Africa for the third time. As I put up the first slide, a previous student raised their hand and asked, “Where is the slide of the Tera-Tom Parallel Processing laundry mat.” I said, “Each time I put out a new book or course, I change things.”

The student emphatically stated, “That explanation of parallel processing taught me more about data warehouses than anything I’ve ever learned.”

So I put it back into every architecture and SQL book I have written.

I was a first-year programmer in 1985 working for NCR when I was assigned a mentor on the second day of the job.

My mentor began to explain how programming worked with a simple explanation. He asked me, “When you were a kid, did you ever see happy birthday sung on TV? Did you see the bouncing ball timed to the music to show which word was being sung?

I politely responded, “of course.”

He then stated that the bouncing ball is the perfect example of programming because each computer program executes one line of code at a time: the current bouncing ball.

I had a vision as I thought about what he said that night. What if you wrote code where one bouncing ball was used as a coordinator to command eight other bouncing balls? If you could get eight bouncing balls to work, why not 16, 32, 64, 128, or even millions?

My mentor told me there could only be one bouncing ball because computers produce either zeros or ones based on a single electrical current, on or off.

Seven years later, NCR bought Teradata, and when they explained how the Parsing Engine took SQL and then commanded eight AMPs to go through the rows they own simultaneously, my life changed.

Instantly, I dedicated my career to parallel processing because I knew it would be the future of all computing.

Below is the video using the Tera-Tom laundry mat to explain the concept of parallel processing.