Last year I gave a simple and short presentation at a local Go meetup group based on Go testing style guide. One attendee who didn’t know any Go kept asking really basic questions about Go. I had written the presentation assuming people actually knew the basics of Go.
I didn’t show it, but I was rather annoyed at this. I came to the Go meetup to talk to fellow experts, not to be recruited as an (unpaid) teacher.
This mirrors a general frustration I’ve had for a while: often experienced programmers are expected, at any time, in any context, to patiently entertain questions from new users and to help them out. Well, I don’t want to.
Some might think I’m some grumpy old curmudgeon who hates new users. Hardly; I started daemonforums.org, have more Stack Overflow points than most, have been a mentor in the local code meetup, etc. I will gladly go out of my way to try and explain things to new programmers. But not always, not at every place. I want to do it on my terms, when I feel like it, and reject that I have an obligation to do so all the time.
People have called this “elitist”. Yes, it is, and I don’t think there’s anything wrong with that. Experienced programmers are experts and there’s nothing wrong in wanting to talk only to fellow experts. Do graduated doctors have to constantly entertain basic medical questions from first-year students?
Important note: elitism is not the same as being condescending, treating people as idiots, or otherwise acting like an asshole. It’s simply about accepting that sometimes experts want to talk to experts, and not beginners.
A lot of discussion surrounding programming happens on the internet in spaces where everyone is free to join. This is really great for many reasons, but it does have the side-effect that many spaces becomes a “help new users out” space, whether it’s desired or not.
Even projects and communities which are very explicitly aimed towards expert users – such as suckless – will get a fair share of very basic newbie questions. Suckless programs are configured by changing the C code; if you don’t know the basics of C then you’re simply not the intended audience. It’s like complaining you can’t understand a book written in Amharic.
And look, I’m all for people teaching themselves programming outside of a formal education – I did that myself – and I’m all for spaces that help those people out. Just … not everywhere, not all the time.
Postscript: I have a somewhat similar frustration since moving to Ireland a few months ago. A lot of the meetup/events here are attended by quite a lot of people who spend several months in Ireland to learn English. That’s all great, but … I don’t go to these events to teach people English, I’m there to socialize and meet people. The amount of women on Tinder with “just looking to practice my English” is also staggering. It’s fine to have the occasional conversation with someone whose English is poor, but all the time? It gets boring fast. One of the reasons I’ll probably move somewhere else.