TOP PICKS | 49 TOOLS
Best Apps and Websites for Learning Programming and Coding
Top Picks
RELATED
Block- and Text-Based Code

Kodable
Fun programming logic for kids, great resources for teachers
Bottom line: A fun way for young students to understand coding, and an impressive resource for teachers to support their progress along the way.

Code.org
Popular games, big names get kids and teachers pumped to program
Bottom line: A thoughtfully planned, produced, and curated set of free resources bound to get kids hooked on learning to code.

Tynker
Approachable, powerful coding curriculum covers much ground, provides support
Bottom line: Tynker empowers students of all ages and experience levels to create custom coding projects for a variety of platforms.

SpriteBox Coding
Appealing puzzle game reinforces essential coding concepts
Bottom line: This well-designed game introduces basic coding syntax and is best used for practice.

Code for Life
Comprehensive coding platform has impressive resources for teachers
Bottom line: This learn-to-code program has the breadth and depth required to meet the needs of almost any teacher.

Kano
Apps, instruction, and hardware encourage creativity and STEAM skills
Bottom line: This thoughtful, kid-centered computing platform gets kids coding and creating.

Sphero Edu
Cool robots and creative play make programming irresistible
Bottom line: Hub for Sphero robots draws crafty kids who love making into coding, and it empowers them to be collaborators.

Microsoft MakeCode
Bring code to life with circuits, robots, Minecraft, and more
Bottom line: Once you purchase the hardware, MakeCode opens doors to an incredible diversity of coding applications.

Codesters
Differentiated text-based coding makes for truly authentic experiences
Bottom line: The well-designed Python lessons and user interface make this a great choice for serious coding instruction.

Codementum
Clear connection between blocks and coding languages in game-based platform
Bottom line: Seamless switching between blocks and text plus easy onboarding make this coding curriculum great.

Terminal Two
Engaging games teach programming concepts from blocks to code
Bottom line: These varied games are great for introducing the fundamentals and practicing but aren't sufficient as a complete curriculum.

Machine Learning for Kids
Authentic AI-powered projects make kids' creations feel like magic
Bottom line: It takes a topic that would be difficult to teach in any practical way and makes it accessible for the classroom.

micro:bit
Code games or fun displays with mini piece of hardware
Bottom line: This versatile tool for learning how to program with blocks or text is a nice fit for STEM classes and clubs.
Block-Based Code

Tynker Junior
Variety and creativity come together to get early learners coding
Bottom line: Early coders will enjoy the colorful interface and variety of activities as they progress through different worlds and develop foundational programming skills.

Code Karts - Pre-coding logic
Race into coding with fun, varied puzzles, but no teacher supports
Bottom line: Block-based coding puzzles provide a fun, surface-level intro for some; others will still need lots of additional teacher support.

ScratchJr
Drag-and-drop programming is an effective intro for budding coders
Bottom line: With a little adult help, this is a rich platform for getting kids into programming and digital creation.

Codeable Crafts
Animate stories with accessible drawing tools and coding blocks
Bottom line: Kids get a simple peek at computer programming principles by animating stories using their own creations.

Itch
Full-featured tool makes teaching with Scratch easier than ever
Bottom line: Here you'll find resources for teaching with Scratch and a complete management tool to support student learning.

Scratch
Creative sandbox opens the door to coding in any subject area
Bottom line: Scratch draws students of all types into coding and lays a foundation for future learning.

Codemoji
Emoji-based coding tool demystifies web design and animation
Bottom line: Emoji-based lessons engage and empower kids to explore web design and animation, with instant website creation.

SAM Labs
Kids use block code and wireless blocks to program, design, and create
Bottom line: With some perseverance, it's a great fit for PBL and STEAM, helping students learn programming skills and engineering concepts through invention.

Google CS First
Middle school CS curriculum has stellar resources, room for creativity
Bottom line: A high-quality introductory CS curriculum where students can be creative, collaborate with others, and express themselves, in the classroom or at home.

Human Resource Machine EDU
Challenging puzzles will grab the imagination of any coding enthusiast
Bottom line: For teachers with some coding background, this is a great game-based tool for learning to code.

Algo Bot
Simple coding game a fun intro to algorithms
Bottom line: This coding game is a fun and helpful introduction to basic algorithm development, but other resources will be needed for more depth.

Appinventor.org
Great, free mobile app creation site has solid teacher resources
Bottom line: A fantastic and complete introduction to programming concepts and app creation.

GameSalad
Great interface, flexible publishing options make game-making a snap
Bottom line: This engaging platform will empower budding game designers, but the price tag could be a deal-breaker for tight school budgets.

The Pack - NYSCI
Deceptively gentle coding game really packs a problem-solving punch
Bottom line: This gorgeous, immersive programming game encourages novel solutions.

Thunkable
Build a working iOS or Android app, even without coding experience
Bottom line: Fun, practical way to get kids programming, though teachers will need a clear plan to support them in the process.

7 Billion Humans
Amusing puzzler challenges kids, teaches programming principles
Bottom line: This high-quality puzzle game is a fun way for students to learn effective and efficient programming skills.
Text-Based Code

CodeMonkey
Puzzler's use of real code fills niche in crowded learn-to-code genre
Bottom line: A great intro to coding that, with solid teacher support, gets students using real programming languages.

CodeCombat
Dungeon-crawling adventure where code is king
Bottom line: While not everyone loves fighting ogres, CodeCombat offers a classroom-ready platform and an authentic learning experience.

Swift Playgrounds
Brilliantly designed iOS coding app great for newbies or pros
Bottom line: If you have iPads or Macs, this is an inspired choice for learning how to create and tweak code.

Unity Learn
Complete game creation curriculum gives students real-world experience
Bottom line: It's a slick, fun, and effective way to get students building games right away, with plenty of room for depth.

Code Avengers
Challenging puzzles teach with real code; best for more advanced kids
Bottom line: A superb programming tutor, well worth the effort to keep students going.

CodeHS
Computer science curriculum offers great feedback, fun challenges
Bottom line: Effective tools and clear lessons teach real programming, but you'll have to spend some cash to help kids master it.

Construct 3
Ideal 2D game builder supports students to create, innovate
Bottom line: Limitless game options, reasonable cost, and extensive support make this programming environment perfect for an educational setting.

Grasshopper: Learn to Code
First-class free app for learning to code with JavaScript
Bottom line: This app will no doubt help individual, motivated learners see how coding works using real programming language.

Hack 'n' Slash
Zelda-inspired puzzler lets players peek behind the code curtain
Bottom line: A great intro to variables and how algorithms work, this game would shine as a supplement to a larger unit on programming.

Codecademy
Excellent text-based coding site a great way to learn real-world skills
Bottom line: For both introductory and higher skill levels, it teaches the breadth and depth of skills for programming careers.

EarSketch
Song builder with coding instruction will be music to students' ears
Bottom line: It's not an easy tool to master, but it's a great way for students to explore coding and digital creation in a meaningful way.

Edabit
Tutorials, challenges, and practice in a variety of coding languages
Bottom line: Straightforward site to learn to code lets users compare how to do the same functions in a variety of programming languages.

Codea
Well-thought-out coding platform for real game programming
Bottom line: Codea is a professional tool that has enough help features that kids can learn programming hands-on.

Vidcode
Cool coding tool tuned to teens' passions aids creativity
Bottom line: Women-created platform expands the traditional scope of coding to visual elements students interact with online everyday.

Treehouse
Fun, self-paced web development and coding lessons offer high value
Bottom line: A solid learning solution for self-starting students who want to grasp the wide array of programming topics.
Hardware and Offline Elements

Unruly Splats
Game-making platform fuses coding and physical play
Bottom line: This platform could appear gimmicky at first, but in practice it blends SEL, movement, collaboration, and STEM learning in clever, compelling ways.

Evo by Ozobot
Versatile mini robot tailor-made for teaching coding
Bottom line: Evo encourages students to be creative, emphasizing that coding is a tool in your pocket, not the end game.

Wonder for Dash and Dot Robots
Serious robotics programming with seriously adorable robots
Bottom line: It's the most challenging and versatile of the Dash and Dot apps and will keep engineering-savvy kids engaged.

KOOV
Robotics kit makes design possibilities virtually limitless
Bottom line: For schools with healthy budgets, KOOV helps kids design and code interactive robots with blocks, sensors, and imagination.

Kai's Clan
Innovative STEAM package takes robot coding to the next level
Bottom line: A nearly perfect spin on STEAM coding that combines a bunch of technologies into one, and effectively fuses the real and virtual worlds.