Re:Is High Quality Software Worth the Cost?
by commandlinefan on Thursday May 30, 2019 @10:13AM
(#20051303)
At an old job, they were using an older XML marshalling library that hadn't been maintained in years, but it was everywhere in the code. Well, it finally got to the point where the thing just stopped working (some schema it couldn't parse), so somebody suggested that we "refactor" the code to use the more standard, well supported JAXB. Well, since we're talking about a couple million line code base that parsed XML literally everywhere, the refactoring ended up taking months (mind you, this was something we were completely dead in the water if we didn't do). However, it got into management's collective hive mind that refactoring = several months of no new features, so they prohibited anything called refactoring.
Re:Is High Quality Software Worth the Cost?
by humanrebar on Thursday May 30, 2019 @08:14AM
(#20050370)
I can't speak for everywhere, but it's generally not that hard to get another software job. Places like that tend to have few people with both experience and the ambition to improve things. The turnover rate in general is usually high.
Anyway, developers tend to have plenty of leverage, in switching jobs or teams if nothing else.
Re:Is High Quality Software Worth the Cost?
by tonyedgecombe on Thursday May 30, 2019 @08:58AM
(#20050662)
Why are you asking for permission to do the right thing?
Re:Is High Quality Software Worth the Cost?
by commandlinefan on Thursday May 30, 2019 @10:09AM
(#20051265)
Probably the time-tracking bait-and-switch. As a developer, you have to account for every hour you spend on "company time", and you have to forecast those hours ahead of time (usually at the beginning of a "sprint"). You've got a little bit of wiggle room to sneak important things (like refactoring code, writing tests, reading documentation) in between the forecasted tasks, but not days. I guess your employer hasn't gotten "agile" (which is management-speak for "not agile") yet.
I am curious about your example. When you guys tell management about the best practices what is their response? What is their reasoning on not doing PR reviews, tests, etc ?
Re:Is High Quality Software Worth the Cost?
by larzang on Thursday May 30, 2019 @08:07AM
(#20050328)
"In the real world...", "Nobody cares about how it works as long it works...", etc. This is a company where the top level management 1) thinks it knows best about everything, 2) micromanages everything, and 3) trusts absolutely no one to do their jobs. The CEO has a software degree but never really worked as a programmer professionally and is as obsessed with exclusively shipping features as any MBA, and it flows down from there.
When you hire subject-matter experts to do professional work and then refuse to believe that they might know more than you about how to do that work, you're going to have deep dysfunction.
Re:Is High Quality Software Worth the Cost?
by Ensorceled on Thursday May 30, 2019 @08:03AM
(#20050296)
"We don't need the gold plated version, we just this to work and we need to ship it YESTERDAY"
If you try to explain they just say things like "don't write bad code so you won't need tests and refactoring"
My new rule of thumb is: don't work for companies without a technical co-founder.
I agree having technical leadership makes a huge difference. Still, most developers don't realize that if they push back hard enough, a lot of those loud "done yesterday" requirements dissolve. Non technical people always ask for more than they expect they'll get.
Re:Is High Quality Software Worth the Cost?
by Ensorceled on Thursday May 30, 2019 @07:13PM
(#20056892)
True, but at some point, it's just exhausting. Every conversation is an exercise in pushing back.
Re:Is High Quality Software Worth the Cost?
by NedIsakoff on Thursday May 30, 2019 @08:05AM
(#20050314)
At my current company it’s basically the roadmap.
Then you've never worked at a company like my current one. The developers all very much want to do those things, but are forced not to by a management that is suspicious of the value of these things no matter how many times avoidable bugs pop up or massive refactors become unavoidable to add new functionality and management gets "I told you so"-ed. Tests are regularly postponed to follow-up issues that mysteriously never make it into sprints and preventative refactoring is a non-starter.
What the developers want or are capable of is meaningless in a situation where they have no leverage over how they spend their time.