Staying Warm & Bashing

Once I start burning wood for heat in the winter, I like to keep the fire going, because that’s easier than starting a fresh fire every day. The down side is, even a small fire in the furnace means you’re getting some heat, whether you need it or not. So these sunny, 50-something days get up to 80 in the house, and you have to start cracking windows. It’s almost nice when the weather settles into winter temperatures, so it feels good to keep it toasty all the time.

Sometimes it doesn’t pay to be too accurate. For years now, I’ve had “Unix shell programming” on my resume along with other programming languages. I said “shell” because there are lots of Unix shells, from the basic sh to its descendant ksh and then to bash and zsh, just to list one branch of the family tree. All the shells that descend from sh are programmed basically the same, plus features that each one adds; but if you program for sh, it’ll run in all of them. I mostly use mksh on my systems, but also bash and sh on a regular basis. So I just said “shell” rather than limit myself to a few or list them all, and I’ve never really gotten calls for doing it.

The other day I was talking to a friend in the business who said he runs into a lot of companies who need “bash programming,” and they think of it as just “bash,” not shell, so that’s what they look for. Bash is the default GNU/Linux shell, so people whose only Unix-type experience has been with Linux in the past 20 years think of it as the only one. Some distros are now moving to dash, another ksh successor, but bash is still dominant. Had I said I do “bash scripting,” I might have gotten calls for it, and 99% of the time it wouldn’t matter what shell they actually use.

I guess the lesson is: if you’re trying to market a skill or product, don’t choose the terms that make the most sense or are the most correct. Find out what the people who need it will call it, right or wrong, and use those.