I took one coding class during my first degree, and I hated how much I hated it. I was initially excited to take the class because computer science seemed like a very valuable skill to have (especially in the field I was pursuing at the time). I also had friends who really enjoyed coding so I just assumed that I would have fun with it too. I was rather dismayed to see that this was not the case.
While I have always considered myself to be a patient person, it seemed that I just did not possess the type of patience that coding required. For some reason, although I didn’t mind sitting and working through difficult math and science problems, agonizing over why my code didn’t work made me want to throw my computer out the window.
I couldn’t figure out what it was about coding that I despised so much. I enjoyed other fields that seemed to require similar problem-solving skills, and I had the resilience to push through other challenging tasks. Coding seemed to be the only thing that elicited that level of frustration from me.
And I was quite disappointed to observe that frustration rising in me again when I tried to make my Scratch program. Even on such a simple platform that is designed for children to be able to use, I found myself losing patience quickly when something didn’t work the way that I had expected it to. To be fair, I was not in the best of moods on the day that I tried to make it, but I imagine that much of the problem was the emotional memory from my previous class.
Why did I find coding to be so testing in the first place, though? I’ve been reflecting on this question, and I think that it may be because it is a task where the effort exerted doesn’t always match the outcome. For creative tasks, the more time I spent thinking about and working on a project resulted in a product that I was more proud of. For math or science problems, even if it took me a long time to figure out, struggling through helped me understand the concepts better. For coding, however, it wasn’t uncommon to spent hours trying to figure out why my code didn’t work only to find that I accidentally typed a colon instead of a semicolon somewhere (a problem most people with even the most limited coding experience can likely relate to). It feels as though if I had just “been better” and paid more attention in the first place, then I could have got all that time back.
But does this experience not mimic real life? How often do we seemingly (if not actually) waste swaths of time only to find our efforts come to nought? Maybe it’s job applications we painstakingly perfect only to be rejected, or relationships we invest in that end up decaying or injuring us, or even just trying to fix something only to break it further. The “semicolons of life,” if you will.
These all feel like time that has been robbed from us, to the point of injustice. It doesn’t feel fair that we should expend so much energy on something not to be rewarded in turn.
From here, it would be easy to launch a diatribe about how “life isn’t fair so get used to it,” but I don’t want to do that. Rather, perhaps the notion that we are not rewarded for our efforts is not entirely accurate. We want life to operate in the same way as Newton’s Third Law: every action has an equal and opposite reaction. In life, every action does have a reaction, but it is not necessarily equal not opposite, at least not in the way we think it should be. When I apply for jobs that I am not chosen for, I am rewarded in experience applying and in resilience toward rejection. When I invest in relationships that don’t work, I am rewarded by understanding people better. And when I spend hours trying to find an out-of-place semicolon, am I not still rewarded by my code working after I find it? They do not seem to match the initial action, but they are reactions nonetheless.
Some may not see these “reactions” as rewards, but I think it is helpful to view them as such. If not seen as rewards, then the logical alternative is to view them as punishments. I don’t know if it’s reasonable to apply the behavioural psychology theory of operant conditioning here, but if it is, then how we view such “reactions” could have a profound impact on our own actions that follow. If we see them as punishments, then we are likely to stop doing whatever we feel punished us. Alternatively, if we see them as rewards, then we are more likely to continue to apply for jobs, invest in people, and so on and so forth. Maybe I would possess the skill of coding now if I had such a mindset earlier.
Learning to code in elementary school classrooms has value for it’s own sake and for cross-curricular applications, but could it also be used to teach kids these other life lessons? Could it help kids understand that time spent without direct accomplishment is not necessarily time wasted? I can’t help but feel that this would have been helpful for me.
Leave a Reply
You must be logged in to post a comment.