2 ms·
> I think you're building a straw man of "hundreds of thousands of engineering dollars" here Been there, done that, no. Refactoring a crappy implementation int
by throwawayjava 9y ago
> I think you're building a straw man of "hundreds of thousands of engineering dollars" here
Been there, done that, no. Refactoring a crappy implementation into a high quality, documented code base takes an enormous amount of time. And literally no one in academia cares about it. Industry doesn't care about it either because there's a presumption that any software created while in academia is inferior quality.
If you advise students to do this type of work with the expectation of any type of personal reward, you're a liar. They're basically doing software engineering that academia won't reward them for, and their year of software engineering won't count as job experience if they go into industry. And they aren't being paid software engineering salaries. It's just exploitative.
> All we're talking about is better quality code. This isn't a huge cost
This flies in the face of what the market bears in tech salaries. But no matter; I'll just never pay my software devs more than 30k, and also only give them maybe 20% of their time for actual software development... I'm sure I'll get high quality code! /s
> Those minutes are repaid (and more!) the very next time the author has to revisit that code again.
Which for 99% of research code will literally never happen.
> If research coders aren't aware of code quality currently
Tons of grad students leave academia after their phd, take very high paying jobs in industry, and become valued members of software engineering teams.
Research jobs are not software jobs. The goals and incentives are different. Sometimes it makes sense to create a maintainable research software system, but usually it makes no sense because the code is throw-away for testing an idea. That's OK. No one owes you an epsilon of your product.
- marcus_holmes 9y agoyou're talking about Person A writing bad code and then Person B turning that into good quality code. I'm talking about Person A just not writing bad code in the first place.