TL; DR of the book “The Art of Doing Science and Engineering” by Richard Hamming
On Habré for a long time already published joint translation (which still has a separate site of authorship MagisterLudi ) of Richard Hamming’s remarkable book "The Art of Doing Science and Engineering" . I have long wanted to read it in the original. And not just to read, but to make up as briefly as possible the pressing of the main ideas of each chapter. And recently I managed to do it.
The goal of the book itself is to “prepare you for your technical future,” by teaching you a “style” of thinking. Therefore, the extracted ideas are generally quite general in nature. Also, due to the frequent way of transmitting ideas in the form of stories, some paragraphs of the article are my personal interpretation of them.
Due to a sufficiently large amount of material and its “dense” submission, this article still turned out to be quite voluminous. Therefore, I suggest its TL; DR.
- Good luck accompanies the prepared mind (Pasteur).
- Training should be done focusing on the future, not the past (but based on it).
- It is worth trying to achieve the goals that you set yourself, and it is worth setting high goals.
- Teachers should prepare students for their future, not for their past. The most appropriate way is to learn the "style" of thinking.
- Try as quickly as possible to verify statements using the “calculations on a napkin” method. This helps with the formulation and quality control of the task.
- Learn the basics: knowledge that is accepted as true for a sufficiently long period of time.
- Create your own vision of your future, no matter how erroneous it will end up. The goals should be to achieve greatness and contribute to the development of mankind.
II Basics of the digital (discrete) approach
- Using "digital" solutions instead of "analog" is cheaper, more reliable and socially determined.
- Computers will and will provide opportunities to perform an extensive set of tasks. Especially it will be a means for "vicious" micromanagement.
III History of computers - hardware
- Computing machines have come a long way from slow analog “manual” to fast digital automated ones.
- The computer does not know anything about what it does. The meaning of his work give people.
IV Computer History - Software
- Software (software) has come a long way from the error-prone “created for machines” approach to the more reliable “created for people”.
- The creator may not fully be aware of the “degree of greatness” of his creation (due to all sorts of problems that were in the way).
- The redundancy of the language increases its reliability.
- Programming is more like writing than engineering: people fly into space in more or less similar ways, but two programmers will write very different programs to solve one fairly common task.
- Think before you write a program. In particular, how you will check its correctness, and how it will be supported.
- Experience is not a universal way to measure competence.
V History of computer use
- The main stages of the use of computers:
- Computing is faster than humans.
- Automate these calculations.
- Tracking the performance of these calculations.
- The use of computers must be economically justified.
- Modified (programmable) common solutions (microcircuits in particular) proved to be more profitable than narrowly focused ones.
VI Artificial Intelligence - I
- In the field of artificial intelligence (AI), there is a key problem in defining the concepts: “machine”, “thinking”, “information”.
- The researcher must use (while questioning) his own beliefs in trying to define concepts, as well as realize the possibilities and limitations of computers in the “intellectual sphere”.
VII Artificial Intelligence - II
- In the large-scale structure may be new effects: it is believed that there is no friction between the molecules, but used between about lshimi objects is observed. The same can be true for "intelligence."
- Computers first replace people in routine tasks, while more complex (algorithmically and ethically) areas still need human-computer interaction.
- In modern AI it is difficult to say whether the result is a consequence of “brute force” or “understanding”.
- Perhaps thinking should not be measured in what is done, but how it is done.
VIII Artificial Intelligence - III
- "Can cars think?" There are many tricky observations on both sides (there is a list). The most interesting: parts of the shortest “thinking” program cannot “think” by definition.
- It may be a good idea to talk about future uses of computers, and not about past or present.
- You must consider and clearly understand your position on these two issues. It should be clear to you what you believe and why .
IX n-dimensional space
- The design of complex systems is carried out in n-dimensional space, which has very counterintuitive properties.
- The optimal solution when designing with constraints will almost certainly be close to the border.
- Metrics prevalent in physics. and - in the "intellectual sphere".
X Coding Theory - I
- Model of the “information system”: [source (of unknown nature)] -> [source coder | channel encoder] -> [noisy channel] -> [channel decoder | source decoder] -> [recipient (of unknown nature)].
- The “meaning” of the message is not tied to specific words, since the same “information” can be represented in different ways.
- The coding of “information” can be selected based on the “noise type” of the system. In real life, choosing other words can help the other person understand the message better.
XI Coding Theory - II
- System design should take into account human-machine interaction errors.
XII Error Correction Codes
- Breakthroughs in research often involve (go after) emotional stress and frustration. A calm researcher is good at improving and expanding existing solutions.
- Breakthroughs are often committed in parts that are separated in time (sometimes significantly).
- Good luck accompanies the prepared mind (Pasteur). In this case, training should be carried out focusing on the future, not on the past (but based on it).
XIII Information Theory
- In the theory of information by Shannon, the concept of “information” is actually not defined, only the method of measuring it (as a relative measure of “surprise”).
- In applied problems, the definition in the long term determines the object, and does not describe our initial understanding of it.
XIV Digital Filters - I
- “The initiative is punishable” (even with good intentions), but qualitatively implemented can lead to great achievements.
- Perseverance and motivation often produce better results than extensive initial knowledge.
XV Digital Filters - II
- Try not to call something new, like “nothing new, just an improved old one”. It can be a great opportunity for great things.
- Collaboration is important in complex projects.
XVI Digital Filters - III
- If you know that something cannot be done, take the trouble to remember the reason: so that in the future you can reconsider the approach in a new situation.
XVII Digital Filters - IV
- In the course of solving a problem, someone must “answer” for the overall picture of the research and ensure that everything is done in good faith.
- What we see depends on the approach to the problem. Therefore, you must constantly question your beliefs (and areas of knowledge) (but not very strongly).
XVIII Modeling - I
- When modeling, do not forget to constantly check with reality.
- First, use simple modeling to get closer to the basics of the model. Only after that start adding details.
- Use expert knowledge when modeling. It also means learning their jargon.
XIX Modeling - II
- The reliability of the simulation is its important quality. A handy question for checking it out: “Why should someone believe that modeling is true?” (Refers to the accuracy of the model and calculations).
- Unfortunately, there is no universal way to achieve this. Some tips:
- Ensure that the modeling domain has robust scientific laws and explicitly postulated theory.
- Carry out the “adequacy test” and “unit testing” of the program in any form.
- You are personally responsible for your decisions and cannot be shifted to those who carry out modeling.
XX Modeling - III
- The principle of “Garbage at the entrance - garbage at the exit” (poor quality data give poor quality results) is useful, but sometimes it may not work due to the nature of the task (for example, high resistance to input errors).
- The choice of modeling method should correspond to the essence of the problem.
- Pride in their ability to solve problems is very helpful in achieving important results under difficult conditions.
- Excessive knowledge can harm in modeling with the participation of man and chance (hence the creation of a double-blind method).
XXI Fiber Optics
- Active reasoning about the potential development of things and ideas helps to better perceive their future real evolution.
- If something is better technologically and economically, this does not always mean that it will and should be implemented (for reasons of security, ethics, politics, etc.).
XXII Computer Learning - CAI
- Beware of wishful thinking and the Hawthorne effect (having a positive result if all parties believe in the quality of the method).
- Computers can be useful in “training” (routine, “low-level”, instinctive learning), but can be detrimental to “education.” Mainly due to the lack of a clear understanding of what should be a quality education.
- “Mathematics is the language of clear thinking” (although not perfect).
- Five schools of Mathematics:
- Platonic . Everything is the realization of ideas that exist as separate entities. Problem: the evolving nature of science.
- Formalists . Mathematics is the implementation of permitted formal transformations (without any “meaning”) of lines of abstract symbols. Problem: Mathematical results have a “meaning”.
- Logical . Mathematics is the implementation of the conclusions of the type "if A is true, then B is true." Problem: a real mathematical discovery does not occur in the form of reasoning from assumptions to conclusions. Thinking backwards also takes place.
- Intuitionism . Results matter, not the way they are produced. Problem: propensity not to use rigorous methods.
- Constructivists . To prove the hypothesis, you must provide an algorithm for constructing the result. Problem: seems too strict approach.
- Part of the effectiveness of Mathematics is the ability to identify analogies. The more accurate it is, the “more true” conclusions can be.
- In the future, mathematical analogies will be less obvious, which may lead to the need to create completely new approaches.
XXIV Quantum Mechanics
- The data set does not guarantee the receipt of a single theory.
- Man is not rational, but rationalizing animal.
- Even without “understanding” a phenomenon, specially created formal mathematical structures can be effectively used.
- “Originality” seems to be more than “this has never been done.” Apparently, the word “creative” (“original”, “innovative”) should include the concept of utility (but for whom?).
- “Creativity” can only be a combination of trivial ideas that are “psychologically distant” from each other.
- It seems that a certain “state of mind” is associated with “creativity”.
- Creativity is like sex: a young man can read all the books on a subject, but without real experience he has little chance of understanding what it is. But even then there may be little understanding of what is actually happening .
- Typical template of creative work:
- Primary awareness of the problem.
- Handling the task, formulating it in a generally accepted form with a generally accepted solution. Often, deep emotional involvement is necessary.
- The long period of "carrying" with intense thinking about the problem. The result may be a decision or a temporary stop of work on the task.
- The moment of "insight" is the appearance of a solution. Often it is wrong, so thinking continues or the task has to be reformulated to fit the solution .
- Useful question: "If I had a solution, how would it look?".
- Useful trick: try not to think much about anything else besides the task.
- The most important method in creative work is the analogy . Therefore, extensive knowledge is helpful. In order to use them effectively, new knowledge should not just be remembered. It is useful to create "mental clues" that will work when thinking "next to them." This can be achieved through active reflection on the unconventional application of knowledge.
- In order to be more creative, you have to change yourself (take responsibility). Moreover, this must be done with the changing nature of society.
- Learn to refuse to solve the problem.
- Two problems with experts:
- They are sure they are right.
- They do not pay attention to the basics of their beliefs and to what extent they are applicable in new situations.
- Great discoveries are often made from outside the field of knowledge (by experts from another field). You must consciously decide whether to promote your field or create innovations in another.
- What made you successful will most likely not be productive in the future. Watch your area.
XXVII Incorrect Data
- Unreliable data everywhere.
- Always check the quality of the data. At least on consistency and emissions.
- The measurement process often introduces inadvertent systematic changes to the data.
- Watch the definition of measurements in order to analyze the same entity.
- A small, neatly collected data set is better than a large poor quality one.
- Be attentive to the quality of the data collection methodology (especially questionnaires).
XXVIII Systems Engineering
- It is important to keep in mind the overall picture of the task.
- When optimizing one part, you will most likely reduce the quality of the system (mainly because the previous item is rarely executed).
- Design the system considering the possibility of future changes.
- The more precisely the task conditions are fulfilled, the worse the efficiency with increased load.
- There is no fixed problem and final solution in system design. Rather, it looks like a joint evolution of the problem and solution.
- The creation of systems should be based on a simplification of the established problems with well-established solutions.
XXIX You get what you measure
- You get what you measure. It means:
- The definition of measurement affects the result (as is the case with IQ).
- The process being measured can adapt to the measurement procedure itself, violating the original plan. This is very common in rating systems involving people.
- Measurements still need to be done, but after careful reflection on the consequences of its implementation.
XXX You and your studies
- It is worth trying to achieve the goals that you set yourself, and it is worth setting high goals.
- Good luck accompanies the prepared mind (Pasteur).
- Hard work pays off, but if done in the right direction.
- Belief in the ability to do great things is important. It can be called confidence, "courage." Boost it by learning about your successes.
- Purposeful pursuit of excellence is essential for doing great work.
- Know your age.
- What you consider good working conditions may not be.
- The reformulation of a difficult task can help.
- Plan about 10% of your work time to think about global issues.
- Great people can cope with ambiguity: they believe in the superiority of their organization and field of study, but at the same time they believe that there is room for growth.
- Keep important unsolved problems in your mind and start working on the one about which you had an insight.
- How, not only that, you do ("style") matters.
- Make your work available to others.
- Do not blame the tools.
- Learn to "sell" your ideas.
- Change does not mean progress, but change is necessary for progress.
- At the beginning of your career, you may have to work in your own time.
- Without research, life is not worth it (Socrates). Plan your future, no matter how erroneous it will end up.
- Good luck!