News for hackers. Stuff that matters.
Re:The software industry is going through the “disposable pl... by spamizbad on Thursday August 20, 2020 @06:39PM (#24229852)
People blame developers but it's all driven by a product mentality that favors rapid iterations and technical debt to run business experiments on customers. Slow-and-steady, carefully written software isn't tolerated within many product orgs these days.
Re:The software industry is going through the “disposable pl... by papito on Thursday August 20, 2020 @08:00PM (#24230431)
I am really hating working in the current state of the industry right now. I am used to writing robust, clear, well-tested, and easy to maintain systems.

The job right now seems just stitching AWS services together, and spending the rest of your time debugging and putting out fires.

Re:The software industry is going through the “disposable pl... by jmcqk6 on Friday August 21, 2020 @08:28AM (#24234304)
The lie we tell ourselves is that the quality of code matters to non-engineers. It seems it doesn't.

The most uncomfortable truth of our field is that there is no floor for how bad code can be, yet still make people billions of dollars.

Because that's the outcome everyone else is seeking - making money. They don't care how good the code is. They care about whether it's making money or not.

Re:The software industry is going through the “disposable pl... by commandlinefan on Friday August 21, 2020 @10:03AM (#24234965)
Well, you're not saying it right. When a non-programmer (and even some programmers) hear "bad code", they start thinking in terms of aesthetics. In fact, "bad code" is sometimes just called "ugly code", making the analogy worse. Fast, responsive code is probably "ugly" to some people, but beauty is in the eye of the beholder. Maintainable code is so verbose as to be considered "bad" to some on first glance, but proves its worth when the requirements change. Rather than talk about code quality, we should be harping on product quality, which can only be achieved through consistent software (dare I say?) engineering practices - which, if followed consistently and unapologetically, will accidentally lead to "good" code.
Re:The software industry is going through the “disposable pl... by mint2 on Friday August 21, 2020 @11:27AM (#24235677)
Haha the non-engineers at my place don’t care at all about code quality.

The non-engineers also decided to write their own internal tool, with no review and zero attention to quality. It’s been outputting wrong results that will cost them a few million at least.

Re:The software industry is going through the “disposable pl... by WorldMaker on Friday August 21, 2020 @01:11PM (#24236806)
Reminds me of the job where we'd have huge slowdowns in our massive SQL Cluster because some non-engineers in "R&D" "had" to run unoptimized, barely legible Access queries against it.

We eventually had to create a replica of Production specifically for such nonsense.

Well then we moved a lot more business logic that they "helped develop" that ran on a distributed platform closer to "real time" for the application, because it was very dynamic in nature, and couldn't be denormalized back into the DB and remain performant. So I had to build a new system for some of their ad hoc queries and teach them how to use it.

What eventually chuffed me was realizing the "R&D" person I was "training" on the system always wore a different three piece suit every day and at least in fashion signals was probably making a magnitude higher salary than me for slower, wronger answers than any system I worked on, but probably was great at throwing it (very slowly) into very fancy graphs in Excel and useless salesmanship.

There were a lot of reasons I already wasn't long for that job at that point, but that was a lasting lesson that quality and performance won't matter to certain styles of upper management.

Re:The software industry is going through the “disposable pl... by papito on Sunday August 23, 2020 @01:13PM (#24253404)
I have totally accepted the fact that quality of code does not matter to stakeholders. That actually makes sense. No one got an infusion of VC money because they used Node and the LATEST libraries. They don't care what's under the hood.

What bothers me is that robustness and maintainability of code no longer seems to matter to engineers.

Believe me, the pressure right now to deliver working code no matter what is much less than, say, in early 2000's, when web development was very new and few people knew what they were doing.

Re:The software industry is going through the “disposable pl... by andrekandre on Monday August 24, 2020 @07:31AM (#24259628)
this so rings true it hurts

just imagine if automobiles, aerospace or construction was run like that.... (hint, it was in the early days)

Re:The software industry is going through the “disposable pl... by arvinsim on Friday August 21, 2020 @01:15AM (#24232185)
You try to explain the importance of testing and good code quality to your higher ups only to be retorted with "but we need this to be out in X weeks!".

And then when a production bug is revealed, they then angrily ask "why are these errors occurring?"

Re:The software industry is going through the “disposable pl... by adriancr on Friday August 21, 2020 @03:51AM (#24232962)
I've seen the reverse happen at some companies.

Managers getting taken advantage of by allowing people to do anything in the name of 'technical debt' 'code quality', resulting in more bugs, lots of needless refactoring, tons of layers of abstraction and tests that actually do close to nothing.

Result is they are then surprised it takes a long time to develop new features where competitors do it faster and eat their lunch.

There needs to be some sort of balance, companies need to make money to allow for proper code to be developed, second is also valuable as long as it makes sense financially as well.

Re:The software industry is going through the “disposable pl... by watwut on Friday August 21, 2020 @04:40AM (#24233178)
> allowing people to do anything in the name of 'technical debt' 'code quality', resulting in more bugs, lots of needless refactoring, tons of layers of abstraction and tests that actually do close to nothing.

This heavily points to dysfunctional development team with fault being primary on tech leads making more and more mess the more they code.

> companies need to make money to allow for proper code to be developed, second is also valuable as long as it makes sense financially as well.

This one is merely about putting less resources on development. I don't think it fixes the dysfunctional team above, it is just avoid the issues. There is nothing that would make developers write useful tests. Nothing that would change tech leads, nothing that would prevent unmaintainable code appearing again.

Had the constantly refactoring team ended with very good code for too much of price, then cutting resources is likely to lead to better trade off. But that is not their case, their case is that they don't know how to write good code.

Re:The software industry is going through the “disposable pl... by adriancr on Friday August 21, 2020 @05:04AM (#24233297)
> This heavily points to dysfunctional development team with fault being primary on tech leads making more and more mess the more they code.

You are correct.

> I don't think it fixes the dysfunctional team above, it is just avoid the issues.

Sometimes avoiding the issues is good. My point is that some developers cry wolf too often, focusing them on solving problems and shipping features may yield better results.

Re:The software industry is going through the “disposable pl... by monksy on Friday August 21, 2020 @02:10AM (#24232470)
Or when you tell them to get to that in X weeks that you can't guarentee it against breaking bugs.

Later "WE CAN"T PUT THIS IN FRONT OF A CUSTOMER"

Re:The software industry is going through the “disposable pl... by RikNieu on Friday August 21, 2020 @02:03AM (#24232432)
I have PTSD just reading this.
Re:The software industry is going through the “disposable pl... by searchableguy on Friday August 21, 2020 @06:05AM (#24233574)
I have always wondered if there can be an AWS for employees.

X1 dev, X1 designer, e2 manager, etc. You can autoscale your company through jira integration.

You will save on health insurance, benefits, unproductive time, salaries etc. Only aws will need to cover that but those employees can work and scale for hundreds of companies monthly.

You can have your own college and production line for people out of school so you can grade.

Re:The software industry is going through the “disposable pl... by illirik on Friday August 21, 2020 @07:03AM (#24233840)
"dev", "designer", "manager", etc. aren't interchangeable machines in the same way that compute instances are; they're human beings! Would you personally work for this "AWS for employees", with no job security, with no consistent working relationships with other people, with no knowledge of why you are doing the things you are tasked besides "the algorithm said I must do it, so I do it"? I know I wouldn't.

Fortunately, this is a horrible idea that has essentially zero chance of becoming reality, as things like stable work relationships and a sense of purpose boost productivity, making employees more productive per unit labor cost than a Mechanical Turk for making more Mechanical Turks.

Re:The software industry is going through the “disposable pl... by ido on Friday August 21, 2020 @07:11AM (#24233880)
Isn't it basically outsourcing outfits?
Re:The software industry is going through the “disposable pl... by paledot on Friday August 21, 2020 @10:34AM (#24235209)
Yeah, but "outsourcing outfit" won't get you billions in VC funding the way "AWS for employees" will.
Re:The software industry is going through the “disposable pl... by joquarky on Friday August 21, 2020 @11:51AM (#24235871)
This sounds like the story Manna [1] by Marshall Brain.

In the first half of the story, employees are increasingly micro-managed by a centralized software program which becomes more sophisticated and ubiquitous over time until humanity becomes fungible.

[1] https://marshallbrain.com/manna1.htm

Re:The software industry is going through the “disposable pl... by anonytrary on Friday August 21, 2020 @03:15AM (#24232782)
> The job right now seems just stitching AWS services together, and spending the rest of your time debugging and putting out fires.

This is exactly what our engineers do, too! I am kept motivated by what we are able to do with what we've stitched together. But yes, knowing it is a bunch of plastic garbage underneath is... depressing, almost.

Re:The software industry is going through the “disposable pl... by nix23 on Friday August 21, 2020 @06:26AM (#24233673)
>I am used to writing robust, clear, well-tested, and easy to maintain systems

Maybe then go into the HPC/Defence/Air/Space/Masstransport-Industry, they will love you, no BS thats exacly what they want and need.

Re:The software industry is going through the “disposable pl... by Jade_Jet on Thursday August 20, 2020 @08:07PM (#24230462)
You’ve spelled out exactly how I feel.
Re:The software industry is going through the “disposable pl... by xwdv on Thursday August 20, 2020 @08:10PM (#24230481)
Just means you gotta work higher up in the food chain. You need a new job. Build what other developers eat.
Re:The software industry is going through the “disposable pl... by GolDDranks on Thursday August 20, 2020 @08:38PM (#24230671)
If you build what other developers eat, doesn't that mean working _lower_ in the food chain?
Re:The software industry is going through the “disposable pl... by dbtc on Thursday August 20, 2020 @10:16PM (#24231296)
The plankton shall inherit the ocean.
Re:The software industry is going through the “disposable pl... by bloak on Friday August 21, 2020 @06:31AM (#24233693)
Real food chains are cyclic, a bit like in https://en.wikipedia.org/wiki/On_Ilkla_Moor_Baht_%27at

Bad metaphorical usage of the term "food chain" is an example of "office speak". Personally, I don't much like it.

Re:The software industry is going through the “disposable pl... by quaintdev on Thursday August 20, 2020 @09:35PM (#24231050)
I think both are correct.
Re:The software industry is going through the “disposable pl... by dylan604 on Friday August 21, 2020 @12:11AM (#24231882)
Great, another fad library to use. That's definitely what we need.
Re:The software industry is going through the “disposable pl... by caretak3r on Thursday August 20, 2020 @08:26PM (#24230593)
Build what other developers eat.

I am interested in this topic, can you elaborate? Or any thoughts from anyone?

Re:The software industry is going through the “disposable pl... by thethethethe on Thursday August 20, 2020 @08:47PM (#24230722)
I think OP is referring to things like working on cloud infrastructure, systems software like web servers and reverse proxies, programming languages, or foundational libraries and frameworks libraries—all of which are consumed by application developers
Re:The software industry is going through the “disposable pl... by Ericson2314 on Thursday August 20, 2020 @09:07PM (#24230863)
Or have my job, switching periodically between on all that stuff and the end application. Make sure the tools you make are actually useful for the problem they purport to solve!

We just refuse to use vendor-lock-in cloud crap as a matter of principle. Regular server processes (though Haskell), regular machines (the NixOS), PostgreSQL, no problem.

Re:The software industry is going through the “disposable pl... by Frost1x on Thursday August 20, 2020 @09:44PM (#24231099)
Must be nice, I'm surrounded by zombies that are either RDD or truly naive. Most of the ecosystem this org works with really doesn't make sense for "cloud." Most of it should be internal infrastructure for an entire host of reasons aside from occasionally using EC2 instances for special case bursts of computing demands. Instead theres an obsession with AWS with no solid rationale.
Re:The software industry is going through the “disposable pl... by Ericson2314 on Friday August 21, 2020 @10:24AM (#24235112)
Sorry to hear that! It's a real shame when people contort themselves to give Bezos more money.
Re:The software industry is going through the “disposable pl... by xwdv on Thursday August 20, 2020 @11:12PM (#24231588)
How about AWS Lightsail instead of EC2?
Re:The software industry is going through the “disposable pl... by zorked on Friday August 21, 2020 @06:55AM (#24233791)
> robust, clear, well-tested, and easy to maintain systems

I wonder if that's how the implementors of software that actually lasted for decades would describe their work or motivation.

Does this describe Unix, for example? In particular the old AT&T version, not GNU (or even modern BSD) code.

Re:The software industry is going through the “disposable pl... by the_why_of_y on Saturday August 22, 2020 @07:05AM (#24243304)
Research from 1995 [1] indicates that robustness was not a strength of AT&T UNIX.

"The reliability of the basic utilities from GNU and Linux were noticeably better than those of the commercial systems."

[0] ftp://ftp.cs.wisc.edu/paradyn/technical_papers/fuzz.pdf

[1] ftp://ftp.cs.wisc.edu/paradyn/technical_papers/fuzz-revisited.pdf

Re:The software industry is going through the “disposable pl... by kwhat4 on Friday August 21, 2020 @11:48AM (#24235847)
May of the design philosophies laid by smart people like Eric Raymond are very well documented:

https://medium.com/programming-philosophy/eric-raymond-s-17-...

https://en.wikipedia.org/wiki/The_Art_of_Unix_Programming

Re:The software industry is going through the “disposable pl... by blablabla123 on Friday August 21, 2020 @04:14PM (#24238460)
> Does this describe Unix, for example? In particular the old AT&T version, not GNU

At least to me. Having all these composable commands, unimaginable through how many iterations all that stuff went. I also think that Go was created in that spirit, with robustness/conciseness being more important than anything. Although it seems the language and its philosophy is adapting to more common ways of doing things.

Re:The software industry is going through the “disposable pl... by agumonkey on Thursday August 20, 2020 @09:22PM (#24230967)
it's funny because this looks like badly organized workplace

in a group of skilled people it can still happen

is it due to bad leadership ?

Re:The software industry is going through the “disposable pl... by jmnicolas on Friday August 21, 2020 @02:58AM (#24232715)
> it's funny because this looks like badly organized workplace

You probably should get out of the HN bubble more often, a badly organized workplace is the norm not the exception.

(I hope it doesn't come as condescending since it's not my intention)

Re:The software industry is going through the “disposable pl... by agumonkey on Friday August 21, 2020 @04:33AM (#24233139)
It seriously came as condescending since I'm quite removed from HN bubble. At least you warned me, thanks.

My comment is not about the norm but about the nature of the work structure. See I've mostly been working in average (non IT) places. I can understand average salesman and clerks having troubles organizing, dealing with computer issues, bad software, and cracking under managers because they don't have Masters degrees in abstract algebra applied to relational databases. So I assumed that in an IT company the skills would influence the structure. I guess it boils down to low level politics as usual.

Re:The software industry is going through the “disposable pl... by jmnicolas on Friday August 21, 2020 @05:01AM (#24233288)
Sorry English isn't my mother tongue, so I didn't see a way to make it short and not condescending hence the warning.

May I interest you in one of my earlier comment to show you how dysfunctional a company can be (to put things in perspective : my boss was a software engineer before becoming the boss, our company has something like 25 millions € per year and the certificate should cost a few hundred euros) : https://news.ycombinator.com/item?id=24220464

Dysfunctional indeed.

Re:The software industry is going through the “disposable pl... by agumonkey on Friday August 21, 2020 @06:31AM (#24233695)
yeah it seems one of the most common issue.. greedy upper hierarchy causing pain everywhere below

#revolution

Re:The software industry is going through the “disposable pl... by Mandatum on Thursday August 20, 2020 @10:38PM (#24231414)
Governance and lack of a dictator with sane "technical debt to income" ratio. Unless you're NASA, you're not going to get there with a smart committee. You need a single person that can make the right technical decision 80% of the time and business decision 120% of the time.
Re:The software industry is going through the “disposable pl... by cookiecaper on Wednesday August 26, 2020 @12:44PM (#24284230)
Definitely the case, people don't realize how much a weak link in the chain can break the whole structure, and just how much influence the command structure can have. I've worked places where all my peers were very smart and well-qualified and still ended up outputting what boils down to smart trash because a middle manager somewhere refused to allow them to structure things well. Conway's Law isn't dependent on the group's collective IQ.

A little sensitive on this due to a recent experience where I was hired and given "ownership" only to have my very modest proposals for changes shot down if not just entirely ignored. Some "ownership"!

Re:The software industry is going through the “disposable pl... by bsenftner on Friday August 21, 2020 @09:30AM (#24234717)
The result is clear, obvious code anyone can step into that is never optimized or tuned much for performance because you know some green college grad might be the person who inherits the code and you'll be under some other project's deadline and unable to help them figure out anything optimal, so it's left simple and obvious.
Re:The software industry is going through the “disposable pl... by papito on Sunday August 23, 2020 @01:17PM (#24253452)
I don't think many people spend much time on performance anymore in creation stages. Optimizing performance nowadays is purely reactive, I find.
Re:The software industry is going through the “disposable pl... by bsenftner on Sunday August 23, 2020 @01:41PM (#24253671)
Spend time working on any high compute application, and you'll spend cycles on it at every stage of the development and maintenance cycle.
Re:The software industry is going through the “disposable pl... by sytelus on Thursday August 20, 2020 @08:36PM (#24230659)
Slow and steady is not useful if it's too little too late. I deal with so many broken websites, products, working with customer support that it is amazing how slow organizations are at reacting to customer needs. Sometime it takes 6 months before simple bug fix finally shows up in product. We are living in fast changing world and one need to weight getting things out now vs being perfect. The thing that matters is not eventually releasing perfect software but rather can you iterate fast enough to get there eventually?
Re:The software industry is going through the “disposable pl... by orev on Thursday August 20, 2020 @10:24PM (#24231341)
It takes 6 months to get those things out the door because teams are so busy dealing with fires and other technical debt that has built up from all the previous “do it dirty now and we’ll fix it later” features. Eventually you’re buried in keeping things afloat all the previous mistakes and just can’t move forward on anything.
Re:The software industry is going through the “disposable pl... by quantified on Thursday August 20, 2020 @10:38PM (#24231418)
My experience matches this. I was there when all the “move fast and break things, we’ll fix it later” became bugs and bad situations that suck all the energy from adding anything. Several years later, nothing can get fixed, it’s all fighting the fires. And it was all done following fashion, there was no real need.
Re:The software industry is going through the “disposable pl... by cogman10 on Friday August 21, 2020 @12:25AM (#24231946)
Meanwhile, you've got management demanding more features and getting upset when you say "we can add it, but we need time to fix the mistakes of the past"

"No, there's no time for that, MVP, get something out! We'll fix it later!"

Re:The software industry is going through the “disposable pl... by c00ls0sa on Friday August 21, 2020 @12:16AM (#24231910)
Investors don't mind bugs as long as the money keeps rolling. Customer experience is a far second.
Re:The software industry is going through the “disposable pl... by croh on Friday August 21, 2020 @01:54AM (#24232387)
On same line, project owners/managers don't mind bugs as long as their directors happy. Directors don't mind bugs as long as Sr Directors are happy and chain goes on...

Truth is nobody cares for customer...

In software industry, cost of bug is mostly nothing compared to other industries like construction. Products are not always life-crucial. One person with laptop can build you product. In this context, engineering itself is secondary. Decisions are made on hype, not on reasoning.

Re:The software industry is going through the “disposable pl... by marcus_holmes on Friday August 21, 2020 @06:10AM (#24233586)
Which would be acceptable if they accepted the blame when customers stop buying and the money stops rolling.

But no, obviously not. Obviously it's bad engineering then.

Re:The software industry is going through the “disposable pl... by arexxbifs on Thursday August 20, 2020 @08:48PM (#24230733)
Higher churn leads to more features being crammed in which leads to more bugs and increased technical debt.
Re:The software industry is going through the “disposable pl... by tluyben2 on Friday August 21, 2020 @02:20AM (#24232522)
The self imposed complexity of brittle aws microservices/lambda stringed together is definitely the fault of developers. There are a handful of companies that need (and can afford!) architecture like that (maybe, Uber is backpeddling on it) but the vast majority of the world is shooting themselves in the foot and that is on developers and resume driven dev. Nothing to do with faster iterations, although that is probably how it is sold to management. The developer should know better.
Re:The software industry is going through the “disposable pl... by ChuckNorris89 on Friday August 21, 2020 @03:09AM (#24232766)
The resume driven development is a consequence of poor hiring practices that discriminate candidates on the language/framework hype instead of hiring based on experience, know-how and potential.

Our company is looking for an experienced dev with Node and AWS experience. What's that, you have 15 years of industry experience but it's all on-prem Java/PHP? Too bad. NEXT!

Re:The software industry is going through the “disposable pl... by r_c_a_d on Friday August 21, 2020 @06:30AM (#24233691)
Spot on. I always used to get a certain company local to me flagged up by recruiters when I was job hunting. Every time they rejected my resume without interview because it did not have "Spring" on it.

Years later I worked at this place as a 3rd party contractor. What little bit of Spring I needed to know I picked up in the first few days. Their codebase and methodology was very poor and they were drowning because they only had one or two experienced people... but all the people they had had "Spring" on their resumes.

Re:The software industry is going through the “disposable pl... by nicbou on Friday August 21, 2020 @10:37AM (#24235238)
I think it's also a consequence of developers just getting bored. I don't care so much about my resume, but I'm always eager to try new things.
Re:The software industry is going through the “disposable pl... by throwaway189262 on Thursday August 20, 2020 @11:02PM (#24231529)
In the micromanaged world of agile, ticket velocity is more important than any other metric. At least everywhere I've worked.

Open source is the only place I regularly see high quality code. There the devs are allowed to love their code like pets not cattle.

Re:The software industry is going through the “disposable pl... by jSully24 on Thursday August 20, 2020 @07:49PM (#24230354)
I think this is an over simplification. Software teams are forever trying to find a balance between getting value to customers and getting the code, tests, architecture, docs, etc right.

If you have nothing to sell you’re done. If your legacy cruft becomes overwhelming you’re done, but likely via a slow death.

Good teams are always struggling with this balance and there is no way to be right, but hopefully you can find that balance and be good enough.

Re:The software industry is going through the “disposable pl... by FridgeSeal on Thursday August 20, 2020 @06:51PM (#24229944)
I very much agree.

I get that “done is better than perfect” but it feels like we’ve swung so hard in that direction that we seem to be largely neglecting stepping back and building the rough roll for the job in all but the largest places who have the luxury of having enough resources to assign a big enough team in the background to do it.

Re:The software industry is going through the “disposable pl... by JanisL on Friday August 21, 2020 @01:32AM (#24232269)
There seems to be this version of “done is better than perfect” thinking where people think that aiming for quality in any form will get in the way of getting things done. Where this gets especially pathological is when people assume that the best way to get things done is by explicitly decreasing quality, the underlying flawed assumption being that decreasing quality can be directly traded for a shorter schedule.
Re:The software industry is going through the “disposable pl... by vvanders on Thursday August 20, 2020 @07:39PM (#24230301)
Go spend some time with PLC/automation engineers and you'll find the same thing.

Safety stuff? Done then right way with the proper attention.

Rest of the production line stuff? Hack on hacks in order to get things online ASAP. At least that's my impression from the outside view I've seen.

Re:The software industry is going through the “disposable pl... by causality0 on Friday August 21, 2020 @12:56AM (#24232116)
It really is the worst. Machines custom-built thirty years ago with documentation that reflects about 25% of the current configuration. Processes that rely on five lines of code and run great for six hours before completely breaking for no good reason. Windows XP boxes that've been on continuously for five years because the moment they shut down a boiler fails that requires a 24-hour restart process. I'm incredibly glad I got out of that industry.
Re:The software industry is going through the “disposable pl... by vt240 on Friday August 21, 2020 @02:04AM (#24232441)
A 24-hr restart plan, sounds like a properly documented quality management process for a large boiler? Disconnecting the "Windows XP box" is removing the control system correct? Not really the same thing is it? There's no reason the XP Embedded hardware platform could not have been engineered with high availability in mind? It's not as if there are no comercial-off-the-shelf options here.

The company who chooses to let the bosses son, who built custom PCs in high school, design the critical process control systems, is I'd say, outside the scope of the argument here.

Re:The software industry is going through the “disposable pl... by causality0 on Friday August 21, 2020 @02:08AM (#24232463)
It was literally an e-machines desktop.
Re:The software industry is going through the “disposable pl... by vt240 on Friday August 21, 2020 @02:29AM (#24232569)
I'll just add at my current place with clustered Windows 2008 back-end, with AD and DFS, and distributed flash based , fan-less, Windows 7 embedded clients we've had zero down time in 8 years or so since it was implemented. End-Nodes provide serial data from the DFS shares to the machines. I'll grant you that is certainly easier than redundant real time control issues, a little bit. But. It's just all about planning for sure, on the software, hardware, and IT infrastructure end of it.
Re:The software industry is going through the “disposable pl... by vt240 on Friday August 21, 2020 @02:11AM (#24232477)
Haha. Been there. Seen that. I do feel for you though.
Re:The software industry is going through the “disposable pl... by imtringued on Friday August 21, 2020 @08:18AM (#24234234)
The uptime on that machine is longer than the time between new versions of windows. This is an example where software isn't like disposable plastic.
Re:The software industry is going through the “disposable pl... by baxtr on Friday August 21, 2020 @03:08AM (#24232762)
I had a discussion with one our devs just yesterday about this. He had the exact opposite notion that some devs are too focused on getting things perfect and don't care about the value they deliver to the business. I guess it's crucial to get the right balance.
Re:The software industry is going through the “disposable pl... by notacoward on Friday August 21, 2020 @10:42AM (#24235289)
It's both, and then some. Product folks surely do love to get new features out. Developers also love it, because writing new code is far more fun than improving reliability, performance, security, or operational load for old code. In 30+ years I've worked in all sorts of environments, but accumulating technical debt has been one of the few constants. Everyone tries to say the right things in meetings. Maybe tech-debt reduction even makes a brief cameo in early planning sessions, but good luck getting it into the final plan. Even if that happens, guaranteed that it will show up as a miss at the end of the cycle, because it's always the very last thing on everyone's list and everyone's list is always too long. A dozen companies, maybe twice that many projects, twice again as many architects/managers/whatever, always the same story.

As for "and then some" that's the part that's on senior management and HR, for setting up review/promotion structures that actively incentivize sloppy engineering. When all of the rewards are for New Shiny, some people will actively sabotage efforts to spend time any other way. Nobody wants to delay their new-feature effort to deal with new test failures or cleaned-up APIs. Even those who have enough of a conscience to to the right thing get kneecapped at every turn.

Re:The software industry is going through the “disposable pl... by onion2k on Friday August 21, 2020 @06:29AM (#24233684)
Slow-and-steady, carefully written software isn't tolerated within many product orgs these days.

Rapid iteration is driven by customers not actually knowing what they need. There are places where "slow and steady" development would work, but very often you'd just find out what the customer needs isn't what they've asked for over a much longer period. You'd end up throwing out a lot of the perfectly crafted artisanal code anyway just as you would in the rapid dev version. The main difference is that the customer would have run out of money by then, and failed, and you'd need a new job.

Re:The software industry is going through the “disposable pl... by Nasrudith on Thursday August 20, 2020 @08:25PM (#24230586)
I would have guessed the cause as HR recruiting and ladder climbing related. The latest hotness being needed to get a higher paying job elsewhere as opposed to just going with what works.

Disregard for technical debt is certainly a force.

Re:The software industry is going through the “disposable pl... by amrx101 on Thursday August 20, 2020 @09:45PM (#24231112)
I have been asking my product managers time so that I can update libraries and what not. Nope.

All these MBAs and non MBAs and Safe and Agile managers, they are all talk but dont allot time for issues that helps in better code-quality.

Re:The software industry is going through the “disposable pl... by tobyhinloopen on Friday August 21, 2020 @02:11AM (#24232474)
Don’t ask, just put it in the next estimate.
Re:The software industry is going through the “disposable pl... by enraged_camel on Thursday August 20, 2020 @06:59PM (#24230006)
>>Slow-and-steady, carefully written software isn't tolerated within many product orgs these days.

The problem is that this works only for large clients and conservative problem domains (such as accounting) where things change at a glacial pace. Back in the day, only such clients could afford enterprise/custom software, so using a waterfall methodology to develop that software worked well enough. Took five years to deliver the final product? No problem because the set of requirements you collected five years ago and based your software on probably still apply at the time of customer sign-off.

Things have changed. Software has gotten much cheaper to develop, which means it has become way more affordable, and the types of businesses who need that kind of software are in heavy competition with each other and their problems and needs change at breakneck speed. So your best best is to have your own software development practices to match that speed.

Re:The software industry is going through the “disposable pl... by Chris2048 on Saturday August 22, 2020 @09:44AM (#24244081)
There are lots of laws and regulations around building to prevent e.g. bridges falling down.

So just remove them. Now buildings have gotten much cheaper to build, which means they have become way more affordable, and the types of businesses who need that kind of building are in heavy competition with each other and their problems and needs change at breakneck speed.

Failing that, keep the regulations, and apply more to software. The "needs" of business will change, and competition will move. "Slow-and-steady" needn't be glacial, and there's a lot between that and "breakneck speed".

Plus there is a difference between time it takes to deliver, and frequency of requirement collection - your example implies you get requirements/sign-off exactly once before final delivery (5 years later). If we contrast "final" delivery with intermediate releases - why are the requirements not re-evaluated at each release time? You can still have slow, steady development, with lots of feedback - there just has to be an understanding that software delivered long term should not be interfered with short term concerns.

Re:The software industry is going through the “disposable pl... by tarsinge on Friday August 21, 2020 @03:18AM (#24232793)
Are we talking about tools or enterprise software? Slow and steady carefully written software never existed for the latter, it was always a mess of moving requirements. I’m not sure what’s worse between previous grandiose UML specified software that failed to be implemented after many years and millions spent, or the current state of affairs where at least software projects move on.
Re:The software industry is going through the “disposable pl... by meheleventyone on Friday August 21, 2020 @03:15AM (#24232784)
This is still squarely on the developers. Slow and steady might be your preference and the best way to make some software or parts of software but that’s not universally true. A lot of creative domains really benefit from fast iteration times to experiment.

It might not be your ideal environment to be making products but it is our job to square the circle otherwise we’re not going to have jobs. For a concrete example look at the way game engine development happens. By and large engine development is slow and steady. Whilst making a game is something that massively benefits from blazing iteration speeds. Having that split between technology and product means you can do both.

Of course we’re also dealing with messy reality so things are faster or slower than each team would like at times.

Re:The software industry is going through the “disposable pl... by munificent on Thursday August 20, 2020 @07:00PM (#24230012)
> it's all driven by a product mentality that favors rapid iterations and technical debt to run business experiments on customers.

Which is in turn driven by a venture capital industry that cares only about massive growth and nothing else.

Re:The software industry is going through the “disposable pl... by mcguire on Thursday August 20, 2020 @07:12PM (#24230102)
It's common outside the startup world, too. I think it's more to do with a disinclination to touch anything "legacy". New and shiny good, otherwise bad.
Re:The software industry is going through the “disposable pl... by devonkim on Thursday August 20, 2020 @07:20PM (#24230171)
“Legacy” both works and delivers value. It also doesn’t get political visibility by making something new as a manager. Optimizing the costs of existing business lines is essentially a cost center career track in itself and is why IT people get screwed a lot and those with 90%+ of the same skills in a software development shop will get a bump in pay.
Re:The software industry is going through the “disposable pl... by richiebful1 on Thursday August 20, 2020 @08:42PM (#24230695)
Yup. We have an in-house MDM solution at work that is mostly composed of stored procedures, SSIS and small C# desktop apps. It could do with some improvements, but overall it works like a charm.

But we're rewriting it to use Snowflake and Kafka. With no real use case for the rewrite.

Re:The software industry is going through the “disposable pl... by the_gipsy on Friday August 21, 2020 @02:17AM (#24232513)
There's two kinds of legacy, though.

The proven, you talk about, and the tech-debt.

Re:The software industry is going through the “disposable pl... by UK-Al05 on Thursday August 20, 2020 @07:41PM (#24230311)
Depends what you mean by legacy.

If you mean well written c or Java code, that is well tested and clean. Then I'd prefer to then a modern JavaScript application without tests.

Legacy to me means applications that has turned into a mess with no tests. This can be a recent application or old.

Re:The software industry is going through the “disposable pl... by MiroF on Thursday August 20, 2020 @08:02PM (#24230445)
Exactly. BLAS isn't legacy to me, but that web server you wrote in an Excel macro is.
Re:The software industry is going through the “disposable pl... by _AzMoo on Thursday August 20, 2020 @07:32PM (#24230266)
Feedback from our HR department indicates that we struggle to retain younger employees in large part because they don't want to use legacy systems.
Re:The software industry is going through the “disposable pl... by rebeccaskinner on Thursday August 20, 2020 @09:32PM (#24231030)
I think this is a huge problem, but as tempting as it is to blame the situation on "the youths" and their lack of respect for their elders or legacy code, a huge part of this is the fault of our industry and the businesses themselves.

The first thing is that I think people who don't want to work on legacy systems are making a pretty rational system based on the state of the industry these days. We recruit people heavily based on whatever they've done most recently, and for a lot of people even a short stint on a legacy system can be a career ending dead-end. In very competitive markets it might not be quite as bad, but for a large swath of the market (for instance in the Midwestern US, where I'm at), a single job with a legacy technology can make you nigh unemployable doing anything else. The problem is compounded by the fact that a lot of "recent legacy" technologies simply don't pay as well as either very legacy technologies (where you might be expected to have 20+ years of experience) or hotter new technologies.

Next, I think that we need to consider that, frankly, a lot of legacy code and technology sucks. New tools might have the same, or more, underlying fundamental issues, but in a lot of cases newer technology has a thicker layer of ergonomics on top, and the technologies themselves haven't ripened enough for the code smells to be noticeable, so from a day-to-day job enjoyment standpoint that somewhat lower paying job that is going to pidgeon hole you into the same boring BigCo work for the rest of your career is also going to come with a side dish of increased frustration. There's also a particular place in hell for certain types of legacy systems that really embraced the fads of their time- e.g. inheritance astronaut OOP hellscape Java applications from the late 90's, or rube-goldbergian metaprogramming funhouse ruby projects from the 2010's (I suspect the particular flavor of grotesque FP-look-alike cargo cult nonsense non-FP languages are trying to shoehorn onto poorly typed highly mutable environments is the fad that will give next decade's legacy system maintainers night sweats, but it's always hard to tell when you're in the middle of it).

Finally, and I think this is the biggest factor of all, a lot of companies with big legacy systems are digging their own graves because it's not just that they have legacy systems that need to be maintained, but they are so traumatized by the difficulty of keeping those systems up and running that they have calcified beyond any ability to experiment and try anything better, so it's not just that there are legacy systems to be maintained, all new work ends up getting shoehorned into the same legacy languages, legacy frameworks, and legacy business processes, because the fact that they never managed to migrate off their 1970's COBOL applications means that everything written today has to be designed to last 40 years using 20 year old technology. If engineers who were expected to maintain the legacy systems had some leeway to also experiment with newer technologies, and to modernize some parts of the system (with the acknowledgement that not all experiments would be a success), then it might be a lot easier to keep those engineers around.

Re:The software industry is going through the “disposable pl... by _AzMoo on Thursday August 20, 2020 @10:07PM (#24231231)
To be clear, I'm not talking about retaining engineers. I mean that we struggle to retain end-users using legacy POS systems for example, and ERP systems with terminal or old WinForms interfaces.
Re:The software industry is going through the “disposable pl... by Chris2048 on Saturday August 22, 2020 @10:01AM (#24244199)
Also, if it's maintaining a big legacy system, you have to ask: who did the previous dev leave?

The answer might be, because it got so difficult maintain, it was no longer worth it. And if the guy with experience of the system found it no longer worth it, you with little are unlikely to find it worth it. Beware the system abandoned by the long term maintainer, and then maintained after that by a string of short-term new hires. At best, the corp keeps increasing pay for every new hire in the hope they stay.

> had some leeway to also experiment

The idea behind the original "long-term professional" was a little autonomy for this kind of thing. Sadly, most corps refuse to classify developers as anything more important than cost centres, commodity resources, etc. Increasingly, they are contract hires, or easily-replaced temps (Accenture etc) and stuff like Agile abstractions, non-silo-ing, overstrict business time-management / task "sign-off"; and the trend of offering new hires better terms during negotiation, than improved terms to existing hires to keep them happy thereby encouraging no more than 2-3 years at any company to best improve your salary.

Re:The software industry is going through the “disposable pl... by liammonahan on Thursday August 20, 2020 @10:15PM (#24231285)
I think you hit the nail on the head explaining the dynamic at play here.
Re:The software industry is going through the “disposable pl... by ratww on Friday August 21, 2020 @07:19AM (#24233915)
Yes, a hundred times yes.

And it's not just young people. In the past I worked at a University where most teachers were unable (or refused to) to use the 30-year-old COBOL system. Those were people from late-twenties to late-sixty year olds, and they all hated it.

We needed extra staff just to type grades in the computer, since it was a long and onerous process, and that extra staff was very hard to retain.

The solution was redoing it in web and after that every teacher happily started doing it by themselves.

Re:The software industry is going through the “disposable pl... by danielnixon on Thursday August 20, 2020 @08:04PM (#24230456)
Re:The software industry is going through the “disposable pl... by greenyoda on Thursday August 20, 2020 @08:44PM (#24230706)
Which recently had an interesting discussion on HN: https://news.ycombinator.com/item?id=21208947
Re:The software industry is going through the “disposable pl... by benhurmarcel on Friday August 21, 2020 @06:00AM (#24233551)
It's common outside the software world too.

I work on aircraft design. We have people supporting legacy aircraft that were designed up to 50 years ago. I (and a lot of engineers) actively avoid those positions, and try to stick to programs that are less than 10-20 years old.

It's old technology, you don't get investment to improve anything, you don't get to work with modern tools (go back to working with scanned drawings instead of CAD data for example)…