Welcome to Coding with Kids!

Coding with kids can be a great way to not only teach them some skills that will help them with their own lives, but also create or strengthen some lasting bonds between you and them.

Here is some new content from VS Code.

Here is a shiny new note.

And here is some more content – this time from GitHub.

Throughout your journey you will both likely learn new concepts and terms that will expand your horizons and provide hours of enjoyment.

Note

Some kids have problems with screen time and if you leave them unattended with a screen and they have access to things like YouTube or games, they may not stay focused on the task at hand.

  • list item
  • another item

There are lots of great options for where to start, and Just Logic is a great place to start. Note that the best starting point is another way to refer to the same place but give your link text some title.

For details about the hardware and code options, see Options section for hardware and code .

Just Logic

All of the options below involve no screens at all – they are simply physical objects and some problems to be solved.

Key Goals

The main goals regarding logic that you might pursue with some of the options below are as follows:

  • Understand basic logic
  • Use available options
  • Apply problem solving techniques
  • Have fun! :)

Options

CodeMaster

Robot Turtles

Primo / Cubetto

Just Code

Key Goals

Options

Scratch

KidsRuby

Python

Here is some code:

def countAdjacent(p, c, r, yChange, xChange):
    global board
    adjacentCount = 0

    while True :
        c = c + xChange
        if c < 0 or c > 7:
            return adjacentCount

        r = r + yChange
        if r < 0 or r > 7:
            return adjacentCount

        if board[c][r] == p:
            adjacentCount = adjacentCount + 1
        else:
            return adjacentCount

And here is some C# code just in case you wanted to see it:

private static string GetMessageFromException(Exception ex)
{
    if (ex == null) return "";
    if (ex.InnerException != null)
    {
        return GetMessageFromException(ex.InnerException);
    }
    return ex.Message;
}

Hopscotch

Just Hardware

Key Goals

Options

Arduino

Arduino is an open source electronics platform that is great for both adults and kids.

https://www.arduino.cc/

Snap Circuits

Snap Circuits is a great electronics learning platform consisting of plastic board and electronics components that you snap together based on project guides to learn basic electronics concepts.

Project Bloks (in development)

Project Bloks is on the web at https://projectbloks.withgoogle.com/ and is a new project from Google that is still being developed but looks pretty awesome if you have younger kids that want to learn logic and flow.

Hardware and Code

When you get to the point where you are dealing with both hardware and code, you’re really about to unleash some great fun and learning.

  • Understanding how physical design might affect the code you write
  • Learning about libraries that can be used to make coding easier

Key Goals

Options

The following table offers some simple comparisons of the different platforms....

Comparison
Platform Self-Contained? Cost Flexibility Description
Raspberry Pi No $30 Limitless Mini computer board with GPIO pins for interfacing and experimentation.
Lego Mindstorms Yes $350 Medium Lego robotics sytem with motors and sensors. Build a robot, then write logic to move it around and do stuff.

Raspbery Pi (Family)

Here’s what a Raspberry Pi 2 and a Sense HAT look like:

_images/PiAndSenseHAT.jpg

With these, you can do cool things like program your own version of Connect-4 – you will need to consider how to check for a win by evaluating options as shown in the diagram below:

_images/Connect4-logic.jpg

Lego Mindstorms

Content

Accepted Content Guidelines

Making Suggestions

What to Include

Workflow

Overview

Key Scenarios

Add New Page(s)

Editing Existing Page(s)

About

This documentation project is not meant to be an exhaustive look at coding with kids.

Rather it was used as the basis for a video course about learning how to useRead The Docs.

Hopefully you take this in the spirit that in which it was written and pardon any exclusions or inaccuracies.

Opinions

Comments are mine, not anyone else’s. Etc.