The dreaded circle of blame


One time I was having some issues with my shell of choice, zsh, while using it with tmux.

Now, I decided to pop in on zsh’s IRC channel to maybe get some help.

Then I ran into the circle of blame.

Hi, I’m having this issue

Someone replies

What does your configuration look like

Well I’m using this thing called oh-my-zsh

Oh but that one is crap.


The discussion ends with them basically telling me I should stop putting things into my zsh config that I don’t understand, and that the problem is with oh-my-zsh.

I managed to pinpoint what was causing the issue in my oh-my-zsh theme.

The problem is in tmux

Gee, really?

I ask the tmux guys. Wanna guess what they say? That’s right, The problem is in zsh

All I want is a shell which works and has nice features out of the box. Is that too much to ask for?

I don’t want to first spend a week studying zsh’s manual to understand every possible combination of options that produce the results I get by simply installing oh-my-zsh – and I probably still wouldn’t know things well enough to do a good job like oh-my-zsh does.

Maybe fiddling with zsh is your passion and you enjoy it. To me, a shell is just a tool. I just want one that does the job.

So the circle of blame goes on and on, with nobody wanting to take a stand and try to fix this.

And my combination of tmux+zsh+oh-my-zsh is only one of many. Maybe you’re using screen+zsh, or tmux+bash. Or maybe you’re on Windows with Cygwin. How many people are stuck with the problems they have because of the circle of blame?

I am perfectly capable of looking up things from my zsh configs, doing rudimentary debugging of it, etc., and I was able to find out the exact part of the zsh theme causing the issue. However, at that point I am lost. I don’t have the necessary knowledge to say why that part is causing the problem. For that, I need someone else who understands the tool better.

If they will just keep shifting the blame, nothing will ever come of it.

Note: This is not to say zsh/oh my zsh/tmux guys are not doing a good job. This is an issue that seems to arise any time you have two or more different things that work together.