Computer Science Resources
The GSSM Outreach staff have curated a collection of over 35 free computer science resources for teachers and students--all that is needed is internet access!
After Hours Programming
Grades 4 – 8. Blockly Games is a series of educational games that teach programming. It is designed for students who have not had prior experience with computer programming. By the end of these games, players are ready to use conventional text-based languages.
Grades K – 16. You don't have to be a software developer to teach computer science. Code.org makes it easy, no matter your background. Code.org offers their entire curriculum and course content completely free worldwide, without any sort of needed partnership to use their materials in your school or organization! You can find their curriculum in full at curriculum.code.org. They also offer professional development opportunities for K-12 teachers through either 1-day or multi-phase workshops. You can read more about these opportunities here.
Code for Life
Grades K – 12. Learning coding from Blockly to Python. Once you’ve registered you’ll be able to create your class or club; track each student's progress; and download free teaching packs which include lesson plans, student resources and assessment tools. There are even videos to help you and your class understand what you’ll be learning next.
The Code Player
Grades 8 – 16. A C# tutorial for people who know nothing at all about programming. All you need is to be willing to learn C# from the ground up. The course will also be useful for those who already have a little experience in programming. Travel through an exciting adventure story set in the far future. Machines have taken over the world, but YOU will save the world by coding! While reading, you’ll face challenges that require real coding to solve. You're smart enough to meet the challenges, though, aren't you? Don't chicken out! The fate of the world depends on you! Who will win in the end?
Grades 9 – 16. Teachers and/or students can learn coding topics in 12 various programming languages through Codecademy. This online interactive platform also allows users to personalized their learning methods, quizzes, and real-time projects.
An online code editor that lets people collaborate in real-time. It works in your web browser so no installation is needed. Features include text editor, chat, document history, and syntax highlighting for programming languages. Great for collaborative coding because email and instant messaging do not work well for sharing code. They don't preserve whitespace, the fonts aren't monospaced, the spell check gets in the way, etc. In addition, they don't have a good editor, they're only good for copy and paste. Collabedit has what you need - a good editor, syntax highlighting, real-time collaboration, chat and versioning.
Videos all about computers and computer stuff.
Computer Programming Languages
Grades K – 12+. A massive guide to STEM for kids. This guide provides links to over 150 courses, resources for each subject of the STEM curriculum, handpicked websites, activities, and is even organized by age group for easy access. ComputerScience.org offers a collection of financial aid, academic, and career resources. Curated by industry professionals, this site provides students and professionals with up-to-date information in computer science education.
Grades 5 – 9. A computer science curriculum that makes coding easy to teach and fun to learn. CS First empowers every teacher to teach computer science with free tools and resources. Students learn through video tutorials and block-based coding in Scratch. CS First is totally free — any number of students, all materials, as many activities as you want.
Open source, online, desktop and container deployable diagramming software. Diagrams.net has everything you expect from a professional diagramming tool and you can store your data wherever you want to!
Grades 4 – 16+. If you're an Excel beginner, this is a good place to start. You can use Excel to enter all sorts of data and perform financial, mathematical, or statistical calculations and is a great tool for organizing data and lists. This free site is not only well organized and user friendly it also offers a free tutorial on how to use Excel and includes an overview of all chapters and over 300 examples.
Grades 9 – 16. A platform to help students learn to code. FreeCodeCamp has thousands of videos, articles, and interactive coding lessons and thousands of freeCodeCamp study groups around the world.
Girls Who Code
Grades 3 – 16. Girls Who Code has several different programs. Choose from club (facilitator toolkit) or campus (instructor toolkit) to get the appropriate materials and information. The registered Program Facilitator will access either the Standard Club (15-week) or Mini Club (10-week) curriculum materials by selecting the appropriate link on the HQ menu. There is also a Summer Immersion Program curriculum.
Glossary of Coding Terms for Beginners
Grades K – 12+. Coding tells the computer what to do using a language it understands. There are dozens of different programming languages, but they all share a single foundation. Each language follows a specific set of rules that determines how code should be written, and then uses back-end software to translate it into binary (the computer’s native language). Even if you don’t intend to take on programming yourself, encouraging children to code will be easier if you can speak the same language as them. This glossary is a quick-reference tool to help kids work through their initial coding questions and concerns.
Grades 6 – 16. Build internal project hubs, team sites, public-facing websites, and more—all without designer, programmer, or IT help. With the new Google Sites, building websites is easy. Just drag content where you need it. When you create a new site, it’s automatically added to Drive, like your other files stored in Drive. You can edit a Google Site together with someone else in real time, and see each other’s changes live. Publish the site for everyone to see, or restrict sharing permissions and make the site accessible only to people you choose. Google Sites websites are responsive, which means they’re optimized for tablets and smartphones, too. Note: You can view the new Sites on most browsers on computers and mobile devices. However, at this time, you can only edit new Sites content on a computer using Chrome or the Mozilla Firefox browser.
Khan Academy: Computing
Kid-Friendly Coding Languages and Learning Tools
Grades K – 12+. There are hundreds, potentially thousands, of programming languages-estimates range from 250 to almost 9,000. With so many options, it can be overwhelming figuring out where to start beginner coders, especially kids. This link provides information about learning-friendly coding languages and an index of popular online programs, apps, community pages and camps meant for K-12 students.
Kids and Coding: Resources for Educators
Grades K – 12+. This collection of free resources, published by Syracuse University, is for educators and beginners to the skill of coding. It includes several learning pages, such as: "Glossary of Coding Terms," "Six Tips for Teaching Kids How to Code," "How to Teach More Than Just Coding," and "Kid-Friendly Coding Languages and Learning Tools." This guide introduces students and teachers to an essential building block of computer science. This hub also supports students independently learning an important skill.
Grades 4 – 9. Kodu lets kids create games on the PC and Xbox via a simple visual programming language. Kodu can be used to teach creativity, problem solving, storytelling, as well as programming. Anyone can use Kodu to make a game, young children as well as adults with no design or programming skills. For educators: Kodu has compiled some key resources — including training videos, sample lessons, starter worlds, and connections to other Kodu educators, to make your on-ramp as smooth as possible.
Grades 6 – 16. The YouTube channel for learning web development. LearnCode.academy has tips, tricks, and tutorials designed for first-time programmers. Beginners can replay and review the coding tutorial clips.
Machine Learning for Kids
Grades 6 - 12. This tool introduces machine learning by providing hands-on experiences for training machine learning systems and building things with them. It provides an easy-to-use guided environment for training machine learning models to recognize text, numbers, images, or sounds. This builds on existing efforts to introduce and teach coding to students, by adding these models to educational coding platforms Scratch and App Inventor, and helping students create projects and build games with the machine learning models they train.
MIT App Inventor
Grades 6 – 12. An intuitive, visual programming environment that allows everyone – even children – to build fully functional apps for smartphones and tablets. Those new to MIT App Inventor can have a simple first app up and running in less than 30 minutes. The blocks-based tool facilitates the creation of complex, high-impact apps in significantly less time than traditional programming environments. Educators: see the "Teaching with App Inventor" section for all the resources and help needed to set up your classroom for App Inventor.
The Odin Project
Grades 6 – 12+. The Odin Project provides a free open source, web development coding curriculum that can be taken entirely online. The Odin Project is for absolute beginners who want to work as a web developer, do freelancing work, build a startup, or just hack together a homepage. With the Odin Project you'll create your own websites, games, and social media sites.
Grades K – 9. Praxent includes links to several free, fun coding activities and games. The games include Cademoji Playground, Codingame, Code Combat, Robocode, and Code Your Hero.
Grades 6 –12+. Python.org is a free website for beginners or experienced programmers. Beginner's guides for programmers and non-programmers, a download and installation guide, and code samples are only a few of the many resources available. The website is user friendly and is a great resource for those wanting to learn Python.
Grades 3 – 12. Scratch is designed especially for ages 8 to 16, but is used by people of all ages. Millions of people are creating Scratch projects in a wide variety of settings, including homes, schools, museums, libraries, and community centers. The ability to code computer programs is an important part of literacy in today’s society. When people learn to code in Scratch, they learn important strategies for solving problems, designing projects, and communicating ideas. Students are learning with Scratch at all levels (from elementary school to college) and across disciplines (such as math, computer science, language arts, social studies). With Scratch, you can program your own interactive stories, games, and animations — and share your creations with others in the online community. Scratch helps young people learn to think creatively, reason systematically, and work collaboratively — essential skills for life in the 21st century.
Six Tips for Teaching Kids How to Code
Grades K - 12+. Coding curriculums and self-taught courses are flooding the internet, and it’s more possible for anyone to become a coding teacher: parents, educators, and students themselves. But explaining new concepts like loops and conditionals to a child is difficult, especially if the teacher is new to them, too. For people who find themselves in the position of coding teacher—whether in a formal classroom setting or as a mentor—here are some recommendations from experts and curriculum creators.
Grades 8 – 16. W3Schools is a school for web developers, covering all the aspects of web development. W3Schools' tutorials start from basic level and move all the way up to professional references. W3schools presents thousands of code examples. By using our online editor, Try it Yourself, you can edit examples and execute computer code experimentally, to see what works and what does not, before implementing it.
Women in Computer Science: Getting Involved in STEM
Grades 6 – 12+. According to the American Association of University Women, computer science has one of the smallest pay gaps between male and female professionals, with women earning 94% of what men earn. Learn all about the advantages of working in a computer science field and confront many of the misconceptions about computer science.