The roots of cultural conflict go very deep - often to the point where it takes a shrink to see them and a much better writer than I am to explain them.
I stumbled across an interesting case in point lately - the comments collected under a mid 2006 blog entry by Mark Mayo at vmunix. His blog lists his top ten whinges about the (then current) Solaris 10 installer - and agree or not you have to give him credit for being very good at expressing his frustrations. A sample:
The installer is unbearably slow.. I mean, my _god_ it's slow, just getting the first menu screen (or heaven forbid, X11 and the Java installer) going takes forever and then some. I've found that the best thing to do while I'm waiting on the installer to, I dunno, model nuclear explosions or whatever the hell it's doing, is to wander off and eat lunch, take in a movie, or write a novel. Something to calm me down. That or I sit in a hurricane of a server room, rage slowly building, cursing Sun and uttering I can't take this. I'm freezing. This is the fastest server money can buy! What is taking so bloody long'! I mean, what fucking year is it already? It's 2006, not 1992.. I could've probably bootstrapped the thing by hand by now! What on *earth* is it doing!? Let's see Jonathon deal with this bullshit. I mean, hell, Ghandi himself probably would have smashed the console to bits by now. I think you get the idea.
I know how Mayo feels, but then I found myself agreeing with someone who signed his comment as "ux-admin" and offered, among other things, this bit of advice:
I really, and I mean REALLY don't mean this as an offense, but as an honest piece of advice: please learn UNIX, and learn and UNDERSTAND Solaris before you even go on to think of yourself as a sysadmin.
You have a state of the art, most advanced operating system in the world in front of you, but the problem is, you're trying to compare it to a dinky, hacked-together kernel-userland called Linux that doesn't even stand up to Solaris's ankle. And the worst of all, you don't rightly understand what you have, and why things are the way they are. It's not because that's how it was always done, it's because there is a damn fat good reason why.
So if Mayo was right on maybe seven out of his ten complaints, why did I agree with a guy who politely called him an idiot?
It's a cultural conflict thing - Mayo likes bash; reviles two tools, csh and vi, I rely on all the time; and admits to doing an interactive terminal install on a machine he claims is going to host a 12TB mySQL database.
That latter part looks absurd to hardened Solaris types who don't blink at false error messages during an interactive install -in large part, of course, because we don't usually do those - but giggle to ourselves at the thought of someone who does then claiming to be running a 12TB mySQL database on the system - but that's rational and not what's driving the emotional response.
What does is a cultural conflict between what csh and bash represent: csh implements the core Unix value of doing one thing and doing that one thing as well as possible, and bash does not.
On the contrary bash is what sh might have been had Stephen Bourne lacked discipline, spoken American English, studied C instead of Fortran in junior year, and focused on incorporating the egrep ideas into Thompson's sh - inconsistent from the gitgo and guaranteed to elicit a sub-conscious ugh from people who see using the -T option on xterm as far more natural than embedding host names in prompts.
That same cultural bias is, therefore, both the positive reason bash is the default shell on Linux -i.e. because it's structurally consistent with the original Linux rationale for bashing out the the Minix object structure in pursuit of x86 performance - and the negative reason people like "ux-admin" see its use as the hallmark of the beginner - someone barely out of wintel and correspondingly unable to see aesthetic value in the simple consistency of tools like vi and csh.