Coding: Where do I start? What comes next?

If you're new to this, stuck in a coding rut, or need a different challenge, this guide can help you find a new idea! It's like a choose-your-own adventure story - look for the category that sounds like you, then choose an option that grabs your eye.

I've got a robot or other hardware...now what?

How fun! Click on the tool you've got, and go nuts.

 

 
Tablet + Blue-Bot
Tablet + Blue-Bot

If you have an iPad or Android tablet, download the app to try with our friendly robot!

press to zoom
OzoBlockly
OzoBlockly

Ozobot can do more than follow a path on paper - it can be coded with blocks!

press to zoom
Explore MicroBit!
Explore MicroBit!

Tiny computer featuring a grid of lights and sensors, and can be programmed in a web browser!

press to zoom
Circuit Playground
Circuit Playground

Ten lights times a dozen sensors equals magic! Jump in and play with electronics.

press to zoom
Jewelbots: wearable fun!
Jewelbots: wearable fun!

Program a codable friendship bracelet to light up, buzz, and more!

press to zoom
NeoPixels light it up!
NeoPixels light it up!

Program a strip or ring of LEDs with Arduino!

press to zoom
Build a computer!
Build a computer!

This link: setting up a RaspberryPi. Next link: what to do with it!

press to zoom
More RaspberryPi fun!
More RaspberryPi fun!

Learn how to navigate Linux, then code some flashing lights!

press to zoom
Create Android apps!
Create Android apps!

Android phone or tablet? Writing apps is easier than you think!

press to zoom

I'm new to coding and I'm not a good reader yet.

Here are some of our favorite low-reading interactive tutorials!

 

 
Lost Fuzzballs
Lost Fuzzballs

Help the Fuzzballs roll home - no reading! (Ask Eileen to add your name.)

press to zoom
Code in Space
Code in Space

Solve puzzles set in space (no reading!)

press to zoom
Mystery Monsters
Mystery Monsters

Create monsters and more on Mystery Island!

press to zoom

 

I'm new to coding, and I'm a good reader, but I don't want to type.

These tutorials all use drag-and-drop blocks instead of typing - they're a great way to get started!

 

 
Flappy game
Flappy game

Create your own version of the classic game!

press to zoom
Fun with Droids
Fun with Droids

Build your own Star Wars-themed game!

press to zoom
Explore Minecraft
Explore Minecraft

Help Steve or Alex navigate the world, or program characters and animals (two versions - try either!)

press to zoom
Animate your name!
Animate your name!

Give each letter its own special effect!

press to zoom
Make it fly!
Make it fly!

Program a character to fly using Scratch!

press to zoom
Wayfind with Moana
Wayfind with Moana

Code Moana to explore, dance, catch fish, and more!

press to zoom

I've done some Scratch, and now I want to try something else with blocks!

Lots of other languages use blocks - try one of these!

 
Gamefroot: Advanced Games
Gamefroot: Advanced Games

Ready to make bigger games than you could with Scratch? Try this!

press to zoom
Stencyl: Advanced Games
Stencyl: Advanced Games

Another tool for bigger games; still uses blocks. (requires download)

press to zoom
Create worlds with Alice
Create worlds with Alice

Switch between blocks and text to create a 3D world! (requires download)

press to zoom
Codesters
Codesters

Bridge your way from Scratch to Python!

press to zoom
Pencil Code
Pencil Code

Switch back and forth between blocks and text!

press to zoom
AppInventor
AppInventor

Create a downloadable Android app!

press to zoom
Code.org AppLab
Code.org AppLab

Create a web app you can test on an Android or iOS device!

press to zoom
Beetle Blocks
Beetle Blocks

Scratch-like blocks let you code in 3D!

press to zoom
3D Model with BlocksCAD
3D Model with BlocksCAD

Another awesome tool for using code to make 3D objects.

press to zoom
Try Snap!
Try Snap!

Advance your skills with Scratch's more powerful cousin, Snap!

press to zoom
Code with GP Blocks
Code with GP Blocks

Scratch-like language especially good at making image filters and editing sounds.

press to zoom
OzoBlockly
OzoBlockly

Ozobot doesn't JUST follow paths on paper - you can also program it with blocks!

press to zoom

I want to make an app.

Here are several different options for different platforms and levels of coding experience. There are pros and cons to each - if you're not sure which one would work best for you, just ask!

 
Code.org AppLab
Code.org AppLab

Create a web app you can test on an Android or iOS device!

press to zoom
AppInventor
AppInventor

Create a downloadable Android app!

press to zoom
Build iOS apps in browser
Build iOS apps in browser

Thunkable makes blocks-based, in-browser iOS apps possible! Try it!

press to zoom
Building your first Android App
Building your first Android App

Official tutorial from Android - recommended for coders with some experience.

press to zoom
Your First Android App
Your First Android App

Another option for getting started with Android - assumes no knowledge.

press to zoom
Android Development Videos
Android Development Videos

If learning from videos rather than written tutorials is your style, check out Android Development for Absolute Beginners!

press to zoom
Udacity iOS/Swift Intro
Udacity iOS/Swift Intro

Create your first iOS app with a free course!

press to zoom
App Development with Swift
App Development with Swift

Long and intense course through Apple Education. Not for the faint of heart.

press to zoom
Create VR apps
Create VR apps

Use Unity plus Android studio to create a simple virtual environment - no experience needed!

press to zoom

I don't want to create my own project - I want to hack someone else's!

Try one of these, or ask about hacking the Python games on one of our Raspberry Pi computers!

 
Hack Flappy Bird
Hack Flappy Bird

Use Scratch to make this classic game less frustrating!

press to zoom
Hacking Websites
Hacking Websites

Look at websites and edit their HTML code!

press to zoom
Hacking Mario
Hacking Mario

Use Javascript to edit the code that runs Super Mario!

press to zoom

I want to try a typing language with a quick tutorial.

Here's an eclectic assortment of tutorials for coding with your keyboard. Feel free to choose one either by picking a language you're curious about, or choosing the project you find most interesting - it's hard to go wrong!

 
Create 3D Worlds
Create 3D Worlds

Use Javascript to create space ship simulations!

press to zoom
JavaScript Art
JavaScript Art

Get a taste of JavaScript by coding colors and drawings!

press to zoom
Code a character
Code a character

Use HTML/CSS/Javascript to create an avatar!

press to zoom
Build a Chatbot
Build a Chatbot

Use Python to program a conversation!

press to zoom
Holiday Cards
Holiday Cards

Try Python by building a card to send to friends!

press to zoom
Cryptography
Cryptography

Learn how to encode and decode secret messages in Python!

press to zoom
Digital postcard
Digital postcard

Use HTML and CSS to create a postcard to share!

press to zoom
Make a web page
Make a web page

Try HTML and CSS to build a website!

press to zoom
Intro to Databases
Intro to Databases

Get a taste of how we keep track of data with SQL!

press to zoom

I want to stick with a typing language for a while.

Here's an assortment of online classes and extended programs for coding with your keyboard - if you've tried a quick tutorial and are ready to dive into a language in more depth, try one of these! (Note that for most of these, you'll need to create an account to save your progress).

 
CodeCombat
CodeCombat

Dig into Javascript, Python, Lua, or Coffeescript by fighting battles!

press to zoom
Codecademy
Codecademy

Interactive Java, Ruby, Python, Github, and web courses!

press to zoom
Free Code Camp
Free Code Camp

Learn front and back end development of web apps through interactive tutorials.

press to zoom
Flatiron School
Flatiron School

Learn Javascript and Ruby on Rails with interactive tutorials!

press to zoom
Invent with Python
Invent with Python

Make games, automate life, or hack stuff with a free e-book!

press to zoom
Make music!
Make music!

Learn to live code beats and tunes with Sonic Pi! (requires download)

press to zoom

I need some puzzles to solve!

Whether you're looking for a challenge in a language you already know, or you need a way to learn a new language, solving puzzles can be a great way to go! Here are some puzzles you can tackle in any language.

 
Codecademy Weekly Challenge
Codecademy Weekly Challenge

Try some technical interview challenges: easy, medium, and hard difficulties!

press to zoom
Project Euler
Project Euler

Compete against your friends with challenges you can solve in any language!

press to zoom
Rosetta Code
Rosetta Code

Help create examples of specific programs in different languages!

press to zoom
CodeFights
CodeFights

Solve puzzles in your choice of languages (less tutorial, more self-taught through research).

press to zoom

I need to edit an image and/or model.

When you're creating your own projects, you need to be able to make assets. Here are some of our favorite free tools!

 
Sumopaint
Sumopaint

Another free, in-browser photo editor.

press to zoom
Pixlr
Pixlr

In-browser image editor - great for removing backgrounds or combining pictures!

press to zoom
Remove Image Backgrounds
Remove Image Backgrounds

Here's a quick and easy tutorial for using Pixlr to turn images into useful characters!

press to zoom
SculptGL
SculptGL

Sculpt 3D models in your web browser!

press to zoom
Blender
Blender

VERY powerful 3D model editor (has to be downloaded)

press to zoom
Pixel Art and Sprites
Pixel Art and Sprites

Piskel is a free, in-browser tool for creating animated sprites and other pixel art.

press to zoom

I want to learn about how computers work, not about coding.

Cool! Here's a video tour of the inside of a computer, and two pencil-and-paper activities that will teach you a computer concept. (Plus, they're fun!)

 
Hiding things in Code
Hiding things in Code

Create secret images or messages with zeroes and ones!

press to zoom
How do computers work?
How do computers work?

This four-minute animated video gives you a guided tour!

press to zoom
Mind Reading Trick
Mind Reading Trick

Use the way computers fix errors to make someone think you can read minds!

press to zoom