-
Developers usually look down on the idea that they could build something by clicking with a mouse.
-
Meanwhile, the vast majority of developer tasks are not rocket science, but routine work.
-
The very kind you are not interested in and want to get rid of as quickly as possible. Within a project, your choice of tasks is limited. It is unlikely that only interesting and creative work will come your way (which implies that someone else will handle the boring tasks, and then everything said above applies to that poor person as well).
-
It is almost impossible to avoid small, and sometimes repetitive, boring issues altogether.
-
Simply because someone has to handle them.
-
How will the situation change within an LCDP?
-
Boring tasks will not go away and will keep appearing just as often, but instead of spending countless hours on them, you will be able to finish them many times faster or even hand them off to someone who is not a developer.
-
Why write yet another integration between systems when you can build it faster with ETL solutions?
-
Why fill a sprint with building a new screen if a designer can click it together?
-
The faster you complete boring tasks, the more time you free up for more interesting ones.
-
Moreover, statistically, you will get interesting tasks more often, because the break for routine work will shrink many times over. And what about truly talented developers, the ones who can solve any of the hardest problems elegantly and quickly?
-
After delivering a task as code and then receiving a change request six months later, they face the following: they have to remember how everything is written here; it probably needs refactoring because code becomes outdated quickly.
-
But very few teams will volunteer for refactoring. And few business users will understand why a minor change was estimated at several days.
-
We wanted to write interesting code, but after some time we are not writing anything interesting.
-
What remains for us is operations and a guilty conscience for the fact that things here are already not very pretty.
-
If you think in terms of an LCDP, it is not limited to just faster handling of routine tasks.
-
Refactoring happens not at the level of end value, but at a higher level of abstraction - at the level of the builder component implementation.
-
As a result, you have to think more and design more.
-
Fewer areas remain outside your oversight, and creating a poorly maintainable task in an LCDP is much harder because even non-developers can spot at least bad naming or flawed logic.
-
The approach itself makes you think more in abstractions.
-
Many team leads solve this problem for themselves like this: other team members handle implementation, while they do the thinking.
-
This leads to nothing good.
-
Such team leads often start missing code, and the team as a whole becomes more fragile.
-
The antifragility of such people is ensured by the fragility of other team members, who act as typists.
-
Both traditional and low-code developers can be susceptible to this flaw.