To go back to my analogy: Frankenstein’s monster still killed a bunch of people at the end of the day, even if it was Frankenstein’s fault that the monster existed at all.
We can blame Frankenstein while still agreeing that his monster should’ve faced consequences for its actions.
Again this is more like a dog that’s been abused over the years and then mauls a kid.
No ones surprised that the dog is aggressive, and the owners are obviously guilty of abusing an animal - a horrible thing for the owners to have done.
That doesn’t change that the dog’s aggressive now, though, and should be put down.
Developers are human. They don't need to be put down.
“Put down” here is an analogy for being fired. I don’t actually think Rick should be put down. I’d hoped that was obvious.
This gives everyone time to sit down, gain distance, sleep over it and calm down and try again.
Plus, if the feeling of not getting along remains after that, after some calming down it's often easier to work out a mutually acceptable separation. In a similar situation over here, Rick would've gotten a fairer treatment even on separation, other than "fuck you, bye".
Although, I was halfway through my journey home when I felt a huge weight had been taken off my back.
Sometimes getting fired is good.
Who, when being worked 12x7, and when given the pressure of being a blocker of everybody else, isn't going to respond poorly? I've seen some of the nicest and even tempered people get short with others when the pressure cooker is really turned up. Rick sounds like he was a good guy to begin with - someone who regularly helped his coworkers, someone his coworkers trusted - until he was overloaded with work.
Fight or flight. When exposed to extreme stressers, people tend to take one of those two paths. Rick took the first. Someone else would have broken down balling, or spiraled into deep depression, or isolated themselves. Don't blame them for being human - blame the company for creating such a terrible environment.