When I first obtained the book "the greatest truths and the Ultimate simplicity-the thoughts of software engineering practitioners", I attended a technical meeting held by csdn in Beijing in, the author of the book, aimingoo, is also one of the participants, so he has the opportunity to get the book in the first place, and he signed the book by himself.
During the meeting, I roughly flipped through this book and did not have time to read it carefully. I just thought that its cover and internal layout were relatively good. In this way, this book has been sleeping for nearly a year in my hand. After arriving in Shanghai, there was a lot of time on the bus every day, so I brought this book around so that I could pass the time on the bus. This reading doesn't matter. I was immediately attracted by this book. Several times I was fascinated by reading it in the car and almost missed the car.
Chapter 1The essence of Programming
The first section of this chapter is very exciting. The author skillfully combines the yugong mountain migration in the column sub-Tang Wenwen with software engineering (coincidentally, in 2007, a book named "The path to migration to the mountains-Guide to vsts development" also used the story of yugong's migration to the mountains ), the analysis proves that yugong, as early as two thousand years ago, not only acted as a project organizer, team manager, programmer, technical analyst, and many other roles during his mountain migration ", it also has the basic qualities of programmers.
Yugong Yishan |
Project Management |
The congestion of the mountains and North, the entrance and exit |
Generation of original project requirements |
Gather together and seek for help |
Basic project communication methods |
Bi Liping insurance refers to the southern Henan Province, reaching hanyin |
Project objectives |
,BackupAt the end of the Bohai Sea |
Technical Implementation Scheme |
Yugong |
Project Team member (one project manager and three technicians) |
The wife of the neighboring city, who has left a male and started to jump to help |
Project outsourced staff |
In the face of hequ's question about the feasibility of the mountain migration project, yugong haomai declared that "Although I am dead, there are sub-accounts. Son and Son, son and son, and son ". This is the comment in the book. The previous sentence "describes the possible branch structure, that is, if condition judgment ", the following sentence describes the cycle structure necessary to complete this project ". Because the "mountain does not increase", the condition "mountain level" will certainly be true (how bitter and uneven), so it will not be an endless loop. As an "Excellent Program analyst", yugong demonstrated the feasibility of the project implementation.
The above content shows the root of programming: sequence, branches, and loops. A huge project such as mountain migration can be implemented through simple programming. This is the essence of programming, it is also the focus of the book from beginning to end.
Chapter 2It's a method created by a lazy person.
In the previous chapter, Yu Gong became an all-around player in his writing. As long as he could think of it, there would be nothing he could do. In chapter 2, the author invited yugong to the altar and thought that Li Bing (presided over the implementation of the famous Dujiangyan project) during the Warring States period) the "Laziness" shown in the mountain migration process is even more worth advocating. During his tenure in Chengdu, Li Bing used the method of "building a pay-as-you-go" to flatten a mountain. Yugong's mountain migration is your persistent insistence, while Li Bing's mountain sinking is your adoption of a new "method" which can be said to be a "lazy method" and quickly solved the problem. Looking back at the history of human development, in a sense, it is said that those "lazy" have pushed forward the wheel of history. "Lazy" did not like to wash their own clothes, they invented the washing machine; "lazy" was too tired to walk, and they invented the car.
I had dinner and chat with a few friends the day before yesterday. One of them told a "Soap Box story", which also included "lazy methods ". There are two soap manufacturers, because the equipment is of the same model, so there may be a problem of leaking packets of soap during packaging. Factory A then hired a university professor to lead the R & D team to tackle this problem, hoping to minimize the probability of empty soap boxes. The R & D team used the world's top-notch technologies (such as infrared detection and laser radiation) and finally completed the soap box Detection System after spending $0.3 million and half a year, effectively reduce the empty filling rate of the soap box to less than 5%. The boss of manufacturer A feels that this system is awesome, so he finds a chance to go to manufacturer B to show off. After listening to his discussion, B's staff took him to the soap production line of B's factory. The boss of manufacturer A immediately dummies when he sees it. He sees an electric fan at the end of each production line blow the hair to the production line, and the soap boxes without soap are blown down by the wind. This story also tells us that we should pay attention to the "method" for doing things.
Back to the contents of this book, early programmers were used to writing all the code into a single file, even 1 million lines of code. It is reasonable to write all the Code together with various restrictions. But later, the code that clearly can be stored separately will write a file, and even as a show of capital, it will be unwise. Those "lazy" programmers created the concepts of "unit" and "MODULE", and the era of structured programming began.