Debian Junior Project
Summary
programming
Debian Jr. programming

The emphasis for this sampling of programming packages for children is first on simple interpreted languages. Also important for using languages with children are good documentation, and some ability to produce visual programs without too much effort. It is by no means a complete list, and you are encouraged to explore other languages with children as well; even those that are not specifically aimed for children.

The Logo language is specifically designed for children, with a strong emphasis on the visual and concrete. Littlewizard is an icon-based graphical programming language also designed for children.

Scratch is an easy, interactive, collaborative, visual programming language with children from ages 8 and up as their target group.

Arduino is a popular micro controller that is widely used by both people learning electronics and programming as well as seasoned veterans doing complex projects. It is necessary to connect a physical Arduino circuit board in order to experiment with arduino.

Description

For a better overview of the project's availability as a Debian package, each head row has a color code according to this scheme:

If you discover a project which looks like a good candidate for Debian Junior to you, or if you have prepared an unofficial Debian package, please do not hesitate to send a description of that project to the Debian Junior mailing list

Links to other tasks

Debian Junior programming packages

Official Debian packages with high relevance

arduino
AVR development board IDE from Arduino CC
Versions of package arduino
ReleaseVersionArchitectures
trixie1.8.19+dfsg1-2amd64,arm64,armel,armhf,i386
buster1.0.5+dfsg2-4.1all
stretch1.0.5+dfsg2-4.1all
jessie1.0.5+dfsg2-4all
bullseye-backports1.8.19+dfsg1-1~bpo11+1amd64,arm64,armel,armhf,i386
bookworm1.8.19+dfsg1-1amd64,arm64,armel,armhf,i386
sid1.8.19+dfsg1-2amd64,arm64,armel,armhf,i386
bullseye1.8.13+dfsg1-2amd64,arm64,armel,armhf,i386
Debtags of package arduino:
fieldelectronics
roleprogram
Popcon: 638 users (261 upd.)*
Versions and Archs
License: DFSG free
Git

Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.

This package will install the integrated development environment that allows for program writing, code verification, compiling, and uploading to the Arduino development board. Example code will also be installed.

Some base AVR libraries will be provided by the depending additional package arduino-core-avr. More libraries can be installed within the IDE itself by calling the libarary manager. This requires a working internet access.

gvrng
Interactive, introductory programming language
Maintainer: Debian QA Group
Versions of package gvrng
ReleaseVersionArchitectures
stretch4.4-3~deb9u1all
jessie4.4-1all
Debtags of package gvrng:
develinterpreter
fieldmathematics
gamepuzzle
interfacex11
roleprogram
uitoolkitgtk
usegameplaying, learning
x11application
Popcon: 1 users (0 upd.)*
Versions and Archs
License: DFSG free

Guido van Robot Next Generation (GvRng) is a project developed by advanced high school students for use by their peers as a learning tool and precursor to the further study of programming with Python. It is a minimalistic programming language providing just enough syntax to help students learn the concepts of sequencing, conditional branching, looping and procedural abstraction.

It's biggest strength is that it permits this learning in an environment that combines the thrill of problem-solving with instant visual feedback. In short, it is an interactive, introductory programming language that is excellent for learning the basic concepts of programming, applicable in any high-level language.

The GvRng version replaces the old GvR program that used wxPython for the GUI.

Screenshots of package gvrng
kturtle
educational programming environment
Versions of package kturtle
ReleaseVersionArchitectures
bullseye20.12.1-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
buster18.04.1-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
stretch16.08.3-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
jessie4.14.1-1amd64,armel,armhf,i386
sid22.12.3-1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
trixie22.12.3-1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
bookworm22.12.3-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
upstream24.02.0
Debtags of package kturtle:
develide
fieldmathematics
interfacex11
roleprogram
scopeutility
suitekde
uitoolkitqt
uselearning
x11application
Popcon: 149 users (152 upd.)*
Newer upstream!
License: DFSG free
Git

KTurtle is an educational programming environment which uses the TurtleScript programming language (inspired by Logo) to make programming as easy and accessible as possible.

The user issues TurtleScript language commands to control the "turtle", which draws on the canvas, making KTurtle suitable for teaching elementary mathematics, geometry and programming.

This package is part of the KDE education module.

laby
Learn how to program with ants and spider webs
Versions of package laby
ReleaseVersionArchitectures
bookworm0.7.0-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
stretch0.6.4-1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
sid0.7.0-2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
trixie0.7.0-2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
buster0.6.4-2amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
bullseye0.7.0-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
jessie0.6.3-1amd64,armel,armhf,i386
Debtags of package laby:
devellang:c, lang:java, lang:ocaml
fieldmathematics
interfacex11
roleprogram
uitoolkitgtk
usegameplaying, learning
Popcon: 13 users (45 upd.)*
Versions and Archs
License: DFSG free
Git

Laby is a small program to learn how to program with ants and spider webs. You have to move an ant out of a labyrinth, avoid spider webs, move rocks, etc.

Using Laby, you can learn OCaml, C, C++, Java, Prolog, Ruby, Pascal, JavaScript, Python, Lua, Vala, Scheme, Go and PHP. Other bindings can easily be added to support new programming languages.

Screenshots of package laby
littlewizard
development environment for children
Maintainer: Kari Pahula (Holger Levsen)
Versions of package littlewizard
ReleaseVersionArchitectures
bullseye1.2.2-4.1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bookworm1.2.2-4.1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
trixie1.2.2-4.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
sid1.2.2-4.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
jessie1.2.2-1amd64,armel,armhf,i386
stretch1.2.2-4amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
buster1.2.2-4amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
Debtags of package littlewizard:
develinterpreter
fieldmathematics
interfacex11
roleprogram
uitoolkitgtk
uselearning
x11application
Popcon: 8 users (4 upd.)*
Versions and Archs
License: DFSG free

Little Wizard is created especially for primary school children. It allows one to learn using main elements of present computer languages, including: variables, expressions, loops, conditions, logical blocks. Every element of language is represented by an intuitive icon. Little Wizard can be used without using keyboard, only mouse.

Screenshots of package littlewizard
puredata
realtime computer music and graphics system
Versions of package puredata
ReleaseVersionArchitectures
trixie0.54.1+ds-4all
jessie0.46.2-1all
stretch0.47.1-3all
stretch-backports0.49.0-3~bpo9+1all
buster0.49.0-3all
buster-backports0.51.4-1~bpo10+1all
bullseye0.51.4-1all
bullseye-backports0.53.1+ds-2~bpo11+1all
bookworm0.53.1+ds-2all
bookworm-backports0.54.1+ds-4~bpo12+1all
sid0.54.1+ds-4all
Debtags of package puredata:
develeditor, ide, ui-builder
fieldarts
interfacex11
roleprogram
scopeapplication
soundmidi, mixer, player, recorder
uitoolkittk
useediting
works-withaudio, image, image:raster
x11application
Popcon: 31 users (57 upd.)*
Versions and Archs
License: DFSG free
Git

Pure Data (also known as Pd) is a real-time graphical programming environment for audio and graphics processing. Pd's audio functions are built-in; graphical computations require separate packages such as gem (Graphics Environment for Multimedia) or pd-pdp (Pd Packet).

This is a metapackage that depends on all components of the core of Pd.

scratch
easy to use programming environment for ages 8 and up
Maintainer: Miriam Ruiz (Holger Levsen)
Versions of package scratch
ReleaseVersionArchitectures
bullseye1.4.0.6~dfsg1-6.1all
trixie1.4.0.6~dfsg1-6.1all
bookworm1.4.0.6~dfsg1-6.1all
sid1.4.0.6~dfsg1-6.1all
jessie1.4.0.6~dfsg1-5all
stretch1.4.0.6~dfsg1-5all
buster1.4.0.6~dfsg1-6all
Debtags of package scratch:
fieldcomputer-science
uitoolkitgtk
Popcon: 102 users (58 upd.)*
Versions and Archs
License: DFSG free

Scratch is an easy, interactive, collaborative programming environment designed for creation of interactive stories, animations, games, music, and art -- and sharing these on the web. Scratch is designed to help young people (ages 8 and up) develop 21st century learning skills. As they create Scratch projects, young people learn important mathematical and computational ideas, while also gaining a deeper understanding of the process of design.

Screenshots of package scratch
sonic-pi
Live Coding for Everyone
Versions of package sonic-pi
ReleaseVersionArchitectures
stretch2.10.0~repack-2amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,s390x
buster2.10.0~repack-2.1amd64,arm64,armhf,i386,mipsel
bullseye3.2.2~repack-7amd64,arm64,armhf,i386,mipsel
bookworm3.2.2~repack-8amd64,arm64,armhf,i386,mipsel
trixie3.2.2~repack-8amd64,arm64,armhf,i386
sid3.2.2~repack-8amd64,arm64,armhf,i386
upstream4.5.0
Popcon: 22 users (23 upd.)*
Newer upstream!
License: DFSG free
Git

A free live coding synth for everyone. Originally designed to support computing and music lessons within schools. Use code to compose and perform in classical and contemporary styles ranging from Canons to Dubstep.

squeak-plugins-scratch
Squeak plugins for the Scratch programming environment
Versions of package squeak-plugins-scratch
ReleaseVersionArchitectures
jessie1.4.0.2~svn.r83-2amd64,armel,armhf,i386
sid1.4.0.2~svn.r83-3.1amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
stretch1.4.0.2~svn.r83-2.1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
Debtags of package squeak-plugins-scratch:
roleplugin
Popcon: 111 users (3 upd.)*
Versions and Archs
License: DFSG free

Scratch is an easy, interactive, collaborative programming environment designed for creation of interactive stories, animations, games, music, and art -- and sharing these on the web.

Scratch is designed to help young people (ages 8 and up) develop 21st century learning skills. As they create Scratch projects, young people learn important mathematical and computational ideas, while also gaining a deeper understanding of the process of design.

This package contains the plugins needed by Scratch and its derivatives.

squeak-vm
virtual machine for Smalltalk
Versions of package squeak-vm
ReleaseVersionArchitectures
bookworm4.10.2.2614+20120917~dfsg-1amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
bullseye4.10.2.2614-8amd64,arm64,armel,armhf,i386,mips64el,mipsel,ppc64el,s390x
buster4.10.2.2614-8amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
stretch4.10.2.2614-4.1amd64,arm64,armel,armhf,i386,mips,mips64el,mipsel,ppc64el,s390x
jessie4.10.2.2614-1.1amd64,armel,armhf,i386
trixie4.10.2.2614+20120917~dfsg-2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,s390x
sid4.10.2.2614+20120917~dfsg-2amd64,arm64,armel,armhf,i386,mips64el,ppc64el,riscv64,s390x
upstream4.10.2.2614+20240302~dfsg
Debtags of package squeak-vm:
develide, runtime
interfacex11
roleprogram
scopesuite
Popcon: 118 users (84 upd.)*
Newer upstream!
License: DFSG free
Git

Squeak is a full-featured implementation of the Smalltalk programming language and environment based on (and largely compatible with) the original Smalltalk-80 system.

This package contains just the Unix Squeak virtual machine. You will likely need also an image file containing a "snapshot" of a live Squeak session - e.g. one of the Debian packages etoys or scratch.

*Popularitycontest results: number of people who use this package regularly (number of people who upgraded this package recently) out of 237401