Right arrow
How to Think Like Great Inventors, Engineers, and Scientists
13

How to Think Like Great Inventors, Engineers, and Scientists

Tech
Published or Updated on
December 3, 2021
/
13
min read

1-Sentence Summary: The Art of Doing Science and Engineering: Learning to Learn demonstrates how you can reach your goals much more efficiently, going a distance proportional to the number of steps you take, by choosing to do excellent work on important problems.



It’s mind-boggling how much knowledge the many areas of science and engineering have created. Are there general principles we can extract from them we can apply across multiple domains? How do we learn and apply them to solve the most intractable problems in our respective fields?

These are some questions Richard Hamming sought to answer in The Art of Doing Science and Engineering: Learning to Learn. An overarching theme is that the answers should also lead one to doing impactful work. Whether that choice is intentional or by chance, impactful work is essential to staying engaged.

I wrote this summary through the lens of that overarching theme. I’ve also expanded some ideas with examples of more recent progress, keeping the core principles intact. With luck, it will provide insight for those looking to solve an enormous problem, especially by developing a radical solution that may require inventing technology we don’t have yet.

Designing Your Invention

Some skills developed when studying science and engineering are important no matter what the application. This section reviews a few of those you’ll likely need when building your moonshot.

Modeling

If you’re uncertain about whether a statement you encountered or conclusion you arrived at is true, model the situation. Even a simple back-of-the-envelope model keeps your modeling skills fresh, so it’s not a big effort to revive them when you encounter a critical use case.

If someone comes up to you and claims that the total amplification factor or gain of a phone company’s analog voice signal is 10^120, that might seem off. But if you do a quick modeling that considers each amplifier’s gain of 100, their distance from each other of 50 miles, and the total travel distance of over 3,000 miles, you’ll find that the estimate is realistic: 100^60 = 10^(2*60) = 10^120.

Doing the calculations also helps you remember the result. A model, whether it’s mathematical, programmatic, natural language, graphical, etc. is an alternative representation of how you think the world should work. Besides giving you more confidence from having verified the result at some level, the model provides knowledge redundancy, which may help you remember the concept.

Simulation

The ideal situation would be to have a sandbox Earth—a world just like ours in every respect–on which we can inexpensively run experiments without causing harm or suffering to any living being, supreme or otherwise. Second best is what we have now: computer simulations.

Running a simulation is more cost-effective than lab experiments and produces results faster. Seldom-used lab equipment can become obsolete or non-functional in a few short years.

Design

Hamming encapsulates some universal principles of design in his chapter on the history of software, where he describes how he designed a programming language for the IBM 650, a popular computer in the 1950s. Programming languages should be easy to learn and use, and software written in the language easy to debug. Ideally, they wouldn’t require learning new ways of thinking.

These features apply to pretty much any technology you’re trying to develop:

  • Easy to learn: A project management app that gets you up and running with a brief, intuitive [walkthrough](https://www.appcues.com/blog/the-5-best-walkthrough-examples beats out one that needs a tutorial marathon to get started.
  • Easy to use: You’d probably use a charger that lets you charge your devices wirelessly more often than one that makes your desk look like the The Forest of Fangorn.
  • Easy to troubleshoot: You can google just about anything to fix a problem, but the fewer tools and the less mechanical ability, strength, and patience—can’t forget that one—you need to fix something, the more likely people will buy it. Hamming’s invention of error-correcting codes, a way of detecting and fixing errors in data transmission, is valuable partly because it makes computer maintenance less frustrating.

Systems Engineering

You can view building a moonshot as systems engineering, where the goal is to build and manage a complex system, translating local actions into global actions while keeping in mind that there is no single bigger picture. With many components interacting with each other in hard-to-predict ways—think power grids, air traffic control systems, your younger brother’s bedroom—you have to balance work on the parts with checking that you’re progressing towards the whole. The whole includes the environment in which the system operates.

One way to find the right local actions is through trial and error. This is where having a simulation helps.

Hamming gives several examples to illustrate two related rules:

  • If you try to optimize part of a system in isolation, you’ll likely impair the entire system’s performance.
  • While changing a system’s parts, anticipate how they’ll affect other parts.

They were using a differential analyzer, an early form of computing that used mechanical parts, to solve differential equations. They’d improved one component—the amplifiers—without considering the need for adequate copper grounding. This caused unexpected errors in solving the equations. It took them hours of tinkering and troubleshooting to find the issue and fix it.

For another perspective, consider how many of us cram for finals. Sometimes we’ll do well enough to get a good grade, but forget everything we studied shortly after [1].

We optimize for individual classes to the detriment of the entire education, graduating with bits of disconnected knowledge about many topics but not having a firm grasp of any subject. Or maybe understanding a few specialized topics deeply, but not knowing how they fit in with the rest.

Predicting Your Technology’s Success

When designing an invention, we might wonder “Hm… will this fly? Is this workable?” as if it violates some physical law that makes it impossible to achieve in this universe. However, success may depend less on physical limitations than on societal laws, perceptions, company rules, market demand, and other human factors.

Better questions to ask are:

  • Is the market ready for this? If there’s no demand or need for what you’re building, it’s going to be hard to get the support you need to commercialize it.
  • Do I have the tools and know-how to communicate my idea? Unless you plan to develop your technology in isolation from start to finish, it’s crucial to describe it effectively, whether at presentations in front of VCs, while interviewing potential collaborators, or through a napkin drawing while talking to a friend.
“Many a good idea has had to be rediscovered because it was not well presented the first time, years before!”—Richard Hamming
  • Are the components available in some form? When developing a new technology, it’s helpful to take parts of other people’s work and put them together to make the new technology. For instance, to build an augmented reality device, you might combine one company’s gyroscope, another company’s display, and yet another company’s camera or webcam. Your own innovation might be in the software, but you’ll have a selection of hardware and cloud services to choose from to produce your invention.

On the other hand, digital people would be a game changer, but the components to create them won’t be available for a while. To create a digital person through whole brain emulation, you need an understanding of all the aspects of their mind and how the brain works, to ensure accurate reproduction and to prevent disastrous results like long-term disability.

This could mean understanding the brain at a level where we can improve its intelligence into superintelligence, maybe by vastly increasing working memory, adding sensory modalities, and connecting it to the cloud, which would have a bigger effect than just speeding up its operation. It would be comparable to the development of the neocortex in our ancestors, which enabled perception, spatial reasoning, and language.

Since neuroscience hasn’t progressed enough to allow this understanding, success is far from assured and it would be safer to bet on more near-term ideas.

Judging Impact

An invention’s ultimate impact won’t be clear until well after it reaches the market. As Hamming suggests, even the inventor may only have a partial understanding of what they developed. Thomas Newcomen and James Watts built their steam engines without fully understanding thermodynamics. The Wright brothers invented the powered airplane without comprehensive knowledge of aerodynamics.

This is a good thing, though, because it means we can invent without waiting for a full understanding of how something works. If electronics engineers had waited for a mature understanding of how electrons behave in solid materials before developing the transistor, we might not have seen the digital revolution.

It also means you can notice things your predecessors haven’t, so you can build on their work.

Improving Your Odds of Success

Flying ship and aircraft from days of old
Image by Darkmoon_Art from Pixabay

A key criterion in choosing problems is whether you have an angle of attack on it. Physicist Richard Feynman only worked on problems he felt he had an advantage in solving [2]. Most physicists don’t work on time travel because they don’t have ways to test ideas like wormholes—yet.

To never run out of interesting problems, keep 10 to 20 problems in your mind at all times. Be familiar with the context of those problems and ways to solve them, including what others have tried. As you go about your day—or week, or decade—you’ll automatically think of ways you might solve them. With a good learning routine, you’ll absorb information related to the problem over time [3], improving your odds of recognizing a potential solution no one’s tried yet.

When you do, drop everything and hit it hard! 🤛

Hamming covers a wide range of fields to help the reader recognize the overall shapes of important problems. Recognizing a problem is the first step towards finding a way around it. If it’s a gating factor for a project or a blocking issue for another problem, you might decide to abandon the project or problem altogether. If you don’t recognize a hidden problem, you could end up pursuing less promising paths.

Artificial Intelligence

When Hamming wrote this book in 1994, he knew AI would be a big deal and that not understanding it at some level would put one at a disadvantage. He was particularly interested in whether machines could think to begin with, approaching this by comparing machine learning with human learning.

When we attend a class, isn’t the teacher programming concepts into us? What’s the fundamental difference between programming a human by teaching them concepts and having them output a certain result—what they learned—and programming a machine to produce similar outputs?

Aren’t we just programmed to play chess, Go, and video games, to solve math problems and prove theorems, to put parts together in a factory assembly line, to classify images, and to drive cars? We didn’t even choose to be programmed to learn some of these skills; our environment, our culture, and maybe our parents did.

Managing Cognitive Biases

Throughout the book, Hamming identifies many cognitive biases that can delay progress. Confirmation bias, in which a person cherry picks information that confirms their beliefs and ignores contrary evidence, is especially pervasive.

To help overcome this, the more certain we are of a position, the more we should take the other side and find arguments against that position. This could also help counteract disconfirmation bias, where we hold higher standards for evidence that doesn’t support our belief.

If you’re arguing a position with another person, it helps to start with the points that you both agree on. Attempting to clarify these points helps ensure you understand what they’re saying or what their position is. Sometimes you’ll find that you both have the same viewpoint and are just arguing it from different perspectives.

By laying out the groundwork first, establishing the points you both agree on, you also bring their guard down, making them more open to your arguments.

Learning and Preparation

Hamming quotes Pasteur’s “luck favors the prepared mind” to convey that having a baseline of knowledge and experience can lead to breakthroughs, like his recognition of the usefulness of a parity check in error-correcting codes [4].

It’s good to be familiar with a wide range of fields, but just as important is being able to recall that knowledge when needed. Create a system for storing and reviewing knowledge that ensures you keep the most relevant information accessible.

To help with this, develop your "second brain", as Tiago Forte describes it. Think of your smartphone, laptop, and other computing devices as extensions of your brain. How you organize your information across those devices determines how well you solve problems with it.

Regularly review the knowledge you consider most important, to ward off the forgetting that accompanies the formation of new memories. Forgetting is a good thing, but only if you forget the right things, so you’ll want to have a system for periodically reviewing old knowledge and adjusting their priority so you only see them again if they’re important enough [5].

Creativity

As a pioneer of multiple important innovations, Hamming was deeply interested in the creative process, spending an entire chapter untangling this phenomenon. How did he and his esteemed colleagues achieve their breakthroughs?

He suggests this procedure:

  • Recognize the problem.
  • Refine the problem.
  • Think about the problem intensely for a long period.
  • If you don’t have a solution, temporarily shelve the problem.
  • Let the subconscious work on it. Try not to think of anything else too intensely.
  • Often, after hours, days, weeks, or longer, you’ll stumble upon a solution!
  • Sometimes it will come shortly after you’ve returned to the problem.

[Pathwooded note: Try to generate positive emotions while working on the problem. Being in a good mood boosts your ability to come up with creative insights because it activates the brain region that helps you notice less obvious ideas. Being in a bad mood keeps you on the safe path, exploring only those ideas you’re sure will work.]

Creativity falls squarely into the “Art” in the book’s title. Harnessing it is less a problem of pure reasoning and more about the trial and error of putting yourself in the right conditions to recognize a solution.

Motivation

The more emotionally involved you are with a problem, the more likely you are to persevere when the going gets tough. Hamming repeatedly suggests aiming for “excellence” and having “the goal of doing significant work” because doing so gives you the motivation to work on a problem for years on end.

We often think of having to develop grit to achieve a hard goal, but if you’re already passionate about a tough problem, you’ll instinctively find ways to solve it. Think of the last time you pulled an all-nighter to debug a Lisp program (challenge: try Prolog), finish a science project, or beat Diablo, Ganon, or (insert your favorite video game’s final boss).

Each time you experience the frustration followed by the rush of dopamine from completing the hard goal, that’s one rep in building your grit muscle. Because of this, you don’t want to pick goals that are too hard as your grit-building routine. Break down ambitious goals into smaller, more slowly moving chunks that are easier to reason about, let you measure progress, and build confidence with each win.

Dealing with Criticism

If people aren’t criticizing your idea, it’s probably not innovative or audacious enough. Cynics will come out of the woodwork when you suggest an invention or approach that goes against traditional methods so much that even experts in your field can’t understand it.

If skeptics are getting you down, browse the history of inventions experts once declared useless or impossible. As Hamming notes, “The record of the experts saying something is impossible just before it is done is amazing.”

  • “Louis Pasteur’s theory of germs is ridiculous fiction.” —Pierre Pachet, Professor of Physiology at Toulouse, in 1872
  • “I confess that in 1901 I said to my brother Orville that man would not fly for fifty years. Two years later we ourselves made flights.” —Wilbur Wright
  • “Space travel is bunk.” —Sir Harold Spencer Jones, in 1957, two weeks prior to Sputnik orbiting the Earth
  • “Transmission of documents via telephone wires is possible in principle, but the apparatus required is so expensive that it will never become a practical proposition.” —Dennis Gabor, Nobel Prize-winning physicist, in 1962
  • “I predict the Internet, which only just recently got this section here in InfoWorld, will soon go spectacularly supernova and in 1996 catastrophically collapse.” —Robert Metcalfe, co-inventor of the Ethernet standard, in 1995

If experts can’t get it Wright, how much more your non-expert colleagues or random online detractors?

Conclusion

This summary barely scratches the surface in describing the principles of science and engineering Hamming expounds throughout the book. I aimed for a general survey of Hamming’s practical ideas, so I skipped his witty anecdotes and heartfelt reflections on the habits of the teams and organizations he worked with.

Further, readers with more mathematical sophistication will appreciate the deep insight that can only come from working through Hamming’s examples.

For an adventurous reminder of how innovation and creative ideas are nonnegotiable in modern society, I strongly recommend The Art of Doing Science and Engineering: Learning to Learn by Richard W. Hamming.


[1] Techniques like spaced repetition have been gaining steam in helping counteract the tendency to cram.

[2] John Baez said in an interview:

"The physicist John Wheeler put it this way: you should never do a calculation until you already know the answer. That’s a bit of an exaggeration, because it’s also good to fool around and see where things go. But there’s a lot more truth to it than you might think.

Feynman had a different but related rule of thumb: he only worked on a problem when he felt he had an “inside track” on it—some insight or trick up his sleeve that nobody else had."

[3] We’re talking months or years. Darwin and Mendel didn’t develop their theories overnight, and you are working on a tough problem, right? On that note, SuperMemo founder Dr. Piotr Wozniak offers an algorithm for solving any problem: https://supermemo.guru/wiki/How_to_solve_any_problem%3F. It’s at the bottom of the page, but the rest of the article is worth reading (incrementally maybe, using SuperMemo?) to understand why it’s effective.

[4] The parity of a group of bits in a message refers to whether it has an even or odd number of 1’s. Parity checks help you detect data errors by using one bit to represent the message’s parity, and then checking that bit upon receipt of the message. If the received message has an odd number of bits while the original has an even number, then you know something’s wrong.

Hamming’s “key insight was that if you apply some parity checks not to the full message but to certain carefully selected subsets, you can ask a more refined series of questions that pin down the location of any single bit error.”—3Blue1Brown, “Hamming codes and error correction”, YouTube, September 4, 2020, https://youtu.be/X8jsijhllIA.

[5] Software like SuperMemo lets you specify the priority of pieces of information during spaced repetition, so you review the most important ones more frequently.

Aris Valdehuesa
Content Ninja

Skilled at distilling complex information into easily understood concepts that can be applied to real-world situations. Brings exposure to important ideas.

How to Think Like Great Inventors, Engineers, and Scientists
13

How to Think Like Great Inventors, Engineers, and Scientists

Tech
Published or Updated on
Dec 3
/
13
min read

1-Sentence Summary: The Art of Doing Science and Engineering: Learning to Learn demonstrates how you can reach your goals much more efficiently, going a distance proportional to the number of steps you take, by choosing to do excellent work on important problems.



It’s mind-boggling how much knowledge the many areas of science and engineering have created. Are there general principles we can extract from them we can apply across multiple domains? How do we learn and apply them to solve the most intractable problems in our respective fields?

These are some questions Richard Hamming sought to answer in The Art of Doing Science and Engineering: Learning to Learn. An overarching theme is that the answers should also lead one to doing impactful work. Whether that choice is intentional or by chance, impactful work is essential to staying engaged.

I wrote this summary through the lens of that overarching theme. I’ve also expanded some ideas with examples of more recent progress, keeping the core principles intact. With luck, it will provide insight for those looking to solve an enormous problem, especially by developing a radical solution that may require inventing technology we don’t have yet.

Designing Your Invention

Some skills developed when studying science and engineering are important no matter what the application. This section reviews a few of those you’ll likely need when building your moonshot.

Modeling

If you’re uncertain about whether a statement you encountered or conclusion you arrived at is true, model the situation. Even a simple back-of-the-envelope model keeps your modeling skills fresh, so it’s not a big effort to revive them when you encounter a critical use case.

If someone comes up to you and claims that the total amplification factor or gain of a phone company’s analog voice signal is 10^120, that might seem off. But if you do a quick modeling that considers each amplifier’s gain of 100, their distance from each other of 50 miles, and the total travel distance of over 3,000 miles, you’ll find that the estimate is realistic: 100^60 = 10^(2*60) = 10^120.

Doing the calculations also helps you remember the result. A model, whether it’s mathematical, programmatic, natural language, graphical, etc. is an alternative representation of how you think the world should work. Besides giving you more confidence from having verified the result at some level, the model provides knowledge redundancy, which may help you remember the concept.

Simulation

The ideal situation would be to have a sandbox Earth—a world just like ours in every respect–on which we can inexpensively run experiments without causing harm or suffering to any living being, supreme or otherwise. Second best is what we have now: computer simulations.

Running a simulation is more cost-effective than lab experiments and produces results faster. Seldom-used lab equipment can become obsolete or non-functional in a few short years.

Design

Hamming encapsulates some universal principles of design in his chapter on the history of software, where he describes how he designed a programming language for the IBM 650, a popular computer in the 1950s. Programming languages should be easy to learn and use, and software written in the language easy to debug. Ideally, they wouldn’t require learning new ways of thinking.

These features apply to pretty much any technology you’re trying to develop:

  • Easy to learn: A project management app that gets you up and running with a brief, intuitive [walkthrough](https://www.appcues.com/blog/the-5-best-walkthrough-examples beats out one that needs a tutorial marathon to get started.
  • Easy to use: You’d probably use a charger that lets you charge your devices wirelessly more often than one that makes your desk look like the The Forest of Fangorn.
  • Easy to troubleshoot: You can google just about anything to fix a problem, but the fewer tools and the less mechanical ability, strength, and patience—can’t forget that one—you need to fix something, the more likely people will buy it. Hamming’s invention of error-correcting codes, a way of detecting and fixing errors in data transmission, is valuable partly because it makes computer maintenance less frustrating.

Systems Engineering

You can view building a moonshot as systems engineering, where the goal is to build and manage a complex system, translating local actions into global actions while keeping in mind that there is no single bigger picture. With many components interacting with each other in hard-to-predict ways—think power grids, air traffic control systems, your younger brother’s bedroom—you have to balance work on the parts with checking that you’re progressing towards the whole. The whole includes the environment in which the system operates.

One way to find the right local actions is through trial and error. This is where having a simulation helps.

Hamming gives several examples to illustrate two related rules:

  • If you try to optimize part of a system in isolation, you’ll likely impair the entire system’s performance.
  • While changing a system’s parts, anticipate how they’ll affect other parts.

They were using a differential analyzer, an early form of computing that used mechanical parts, to solve differential equations. They’d improved one component—the amplifiers—without considering the need for adequate copper grounding. This caused unexpected errors in solving the equations. It took them hours of tinkering and troubleshooting to find the issue and fix it.

For another perspective, consider how many of us cram for finals. Sometimes we’ll do well enough to get a good grade, but forget everything we studied shortly after [1].

We optimize for individual classes to the detriment of the entire education, graduating with bits of disconnected knowledge about many topics but not having a firm grasp of any subject. Or maybe understanding a few specialized topics deeply, but not knowing how they fit in with the rest.

Predicting Your Technology’s Success

When designing an invention, we might wonder “Hm… will this fly? Is this workable?” as if it violates some physical law that makes it impossible to achieve in this universe. However, success may depend less on physical limitations than on societal laws, perceptions, company rules, market demand, and other human factors.

Better questions to ask are:

  • Is the market ready for this? If there’s no demand or need for what you’re building, it’s going to be hard to get the support you need to commercialize it.
  • Do I have the tools and know-how to communicate my idea? Unless you plan to develop your technology in isolation from start to finish, it’s crucial to describe it effectively, whether at presentations in front of VCs, while interviewing potential collaborators, or through a napkin drawing while talking to a friend.
“Many a good idea has had to be rediscovered because it was not well presented the first time, years before!”—Richard Hamming
  • Are the components available in some form? When developing a new technology, it’s helpful to take parts of other people’s work and put them together to make the new technology. For instance, to build an augmented reality device, you might combine one company’s gyroscope, another company’s display, and yet another company’s camera or webcam. Your own innovation might be in the software, but you’ll have a selection of hardware and cloud services to choose from to produce your invention.

On the other hand, digital people would be a game changer, but the components to create them won’t be available for a while. To create a digital person through whole brain emulation, you need an understanding of all the aspects of their mind and how the brain works, to ensure accurate reproduction and to prevent disastrous results like long-term disability.

This could mean understanding the brain at a level where we can improve its intelligence into superintelligence, maybe by vastly increasing working memory, adding sensory modalities, and connecting it to the cloud, which would have a bigger effect than just speeding up its operation. It would be comparable to the development of the neocortex in our ancestors, which enabled perception, spatial reasoning, and language.

Since neuroscience hasn’t progressed enough to allow this understanding, success is far from assured and it would be safer to bet on more near-term ideas.

Judging Impact

An invention’s ultimate impact won’t be clear until well after it reaches the market. As Hamming suggests, even the inventor may only have a partial understanding of what they developed. Thomas Newcomen and James Watts built their steam engines without fully understanding thermodynamics. The Wright brothers invented the powered airplane without comprehensive knowledge of aerodynamics.

This is a good thing, though, because it means we can invent without waiting for a full understanding of how something works. If electronics engineers had waited for a mature understanding of how electrons behave in solid materials before developing the transistor, we might not have seen the digital revolution.

It also means you can notice things your predecessors haven’t, so you can build on their work.

Improving Your Odds of Success

Flying ship and aircraft from days of old
Image by Darkmoon_Art from Pixabay

A key criterion in choosing problems is whether you have an angle of attack on it. Physicist Richard Feynman only worked on problems he felt he had an advantage in solving [2]. Most physicists don’t work on time travel because they don’t have ways to test ideas like wormholes—yet.

To never run out of interesting problems, keep 10 to 20 problems in your mind at all times. Be familiar with the context of those problems and ways to solve them, including what others have tried. As you go about your day—or week, or decade—you’ll automatically think of ways you might solve them. With a good learning routine, you’ll absorb information related to the problem over time [3], improving your odds of recognizing a potential solution no one’s tried yet.

When you do, drop everything and hit it hard! 🤛

Hamming covers a wide range of fields to help the reader recognize the overall shapes of important problems. Recognizing a problem is the first step towards finding a way around it. If it’s a gating factor for a project or a blocking issue for another problem, you might decide to abandon the project or problem altogether. If you don’t recognize a hidden problem, you could end up pursuing less promising paths.

Artificial Intelligence

When Hamming wrote this book in 1994, he knew AI would be a big deal and that not understanding it at some level would put one at a disadvantage. He was particularly interested in whether machines could think to begin with, approaching this by comparing machine learning with human learning.

When we attend a class, isn’t the teacher programming concepts into us? What’s the fundamental difference between programming a human by teaching them concepts and having them output a certain result—what they learned—and programming a machine to produce similar outputs?

Aren’t we just programmed to play chess, Go, and video games, to solve math problems and prove theorems, to put parts together in a factory assembly line, to classify images, and to drive cars? We didn’t even choose to be programmed to learn some of these skills; our environment, our culture, and maybe our parents did.

Managing Cognitive Biases

Throughout the book, Hamming identifies many cognitive biases that can delay progress. Confirmation bias, in which a person cherry picks information that confirms their beliefs and ignores contrary evidence, is especially pervasive.

To help overcome this, the more certain we are of a position, the more we should take the other side and find arguments against that position. This could also help counteract disconfirmation bias, where we hold higher standards for evidence that doesn’t support our belief.

If you’re arguing a position with another person, it helps to start with the points that you both agree on. Attempting to clarify these points helps ensure you understand what they’re saying or what their position is. Sometimes you’ll find that you both have the same viewpoint and are just arguing it from different perspectives.

By laying out the groundwork first, establishing the points you both agree on, you also bring their guard down, making them more open to your arguments.

Learning and Preparation

Hamming quotes Pasteur’s “luck favors the prepared mind” to convey that having a baseline of knowledge and experience can lead to breakthroughs, like his recognition of the usefulness of a parity check in error-correcting codes [4].

It’s good to be familiar with a wide range of fields, but just as important is being able to recall that knowledge when needed. Create a system for storing and reviewing knowledge that ensures you keep the most relevant information accessible.

To help with this, develop your "second brain", as Tiago Forte describes it. Think of your smartphone, laptop, and other computing devices as extensions of your brain. How you organize your information across those devices determines how well you solve problems with it.

Regularly review the knowledge you consider most important, to ward off the forgetting that accompanies the formation of new memories. Forgetting is a good thing, but only if you forget the right things, so you’ll want to have a system for periodically reviewing old knowledge and adjusting their priority so you only see them again if they’re important enough [5].

Creativity

As a pioneer of multiple important innovations, Hamming was deeply interested in the creative process, spending an entire chapter untangling this phenomenon. How did he and his esteemed colleagues achieve their breakthroughs?

He suggests this procedure:

  • Recognize the problem.
  • Refine the problem.
  • Think about the problem intensely for a long period.
  • If you don’t have a solution, temporarily shelve the problem.
  • Let the subconscious work on it. Try not to think of anything else too intensely.
  • Often, after hours, days, weeks, or longer, you’ll stumble upon a solution!
  • Sometimes it will come shortly after you’ve returned to the problem.

[Pathwooded note: Try to generate positive emotions while working on the problem. Being in a good mood boosts your ability to come up with creative insights because it activates the brain region that helps you notice less obvious ideas. Being in a bad mood keeps you on the safe path, exploring only those ideas you’re sure will work.]

Creativity falls squarely into the “Art” in the book’s title. Harnessing it is less a problem of pure reasoning and more about the trial and error of putting yourself in the right conditions to recognize a solution.

Motivation

The more emotionally involved you are with a problem, the more likely you are to persevere when the going gets tough. Hamming repeatedly suggests aiming for “excellence” and having “the goal of doing significant work” because doing so gives you the motivation to work on a problem for years on end.

We often think of having to develop grit to achieve a hard goal, but if you’re already passionate about a tough problem, you’ll instinctively find ways to solve it. Think of the last time you pulled an all-nighter to debug a Lisp program (challenge: try Prolog), finish a science project, or beat Diablo, Ganon, or (insert your favorite video game’s final boss).

Each time you experience the frustration followed by the rush of dopamine from completing the hard goal, that’s one rep in building your grit muscle. Because of this, you don’t want to pick goals that are too hard as your grit-building routine. Break down ambitious goals into smaller, more slowly moving chunks that are easier to reason about, let you measure progress, and build confidence with each win.

Dealing with Criticism

If people aren’t criticizing your idea, it’s probably not innovative or audacious enough. Cynics will come out of the woodwork when you suggest an invention or approach that goes against traditional methods so much that even experts in your field can’t understand it.

If skeptics are getting you down, browse the history of inventions experts once declared useless or impossible. As Hamming notes, “The record of the experts saying something is impossible just before it is done is amazing.”

  • “Louis Pasteur’s theory of germs is ridiculous fiction.” —Pierre Pachet, Professor of Physiology at Toulouse, in 1872
  • “I confess that in 1901 I said to my brother Orville that man would not fly for fifty years. Two years later we ourselves made flights.” —Wilbur Wright
  • “Space travel is bunk.” —Sir Harold Spencer Jones, in 1957, two weeks prior to Sputnik orbiting the Earth
  • “Transmission of documents via telephone wires is possible in principle, but the apparatus required is so expensive that it will never become a practical proposition.” —Dennis Gabor, Nobel Prize-winning physicist, in 1962
  • “I predict the Internet, which only just recently got this section here in InfoWorld, will soon go spectacularly supernova and in 1996 catastrophically collapse.” —Robert Metcalfe, co-inventor of the Ethernet standard, in 1995

If experts can’t get it Wright, how much more your non-expert colleagues or random online detractors?

Conclusion

This summary barely scratches the surface in describing the principles of science and engineering Hamming expounds throughout the book. I aimed for a general survey of Hamming’s practical ideas, so I skipped his witty anecdotes and heartfelt reflections on the habits of the teams and organizations he worked with.

Further, readers with more mathematical sophistication will appreciate the deep insight that can only come from working through Hamming’s examples.

For an adventurous reminder of how innovation and creative ideas are nonnegotiable in modern society, I strongly recommend The Art of Doing Science and Engineering: Learning to Learn by Richard W. Hamming.


[1] Techniques like spaced repetition have been gaining steam in helping counteract the tendency to cram.

[2] John Baez said in an interview:

"The physicist John Wheeler put it this way: you should never do a calculation until you already know the answer. That’s a bit of an exaggeration, because it’s also good to fool around and see where things go. But there’s a lot more truth to it than you might think.

Feynman had a different but related rule of thumb: he only worked on a problem when he felt he had an “inside track” on it—some insight or trick up his sleeve that nobody else had."

[3] We’re talking months or years. Darwin and Mendel didn’t develop their theories overnight, and you are working on a tough problem, right? On that note, SuperMemo founder Dr. Piotr Wozniak offers an algorithm for solving any problem: https://supermemo.guru/wiki/How_to_solve_any_problem%3F. It’s at the bottom of the page, but the rest of the article is worth reading (incrementally maybe, using SuperMemo?) to understand why it’s effective.

[4] The parity of a group of bits in a message refers to whether it has an even or odd number of 1’s. Parity checks help you detect data errors by using one bit to represent the message’s parity, and then checking that bit upon receipt of the message. If the received message has an odd number of bits while the original has an even number, then you know something’s wrong.

Hamming’s “key insight was that if you apply some parity checks not to the full message but to certain carefully selected subsets, you can ask a more refined series of questions that pin down the location of any single bit error.”—3Blue1Brown, “Hamming codes and error correction”, YouTube, September 4, 2020, https://youtu.be/X8jsijhllIA.

[5] Software like SuperMemo lets you specify the priority of pieces of information during spaced repetition, so you review the most important ones more frequently.

Aris Valdehuesa
Content Ninja

Skilled at distilling complex information into easily understood concepts that can be applied to real-world situations. Brings exposure to important ideas.