A lot of software development deals with integrating some badly designed system with another badly designed system, resulting in a system that is even worse to use and to maintain. At least that's what I have been observing during the last few years, mainly in the domain of so-called enterprise software.
Why is that? I am not sure but I guess it's because it generates revenue. It makes sense from an economical point of view. Crappy software is simply a sustainable source of income for some of us.
But is it healthy for the developers or the users? Even though it might sometimes be highly intellectually challenging to work on this type of project, I guess that most of us are not interested in doing just another bullshit job. Furthermore, this effect is bad for the reputation of our profession as a whole.
Did you make the same observation? Is there a way out?
(By the way, luckily most of my own projects do not belong to this category, however some of them do.)
Top comments (1)
This is a hard topic to easily pick at, but I'll comment a bit.
It's interesting here, that I really feel like it's better when there is some high level honesty, and not having that, for me, is where a lot of the bullshit comes from.
Like, shipping okay software and knowing that you're not shipping magic or solving everyones' problems is great. Shipping bad-to-okay software and having it marketed as the answer to everyones' problems is where some frustration comes.
Some software firms market in grounded ways and I think that honesty and sensibility works its way down to the engineering team. When we pretend we're infallible, it's easier to feel like our work is bullshit.
My 2 cents.