Prof. dr. Edsger W. Dijkstra says that the only true way to teach programming is by writing proofs by hand, on paper, approaching coding like a purely mathematical skill. Only then, he claims, can students truly understand the "radical novelty" of programming. He's onto something, analogies or high-level understanding are appealing and rewarding but ineffective for true learning. What if there were a way to introduce key concepts of computer science in an honest way without scaring away even the above-average student?
There are certain sticking points in introductory computer science that are difficult to teach and to learn. Many efforts are moving towards visual programming environments, simplified languages, and AI tutors. The problem with these approaches are open accessiblity & skill transfer from learning environments to professional environments. Using just JavaScript, devtools, and some clever study techniques it is possible to get many of the same benefits you see in custom learning environments while still providing a fluid transition to substantial CS concepts.
Stop by to see how CS concepts integrate with every-day programming & languages with some fun hands-on exercises.