Every job comes with ups and downs, with days full of productivity or with blank moments when you might not have any idea.
We do get mad when something isn’t working and we are annoyed when we can’t find the solution right away. So, here is a list of a couple of things that can cut off the joy of any working day:
Every developer needs well-written documentation on hand, however
- Developers hate writing documentation
- Developers hate even more written documentation
It is a developer’s passion to write code, but not exactly a beautiful dream when it comes to writing an instruction manual.
2. Writing the same code day by day
Even though the job revolves around coding every day, it doesn’t mean we as developers love to write a similar code over and over again.
3. Long or unnecessary meetings
The feeling of being productive makes you keep going and be highly focused. When developers get interrupted feels like they had started from ground 0 all over again.
“Should we have a meeting about this?”/”We should discuss more, let’s have a meeting”/”Maybe a meeting for it?”
Too many meetings or especially the inefficiently run ones can be a disruptor, so you might be familiar with this:
- The meeting that could have been an email actually
- The unnecessary pep talk meeting
- The chaotic meeting, without any clear direction
- The meeting where everybody brings up new topics and the length if it’s uncontrolled
Going hand in hand with long unnecessary meetings are interruptions. You know that there is a good reason why developers are wearing headphones every day, to shut out any distractions that might appear during work.
Just as mathematicians aren’t answering the questions by solving them on paper, developers have the code in their minds.
If they are focused and someone comes and breaks that rhythm, this may lead to a good amount of minutes into trying to take that mojo back.
5. Everything is a priority
When everything you have to do is a top priority it kind of loses meaning. Many developers have been through this and usually it tends for the work to take longer to do or not even in the best way that could have been done.
6. One more thing
We are talking about last-minute or unclear requirements, missing or incomplete user stories.
It happens like this, the team finishes the core work for a software project, and once people start using it, a waterfall of requirements starts falling. “Ohh, it’s good, now we can make this feature to do this!“/ “Pfffff, this feature is not that good, why did we do it?“. You feel pure agony when this happens.
Having too many of these situations in a project can lead to feature creep. And it starts as a chain reaction because creeps go beyond the basic function of the product and can result in software bloat and over-complication, rather than a simple design.
Solution? To prevent this, the team needs to understand that developers believe in the idea: Just do one thing well.
7. Bad coding legacy
Every single person has a different style of coding, and just as writers, each one tends to transform each code they see into something that aligns with their desires. This doesn’t mean that developers hate everyone’s code except their own. Most of them have to learn, examine, and admire the code of more experienced programmers. Although, diving into the code of a programmer who didn’t do such a good job can be frustrating.
The biggest challenge comes when you have to understand other architectures and processes, you wrap your head around it. It’s especially difficult when the previous programmer didn’t create any documentation explaining how everything works, a heads up for point one of this article.
To wrap everything up, if you do your work well, without disturbing other people and with care for it, everyone will be happy. Respect your work and be thoughtful, because you always get what you offer.
Also, for all the managers out there: a good programmer is raised, you invest in his development by offering productive challenges, and also emotional support.
Hi, I'm the Technology Interpreter™. I interpret and facilitate successful software projects. I speak 3 vital languages: the language of the designer, the language of the engineer and the language of the client. Being an interpreter, I'm making sure that I deliver high quality, cost-effective solutions on time according to client's needs. Nice to meet you!