Everyone Should be Software Literate

Wed 25 April 2018 in zells

The YouTube recommendation algorithm recently put a video titled "Not Everyone Should Code" on my home screen and I got curious. Mostly concentrating on why everybody should become software literate for the last years, I wanted to know what their arguments against would be.

First off: it's a great video, well made and I really enjoyed its style. But it should be titled "Not Everyone should become a Professional Programmer", since that's its actual premise. With which I agree.

"It is just a job, not a basic universal skill."

I would summarize the author's main argument as "coding isn't for everyone", "people have different talents" and "not everyone should become a surgeon neither".

"Why is programming treated in a way that surgery isn't? Because we're told it's not just another trait, but an essential skill like reading and writing. And if it is, then it totally should be required in every school. But if not - and I don't think it is - then it's just one, admittedly good, career path of many."

Unfortunately, the author doesn't talk much about why they don't think programming is an essential skill. This is the only paragraph I could find that related to this statement.

"Both farmer and maison still need to read and write. But programming can't be such a skill. It's difficult enough that it just doesn't make economic sense for everyone to learn it. Unless or until robots take over everything jobs need [to be] done. More and more will involve computers, but it won't be doctors and teachers programming them."

So the conclusion is based on the assumption that creating software is difficult and will remain difficult. But this is exactly the problem that me and many other researchers are trying to solve. I strongly believe that we can make creating, sharing, understanding and manipulating software by at least an order of magnitude easier. Many skills, including text literacy and arithmetic were once deemed "too difficult" to be learned by the general public.

The disagreement might also be caused by a different understanding of what "coding", or "programming" is. The author does differentiate between "programming" and "computer science" whereas they equate the former to "being able to write a simple programm" and the later to "solving complex problems with programs" and claims that "learning to code" implies both.

This is the reason why I avoid the term "coding" and also try to avoid "programming" since they are usually associated with typing complicated syntax and professional software development. For me, it's all about being able to express your own ideas in software and being able to understand someone else's ideas expressed in software and manipulate it.

I suspect that the motivation to make this video might come from the authors frustration with many courses and "bootcamps" promising that you can "learn to code in x weeks", implying that you will be a professional software developer upon completion. Combined with high salaries, this indeed might drive people into the field, who might otherwise have fallen for another get rich quick scheme.

But regarding the low salary of other important traits, the author unfortunately assumes that the reverse conclusion is also true, arguing that

"it would be awesome if teachers were paid more, but one benefit of what we have is that it selects for people passionate about the job, not just after a paycheck."

which to me seems like an indicator for a lack of empathy.

And lastly, the very end (before the sponsor plug) contains a part that nicely summarized why I watched the video in the first place.

"If you're already sold on the importance of programming, it's easy to see everything through that lense."

Which reminded me of how important it is to be aware of one's cognitive biases. So thanks for making this video, PolyMatter

Wanna talk about it? Found typo or wanna add something? Edit me