KPL (Kid's Programming Language)
A free, BASIC-flavored .NET language and simplified IDE released in 2005 to hook beginners on programming through 2D and 3D game development, later commercialized as Phrogram.
Created by Jon Schwartz, Jonah Stagner, and Walt Morrison of Morrison Schwartz, Inc.; Stagner's wish to teach his ten-year-old son sparked the project
KPL - Kid’s Programming Language - was a free programming language and simplified integrated development environment released in mid-2005 by Morrison Schwartz, Inc., a small consulting firm, with a single overriding mission: make a ten-year-old’s first program a game with graphics and sound, not a line of text on a console. Its syntax read like BASIC, its structure worked like C# or Java, it compiled on the .NET Framework, and its class libraries were engineered so that loading and moving a 3D model took three lines of code. Under the motto “learning is best when learning is fun,” KPL racked up 55,000 downloads in its first seven months, volunteer translations into 15 languages, and a promotional nod from Microsoft - before being renamed Phrogram, commercialized, and ultimately discontinued.
Define pointer As Model3D
pointer = LoadModel( "Arrow-yel.x" )
pointer.MoveTo( 0, 0, 0 )
History and origins
KPL began at home. Jonah Stagner wanted to teach his ten-year-old son to program and discovered that the tools of the mid-2000s were nothing like the friendly 8-bit BASICs he and his colleagues had started on - the beginner’s on-ramp had eroded while professional tooling raced ahead. Stagner teamed up with Jon Schwartz, an ex-Microsoft program manager, and Walt Morrison, a former NCR engineer; the three ran the project out of their consulting firm, Morrison Schwartz, Inc. As Morrison put it at the time: “One of the things we realized is that we all learned programming on some flavor of BASIC when we started.”
KPL 1.0 was released as free educational software in mid-2005 - the creators’ own SIGGRAPH paper dates the release to July 2005, while other accounts say August. The timing gave the project an unusual tailwind. US computer science enrollment was in free fall: the share of incoming undergraduates intending to major in CS had dropped more than 60 percent from its 2000 peak, and the creators explicitly framed KPL as a response to that crisis. Attention came quickly for a project with, in its creators’ words, “word-of-mouth and word-of-blog marketing” only: Microsoft featured KPL on its MSDN Coding4Fun site in September 2005, press coverage cast it as a BASIC replacement, and it reportedly shipped on cover CDs with roughly 70,000 Australian computer magazines starting in October 2005. By early 2006 it had been downloaded 55,000 times, and in the summer of 2006 the creators presented it at the ACM SIGGRAPH Educators program.
Design philosophy
The SIGGRAPH paper lays out KPL’s thinking with unusual clarity. Three high-level goals - only one of them technical - governed the design:
- Reduce technical barriers to entry. The learning curve for beginners had become “painfully and discouragingly steep.” KPL’s job was to flatten it without dumbing the destination down.
- Leverage social interest in computing. Kids wanted to make the software they already loved - games. KPL’s graphics, sound, and game libraries were complete enough, the creators argued, to produce commercial-quality casual games.
- Enable creative self-expression. Programs meant art, models, sounds, and stories, not just code; community-contributed KPL programs included animated cartoons, interactive fiction, and user-recorded voice clips.
Beneath these sat a dozen explicit design points - fun, accessible, engaging, simple, rewarding, highly leveraged, progressive, preparatory, modern, publishable, state of the art, and international. The creators’ candid self-assessment was that Logo, Squeak, and Alice matched or beat KPL on the first six, but that KPL won on the last six - above all preparatory: because KPL was a real .NET language with a real IDE, a KPL programmer was quietly being trained for Visual Studio, C#, and Java rather than for a walled garden. The IDE even included one-click C# Conversion and VB.NET Conversion windows that showed a program’s equivalent in a professional language - graduation built into the tool.
Key features
A readable language with real structure
KPL’s syntax was designed to be read aloud. Variables were declared with Define ... As, the built-in types were Integer, Decimal, String, and Boolean, and user-defined functions, methods, and classes were all supported. Classes deliberately stopped short of inheritance and polymorphism: the goal was a component-oriented mental model - define a thing, set its properties, call its methods - rather than full object-oriented theory:
Define fps As TextLabel
fps.MoveTo( 10, 0 )
fps.Color = Colors.Yellow
fps.Text = "Loading terrain"
Highly leveraged class libraries
The standard libraries - among them Sprites, Game3D, GameInput, GameUI, Sounds, Drawing, Math, FileIO, and Timers - were the heart of the pedagogy. They encapsulated as much complexity as possible so programs could be as simple as possible: a sprite or a 3D model on screen in three statements. The library architecture was extensible, and an SDK was planned.
A junior Visual Studio
The IDE was consciously modeled on Visual Studio .NET and Eclipse, offering syntax coloring, IntelliSense-style completion, tooltips, collapsible code regions, and inline error markers. A real debugger supported breakpoints, step over/into/out, and a variables window - the creators argued there is no better way to learn loops and scoping than single-stepping through them. Dockable tool windows (Program Explorer, Framework Browser, Debug, and the C#/VB.NET converters) were optional, so the environment could grow with the student.
Publishable programs
A KPL program lived in a single text file that could be emailed, posted, and run in anyone’s copy of KPL - and the environment built a standalone Windows EXE of each program it ran, distributable to machines without KPL installed. For a beginner, shipping a game to a friend was the reward that kept them programming.
International by architecture
An open strings design let volunteers translate the IDE without touching code. Within seven months of release, the IDE was available in 15 languages beyond English - Russian, Chinese, German, French, Spanish, Portuguese, Italian, Dutch, Danish, Swedish, Polish, Czech, Greek, Romanian, and Catalan - with the website and tutorials following in several languages.
The Phrogram era
The SIGGRAPH paper closed by asking openly how KPL could be sustained - open source, a non-profit, commercialization, or transfer to a larger institution were all on the table. The answer came in October 2006: the language was renamed Phrogram (a play on “frog” and “program”), released as version 2.0, and put on a commercial footing, with the target audience broadened from kids to anyone wanting to learn programming. Phrogram targeted the .NET Framework 2.0 and was sold in two editions - a limited Phrogram Express and a full-featured Phrogram Academic for educators. Version 2.2 (December 2007) ran on Windows 2000, XP, and Vista in 32- and 64-bit flavors, and universities including the University of Michigan, Unitec New Zealand, and the Waikato Institute of Technology adopted it for introductory courses.
The commercial turn also marked the beginning of the end. Distribution of the original free KPL stopped in May 2008; Phrogram 2.5, released in September 2008, proved to be the final version. In July 2015, Phrogsoft - the company behind Phrogram - announced on its website that it was ceasing sale and distribution of its software.
Current relevance
KPL and Phrogram are gone: closed-source, Windows-only, and unavailable through any official channel since 2015. The space they pioneered, however, became crowded almost immediately. MIT’s Scratch arrived in 2007 and Microsoft’s own Small Basic in 2008, each answering the same enrollment crisis with the same wager - that graphics, games, and instant gratification are how you make programmers. Scratch’s blocks-based, browser-delivered, massively-shared model won that generation decisively, and KPL’s typed-code-first approach was left behind along with its business model.
Yet KPL’s specific bet - a real, textual, statically typed language with a real IDE and debugger, deliberately styled as a junior Visual Studio - anticipated a critique that surfaced years later: that block environments can leave students stranded at the transition to professional tools. KPL built the transition in from day one, down to the button that showed your program in C#.
Why it matters
KPL is a well-documented time capsule of the mid-2000s computer science enrollment panic - a language whose creators stated, in an academic paper, that they were engineering against a 60 percent drop in CS-major interest. It represents one distinct answer among its contemporaries: where Logo had turtles, Squeak had morphs, and Alice had drag-and-drop 3D storytelling, KPL insisted that beginners could and should write real typed code, in a real IDE, on a mainstream platform - as long as three lines of it put a spaceship on screen. And its trajectory - freeware passion project, viral adoption, commercial pivot, quiet disappearance - is a compact case study in the sustainability problem that haunts educational software. The volunteers who translated it into fifteen languages in seven months proved the demand was real; the company’s end proved that demand alone doesn’t sustain a language. Ten years after KPL’s release, its niche belonged to free, open, browser-based tools - the model KPL’s creators had weighed, and passed on.
Timeline
Notable Uses & Legacy
Microsoft Coding4Fun
Microsoft featured KPL on its MSDN Coding4Fun site in September 2005 and promoted it as a modern successor to BASIC for beginners - fitting, since KPL compiled to .NET and its IDE could convert KPL code to C# or VB.NET at the press of a button
Schools and homeschools worldwide
KPL was adopted in classrooms and homeschools around the world, helped by an open strings architecture that let volunteers localize the IDE into 15 additional languages - from Chinese and Russian to Greek and Catalan - within seven months of release
University introductory courses
The commercial successor Phrogram was adopted for beginning-programming instruction at institutions including the University of Michigan, Unitec New Zealand, and the Waikato Institute of Technology
Beginner-built casual games
The community contributed dozens of open-source KPL programs - playable games, animated cartoons, interactive fiction, and graphical art - and KPL built a standalone Windows EXE of each program it ran, so kids could hand finished games to friends who had never installed KPL