This is one of those rare times I've applied gaming to my real life. But it is like when you're playing a team-based online game. The entire team all working together on the wrong thing is almost always more beneficial than half the people doing the right thing and the other half the wrong thing. It is almost always better to fully commit to something even if it isn't optimal.I tend to disagree, from a managers point of view, I value consistency over correctness. It's more valuable(to the company) for there to be consistent bad practices than there is for there to be a mix of different styles for the same thing. It's counter-intuitive but it increases maintainability as long as said bad practices aren't directly impacting performance in a meaningful way.
That said, obviously it's better to have consistent good practices, but refactoring should be a team effort ideally, or else you're just on a hamster wheel constantly cleaning up after other people, which is just wasting your productivity and hurting the team ultimately.
Yeah, I can see that point of view. We would have been better off if they just froze the framework at .NET 2.0. That would have ensured we keep using the old crap. The application is already unusable on any non-I.E. browser and any version prior to 10.The entire team all working together on the wrong thing is almost always more beneficial than half the people doing the right thing and the other half the wrong thing. It is almost always better to fully commit to something even if it isn't optimal.
Fucking LOL. We finally got to say fuck you to IE 8 and 9 this release.Yeah, I can see that point of view. We would have been better off if they just froze the framework at .NET 2.0. That would have ensured we keep using the old crap. The application is already unusable on any non-I.E. browser and any version prior to 10.
I wish we could. We have tons of pages that have scripts that use old IE quirks. We'd literally have to rewrite dozens of pages from scratch.Fucking LOL. We finally got to say fuck you to IE 8 and 9 this release.
We roughly estimate how much time we've spent on any projects deemed capitalizable.Out of curiosity, how do you guys have to track your time for the company you work for? Do guys have to account for every minute? Do you use a project management system to track time?
I guess I'm spoiled everything we do has to be agreed upon by the team (scrum teams) so they look at code when they are working on a project both ther own and legacy code and as a team make the decision to code to their standard which may have improved since the project was last worked on. They don't always refactor because time...but they also almost always agree that new code should be done at the new standards and any old code should be improved if possible with the goal of improving maintainability. They will fight for refactoring time if the code they inherited is bad enough. Some of our teams are better at this because they are more advanced at tdd and code reviews but in general none of our teams will agree to continue using poor standard because that is how it was done. This perspective might be skewed since we work as modular as possible and most of our apps are probably small compared to what you are dealing with.This is one of those rare times I've applied gaming to my real life. But it is like when you're playing a team-based online game. The entire team all working together on the wrong thing is almost always more beneficial than half the people doing the right thing and the other half the wrong thing. It is almost always better to fully commit to something even if it isn't optimal.
While introducing potential regressions.Refactor also increases your knowledge and confidence in the code. At any level, that is super valuable.
And it catches everything?We do nightly regression testing here on our firmware anyways
The second statement is what others seemed to advocate here.We test pretty thoroughly but of course not.
We don't refactor shit though for the sake of refactoring it.
Not always true.It is better than browsing the internets, and still not accomplishing nothing of importance.