What's great about the programming industry is that demand for good programmers is higher than the supply of good programmers, so if you're a good programmer people have no choice but to make you feel special for liking Emacs and Common Lisp. If you don't want to work for a Windows shop simply because you hate the default desktop background, that's their problem and not yours. You have a job, they don't have a developer. You win, they lose.
That's what's great about being a person instead of a computer program. You don't have to be rational!
Except that this isn't true. Look, despite what we do all day at first glance, no-one gets paid to "write programs". You get paid to solve other people's problems, it just happens to be with code - it doesn't matter how hardcore you are, that's what you do. The guys working on compilers are solving the problems of the guys who need optimized code, and they're solving the problems of people who want to simulate cars in wind tunnels (or whatever) and they're solving the problems of people who want to save fuel... And so it goes.
Part of actually doing that is that you have to be able to work with a team, and you have to write code that anyone in the team can pick up, and the organization has to be comfortable that if you get hit by a bus (or throw a strop over emacs vs vi) they can get someone to build on what you've done on behalf if their customers. Sure Emacs and Lisp are great - but are they the right tool for every problem? Of course not.
This is what we mean when we say new grads have no experience. Sure you might have written a load of code, but it's the "solving other people's problems" bit that is true experience. By all means be a prima donna - but remember that real artists ship.
That's what's great about being a person instead of a computer program. You don't have to be rational!