WHY and HOW to teach computer science to all high school students. That's the question!
First, WHY: Computer Science nowadays is as fundamental to scientific literacy as Life Science, Physical Science, Algebra, Geometry. But computer science hasn't yet joined high school's short list of fundamental scientific/mathematical studies.
Our world depends on biology, physics, mathematics and computation--for medicine, infrastructure, commerce, communication. Air and water enliven our globe. The fundamental scientific disciplines enable and challenge our task to build an excellent habitat for mankind.
Music, story-telling, literature--all the fine arts enliven the human spirit in high school and beyond. The fundamental scientific theories--evolution, space-time, atomic quanta, mathematical proof, finite computability--deepen growing minds and awaken the philosopher in all of us.
Second, HOW: add electives in Computer Science to the high school math curriculum--offer multiple semesters of elective coding credit leading to AP Java the way Algebra and Geometry lead to AP Calculus.
Of course most students won't do AP calculus or AP programming in high school. But beginning in 9th grade any student can start coding in a real programming language. Most 9th graders already read Romeo and Juliet. Visual Basic is as broadening as Elizabethan English, and VB itself is somewhat ancient.
From 'Hello World' to translating pig-Latin, to Caesar ciphers, to finding big prime numbers, brand new coders can work in a real adult programming environment, namely Visual Basic for Applications. The VBA Interactive Development Environment is already part of school and home computers with Microsoft Office. For new coders, VBA/IDE can be their first TLAs--Three-Letter-Acronyms. Stay tuned!
Make no mistake: Praxis Machine Coding is not technical career training. Praxis Machine Coding Lessons are liberal arts/science. Praxis Machine Coding Lessons are for being free, coding well, thinking clearly.
Lessons For Teachers and Lessons For Students are intended equally for teachers and students. To use Praxis Machine Coding Lessons on your own, start with Lessons for Teachers. To learn Praxis Machine Coding in class, follow your teacher's instructions.