Just like its physical analog, a hoarded codebase only improves if you intensively work on changing those habits. This means deciding you will always do small, opportunistic refactorings when they appear to you in the course of fixing a bug or adding a feature.
-
Show this thread
-
I’m not talking about taking three extra days on a 1-point story to totally rewrite the user class. I’m talking about noticing a method you’re working in is out of place, and moving it - even if you don’t have time to extract the rest of the concept from the 8000-line file.
4 replies 11 retweets 126 likesShow this thread -
Just like when you’re dealing with its physical analog, your number one most important mantra when you want to improve a hoarded codebase is: Improvement Over Consistency.
6 replies 80 retweets 346 likesShow this thread -
This is SO HARD for us as developers. It gets drilled into us from day one that consistency is key to good code. And if you had good code, then sure, that would be true. But right now you don’t. Improvement Over Consistency.
2 replies 37 retweets 238 likesShow this thread -
One book on the shelf and five in the pile is better than six books in the pile. Improvement Over Consistency.
5 replies 31 retweets 232 likesShow this thread -
So where does communication skill come into all this, you might ask? Is this another rambling thread that took an unexpected turn into philosophy and isn’t coming back? (I mean, that’s a fair cop. I do a lot of those.)
1 reply 1 retweet 79 likesShow this thread -
Well, let’s say I’ve convinced you that you need to do those small, opportunistic refactorings. You’re all in! You’re ready to work through the discomfort of introducing deliberate inconsistency in the name of improvement over time! Fantastic! HOW do you do that?
3 replies 3 retweets 71 likesShow this thread -
Remember, there were TWO problems that got you here - organizational pressure to forego refactoring, and a feeling that refactoring can only be done when you have time to do it all at once. At this point, we’ve only fixed the easier problem.
1 reply 3 retweets 86 likesShow this thread -
There are many in the Software Development Thoughtleadership Corps
who take an individual, moralistic approach to organizational pressure.
“It’s your job as a professional!” they say. “Just write good code! If they push back, just tell them ‘that’s not how I work!’”3 replies 8 retweets 103 likesShow this thread -
This, of course, is horrible advice that comes from a place of extreme privilege. It does _occasionally_ work for white dudes. For most of us, though, if we tried it, we’d be labeled “difficult” or “naïve” and eventually managed out via tepid performance reviews.
13 replies 9 retweets 190 likesShow this thread
Saying "I don't work like that" doesn't come from privilege but from having the authority, experience and knowledge to make those assertions and decisions. It also comes from assertiveness & confidence. Privilege doesn't come into it. You were doing so well up to this point too.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.