Friday, May 5, 2017

Warning: Exposure to Coding Could Change Your Life

I apologize once again for the length of this piece; this idea of computer science for all is something that, given my background and upbringing, I am fairly passionate about compared to some of the other topics we’ve covered in class.

On the subject of coding as the new literacy, one article mentioned that until about two centuries ago, most people could not read and write in comparison to today’s society. Coding, according to this same article, is following a similar trend. However, because most people will not be exposed to raw code in their day to day lives, it is difficult to become code literate today; we’re, as the article said, still operating in the scribal age of coding. In general, I pretty much agree with this course of history.  I think that some people, at this point in time, should know code, but is not essential because our technology does not currently require that knowledge. In the future, my opinion might change, but given the technology’s current progress, I don’t think that code is necessary the new literacy. I do believe, however, that is an important skill to learn nonetheless.

Speaking from my own experiences, I believe that everyone should at least be exposed to Computer Science and coding. In my high school, Computer Science classes consisted of learning how to use the Microsoft Office Suite and playing typing games; my teachers did not know how to code whatsoever. If my parents hadn’t forced me to attend a coding camp during high school, I doubt that I would have decided to make coding my profession, and plenty of my classmates could have become successful programmers if they had been introduced to the concept before college. Because of our school’s ignorance, I was one of only four students to who decided to study anything vaguely related to computers.

A study claims, however, that exposing high school students would be a waste of time, for only a few people have an aptitude to understand code’s logical nature. I disagree with this study and its logic and instead agree with the words of Mark Guzdial, who states that students who have a fixed mindset, those believe that their abilities and talents are inherited, will struggle with coding if they do not have a natural tendency to understand it. A student with a growth mindset will instead be more successful, learning to accept failures as opportunities to grow and work harder.  Because a majority of the coding process is failing and correcting errors, I believe that maintaining a growth mindset is critical to success in Computer Science if a student is not naturally gifted in computer science.

Through a growth mindset, I believe that anyone can learn Computer Science, and I am living proof of this concept. I was definitely not “born” or graced with an aptitude for programming; while I kept up with the class for the first few weeks of Fundamentals of Computing I, I definitely have struggled my way through almost all of my other Computer Science classes. Through hard work, though, I was able to overcome my inabilities and learn how to successfully code. Based on my experience, I believe that while not everyone want to put in the effort, hard work would allow anyone to understand code; it just may take some people longer than others to internalize basic concepts.

This hard work, too, can pay off. Companies in every field imaginable are looking for computer scientists, but because most students are not being exposed to coding in high school, people develop an interest in coding too late in their careers or not at all.  Therefore, high school need to require students to take a fundamental computing class. Currently, our lives are run by technology. The average person has at least three computers on their person at a time, and it is important to have at least a high school level of understanding concerning those devices. People in nearly any industry (nurses, retailers, businessmen) encounter machines that run on code on a daily basis, and people in those positions should fundamentally know how code works in order to run the computers that help them save and improve lives.

There are some complications, however, of bringing Computer Science to high schools across the country.  The biggest argument against this movement is that there are not enough teachers trained to instruct high schoolers on the subject; most Computer Scientists end up industry because of higher-paying opportunities. Also, poorer schools could not keep up with the changing technology; replacing computers and other devices every few years is incredibly expensive for most school systems. In addition, parents and others believe that coding is not currently useful in most people’s day-to-day activities, and it is not currently worth it to invest in such a “specialized” field.

While I believe that these concerns for CS4All are valid, I still heartily believe that Computer Science courses should be added as a requirement to high schoolers’ curriculum. I don’t think that teaching grade schoolers how to code would be effective overall; based on experience, younger children are usually more interested in visual changes instead of code itself and the experience of coding. Younger children also do not know what they want in life and are bound to change their career goals despite exposure to code during school. It may be pertinent to make coding optional for grade school students or encourage parents to follow-up with their children, but overall, I think that coding should be introduced at the high school level.

By offering Computer Science classes to all high schoolers, children who never believed that they could be programmers could be inspired to code, and just being exposed to the logical thinking needed to code would be beneficial to students in any profession.  Also, I do not believe that a programming class should be an option in place of other language classes. Learning how to code requires a completely different mindset than what’s needed to understand a foreign language; therefore, I believe that it would be erroneous to group these subjects together. While I understand that it’s difficult to add more courses to a required curriculum, I believe that given the direction of society, exposure to coding in high school is critical in the formation of more Computer Scientists.

I think that the key to teaching Computer Science is computational thinking because even if students will never write a single line of code after class, they may end up using programs that rely on block-based coding or will need to know the basics of coding to be hired. Focusing on the visual aspects of coding as well as the final product is also critical in the early stages of coders’ development; learning that I could make anything with code was an important stepping stone in my career as a programmer. Too much emphasis, however, on this aspect may be detrimental and may cause students to believe that they have been “tricked”, so it’s also important to show the nitty-gritty of coding as well.  Therefore, I believe that the optimal high school computer science program would focus on these three ideas – computational thinking, visualization, and hard coding – in order to give students a well-rounded view what coding truly entails.

Anyone can learn how to program. It’s just like any other action in this world.  Some people will have an innate talent for it; some people will not.  Some people will want to code, and others could care less about it. Those with both talent and drive will perform successfully, but those who work hard and dream of being successful will also become coders.  It just might take some people more time to learn than others. In coding, practice also makes perfect; the more you write and learn to think computationally, the better a coder will become. I think that test discussed earlier is bogus; all you need is drive and the ability to accept failure in order to be successful.

While I believe that anyone can learn how to program, I don’t think that everyone necessarily should learn the gory details of coding. As Basel Farag said, “the line between learning to code and getting paid to program as a profession is not an easy line to cross.” I agree with this idea and believe that everyone should cross the “learning to code” line, but not everyone is destined to become a paid, coding professional.  Being exposed to coding high school is important to our development as a society and to people’s daily lives, but requiring anything beyond a semester in high school is unnecessary. The majority of people will still not use detailed coding information in order to function in their jobs and daily lives, and there are a multitude of jobs that require intense specialization in another subject other than coding. Without these other jobs, society would cease to function; therefore, I believe that it is not completely necessary for people to learn how to code.  Exposure to coding, however, is definitely necessary, for without an introduction into the world of code, people would not realize coding’s true potential.

I do plan on turning in the past two blogs by the end of Finals Week.  Life got the best of me these past few months, and even if you cannot give them a grade, I would still like to finish them because I really do care about my performance in this class.

No comments:

Post a Comment