the shit out of this” • The Problem: Do I really need to explain why this is a problem? • Danko Suggests: Don't fucking do that. Use facilities you already have at your disposal, Rails has a lot of them. Keep docs handy like Dash/Zeal.
misuse the shit out of something I already know”. • The Problem: No one will ever understand your intent and you make no sense. Juniors will do this often when they attack a problem with a tool they already know. • Danko Suggests: Stopping this person before they indiscriminately destroy your entire business and try pairing them with someone more knowledgeable.
I don't have the time to do it right, I'll add a quick hack to this one already in place...” • The Problem: Adding to a mountain of shit because you're out of time is demoralizing, wrong, feels bad, and makes you a bad example for others. • Danko Suggests: You probably spent more time arguing that you didn't have the time to do something right than it would have taken to do it right in the first place. Ask more questions, take a minute to really think this out.
a sprint planning, I'm no programmer, but I'm smart enough to give them the work, I've seen this done in another language before, it's the same and I'll save time by not having another meeting.” • The Problem: You are paying a fortune for your developers. They may have actually done this before and might have an opinion on this. • Danko Suggests: Quitting your job and distancing yourself as far as possible from any PM like this and all their management all the way up the chain.
morons, anything I write myself is better than anything I can buy off the shelf, that doesn't fill our needs anyway” • The Problem: Congratulations, you are a bus factor of one. You are now standing in front of the failtrain and everyone is cheering it on. • Danko Suggests: Unless you are the size of Google, solving Google's problems, you have no business reinventing the wheel. Your company should stick to maintaining one product at a time. Stand on the shoulders of others when you can.
• They're working without oversight • They're working without checks and balances • They're not allowed to fail • They're not allowed to not have the answer • They don't work well with others • They are working on an unbalanced team • They're context switching a lot
morning. • Pairing. Code review. Set quotas if you have to. • Culturally, make failure non-taboo. • If a one month project is total shit, scrap it. So fucking what. • Hire culture fit over technical fit. • Answer questions with questions whenever you can. • Estimation Parties, Sprint Plannings, Retros. Do everything in the open. • Balance your team. Have emergency brakes. • Headphone rules, better time management. Keep meetings to bumper times. • Be fucking blunt • Be open to criticism and be very forgiving
• While I can be good at being blunt, I am not as blunt as I should be often enough. • I need help, so do you, and we all have to admit this all the time. • Having the structure and rules around is a nudge in the right direction, but having the right culture is the only way to keep away “the clever”. • Good management can put a framework into place, but it's up to you to be a good citizen. • Remember to do more listening than talking.