Project management

PM comes and says that we need tea for tomorrow in 3 minutes

PM - Project manager (project manager).

You say that only 5 kettle will boil. PM insists that the client is asking very much and this is extremely important to us, you bend under the onslaught and decide to think about something. You throw a bag into the kettle, fill it with water and wait for the water to turn brown. You clearly understand that you will have to remember to wash the kettle, because this will leave tea rings and possibly mold. You pour the resulting colored water for the client, the PM says with a happy face: well, you see, you can. And you think that you would not want to do that to you ... But circumstances demand. And as soon as you relax, the PM flies in and says: have you even tried this?

You realize that there is no taste for the campaign ... You try to justify yourself, but then the PM interrupts you and says: what does the taste have to do with it, it's not boiling water and you quickly start thinking what to do. You think about boiling for a long time and find a ready-made solution - an old boiler in the closet. You throw it into a mug, plug it into an outlet, it heats up, and the PM looks at you and says: hmm ... We can't leave such dependence on the cable ... And you understand that a good solution just needs to be finished, naively believing that you are went in the right direction. You find the battery, connect it, and everything works, even though even the PM realizes that something is wrong here. And then the intrigue arrives ... PM-but there is no hour, two ... You start to think that they are either discussing your dismissal, or PM-and lost somewhere, maybe he has already decided to finish. But then the PM flies in and without a drop of explanation says: the client is very satisfied, it is necessary to make pasta just as quickly. You are at a loss - they say, okay, it worked, you go and look at the kettle and think, what else can be done in it. But since it's Friday night, you think that you've had enough of such adventures and agree with the PM for Monday.

Here it is Monday. You are full of energy and having slept with the knowledge of what you did on Friday, you remember about pasta. Without a second thought, you pour pasta into the kettle. Add water and turn it on. A minute passes and you understand that pasta does not paint water and how to understand that they are ready will not be so easy. But ... when you open the kettle, you are filled with extreme surprise. The pasta really colored the water. But the smell of tea brings you back to reality where you remember your TODO: wash the kettle. Taking into account that there is no time, because the PM will now fly again, you mix this nonsense and think - oh well, that task was - to cook them and quickly, and not the color, smell, we will write off the given technical requirements for inaccurately. But then you realize that makarokhi is not tea at all and screwing a boiler to them so that while they are carrying them is not an option, because the client will understand that this is soup, not pasta. In order not to spoil all the raspberries, you boil the second water with a boiler, but already in a bucket half full. It would seem: what is happening here, but no, the idea is still there. Cover the bucket with a colander, pour the kettle with brown pasta into a colander and cover with a lid, the pasta will reach the client in a cooked state with steam. The PM flies in, you say with a satisfied face that everything is ready, you hand him a bucket with a lid, a boiler, an accumulator. In the PM, the joy on his face smoothly flows into surprise or shock, but dissatisfaction seems to be invisible. He says “okay” and takes the bucket. You clearly realize that all this will end badly and while you have free time you update your resume, but the PM is talking about the nuances: it is absolutely impossible not to open the bucket while the battery is connected.

After a while, a new developer comes in and sees all this:

Kettle, bucket, colander, boiler and battery.

Logical questions are brewing in the developer's head:

Why a boiler when there is a kettle.

Instead of killing someone with a battery.

Why is the teapot black inside.

What a chance if you carry a bucket badly - the boiler will drown, it will short out and everything will explode.

And the classic questions: how did it work at all, since there is no documentation, no old developer, and the second question is why it was done this way.

We can go on, but let's draw some conclusions already:

The PM screwed up because he is afraid to say that normal solutions take a normal amount of time for the customer.

The developer was not used to such a pace and decided for the sake of the result, neglecting the consequences.

TODO: - done when something really comes out in this place or very rarely. You either have time to do it right away, or it won't appear later. But there are exceptions.

Similar processes can sometimes require completely different approaches. And sometimes the normal solution is just around the corner.

Fear is our biggest enemy and because of it there are reservations, excuses, fear of admitting that you are a human being and you will not normally do it faster than “yours quickly”, fear of telling the customer that we need accurate technical documentation and specific requirements, fear of asking from a more experienced one, at a forum or seminar. Developers go to seminars, and half of them really don't understand why. Yes, they say, so ask if you do not understand, this expert speaks so that people would understand, so that they see more.

Lack of experience forms crutches that often lead us to make decisions that completely lead us in the wrong direction. Like a ship: I overlooked where the pole is, I was mistaken by 2-3 degrees, like a trifle, but after a week of movement in this direction, it can be hundreds, or even thousands of kilometers, to correct this jamb.

Developers often think that PM is smart and all problems are his problems. But he is also human and can be wrong too. He also needs help and advice on how to do it right and why something might go wrong.

If there is no time for documentation, but you clearly understand that the code will not be easy - just leave 2-3 comments. So that after your vacation, you or another developer could fix the jamb in your code. Code comments are fine, but commented-out code is undesirable.
Papay 23 march 2021, 13:13
Vote for this post
Bring it to the Main Page


0 minion89 March 25, 2021, 10:33
Anytime I come to this forum, I learn a lot. I am waiting for new articles from you. Thanks for sharing.
0 faulknernolan June 26, 2021, 3:15
Thank you for sharing this article. I appreciate the effort you took to write it. Please make more posts like this I will continue to support you.

Leave a Reply

Avaible tags
  • <b>...</b>highlighting important text on the page in bold
  • <i>..</i>highlighting important text on the page in italic
  • <u>...</u>allocated with tag <u> text shownas underlined
  • <s>...</s>allocated with tag <s> text shown as strikethrough
  • <sup>...</sup>, <sub>...</sub>text in the tag <sup> appears as a superscript, <sub> - subscript
  • <blockquote>...</blockquote>For  highlight citation, use the tag <blockquote>
  • <code lang="lang">...</code>highlighting the program code (supported by bash, cpp, cs, css, xml, html, java, javascript, lisp, lua, php, perl, python, ruby, sql, scala, text)
  • <a href="http://...">...</a>link, specify the desired Internet address in the href attribute
  • <img src="http://..." alt="text" />specify the full path of image in the src attribute