Kojo is an open source App that runs on Linux, Windows, and Mac. It is a Learning Environment – where youngsters (from ages 8 to 80!) play, create, and learn:
- They play with Scala programs.
- They create drawings, animations, games, and Arduino based intelligent circuits (with appropriate additional hardware).
- And they learn:
- Logical and creative thinking
- Computer Programming
- Problem solving
- Math and Physics
- Game Development
- Electronics and Robotics
- Emotional grit
- Collaboration (via pair programming)
- And a lot more...
- Very importantly, they also learn how to learn with understanding – given the opportunity to apply learned ideas to many different situations, and the exploration, discovery, and creation involved in this process.
To get going with Kojo:
- Download and Install it.
- Download the Explorations with Kojo ebook, and read pages 8, 9, and 14 to get familiar with the Kojo user-interface and workflow. Feel free to read more of the book for deeper learning and fun, of course.
- Work through the Getting started activity book (appropriate for ages 8 and older).
- Work through the Intro to programming activity book (appropriate for ages 10 and older).
Kojo includes the following features to support its learning goals:
- A productive, fun, and friendly graphical environment – where computer programming is used to explore and play with Math, Art, Music, Animations, and Games.
- A point-and-click visual programming facility to make it easy to get started, with full support for text based programming for more advanced usage.
- Turtle graphics, for an intuitive beginning.
- Program Tracing to help understand how programs work.
- Pictures, which take turtle graphics to the next level, to create rich shapes that can be used in animations and games.
- Support for Arduino programming.
- Stories, to author creative works – using programs, text, images, sound, and music.
- Support for the composition and playing of computer generated music, and for MP3 music playback.
- A virtual Math Lab (based on Geogebra) with good support for both Algebra and Geometry.
- An Arithmic Aerobics area that helps children practice and build up their math calculation skills.
- Powerful support (based on Stories) for authoring rich, interactive learning material.
- A modern, powerful, programming language called Scala to work with. You begin with a very small and simple subset of Scala, and progress to the level of Scala proficiency that you care to reach.
- Features like syntax highlighting, code completion, and code templates to make programming friendlier.
- Interactive Program Manipulation using the mouse and keyboard to facilitate exploration and discovery.
- Multi-language capability. English, Swedish, French, Polish, Dutch, Esperanto, German, Hindi, Russian, Italian, and Croatian are supported, with more to follow.
Kojo is also a useful tool for Scala programming in general, as it provides a powerful REPL for Scala – with the following features:
- Syntax Highlighting
- Code completion
- Worksheet support in the script editor (for inline viewing of expression results)
- Program Tracing
- Searchable script history
- AST Browsing
- Saving/Loading of scripts
- Customizable Classpath – to enable experimentation with any Scala or Java class-library
- Other bells and whistles
Kojo is open source software, and is available under the GNU General Public License.
Kojo can be freely downloaded from The Kojo download page




