Programming Zen "(reproduced) order
Blue forest http://www.lslnet.com/ 01-06-28 11:25 4316P Geoffrey James --------------------------- -------------------------------------------------- ---
Disclaimer: This article comes from "Programming" book, Xiao Zhao is only responsible for entry. All copyright belongs to the book's publishing house. This article consists of the original three-volume: "Programming" "Programming Zen" "Fables"
Foreword
The publication of "Programming" has been universally accepted in the programming industry. Press invites me to translate some articles related to it as a supplement to the famous classic. Although, I declared my ability to be competent, but I was finally told for a try.
This book is a result of many months to study and translate, which attempts to pass a complex topic by extracting the traditional works. I don't doubt, there will be many computer archaeological experts to comment on my excerpt standard. They asked, "Why don't he bring" UNIX programmers, elephants and prostitutes "come in?" "He dared to ignore the historic story" Tuling Market Adventures "!" For these criticism, I only It can be said that I have made my biggest efforts to choose representative content.
In order to determine the ages of various chapters in the article, I used the dynasty system. For those who are not familiar with this year, they can be divided according to four dynasties (or "four generations").
The first dynasty, that is, the so-called "golden age", to be traced back to the day of constructing a computer by the glass tube; many modern scholars asserts that this era has myth color. The second dynasty begins in the invention of the transistor, and ends the reproduction of the integrated circuit.
History of modern computers, starting from the third dynasty, it is ruled by the host and control of the military machine minister. The fourth dynasty began in the "integration education", "Integrating Teaching" has been established by the industry, and the "Blue Corps" is cruelly destroyed. Ironically, it is this suppression, leading to the programs to spread to the outside world.
In addition to forming the old material of the subject, I still have to get the help of Dr. Babbage and Dr. Yu, who wrote introduction and sequence for the book. I hope that their contribution to the book can more or less to make up for me as a editor.
GEOFFREY JAMES in January 1988 in Los Angeles
table of Contents
Introduction to the first paragraph 2, the third, the fourth piece of gold, the fifth water
According to the ancient "five elements", this book is from five parts:
Wooden fire water water
Master: Ninja Wanders Hidden Dacheng Shen Municip Media: Chronicle History Hardware: Keyboard Display CPU Printer Disk Direction: Southeast China Northwest Software: Editing Program Format Program Debugger Interpretation Compiler Feel: Tactile Vision Smell Demonstology: Interface Design Coding Test Animals: Dragon Phoenix Niu Rabbit Snake System: VMS CP-6 OS / VS MS-DOS UNIX
This classification system is unlikely to explain it clearly in the space of the book. However, after pensive, you may find that amazing insights will be found.
sequence
There is no doubt that the ancient programming art will usually be misunderstood in the mind of the Wenban, and modern views think this is an engineering, mechanical theory and materialism.
Many people think that programming is only a means used in order to achieve purposes, and a program (and programmer) can only evaluate it according to its **.
These original illusions come from a deep misunderstanding of the true intent of the programming.
The superb programmers are not committed to the success of the surface, but to find a mysterious existence between the human machine.
According to the interpretation of Zen, there is no boundary between hardware, software, firmware, interface and understanding - the opposite, all of which combines a harmonious whole. Only when the programmer finally learned the false feeling of "self-self", this kind of realm can be achieved, and the feeling of "self-existence" is often accompanied by the lives of most of us. in.
This is the behavior of the programmaker from the computer.
Some people say that the programmer who has mastered the Zen machine will also master life. Such a programmer is to look at this world with an never tired childish joy.
A conscious programmer, walking on the street, you can feel the computer and the computer inside the building.
The conscious programmer, can feel and hear the continuous buzz of the current pulse when the modulated data passes through the computer line.
Probable programmers have integrated with the universe.
My previous student Geoffrey can complete such a job, and the classic book of Zen of the lost programming is now the world. As a teacher, I feel sincerely satisfied.
I sincerely hope that this book can re-establish an important role in the perfect programmer education.
C.P.yu Dr. Lotus University Beyond Machinery College
Tibet Lhasa
introduction
When Mr. James asked me to write a introduction to him, in addition to telling about myself in the process of maintaining this mysterious area, I really can't think of a better way. Program maintenance is a field that is rarely understood from the art.
Some readers will definitely say that there is no common point between the humble skills of the Zen's Deep Olympicity and Procedure Maintenance. But as a master said: "Method and way (that is, the way) exists in all procedures, even in video games." Therefore, long-term program maintenance art must have its Zen, this is It is undoubtedly, although it may not immediately appear for unstoppable minds.
My story begins with my weeks I have graduated from the University of Computer Science. Our college graduation is to work for a research and development institution, preferably a sector for compiler or operating system design. I finally finally found a institution that is willing to blind me, but the condition is that I must "learn this system" through the work of the program maintenance over time.
I will certainly create a psychology of this proposal. I spent five years of university time, turned out to waste time to solve other programmers! However, because they have promised the work that makes me feel interested in the future, I accept it and remind myself in my heart. Even if this work is not famous, I can find other work.
When I went to the second week, I was taken to meet with Master of the program maintenance group. The Personnel Department took me through the dark corridor of the development center, and finally she pointed out the door at the end of the long hall channel: "He is there." Say the truth, it seems The heart is uncertain.
I walked to the door, I saw a man in front of him, I saw a man sitting in front of the terminal, but he turned against me, so I didn't know how old him, what is much longer? I only have a cough to show my existence, here, the master doesn't even look back at glance: "Please sit."
Crossing his shoulders, I saw those difficult screen display, as his slender fingers flew on the keyboard, they flicked on his terminal. Finally, he was satisfied with it, withdrew from the system, and then turned into me.
I saw it as a surprise, because he looked unlike the one who should be a Zen master, his face tissue, almost ugly, his hair like a circle of annoyance. But people first pay attention to his eyes, shooting a faint blue light through a thick glasses.
He told me from his head to the foot, then nodded, it seems to confirm a person's point of view. "Are you the new?" His sour gone. "Yes." I replied. I pretend to be passionate, put my experience and rapid reporting from him in college.
The polite listening, then said: "That's good, but have you been doing the maintenance of the program before?"
I told him that I have not done it.
Master sighed, "Well, we should do what we do." He said. Then he removed a list of a huge procedure from a shelf, and he was free to open it and handed it to me. Then he asked: "How do you deal with this?"
My eyes are staring at this list, and that is the assembly language, but also with some strange macro language. Every ten line statement, the control is transferred to a mysterious subroutine, and even if this program has any structurality, I can't see it. "What is this program," I asked.
Master took the list from my knees. "This is the" Generation Master Code Tibetan "," he said, "When you learn to grab the wrong code from the mismuth, that is your teacher. Timely. "Then he closed the list, put it back to the bookshelf.
I will soon realize that the maintenance of the program is far more difficult than I think. I started to learn the assembly language used in the "Coded Tibet", but I am worried about that I have found that the assembly language has never provided a document in accordance with the rules, existing notes, is a year Before you die or leave the company's hardware developers write.
This "Coding Tibetan" cannot give me any help. Although there is an occasional annotation, these annotations are like this compilation language, except for some people involved in the original hardware construction, there is no matter if they are in an urgent information.
When I complained about all this, he listened and listened, and after we were silent for a long time, I replied:
"You are trying to understand something that is impossible to be understood by your rational thinking," he said, "The result will inevitably fail. You must first empty your brain, only then, you can start comprehension" Coding Tibetan scriptures. "
Then, Master began to slowly explain the complex logic of the "Code Tibetan". When I listened to his gentle voice, I finally started to feel the flashing of light, which is hidden in the "Coded Tibetan" in brilliant and eternal spiritual light. "Those masters don't know know about 'good programming practices and rules'," Master said they strive to understand the internal activities of computer thinking in universal sense, what do they still need to explain documents? Those programs are extreme expression.
However, even if I start, I still feel that I am like a small flying insect in amber in amber. Master said that I have learned that I have learned, my rational thinking is hard to accept. But Master always explains once again and again, I have to rely on rational thinking to reason, and I have to use subconscious to understand the connotation of "Coding Tibetan".
After several months of guidance, I feel very confident, I want to try my first patch. In order to give Master a surprise, I secretly work. I wrote a patch that reunies a few rows of statements and re-assembles the program and releases the new program into the production system.
The next morning, I came late for a while. What makes me feel strange is that the Director of the Development Center and the General Administration are in the office of Master. When I walked into the hall, I went to the department's general manager to see it. I have heard a lot of talk, but I can't hear anything.
After the two visks left, I walked into the office of Master, "What?" I asked.
"Your patch, I entered the production system at 6 o'clock last night. It has now been deleted."
"So?"
"You can still continue to work." Master said. Finally, I finally understand that all the efforts of "Coding Tibetan" have been in vain, which makes me desperate. Master heard this change in my thoughts, and he began to transfer to me. He taught me to meditate and check the wrong skills. He said that these skills were passed down from the beginning of the computer age, from the technical support department.
I listened and began to realize a big fact about my previous programming experience. In college, I think that programmers work mainly to control hardware and software activities, the highest artistic realm of programming is, in order to complete a task or to achieve high programming skills. But program maintenance is different from program development. To maintain a procedure, it is necessary to regard the program as a gradually growing plant, and the outbreak is unpopular. In fact, such behavior is more likely to lead to the death of plants. A program must be carefully nourished. Programmers must be very familiar with each logical relationship before making the program, and must have a deep understanding of the intent of the program. This kind of understanding is not available overnight, and it takes a long time to accumulate.
After a few months, I finally be able to successfully design a patch for the "Coding Tibet", but I have to think about a long time before design, and I have to open the list on my table. I have also found that if I work, I will ignite a fragrant, and I will continue to reuse Master to teach me: "Null-So-Stix-ETX-EOT" (5 bytes nul in the ASCII code table, SOH, STX, ETX, EOT's pronunciation - translation (I am more likely to concentrate. Master said that the mouth means the "five original" of the universe.
Soon I found that I am no longer a reward for the work, and I can't see any separation between myself and the procedures I maintained. I am like a person who lives in a shadow. I started to understand the Zen of programming. This is a kind of difficulty and difficult to describe the power behind programmer design, just like shooting the shadow.
After getting rid of the meaningless "self-existence", I started to find out that the great programming statements have become unclear, because I haven't fully understood it, I can't understand them. I now know why the past programmers will provide documentation from not for their programs, because the description of the English language is more confused, rather than being inspired by people.
One day, I found that one of myself is solving involves the most complex part of the "Coded Tibet" - the full process of error analysis. I gave a patch without knowing this, which can make the program continue correctly by checking the content of the hardware interrupt area.
That afternoon, Master walked into my work in the first time. He put his hand on my shoulder, and his eyes looked down at me. "Now it is a teacher when you have a teacher." He said.
These are the experience of my first contact with Zen programming. Although I was assigned to many project design from then, I have never forgotten my first Master to give me the teachings.
Imagine my surprise - when I found a lot of my Master very much when I found it in the "Zen" programming. I finally saw an ancient tradition behind his unforgettable speech.
Mr. James re-discovered the work of the classic influence, and we all owe him a person. If it is not his constant, it may always lose. In this book, Mr. James collected a lot of regular, such as heresy, folk story and poetry, etc., which formed a teachings with legendary "integration". It is the effort of scholars such as Mr. James, which makes the extension of the architecture of the Tibetan machine to shoot people in the descendants. First wood
Master: Ninja Media: Ninja History: Keyboard Direction: East Software: Editing Program Feel: Tactile Stage: Interface Animals: Dragon System: VMS
wood
As the revival of the MRVMS / IIIX Zen College, the programming masters (this is the nickname of him, and his real name is unable to verify - the translation) is very famous. There are some legend, saying that he jumped from an inconspicuous programmer as the head of the development department of a strong strength. After completing a first-product operating system, he quietly disappeared. According to him, this system does not require software, it is also necessary to accurately play the function. He is now going to know, but he heard that he often appears in a management consultant. One
The Ninja initially came to the development center to work, he was assigned to support the operating system. One day, a manager walked into the work between Ninja.
"Why don't you work?" Asked the manager.
"The system is awkward." Ninja said.
"The manager frowned." We pay you salary, you want you to maintain the normal operation of the system! "He said loudly.
"The system is not paralyzed." Ninja said.
two
The Ninja Master said:
"If your application can't run correctly, don't blame the operating system."
three
The Ninja Master participated in a computer show.
Many companies have escorted a bright display and all the latest, maximum hardware they can search, and blonde models in swimsuit.
Ninja even did not look at those exhibitions. On the contrary, he just opened a folding chair and sat quietly in the corner. From time to time, someone came from him and asked him one or two questions. He thought for a while and then answered with a short words.
People sitting around the legs sitting next to this master - those collected brochures were scattered on the side - quietly waiting for him to speak.
four
The Ninja Master said:
"For smart people, as long as one word; for fast horses, as long as you gently aston; for a good program, just one command."
Fives
The Ninja Master participated in a board. When he begins to explain the technical characteristics of the software, the company's executives, some of them are irritated on their seats, some staring outside the window, some look at the coffee cup.
So, this master began to talk about how much the software would earn. At this time, the administrators have erected their ears and began to jade in the room. Obviously, they were attracted by this pleasant voice. .
six
A company executive official came to see Ninja, he found that the master is playing computer games. "What does this mean?" The executive official asked.
"I am testing the system." Master said.
The executive official is close to the screen, and it is true.
Seven
One day, the board member concentrated on discussing business, they recalled the Ninja Master, let him report. "What is your quarter forecast?" Asked.
"There is no quarter forecast." Ninja replied.
"So what about your budget plan this year?" They asked.
"There is no budget plan this year." Ninja replied.
Then they asked: "Can you confirm that you are a ninja master?"
"There is no Ninja master." The Ninja Master replied.
Directors were confused, but they had to suspend the meeting to go home.
Eight
The Ninja Master said:
"Designing a millions of procedures is easy, and it is difficult to change the nature of a person."
nine
Three administine from different computer companies go to the true meaning of leading art to the ninja.
Ninja asked the first executive, "Do you have your company's current institutional setup map?"
The first executor took a piece of paper from the pocket. "I have been with a side." He said with the paper to the Ninja.
Ninja looked at the paper, "This seems to have been established on the computer." He commented.
"So," The executive official said proudly, "We have set up our institutions to set up the map, so that you can choose calls immediately."
The ninja smiled and handed it back. "I can't help you." He said. The second executive official will then ask the true meaning of the art of the art.
"Do you have your company now institutional setup?" Asked by the Ninja.
The second executive is shaking, "our institution has not changed in these years, I remember it a few years ago."
The ninja frowned, "I can't help you." Said.
The third executive official is still asking the true meaning of the art.
"Do you have your company now institutional setup?" Asked by the Ninja.
The third executive is shrugged, "We don't have a institutional setup." He said, "Everyone does what to do, what should I do when I do?"
Ninja frightened, "I can't help you." He said.
The three executive officials got a while, turned over to the Ninja: "So well, let us see your institutional setup."
The ninja led them to a piece of open, there was a tree in the alone. "This is my institution setting picture." Ninja said on the hand of the epidemic roughly. Secondfoot
Master: Will Media: Folk Story Hardware: Display Direction: Southern Software: Formatting Program Feel: Visual Stage: Design Animals: Phoenix System: CP-6
fire
Programming masters have collected a variety of folk stories about development and thorn. The most recent computer archaeological research shows that these folk stories below are based on historical facts. Although some exaggerated ingredients may not intend to add in, the core content of its historical truth still exists.
One
When a project manager is equipped with his software project, he will hire three hundred programmers within a day. A scholar who obtained a Ph.D. in computer science came to seek jobs, and he was given a high position.
One day, the project manager was dismissed. "I think everyone should clear their responsibilities and fulfill their responsibilities." The new project manager said this when reviewing his programmer team. When I heard this, the scholar quietly slipped away.
two
The two programmers are emergency about the user interface.
"Simple and relaxing in 'use, many significant innovations are being in progress," The first programmer said, "Soon, people will no longer need to read those lengthy user manuals before using the computer. Program Will be self-motivated. "
The second programmer thought for a while, then said: "I am preparing for some wood firewood on the last week, but my ax is old and blunt. So I went to the Hardware store to buy new."
"This is very interesting," said the first programmer, "But what is the relationship with the user interface?"
"This comes with an instruction manual with a length of eight pages." He replied.
three
A third party asked an engineer, a mathematician, a physics and a programmer: "How many faces have a box?"
The engineer first replied. "There are four faces in a box." He said.
"How do you say this?" Asked the wise.
"The four vertical faces are what I said, they are connected by one top." The engineer replied.
"Too ridiculous," mathematician commented, "there is six places in a box."
"How do you say this?" Asked the wise.
"The box is a cube, so there are six faces.", Mathematician answered.
"No," physicist said, "There is twelve in a box."
"How do you say this?" Asked the wise.
"Strictly speaking, there are six external faces and six internal faces." Physicist answered.
The wise man looked at an unscrupulous programmer. "What about your opinion?" Asked the wise.
"There is only two faces in a box." Said programmer.
After listening to this, engineers, mathematicians and physicists laughed.
"How can this happen - only two faces?" When the laugh stopped, the wise man asked.
"This is based on personal experience." Programmer said, "The 'is the place where the board is placed, and' outside 'is the place where the display is placed." "Just this." The wise man said.
four
A new Director is holding meeting with programmers.
Among the banquets, a programmer recited the following speech - "We have been looking forward to your arrival, your predecessor does not have this noble ability. Now you are here, we will become Really productive. "
This new director is flattering, "Is this speech writing?" He asked.
"This is the practice of our development center." The programmer said, "No matter which new directors arrive at the time, we must publish the speech, this is the only one-stage speech I know."
Fives
One day, a programmer in the development center found a set of algorithm systems that can generate maze patterns. He is very diligent to modify this algorithm so that it can generate an uninterrupted maze on a long print strip.
Soon, he made a maze with hundreds of thousands of pensions, forty feet long, seven feet wide. He hangs the print paper with a long aisle of the programmer's office. After a while, all programmers squeezed before the maze, trying to solve this huge problem.
The Director of the Development Center hacked from side by side, he stared at this scene, and his face was gloomy. But when he walked into the programming master to seek help, the master didn't have there.
six
Five beginners cried into the master's office, "Hey, hey! I heard that our project may be canceled."
Master said: "All things continue as usual until they stop."
After listening to this, those beginners returned to their respective work.
Seven
One day, the development center received the news, a new director will be appointed to be responsible for this, he is a minister of military machines and is very little to the computer.
The programmers heard this news was very surprised, and they stopped programming and wasted many times in the upcoming unfortunate day.
Seeing these, a master must do something. So he borrowed a set of clothing to dress up the gorilla.
Soon, the ministers took place, he convened all managers to a small meeting room, coming to a few headquarters of the company's executive officers, it is said that they are to make the development center "smooth transition".
Suddenly, the master went to dress up the gorilla. He shakes the meeting table and kicks the file is everywhere, and the executive officers are screaming, the executive officers are sitting there. Then he left the conference room, just as he came.
When I heard this, the programmer returned to their respective jobs.
The author has talked with a few people, and they all witnessed the incidents depicted in this legend. The author has also heard that a similar provocative behavior has happened in a certain department of IBM. The second event and the first difference are in that the programmer worn a sportswear and coughed loudly at the door.
Eight
A group of programmers are reporting to the chairman. "What is the biggest result this year?" Asked the chairman.
Those programmers discused for a while, then replied: "Our bugs in this year (program error - translation) are 50% over last year."
The chairman looked at them in confusion, it was clear, he didn't know what bugs mean. After he smashed with the ministers around him, he turned around to face the programmer. "Such a bad quality control, you should be careful. It is not allowed to have 'bug'!" He ordered next year.
It can be sure that the second year of the programmers reported to the chairman, and the BUG is only not mentioned. nine
A company executive came to visit the development center, and he walked in the long corridor, just like a generals of reviewing the troops. He talked about talking to the people he encountered from time to time. Finally, he walked into a programmer's office, and the programmer is giving the operating system for the operating system.
The executive officer looked at the office and noted the statue of the pigs posing on the terminal of the programmer. "I often attracted deeply attracted by programmers," said the executive officer, "It seems to have some very interesting stories behind them. For example, what is the statue there?" He pointed That statue.
The programmer lifted up from the terminal, blinked, then stared at the statue, it would like to see it in the head. "This is a head!" He said. Third earth
Master: Hidden Media: Said Hardware: CPU Direction: Medium Software: Debugging Program Feel: Olfactory Stage: Encoding Animals: Cattle System: OS / VS
earth
The author of the following quotations, programming masters, the image in people's minds is very blurred. He was assassinated by the special agent of the COBOL Language Standards Committee, in addition to this, people know very little about him.
One
I've heard of it:
At the beginning, it seems to be more easy, and it is often the most difficult at the end. That's why programmers say - "I need half time in the previous one percent, and the other half is used to complete the last 100%."
two
I've heard of it:
The biggest mistake in the human-machine interface is the right to ignore the computer. The system that is forced to compatibility with the old concept is always limited by history. Computers should not simulate reality - they should surpass reality.
three
I've heard of it:
A computer company has designed a powerful system, which is in the age of it. Because worried that this new design may be copied, they are designed for hardware structural design and apply for the operating system.
Ten years later, a beginner asked the programming master asked the grungy and old wooden box behind the data center.
four
I've heard of it:
Don't let political reasons affect technical decisions; don't make political decisions according to scientific papers. These things will only be mixed in the minds of ignorant.
Fives
I've heard of it:
The project plan and the scheduled timetable are meaningless. The milestones of those dates and projects are not meant. However, there is a secret schedule that is understood by all people working in a project. This secret schedule has never been fooled by the outside world, and has never been manipulated to cater to the market. This secret schedule is always complied because it reflects mutual understanding between members of all development units. When the project reflects this reality, the program will be completed as scheduled; when the project plan is contradictory with this realistic, the program will be delayed.
six
I've heard of it:
There are three situations that will definitely lead to failure of program design projects. The first case is that the manager of this project does not know about the software; the second case is that the project leaders responsible for the program code is not interested in writing code; It is a temporary employment, lacking loyalty to the project. Any of these three situations will lead to the failure of the project; the three situations appear at the same time, they will die.
Seven
I've heard of it:
Many company executives are happy to see the institutions that put them tall and let their subordinates. These executives are tantamous in those who play "Kings on the mountain" game. The institutional settings are sometimes called a tree structure, but the executives used by those structures seem to always forget, the tree under the bottom is the tree that has been raised by the roots, how long does it take? Excellent executive officials always think of themselves as an organization's inquiry, withstanding the burden of leaders, because this is the best way to play a role. This is the famous fable of the programming master ninja - he can't teach the true meaning of leading art, because the three people who want to be his students believe in their own strength. When an organization is leading the leadership, the employee does not even know that they are being led. When the project is completed, they will say to themselves: "Look at our achievements through our own efforts!"
Eight
I've heard of it:
The value of a program cannot be determined by the size of its brochure, or the number of whole page advertisements on the mass computer magazine. These noise is more, the more useful procedures; the real outstanding procedures do not need advertising, the user will open the mouth.
nine
I've heard of it:
There is a cycle, this is the rhythm of the universe. Today, a program is popular, tomorrow is another; today amended the mistake in 500 programs, 500 new things will appear tomorrow. To understand life, you must know the existence of this rhythm. To understand Zen, you must live outside of this rhythm, from everyday life. Only in this way, the mind will be free. Fourth gold
Master: Great God Media: Master Hardware: Printer Direction: Western Software: Interpretation Explanation: Auditing Stage: Running Animal: Rabbit System: MS-DOS
gold
Programming Masters strongly tries to use a unique teaching means of using the public case-Zen in explanation. Usually, each of the general meaning is difficult to analyze, and often have good meat and external meaning.
One
A beginner who studied a long time in college came to visit the programming master.
The beginner said: "I have remembered the algorithm collected in the 12 books of" Computer Programming Art ", I can use Lisp, Prolog, Algol, Modula2 and Ada language.
Master nodded. "I rarely meet people like you," he said, "I want to hear your opinion about the program I have written."
"I am very happy to help you." Said, the beginner is proud of the chest.
The master walked into a floppy disk before his computer. "First of all, I have to copy it." He explained.
They sat there and listened to the rotating drive Shasha sounded. Suddenly a message shows a message, "There is no space on the disk --Abort, Retry or ignore?"
The master knocked a "R" for retry, they listened to the sound of the drive again, then the prompt appeared again on the screen. Master only had a "R" again, repeating the same thing.
Finally, the beginners can't hold it again. "There is no space on the disk," he said angry, "he is too full!"
Master said: "It is too full of your head."
The beginner suddenly realized.
two
Master said: "Any program, no matter how small it is, there is always a mistake."
The beginner does not believe in the master, "if a program is only to execute a simple feature, what will happen?" He asked.
"Such a program will have no meaning," Master said, "But if such a program exists, the operating system will finally fail. Generate an error."
But beginners are not satisfied. "If the operating system does not fail, what will happen?" He asked.
"There is no operating system," Master said, "But if such an operating system exists, the hardware will finally fail, generate an error." The beginner is still not satisfied. "If the hardware does not fail, what will happen?" He asked.
Master sighed. "There is no hardware that doesn't fail," he said, "But if such hardware exists, users will want this program to do a different thing, this matter is also a mistake!"
There is no mistake, it is a paradox, it is hard to find. Assume that there is a program without any errors, then this world will not exist.
three
The magician in the Tooth tower came to visit the programming master, like it, brought him the latest invention.
Programming Master looked up from his terminal and saw the magician standing at the door. "What did you bring this time?" Master asked.
"This is my greatest invention." The magician said, using the car to enter the house, "This is the ultimate table printing system, with it, typography, diagram table and camera can do things I can do. Alternative. I have been designed, anyone who is familiar with traditional typography can learn in a few months. There is a sample that I made here, look, it is the home page of "Guanthen Bible". "
The master carefully looked at the sample, showing a smile. "What is this device intended to do?" He asked.
"We will use it to print technical descriptions." The magician said.
The magician often appeared in the folk story of Zen, as an opposite. Does this person really exist, so you don't know. However, there is a legend that this ivory tower has been controlled by a fanatic believer, which is unable to go to dry software piracy, murder, and other various unethical things to retaliate the CRAY-2 super in the machine era. The rule of the computer.
This ivory is surrounded by the third dynasty and almost destroyed, but because of the government assistance, it is scared to be difficult and rebuilt.
four
A beginner walked into the masters of the masters and saw a new computer on the table.
"What is the computer?" Beginner asked.
The master took the hand on a small box, which is connected to that computer through a cable. "See," Master said, "This device controls our things that we see on the screen."
The beginner stared at the screen tightly, but he saw the meaningless symbol.
"This screen is imitated is a table," Master explains, "For example, the screen is here is a file cabinet and trash, this is a typewriter and calculator."
"This is a great invention." The initiator won the low voice.
"It is not as great as it looks like it." Master said that he retired a few feet behind beginners. "Can you see the two tables?" Master asked.
The beginners nodded. "A piece on the floor, another board on the screen." He said.
"Is this. So, is there anything less on a table?"
Beginners can meditate. "There is no computer on one of the tables." He said.
The master shakes. "There is no computer on any table."
Fives
An initiator asked the master: "What is the real meaning of program design?"
The master replied: "When you are hungry, you will eat it; when you sleep, you will sleep when you are sleepy;
six
The programming master walked into the work between beginners and heard a riots.
"These dead computers!" Beginner is angry, "If you want to do something, I have to use three or even four editing procedures. Sometimes I am causing confused, and the result deletes the entire file. This is unbearable! "
The master stared at the beginner. "So how do you plan to remedy?" He asked.
Beginners thought for a while. "I will design a new editor," he said, "a program that will replace all these programs."
Suddenly, the master knocked on the head of the beginner. This hit is not heavy, but the beginner is very surprised. "What do you mean?" The beginner shocked. "I don't want to learn another editor." Master said.
The initiator suddenly realized.
Seven
A beginner asked the master. "Whenever I am programmed on a new system, I must learn a new language. Why is there a standard?"
The master turned. "The only real standard is death." He said
Eight
A beginner asked Master: "Is there a Buddha in the ADA compilation program?"
The master replied: "Have you noticed that the character NUL is 000 in the eight-in-one, hexadecimal and decimal?"
The initiator suddenly realized.
nine
Two programmers named Di Agu and ancients are reporting to the chairman of the big company.
When ancient plots stood up, he said to the company's executive official, "you are born and smart, you can understand the true meaning of the computer." "," Di Agua said, "Why do you praise this stupid? He may be an administrative? Official, but he didn't know about the computer. "
The executive officials gave them award, and then hired a consultant to determine who they were wrong. Fifth water
Master: April Media: 俳俳 Hardware: Disk Direction: North Software: Compiler Feel: Smectance Stage: Test Animals: Snake System: UNIX
water
Nun April was originally written. The sentence is short poetry, with a pre-first good chapter to try to express an emotion or an idea. April's sentence, morely, a loneliness life of a programming man: Working in the middle of the night, the unfair test, looking at the simple joy of the program, waiting. All programmers have these experiences, but they rarely mention that even between them.
The last part of this book is obviously a fragment in a masterpiece. The author is not talented. Failed to completely translate these short poems, to achieve similar effects with the original poem, but also to read more.
One
The program is just a dream,
Born in an invisible zen,
We are just those who dream.
two
I am programmed for three days.
The two ear will not smell people,
Only hard drives are singing.
three
Compiler is running,
Like a rushing river,
I quietly wait.
four
Why use Lisp?
I don't understand the COBOL language,
So I use LISP.
Fives
Program the night,
Through the window, take it on the screen,
Rising sun.
six
hardware and software,
We are your owners and slaves,
Our life is a program.
Seven
can you hear me,
The sound of the program?
The answer is NUL.
Eight
Email said,
The project has been canceled.
When I cleaned the document, I cried.
nine
The calculation center is empty,
Quiet only has a fan in a humming.
I walked through a row of CPU,
The magnetic flux tatched my skin.
I opened a door, cold and hard,
See the indicator beats on the control board.
A machine with no soul, people say,
But its soul is the sweat of colleagues.
There are our lives in it.
Disappointed, friendship, sadness, joy,
The ecstasy when the algorithm is successful.
And countless people who are unless.
I heard the echo of sigh and laughter,
In this black hole office,
The terminal is shining, just like the stars.
Related resources: Programming Zen PDF