The server for this isn't running right now due to lack of interest.

If you're already familiar with the information below, you can go right to the applet! You can also go to the Sourceforge site for this project to get the source code.

What is it?

It could be described as a shared whiteboard system for coding collaboratively online. It's aimed at helping people learn programming.

What do I need to run it?

You need Java Plugin version 1.3 or higher to run this applet. If you know what is then you probably already have it or you know where to get it. It should be pretty straightforward to get a Java plugin to work.

Neither Internet Explorer nor Windows has ever come preinstalled with a Java2 compatible runtime. Windows XP isn't sold with Java, and older versions of Windows use the Microsoft runtime, which isn't Java 1.2 compatible. That means Windows users need to download the Java runtime environment and plugin at: http://java.sun.com/getjava/. After you install this software, you will be able to use this applet and all other Java 1.2+ applets.

What's the basic idea?

Several sessions for several programming languages run on this server. Each session has a chat channel, a shared interpreter, and a collection of source files. There may be one or more operators in a session, indicated by @ signs before their names. They are "in charge." There is also exactly one editor at a time, indicated by + before his name. The editor is the only one who may edit the source files and send expressions/commands to the shared interpreter.

The shared interpreter is typical of an interactive environment for a programming language. Whether you send expressions to be evaluated or commands to be executed to it, and in what language, is of course dependent on the programming language in use for the session. There is a text field at the bottom of the shared interpreter window that may be used by the editor to run something, by entering text into it and pressing enter. The up and down arrow keys scroll through the history of previously sent commands.

You may also choose to have a local interpreter all to yourself, for languages that support this. Some of them don't, since the Java implementations used require privileges that applets aren't usually given. Even when a local interpreter is available, you may choose not to use it to save download time.

To create a new source file while you're the editor, use the New source file option from the Windows menu. Then you can open a new window for that file by selecting its name from the Windows menu. All users in the session see changes to source files in realtime as the editor makes them. When the source files are in a satisfactory state and you want to load them into an interpreter, choose Load sources from the appropriate interpreter menu. If all goes well, the definitions in the source files should be loaded and you should be able to use them like you had typed them manually.

When the editor wants to give someone else a turn, he selects his successor in the user list in the chat window and right clicks (or performs the OS-specific corresponding action for single-button mice), and then selects Make editor from the pop-up menu that appears. Operators may set the current editor at any time, as well as electing other operators.

Try it!

Choose or create a session and get started!

CodeApplet (last edited 2006-02-06 03:21:59 by AdamChlipala)