Part 1 of TBD
Misconceptions About Teaching and Learning Programming — Part 1
How cognition-denial, meritocratic romanticism and deep-rooted prejudices get in the way of tech teaching today
Introduction
Just the other day, I was going through my social media feed when I came across a post from a programming teacher:
“Stop learning everything.
(Thinking the more you know the better coder you are)
That has no educational effect…”
In another tweet, he continued:
“The best way to progress is to just write code.
Don’t look for “best” tutorials, books or courses.
Just write code…”
The tweets were well received by a flurry of aspiring learners hailing from everywhere in the world, mainly Africa. Breaking rank from the congratulatory messages though, one of the followers replied that he knew code but his issue was not knowing how to use it in more complex scenarios; he ended his message pleading:
“what should I do?”
As I had seen before, that student’s question went unanswered until it silently disappeared from the thread; probably deleted out of embarrassment.
Programming students like this are not a rare appearance in learning forums and social media. They make up a growing group of motivated learners and self-learners who generally launch themselves into mastering a programming language without much of a plan or strategies to support them on the way. Many are pursuing the now common promise of becoming an employable full-stack developer in an undefined “short” period of time.
Fuelling the hopes of those learners, on the other side, you will find a group of knowledgeable, experienced (and mostly self-taught) programmers who have taken upon themselves the task of “educating” the masses and sharing what they know (either free or for a fee).
Despite their little to no knowledge of research-based teaching practices or any idea of how people learn, they call themselves “teachers”, “instructors”, “educators” and sometimes nothing at all. They hail from places like YouTube, Udemy, their own e-learning platforms or from one of the many bootcamps springing out everywhere.
A number of these teaching developers compensate for their lack of formal teaching knowledge with natural peer-to-peer empathy and a constructionist intuition thus managing to provide acceptable instruction. Others, on the other hand, base their teaching practices on outdated misconceptions that unbeknownst to them will make their students’ journey more arduous.
This series looks into some of these deep-rooted misconceptions about teaching and learning to programme, hoping to raise awareness amongst programmers and programming teachers about science-based and empathetically deeper ways to share programming knowledge.
About me
I am a UX Manager (and this article has nothing to do with my employer or my day job). Having worked in IT for the past 20 years, I did everything from UI design to Front-End Development (mainly Flash, XHTML, and CSS2).
I am a qualified teacher with a specialisation in Teaching English as a Foreign Language (TEFL). Before IT, I taught English to students of all ages in bootcamps, private and public schools in Brazil for many years. In between teaching and IT, I worked as an online instructional designer.
Having failed to learn web development with Django in the past, I am currently teaching myself JavaScript and relearning Web Development in my spare time. This time, I am winning.
References
- How Long Does it Take to Become a Full-Stack Developer?
- Teach Yourself Programming in Ten Years
- Bootcamps won’t make you a coder