Nixie Challenge

The Nixie Challenge gives learners a hands-on way to practise binary fluency. The launch currently ships with two assignments: glowing nixie conversions between base-10 and base-2, and a text-based binary addition drill where each bit is entered individually.

A third option adds a retro seven-segment display for hex ⇄ decimal conversions.

How It Works

Pick an assignment on the Instructor Dashboard (Settings → “Pick the assignment”). Learners see one activity at a time:

  1. Base-10 ⇄ Base-2 conversions (Base2Conversions): A tabbed card exposes decimal → binary and binary → decimal drills. Learners type the 4s/2s/1s bits and receive instant feedback—no “Check” button required—while a score in the tab header tracks up to 10 correct challenges.
  2. Hex ⇄ Decimal conversions (HexConversions): Another tabbed card flips between decimal → hex and hex → decimal practice, limited to digits 8–F. Each correct conversion increments a 10-point score displayed beside the tabs.
  3. Binary addition (BinaryAddition): Two three-bit numbers appear as rows of bits. Learners type each sum bit (including the carry) in individual inputs; feedback updates as soon as all boxes contain 0s or 1s.

Assignment Management

Visit Instructor Dashboard → Settings to choose the active assignment. The dropdown lists “Base-10 ⇄ Base-2 conversions” first, followed by “Binary addition practice”. All instructor dashboards also include Student Data and Launches shortcuts.

Integrating into a Course

The tool works well as a warm-up activity before teaching binary arithmetic or as follow-up practice after introducing positional number systems.

Suggested Learning Objectives

Accessibility Notes

Developer Notes

The nixie display is implemented in nixie.js using the Canvas 2D API. Assignment routing happens in index.php, so adding new activities only requires adding markup + logic and registering the key in assignments.php. Tab switching is handled in initTabbedCards(), and each drill exposes a simple score tracker that caps at 10.

Adding New Exercises

  1. Extend assignments.php and index.php with a new key + markup.
  2. Implement the exercise logic inside nixie.js (see initBase2Conversions and initBinaryAddition for patterns).
  3. Reuse SimpleNixieDisplay if the activity needs a nixie tube; otherwise create bespoke DOM components.

Testing Checklist