people are declaring themselves “NON-PROGRAMMERS” while programming a computer:
I AM A NON-PROGRAMMER!
I am writing in bash and gtkdialog.
theres a word for writing (code) in bash and gtkdialog. but weve overloaded its meaning so many times over– resulting in the simple misunderstanding that so many things arent “really programming.”
its ok– you dont have to label yourself anything you dont want to. but if youre working with code, thats the thing– youre really quibbling if you want to talk about non-programmers that program.
elitism is only partly to blame. i take responsibility for my part, talking about “languages and introductions for non-coders.” but that means “for people that arent working with code yet; people that havent tried it before, or people that gave up quickly.”
if youre in training, youre coding. and most “programmers” are always in training anyway. people are still more concerned whether they qualify or not, the end result of which is people arguing with me when i say “everyone should learn to code” that “i dont ever want to learn to code! im happy writing and editing bash scripts.”
this has actually happened several times, despite the fact that some programming languages are easier to learn than bash. bash scripts do provide endless examples and let you learn-as-you-go, so if you dont run windows theyre still a good way to learn: bash is “learnable.”
but what theyre saying isnt that far from: “i dont ever want to learn to drive, i only deliver pizzas in my car.” in the future a new metaphor will be required, but for now its just as silly.
in case im not clear, using the command line (depending how you use it) may or may not be “coding” per se. theres some gray area. but at a certain point it definitely is coding, and the line between the two is a thin one. in other words, if youre comfortable with (or need, or are using for whatever reason) the command line, youre close to coding or “programming” already.
what is “scripting?” its a kind of programming. arguably lesser perhaps, but the line between “scripting” and “programming” is artificial, was always quibbling, and gets smaller every day as scripting languages get more powerful.
can you program without the command line? yes. can you use the command line without programming? yes. but theyre still related, and people are putting a very strange amount of effort into separating things that go together pretty naturally and easily. you can if you want to, but really, why?
ive only found one good reason for this much effort to distinguish the two, other than the need to quibble. by saying “im not a programmer” you shield yourself from the endless critiques of know-it-all coders constantly telling you to do it a better way (sometimes helpful, often used as a bludgeon or critique, and often arbitrary and useless– personally i find it annoying and practically useless when people tell me dont put “cat file” in front of a pipeline.)
but since this sort of nit-picking happens at least as often in bash as any other language– it doesnt really work. either way it brings me back to how elitism is robbing people of the chance to realize theyre programming. thats a very needless shame. i was lucky enough to teach myself how to code– i doubt i would have continued to enjoy it for 30 years if id had that nonsense to contend with every step of the way.
- license: creative commons cc0 1.0 (public domain)