At our Summit on Computing Education in South Carolina, we assembled a resource page for new CS teachers. I’m including it below. PDF version of the slides that Barbara Ericson put together explaining these resources is available, as well as PPT version.
New teachers might also be interested in Dr. Tom Crick’s list of CS Education blogs and my blog post on CS curriculum repositories.
Resources for Computer Science Educators
Here is a set of links that have resources for Computer Science teachers.
Organizations:
- The Expanding Computing Education Pathways Alliance: http://ecepalliance.org
- National Center for Women & IT: http://ncwit.org
- Commonwealth Alliance for IT Education (CAITE) in Massachusetts: http://caite.org
- Massachusetts Computing Attainment Network: http://MassCAN.net
- CE21-Maryland: http://ce21maryland.umbc.edu/
- Computer Science Teachers Association (CSTA): http://csta.acm.org
- Code.org: http://www.code.org
Materials:
- Institute for Computing Education at Georgia Tech: http://coweb.cc.gatech.edu/ice-gt
- South Carolina Geographic Alliance: http://artsandsciences.sc.edu/cege/
- Take IT and Go Anywhere: http://takeitgoanywhere.org
- Taste of CS in Chicago: http://bit.ly/tasteofcs
Advocacy:
- What leaders and trendsetters say about learning to code: http://bit.ly/quotes-on-computing
- Computing in the Core on Making CS count in CS: http://bit.ly/1iL1DIs
- NCWIT:
- Why schools should teach computer science: http://www.ncwit.org/resources/moving-beyond-computer-literacy-why-schools-should-teach-computer-science
- Why consider computing as a career: http://www.ncwit.org/resources/why-should-young-people-consider-careers-information-technology
- Preparing for a Computer Career: http://www.ncwit.org/resources/how-can-i-prepare-computing-major
- Data on the enormous demand for computing jobs: http://www.ncwit.org/resources/computing-education-and-future-jobs-look-national-state-congressional-district-data
- “By the Numbers” on the state of women in IT: http://www.ncwit.org/resources/numbers
Curriculum:
- Exploring Computer Science: http://www.exploringcs.org
- Computer Science Principles: http://www.csprinciples.org
- CS10K Community Site: http://cs10kcommunity.org
- AP Computer Science A course: http://apcentral.collegeboard.com/apc/public/courses/teachers_corner/4483.html
Free Tools for Teaching Computing:
- CS Unplugged – Learn without a computer: http://csunplugged.org/
- Kinesthetic Learning Activities – Learn without a computer: http://www.cs.ubc.ca/~kla/
- Lightbot 2.0 – On-line flash game: http://ice-web.cc.gatech.edu/dl/?q=node/628
- Scratch – Cloud-based drag and drop programming: http://scratch.mit.edu
- App Inventor – Drag and drop programming for Android Apps: http://appinventor.mit.edu
- Alice (3.1, 2.3, and Storytelling) – Drag and drop programming for 3D movies: http://alice.org
- Media Computation – Programming with media in Python or Java: http://mediacomputation.org
- Greenfoot – Programming 2D games and simulations in Java: http://www.greenfoot.org
On-line sites for learning:
- Code academy – Web Dev, Python, Ruby: http://www.codecademy.com/
- Code avengers – HTML, CSS, JavaScript: http://www.codeavengers.com
- Khan academy – JavaScript: http://www.khanacademy.org/cs
- Blockly – Cloud-based drag and drop programming: http://blockly-demo.appspot.com/static/apps/maze/index.html
- On-line Python book: http://runestoneinteractive.org
- Our on-line ebook for teachers learning CS Principles and Python: http://ebook.cc.gatech.edu/TeachCSP-Python
MOOCs:
- Stanford CS 101 – JavaScript Programming self-study: http://www.coursera.org/course/cs101
- AP CS A – intended for high school students: https://users-mooc.amplify.com
- Introduction to programming in Java – intended for college students: https://www.udacity.com/course/cs046
About the Computing Education Research Blog
Computing Education Research is about how people come to understanding computing, and how we can facilitate that understanding. I am Mark Guzdial, a professor at the University of Michigan in Computer Science & Engineering, Engineering Education Research, and Information. I am a researcher in computing education. See more about me at http://guzdial.engin.umich.edu and my work at http://www.mediacomputation.org.
I have written several blog posts about Computing Education: What it is, and what some of the research questions are in Computing Education.
- Defining: What does it mean to understand computing?
- Blog Post #999: Research Questions in Computing Education
- We Need an Economic Study on Lost Productivity from Poor Computing Education
- Learnable Programming: Thinking about Programming Languages and Systems in a New Way
- MOOCs are a fundamental misperception of how teaching works
- Teaching to develop a mental model of program behavior: How do students learn the notional machine
- Open Research Questions in Computing Education, 2017 Edition
- Open Research Questions from the CS Education Research class, February 2019
- A new definition of Computational Thinking: It’s the Friction that we want to Minimize unless it’s Generative
- Why I say task-specific programming languages instead of domain-specific programming languages