Institute for Personal Robots in Education Blog

The Pyjama Project

The Pyjama Project is a framework for learning, doing, and playing with computation. At its core is an integrated editor, interactive console, and social interaction framework for exploring computer science through modern, dynamic languages. It is designed to be a simple, yet powerful, integrated development environment (IDE) for students, teachers, researchers---and regular humans, too! It runs on most any operating system, including Linux, Mac OS X, and Windows. All sources for the Pyjama Project are open and free---freely available and you are free to use them in various ways.


Pyjama has three main types of users in mind: the educator, the learner, and the scripter.

Pyjama for the Educator

Pyjama is a framework for educators to instruct, gain insight, and to explore better methods of teaching.

Pyjama is ready to use for instruction, and includes useful functions for teaching in the laboratory setting:

  • Start with a drag and drop language, like Dinah, and smoothly migrate to a more sophisticated text-based language, like Python, and continue to a type-based language, like Boo or C#, and end with a sophisticated language, like Scheme, all in one environment
  • Context modules (like Graphics and Robotics) are the same across languages
  • Integrated Chat - students and teachers can communicate whenever they are working
  • Script Blast - users can Blast code to each other, both to just run, or to pop up in their editors
  • Checkpoints - using Script Blast, instructors can send students interactive questions to get feedback on understanding. A simplified version of Classroom presenter is possible
  • Follow along instruction - using Script Blast, instructors can send their lecture "slides" so students can follow along (or rewind) on their own screens
  • Window design - windows designed for easy presentation on projected screens
  • Script submission - code can be submitted easily to instructor
  • Logging - instructors can analyse logged data to explore time-on-task and other concepts
  • Development - teachers can create their own languages (at various levels of abstraction) to test their pedagogical effectiveness

Instructors can use the user checkpoint question feedback, chat questions, and log analysis to adapt, even on the fly.

Instructors can extend the Pyjama framework by developing their own languages, visualizations, or interfaces. For example, an instructor develop a new text-based language, or a language like Scratch; or they could develop an interface to objects, like BlueJ.

Pyjama for the Learner

Pyjama is designed for students:

  • choice of languages, from the simple, to the sophisticated
  • embraces social communication
    • chat with others, in their own conferences, or with everyone
    • chat with the instructor one-on-one
    • share code, by allowing others to run it, or see it
  • color syntax high-lighting for all languages
  • easy support for submitting assignments
  • integrated web page for exploring HTML and making a public space
  • code blast to help getting answers and asking questions

It is planned that Pyjama will support extended assistance for getting help with particular errors.

Pyjama for the Scripter

Pyjama is a nice environment for writing code, in general. It is planned to make Pyjama be an environment for exploring (and researching) ideas in computer science. For example, one can write in multiple languages, sharing data between them.

AttachmentSize
blueslug.png24.95 KB

Post new comment

  • Lines and paragraphs break automatically.
  • Allowed HTML tags: <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
More information about formatting options