December 2017 Learn More Links

Code Your Legos

The Lego Mindstorms Discovery Book

The Art of Lego Mindstorms EV3 Programming

The Lego Mindstorms EV3 Idea Book

Collection of online video tutorials

Build a Programming Language, Part III

Type coercion in JavaScript

How type coercion gets weird

Goedel Numberings

Beej’s Guide to C Programming

Arrays in C

Pointers in C

The book on C Programming

A novice friendly book on Common Lisp

Rubber Duck Debugging

Rubber duck debugging

Why Rubber Duck Debugging is the best way to debug your code

The Rubber Duck Story

Rubber Duck Problem Solving

Ask the Duck

How a Rubber Duck Taught Me to Be a Better Programmer

Click and Say ‘Om’!

CSS / HTML Introduction

History of Web Design

Visit a Reproduction of the First Website

Web Browser History

History of Game Controllers

A detailed history of video game controllers:

Demonstration of PDP-1 and Spacewar

Demonstration of Pong

Python Guess the Number Game

Binary Search from Khan Academy

Binary Search (simple)

Binary Search (techncial)

Scan the World

About Scan the World

3D Models of Eastern Island Heads

Rail Fence Cipher

Rail Fence Ciphers

Transposition Ciphers

Rail Fence Cipher Auto-Decoder

Scratch Multimodal Games

Scratch example for changing scenes

Scratch example for a simple platformer

Scratch example of an arcade shooter

Using sensing blocks instead of events to handle multiple key presses

Geometry Wars, a twin stick shooter

Ideas for games in Scratch

Shoot’em ups


Woof.js Framework

The Nether and the End

Surviving in the Nether

Information of Blazes

Information on Enderman

Ender Dragon Strategies

10 FREE Web Developer Tools

Link Sleuth

HT Track



Telerik converter

Built with

Can I use




Kotlin: A New(-ish) Kid on the Block

Explanations from the Kotlin team

A description of different languages that compile to the JVM

The Kotlin Koans, an online tutorial

The IntelliJ IDE

Essay about Kotlin from an engineer at Pinterest

Kotlin example code

Create a Box with Round Edges

SketchUp ‘Getting Started’ Video

Self-Paced Tutorials

SketchUp 3D for Beginners

SketchUp Christmas Tree

It’s YOUR Write!

The Photopia entry on the Interactive Fiction Database

Ren’Py homepage

Main Twine site

Dan Cox video tutorials

Vegetarian Zombie tutorials

Offical Twine guides

Official Harlowe 2 documenation

Twine game samples

Inventory systems in Twine

MicroPython Introduction Tutorial

See the Light!

What are NeoPixel LEDs?

More about the BBC micro:bit


  • Tim Slavin

    Tim is an award-winning writer and technologist who enjoys teaching tech to non-technical people. He has many years experience with web sites and applications in business, technical, and creative roles. He and his wife have two kids, now teenagers, who are mad about video games.

Also In The December 2017 Issue

Learn some nifty coding tricks while creating a Formula EV3 Race Car.

With binary search, you don’t have to be a mind reader to beat this simple coding activity.

Controllers have come a long way in 50 years. Let’s appreciate the bulky, awkward ancestors that led us here!

Take your Scratch games to the next level by adding multiple modes with multiple sprites.

Let the CSS Zen Gardens wow you with variety and elegance. Making a pretty website isn’t so complicated after all!

An introduction to a hip new alternative to Java. It’s all the rage in android development!

Resources to transform you into a web virtuoso, from messaging apps to testers to code converters.

New treasures and new enemies await in two unique, dangerous realms.

Create your own 3D digital museum and learn how you can help preserve cultural artifacts.

Interesting stories about computer science, software programming, and technology for December 2017.

Add data types to your new programming language in this third installment of the series.

Links from the bottom of all the December 2017 articles, collected in one place for you to print, share, or bookmark.