Why This Site Exists
The articles and resources on this site grew out of more than 30 years of teaching programming, software development, and game design at an arts and communications college. Over the years, I have taught students from an unusually broad range of disciplines- from game design and software development to dance and theater.
These materials began as lectures, classroom discussions, examples, exercises, and course materials developed in response to questions students asked and the challenges they encountered. Again and again, I found myself returning to particular explanations, examples, and ways of approaching difficult programming concepts. Eventually, it seemed worthwhile to make these resources available beyond a single semester and a single classroom.
This site is an effort to do just that. To share resources with students, teachers, and curious learners, including those encountering programming outside a traditional computer science curriculum.
Philosophy
My approach to teaching draws on cognitivist and constructivist learning theories, as well as ideas from Agile development and iterative design. Students arrive with different backgrounds, experiences, and ways of thinking, so I try to meet them where they are rather than assuming everyone starts from the same place. Programming can be intimidating, particularly for students who don’t initially see themselves as “technical.” A supportive environment can make an enormous difference. If you would like to learn more about me, visit my personal website: janellbaxter.com.
Teachers & Educators
I am happy to make these articles available as resources for teachers and educators. You are welcome to use and incorporate them into classrooms, lessons, and other educational materials, and link to them.
However, please do not just copy the material. These articles and resources were created by one human who has invested a lot of time and energy into trying to improve the content. Almost every thing posted on this site has gone through years of iteration in the classroom before appearing here online.
When using content from this site, please credit the original source. If possible, include the title, the name of this site, and a link to the original. Example: Computational Thinking: A Framework for Problem Solving, courtesy of Code Adventure (https://code-adventure.com/computational-thinking).
A Quick Note About Accuracy
I do my best to make sure the information on this site is accurate, useful, and easy to understand. However, mistakes can happen, and technology changes quickly. If you spot something that looks incorrect or outdated, please let me know so I can review and update it. For important or technical decisions, it’s always a good idea to check the relevant official documentation or other authoritative sources.
Disclaimer
As one human (not a giant corporation) posting and maintaining this site, please understand that the material reflects my understanding at the time it was written and should not be considered a substitute for official documentation, course materials, or professional advice. When accuracy is important, please verify information with authoritative or primary sources. Errors or omissions may occur, and some information may become outdated as technology changes.

