The essential question of the week will be difficult to answer because I am a coder. I will try to respond in an unbiased fashion. My first experience with coding was my senior year in high school back in 1982. Yikes! I learned BASIC. I think I was the only one that was enrolled in our school’s first Computer Science class, well I remember being the only one working on coding in the class that was taught by the math teacher who basically had me working independently on coding projects because he taught math during class.
I wrote graphics programs, text manipulation programs, and math related programs. I learned at a very young age (well considering the computer was invented not that much earlier) that coding was a very technical, syntax dependent, computer language. Not only do you create code, but it had to run correctly, and if it didn’t run correctly, you knew right away! Usually a script appeared with at least the word “error”. I hated that. But it taught me about problem solving and I developed a growth mindset. I had to fix the code for the program to run correctly. That was the main goal for each project. If a program ran successfully the first time typing it in, I was ecstatic. That usually didn’t happen, in fact it was rare. I had fun coding since that time, and still enjoy it. My favorite saying about coding is that computers are dumb and they are only doing what you are telling them to do!
One of the benefits of writing code is that it allows students to be creative. In the early days of coding, there were few resources, let alone Internet resources about coding. There were books and magazines you can look for code, but that’s if it was available. If you wanted to write code to apply the Pythagorean Theorem for example, no two students would come up with the exact same sequence of code to accomplish the task. There wasn’t a single correct method. The beauty is that your code had to work.
Another benefit of writing code is that it teaches problem solving. Debugging is a very common step in writing code. You actually have to look for your incorrect code and fix it. If you were lucky, your code is only 20 lines long, but it would take a while if your code was 200 lines long! Asking other people to look at your code to find errors would be futile. I suppose that could be your last resort, but you would eventually find your error and fix it.
I have just stated the reasons for coding in school. What are the reasons for not coding in school? Well, having taught for over 20 years, I can tell you that you can probably come up with a handful off the bat. There is no time to fit it in our traditional system with all the other content areas to be covered in K-12. My high school doesn’t offer a coding class because we have to cover the “core” classes. I would love to teach this class, but I have to teach math. But that shouldn’t stop me from incorporating it into my math classes. In fact, teachers are starting to use Bootstrap and other programs to use in math class. (Steinglass, 2016, Wilson, 2015) Bootstrap integrates math and computing in one curriculum. It uses algebra as the “vehicle” for creating images and animations, and they solve real problems using linear relationships, functions, and other content. (Bootstrap, 2016)
Another reason to not teach coding is because not everyone is going to choose a career of programming. Why spend valuable time and resources to teach this to K-12 students? According to the Bureau of Labor Statistics’ Occupational Outlook Handbook, Computer Programmers’ job outlook is on the decline 8% in the next ten years. (BLS, 2015) But Web Developers will be up 27%, Software Developers will be up 17%, Information Security Analysts will be up 18%, Computer Support Specialists will be up 12%, Computer and Information Systems Managers will be up 15%, in fact many computer related occupations will have job increases (BLS, 2015) Coding can “hook” them into technology and computer related occupations.
Another reason to not teach coding is because schools don’t have the computer equipment or devices to teach coding. Well, there are schools that do teach coding without these. CS Unplugged uses games, activities, and puzzles to teach computer concepts. No equipment needed. CS Unplugged is free of charge and is appropriate for K-12. Code Master is a board game that teaches coding without a computer. (Guest Author, 2015)
It would be my wish to having coding taught in K-12. I can try to incorporate it in my class this fall and see how it will affect my students’ learning and attitude. Positively I hope. Will keep you posted…
Bureau of Labor Statistics, U.S. Department of Labor, Occupational Outlook Handbook, 2016-17 Edition, Computer Programmers,
on the Internet at http://www.bls.gov/ooh/computer-and-information-technology/computer-programmers.htm (visited June 22, 2016).
Steinglass, A. (2016). Do you teach Algebra and want to add Computer Science to your curriculum? Code.org. Retrieved from http://teacherblog.code.org/post/139142823624/do-you-teach-algebra-and-want-to-add-computer
Wilson, F. (2015). Using Coding to Teach Algebra. AVC. Retrieved from http://avc.com/2015/07/using-coding-to-teach-algebra/
Guest Author (2015). 3 Reasons Coding Should be a Core Subject. Getting Smart. Retrieved from http://gettingsmart.com/2015/09/3-reasons-coding-should-be-a-core-subject/
Bootstrap, Programming for every student. Teaching Computer Science and Algebra. Retrieved from http://www.bootstrapworld.org/