by ducaale on 7/24/22, 10:18 AM with 30 comments
by hangonhn on 7/24/22, 2:29 PM
This is a scenario that’s all too familiar where management hires a great talent and then just uses that person to solve all their problems instead of actually managing and building a team that can handle the problems.
Management failed the company and Rick. The article author clearly failed to see that and focused entirely on the wrong root cause.
A much better story would be to tell it with a focus on management who was either too incompetent, too lazy, or both to properly build, manage, and grow/mentor a team.
by combatentropy on 7/24/22, 2:42 PM
When the writer examined Rick's code, it is revealed as messy, buggy, and long-winded --- "a lot of copy pasta", laden with "thousands of hours of technical debt", "bells and whistles", and speculative programming for requirements needed in "five years".
Rick was not a good programmer with a bad personality. He was a bad programmer with a bad personality.
More specifically it sounds like Narcissistic Personality Disorder, with certain telltale signs like gaslighting, the inability to accept fault, and dependency injection of the self into the lives of everyone else. The writer says, "I don’t believe Rick started out this way." I think he's wrong. Narcissistic Personality Disorder starts in childhood. So Rick was like this when he entered the business. In fact it is probably how he became "universally recognized on the team as the top talent" --- not because he was, but because he bullied his way up to that with his own self-aggrandizement, and his coworkers were too timid or inept to suggest that he was never actually a good programmer.
by kwatsonafter on 7/24/22, 4:21 PM
Consider that he might be right from his perspective; he's probably just a douchebag. Either/or (remembering dear Kirkegaard and saintly James) this is partially and mostly why computers suck in 2022, Google doesn't work anymore, and user interface design is suffering as there aren't enough people with cross-sectional culture skills (consider Brenda Laurel: PhD in Theatre; Alan Kay was a competent jazz guitarist before Xerox PARC) + necessary computing expertise to design useable software and as a result our technical infrastructure has suffered immensely despite gains made from Moore's Law and data collection (I'm looking at you ML geeks)
This is going to get worse before it gets better.
by pylua on 7/24/22, 1:26 PM
This also may be an argument for splitting up teams and services with micro services.
by Comevius on 7/24/22, 2:36 PM
by mawadev on 7/24/22, 3:19 PM
You can say he got himself into that position by acting like that, but I think the environment shaped him to become this way. It's easy to say he should have looked for a different company the first time he had to work overtime...
by wobblyasp on 7/24/22, 12:59 PM
Not to say Rick isn't at fault, he is, 100%, but he was clearly in an environment that want healthy for his mental health or productivity.
by tpreetham on 7/24/22, 10:53 AM
by phendrenad2 on 7/24/22, 5:29 PM
It isn't a matter of stacking more Ricks. Ricks don't like working with Ricks. That'll lead to high drama and one or more Ricks flaming out in a blaze of glory. Each Rick has their own code style, why would they work with someone else's code? If multiple people are all claiming that "The existing design is terrible, let me rewrite it", while the person who made the existing design is still there, and is a Rick, then you'll just have a codebase being torn in multiple directions.
Yes, poor management enables this. If you know how to handle these people, you can surround each Rick with non-Ricks and force them to document their code, and justify every rewrite, etc. Like a nuclear reactor surrounded by graphite. But ideally you want to turn a Rick into a non-Rick. Usually that involves taking them down a notch. Maybe you can set up a John Henry vs the Machine style situation. Have the Rick try to out-code a team of non-Ricks. The Rick can't compete, despite writing 10x as much code. It's almost like layers of abstraction aren't a universal benefit. Huh.
by the_biot on 7/24/22, 1:54 PM
One got forked after years of misery, another eventually became obsolete technology-wise. They were genuinely instructive as an example of how not to behave.
by ThePadawan on 7/24/22, 1:27 PM
Right?
Right?
Hm.
by throwhn84398 on 7/24/22, 9:42 PM
by lapcat on 7/24/22, 1:23 PM
by spacemanmatt on 7/24/22, 1:59 PM
by deterministic on 7/25/22, 1:54 AM