Play one idea, harvest one kind of behavior; play the next kind of behavior, gain one kind of habit; play the next kind of habit, gain one kind of gender; play the next kind of character, harvest a kind of fate.
-- Import from <boiled Three Kingdoms>
For a long time, programmers have been seen as a typical model of silence. They can sit down alone for a long time and don't discuss with others. They face people who work on paper and computer screens. At present, this phenomenon is no longer an end. The new, especially Agile Methodology, emphasizes effective communication between people. The most effective communication is face-to-face communication, this is where the great success of Pair Programming lies. As Alistair Cockburn, founder of the crystal methodology, summarized software development activities: "software development is a collaborative game with limited resources for creation and communication. The primary goal of a game is to deliver useful and workable software. The secondary goal is to prepare for the next game and accumulate knowledge. The next game can change or replace the current system, or create another related system ." The success of a software development team depends on cooperation, communication, and coordination. All of these factors are people-centered. It is precisely because the human factor determines the success or failure of the project, rather than any process or technology selected, this factor is often ignored. When technology conflicts with people's understanding and cultural values, technology will no longer be effective. A team with sufficient personnel and good performance often completes the project better, regardless of the process and technology they are allowed to use. However, human abilities are unpredictable. They are good at searching, learning, and initiative, especially informal face-to-face communication, people also have shortcomings such as making mistakes, sticking to rules, thinking only about innovation, learning difficulties and impermanence. Because people are changing, we cannot expect people to be predictable or everyone to be. Just as you don't want to double the reward for a person, develop a system of double punishments, and pay twice the work time, you just want to get double results. This is because people are not machines, but complex emotional creatures. The output depends on the quality of thinking, speed of thinking, initiative, physical condition, mood, and many other factors. However, the inherent potential of a person is enormous. As long as discipline and tolerance are used to cope with the common weaknesses of the person, the person can shorten his or her length to stimulate his or her internal potential. When people have a sense of pride and citizenship, coupled with good search and initiative, we will find that people actively complete their work every day, which will make the project the best for a long time. In this regard, XP (eXtreme Programming) adopts a wide range of short and informal communication channels, while emphasizing skills, discipline, and personal understanding to minimize middleware requirements, to achieve the highest possible quality and productivity.
Changes always happen
They always take your cheese away.
Foreseeable changes
Prepare the cheese to be taken away at any time.
Tracking changes
I often hear about your cheese so that you know when it begins to deteriorate.
Adapt to changes as soon as possible
The sooner you give up the old cheese, the sooner you will enjoy the New Cheese.
Change
Changing with cheese
Enjoy changes
Take an adventure and enjoy the delicious new cheese!
Prepare for rapid changes and constantly enjoy changes
Remember: they will continue to take away your cheese. If you don't change, you will be eliminated.
-- Introduced from <Who moved my cheese>
Faced with the special challenges of market operation, only those enterprises with highly flexible mechanisms can be undefeated. If you are unable to adapt to changes, they will make you totally invisible. A perfect plan also often encounters unexpected events. Everything in the software is changing. Requirements are changing, design is changing, business is changing, technology is changing, teams are changing, and team members are changing. The problem is not about changes, because changes are always happening. The problem is that they are not able to cope with changes. Only the changes remain unchanged, and we are always ready to make adjustments in this way. Through many small adjustments, rather than several major adjustments, we need to use timely feedback to know when an error has occurred, we need a lot of opportunities to correct these mistakes, and we must be able to do so at a reasonable cost, even if you have to move in completely different directions, this is the life of a programmer. Agility is the ability to quickly, easily, flexibly, and quickly act, to complete the work with minimal overhead, and to adapt to changing conditions. This is like the metaphor of Kent Beck, the founder of the XP methodology, for XP: "The XP team should be a smart ranger who is ready to quickly collapse tents and wander around with the herd. Here, the Pastoral Group may be a design in different directions as expected, a customer in different directions as expected, a member leaving the team, a sudden rise in technology, or a constantly changing business environment ." The foundation of Agile Software development is the belief that there is predictability in our chaotic business environment, and that people or teams are able to deliver software successfully in the face of this unpredictability, this is because the effective communication between developers and between customers and managers makes this collaborative software development game known as creative and communication a success.
Even richer countries will become poor because of the waste of talents. Similarly, the biggest task of enterprise survival is to cultivate talents. With good employees, there are no good customers. The development of enterprises is the development of talents. the prosperity of talents is the prosperity of both undertakings. Put people first, and other things will be less worried.
-- Introduced from <Management Wisdom>
<Capital theory> it is pointed out that all residual values are created by humans, rather than any other machine. No matter how advanced any analysis or design tool is in software development, it is impossible to automatically generate design and code. What actually produces design and code is precisely the person who operates on them, excessive trust in processes and tools and underestimating human intelligence and experience are the source of all disasters. At the same time, the book <Design Patterns> also pointed out that in the long run, in the software development and maintenance process, the cause of software inefficiency is human, and human inefficiency is the most important thing. This seems a bit self-contradictory. In fact, it is an integrated solution, that is, being successful or failed! Low Efficiency in software development and maintenance. At first glance, the first thing that people think of is: the technical skills of developers and maintenance personnel are insufficient, the software documentation is insufficient, the software personnel are lazy, and the development or maintenance team's internal personnel relationship is poor. However, it is generally closely related to the internal organizational culture of an enterprise. At present, many state-owned enterprises and private enterprises in China have the following internal phenomena: one horse in front, one horse in front, and one horse in front of the smiling face, the horse following is the horse's ass. Therefore, there will be a group of horse qicai behind the scenes. In this kind of corporate culture, everyone will only take the "Harmony" and "Big person" of the Qianlong period as their idols, and take the "thick and invisible, black and colorless" spirit as the highest realm of life. Imagine that in this corporate organizational culture, people who are truly honest and honest can only swallow their breath, in the spirit of not seeking merit, but seeking for nothing, all day to fear, everyone is self-defense. While the profiteties will be good at flooding the crowd, inviting rewards, seeing the wind and driving the rudder, as long as the mouth is sweet, flattering, and wonderful, will certainly become a fortune, inside, suspicion, condemnation, and subtle and indirect intrigue can be seen everywhere. In the end, such enterprises will not leave real talents, but will leave only some of their ass. If an enterprise culture is like this, what will happen to the development and maintenance team and internal staff! If this is not the case, congratulations. The best environment should be mutual trust, mutual respect, mutual trust, the other party will put their highest interests and the interests of the whole group in their hearts, they are willing to share their skills, experiences, and opinions. To become an effective team member, you must first understand your ignorance. Everyone must learn from others and trust intuition, in addition, an open and honest communication environment is often the best strategy to ensure effective teamwork. As an organization, the core lies in trust in people and an adaptive cultural atmosphere, which can bind people together for effective collaboration. Whether an enterprise is successful depends on how strong it is, rather than how big it is. Enterprises that place people first, have fewer management levels, communicate internal information in a timely manner, and have a strong sense of collaboration among different functional departments are more likely to succeed.
When motivating a person to work in a specific way, compensation is more effective than punishment, and punishment should be avoided as much as possible. If you can inspire an urgent demand in the hearts of others and guide such a demand, you will be invincible. The desire to be recognized and appreciated by others is the deepest hidden nature of mankind.
-- Introduced from <Management Wisdom>
<Sun Tzu's Art of War-combat Article> states: "attackers are angry and take advantage of the enemy. goods are also good. In the vehicle competition, the car won more than ten passengers, and the first winner will be rewarded ." It means that to make the army brave enough to defeat the enemy, it is necessary to inspire the soldiers to hate the enemy; to make the army seize the enemy's supplies, it is necessary to reward the soldiers with wealth. Therefore, in the vehicle war, anyone who has seized more than 10 vehicles will be awarded the first person to win the chariot. Similarly, <six chapters of Sushu> also pointed out that, if you do not appreciate small achievements, you will not be able to stand up. This is the same as the previous one. However, many software enterprise leaders in China are still thinking about the following: Chinese people. What's more, what's the use? Let's move one, and they will soon be able to come to a group, what are you afraid! As you may not know, you will be an iron-operated camp, and you will not be able to hold the troops that run in the water. If you do not pay attention to people, you will not be able to hold people. Frozen for three feet, not a day cold, software, less than a few months, more than a few years. In the past three days, I have a new face. It seems to be software, just like a draft. Can such software be successful? Even if they are lucky, they will not last for a long time, because they cannot build a strong and stable team. Instead, they can only organize on-demand mercenaries. Most of the leaders who have the above ideas are usually centered on Directive process methods and products. They regard people who work with software as "plug-and-play" machines, these senior managers often hold the idea of a "Recipe philosophy" and believe that if the Organization has a clearly defined software process method and details the steps of each development activity, all problems will be solved. If the "correct" process has been developed, they can hire anyone (of course, it is best not to have all the people automatically generated by the machine), as long as they follow the established process, perfect software will be produced in large quantities on time and without overbudget. This creed is based on the idea of software development as a science. However, the cruel reality proves to them that, software development is more an art than a science. It is an art that requires skill and skill to collaborate with each other. If the company leader takes care of the employees all day long and grabs the employee's braid, he will yell, show his face, wear small shoes, and often work overtime for free, deduct wages, and pay-as-you-go. Imagine what employees do in this environment, most of them will leave directly, but the people left behind will learn how to sharpen their work. When I was busy at work, I was doing the show. The boss may be wondering how employees can afford this product, and the product quality is declining. As you may not know, this is the same as buying food from a grocery store. The more you bargain with selling food, the more you will be charged for your food, only in this way can the two sides be balanced. Although smart senior leaders always claim that employees are the most important aspect of an organization, they still regard employees as random and replaceable assets, which is also a major shortcoming of mankind: what we say is often different from what we actually do. The so-called "Tao" means to ensure that subordinates are consistent with the values of leaders. In this way, subordinates will live and die together with leaders without fear of any difficulties or dangers and express their lofty dedication. How to align subordinates with the values of leaders is actually very simple. We regard employees' interests as the first priority, people-oriented, value-oriented, trust, and support. In fact, employees have very low requirements for the company, generally as follows:
First, pay on time (basic guarantee ).
2. Get the beverage or food delivered by the Office.
Third, be appreciated by leaders.
4. obtain special authorization to complete a difficult task.
Fifth, multiple bonuses (do not eat big pot meals ).
6. Improvement in position.
7. Salary Increase.
The above items are not difficult for every visionary company leader. Even if they can do half of the work, the employees will be grateful.
Helping others is the most direct and effective way to stimulate your own value and sense of responsibility. In the process of helping others solve problems and taking care of others, our unlimited potential will not only be fully realized. In addition, the relative sense of accomplishment also makes people feel that they have a long way to go and can face their lives more actively.
-- Introduction <good habits, good life>
In the past two years, the popular wolf series <wolf culture> and <wolf totem> have been written. It also brings great inspiration to the development of China's software industry, emphasizing the strong sense of teamwork and a keen sense of smell (both small and coming changes can be noticed), always keep wild (both continuous positive attitude and spirit. Chinese people like to fight in the nest. This is the name, that is, software personnel often attack each other and never stop. You know, there is no "I" in a valid team, only "we ". Here, I borrowed a sentence from handsome Cao zhicao: "This is the same root, it's too urgent to get this fried !" We sincerely hope that the Chinese software industry will truly unite and work together to build our own wolf group culture and get out of the trough as soon as possible. We will announce to the world that we are wolves, not sheep! Creating an effective team is a tough task and is essential for project success. First, by recruiting good developers, starting with good materials, they may not have all the skills they need, but should at least be willing to learn. The second is to cultivate a correct attitude in the team. They can succeed only by uniting with one mind. Everyone should actively participate in system development. It takes time to build and train an effective team, but this is one of the best investments that organizations can make.
If you have never had a failure record in a year, you have never dared to try all the opportunities you should seize. If you are afraid of failure, you are rejected. Those who wish and want to succeed will be much happier and more advanced than those who have been worried about and accepted for failure.
-- Introduced from <Management Wisdom>
If the first version of the software is well done, people will use the software again. As everything in the world is changing rapidly, software needs to be constantly updated, expanded, changed, and modified. The only way to get a stable software is to let the product break down so that no one wants to use it. Stability means that the product is imperceptible. You must understand that the requirement for stability is an enemy rather than a friend. Changing requirements are a harsh reality in life. Wise software personnel should anticipate and handle it in advance, rather than complain about it. Software reuse makes Software creation faster and more robust. On the surface, software reuse issues come from technical aspects. In fact, the real problems come from people. Developers need to get rid of the unbelieving and do not want to understand other people's achievements or just want to focus on increasing their personal experience. If they do not solve human problems, the technical problems become irrelevant. Enlightened leaders and appropriate reward systems can sometimes overcome these problems. If corporate culture suspends repeated use, investment, development, and effort in achieving reuse will not be much fruitful. The most important thing to overcome is effective communication. Although we have learned to separate emotional life from work, however, if the team members cannot continue to communicate effectively, no one acknowledges their mistakes, their grievances cannot be calmed down, and their joys and sorrows are shared, the entire team will not be able to work efficiently. If every one of us can put down the false masks in our lives, express our true feelings, and listen carefully to others' ideas, then the progress of any job will be much smoother.
A person is not born to be defeated. You can destroy him as much as possible, but cannot defeat him.
-- Introduced from <laojinghai>
Life is inherently fragile. We can only live with strength and strive to find joy. I would like to tell you that you must pay more attention to your health while making great efforts. You must know that if you keep the mountains and mountains, you are not afraid of burning firewood. Your health is the capital of the revolution. Never think like this: I used my life for money before the age of thirty, and I used money for my life after the age of thirty. Think about what else we can do without a good body! Therefore, remember to work hard and start from cherishing your life!
Life is not a straight corridor, so we can easily travel in it. Life is a maze from which we must find our way out. We often get confused and search in a dead end. But if we always believe that there is a door that will open to us, it may not be the one we once thought of, but we will eventually find that, it is a beneficial door.
-- Introduced from <Who moved my cheese>
Finally, let me end this article by referencing a sentence in the <WINDOWS game programming guru tips>: "When you see a roller coaster, please sit down and don't hesitate. Open your arm and try your best. Stick to the end of the game, just like life. Your life will not leave too many memories, unless you have resisted, shouted, and persistently stretched out your arms toward perfection. There is no impossible thing in the world, as long as you believe you can do it, you can do it !"
References:
C ++ classic Q & A (second edition) -- Translated by Zhou yuan
Master programming skills for WINDOWS games (version 2)
Design Pattern-the basis of reusable object-oriented software-Translated by Li Yingjun
Analyzing eXtreme Programming-Embracing Change-Translated by Tang Dongming
Agile Software Development-yu Juan Translation
Agile Software Development ecosystem-Translated by Yao wangsheng
Agile modeling-effective practice of extreme programming and Unified Process-Zhang Jialu
Contact info:
Address: Unit 6, No. 90, labor Road, Xi'an City, Shaanxi Province
Zip code: 710082
Future Studio)
EMAIL: jingzhou_xu@163.net