4 ms·
The difference is if you are an employee you are more likely to need to make changes to your own messy code so there is an incentive to keep it clean
by robjan 6y ago
The difference is if you are an employee you are more likely to need to make changes to your own messy code so there is an incentive to keep it clean
- hnarn 6y agoAll I'm saying is that I don't think it's as simple as "you either have incentive or you don't", because if it was, then developers writing bad code that they themselves had to go back to wouldn't exist, but they clearly do. I'm one of them and I talk to a lot of them daily. To say that "of course this freelance code is garbage, they're paid peanuts" is naive, because it implies that: a) Well paid engineers always write beautiful code, and the more they get paid the more beautiful it becomes, which obviously isn't true. b) Badly paid engineers don't care about code quality if they don't get paid for it, which isn't true because open source is a thing. Reducing everything to economical incentives is, in my opinion, not very useful.
- bawolff 6y ago> Badly paid engineers don't care about code quality if they don't get paid for it, which isn't true because open source is a thing. When you do open source, you are the one who has to live with the results. Forever. I think open source proves the point you're arguing against. Besides, the argument is not that they are paid peanuts, just that they are being paid for other things. The incentives are not lined up for freelancers to give high investment up front to reduce long term maintenance costs. That doesnt mean every freelancer writes crap code, just that on average its not a system that selects for easily maintainable code.
- crucialfelix 6y agoOr you keep trying to get time for refactoring and cleanups, but instead the product team keeps pushing for urgent new features and the project manager keeps questioning why development is getting slower and the defect rate is getting higher.