I recently presented at our in house Edcamp on the importance of Computer Science Education 4 all ages. Currently, in New Jersey, high schools are not required to offer Computer Science education. It is not even a high school graduation requirement. However, there are many K-12 teachers who feel that students need to be knowledgeable of this concept so that they can have an advantage when pursuing college or careers.
Some background
My son graduated from high school in 2016, without having a Computer Science class. It was not even offered at his high school. Now that he is in college, he is at a disadvantage because he does not have any prior knowledge of it. He really does not understand it at all. Although, he is a proficient user of technology applications, this does not qualify him to be proficient in Computer Science. As a result, this became a passion of mine and it was time to get involved!
Legislation
Currently, In New Jersey, high schools do not have to offer Computer Science education. It is not even a high school graduation requirement. However, starting in 2018/2019, it must be offered in high school. Here is the Bill A2873. Also, the freshman class of 2016/2017, (graduating in 2022/2023), will be required to take a Computer Science course to graduate high school. This is a huge accomplishment!
More good news for NJ. A Computer Science endorsement passed the NJ Senate allowing teachers to be certified to teach Computer Science, grades 7-12. It still has to pass the House, and onto the governor's desk, but this is a step in the right direction.
My Session
In my session, we started out with an activity on improv thinking. This exercise allowed the attendees to look at a random picture, and think quickly about a problem, solution and action. It allowed the attendees to think outside the box, stimulate the brain in a different way, and to get out of their comfort zone.
Next, I spoke about the problem(s) of not teaching Computer Science to students. I went over the essential questions, who, what, when, where, and why the importance of Computer Science.
Additionally, I stressed the importance of failing. Failing is an important part of the learning process. This is where students use their critical thinking, problem solving, communication, creativity, and collaboration skills to tackle the errors, or problems with the program.
Many educators may feel they do not have the right skill set to teach coding. That is a mindset that allows you to have this perception. There are many resources available that will provide the professional development needed to teach Computer Science. Plus, no one said you had to be an expert on the subject.
In my opinion, in order to serve our students the best we can, we need to evolve with education and keep current with the educational trends. Currently, teaching Computer Science is the subject to know and learn. It is not a trend and it certainly is not going anywhere! Our society thrives on technology and it is part of everyone's daily lives. So why not embrace it? The possibilities are endless! Just teach whatever you are comfortable with. For example, you can teach block coding using Scratch, Ozobot, or a coding language such as HTML, JavaScript or Python.
Professional Development and Resources
The College of New Jersey and Code.org have a partnership and will offer professional development on Computer Science through their website. Additionally, there are many other resources available to learn coding, such as Khan Academy, Code Academy and many more. Just Google it!
In conclusion, I am attaching my presentation to this blog post so that you can reference more of my information, resources and examples. Please give it a chance. You will be amazed with your students and their reaction to coding. If you have any questions, please feel free to leave a comment. Thank you!