View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide

UROC Projects

Sound and ThingLab projects can be available for pay. All three available for credit. For more information on these and similar projects, see and

Faster AIFF and WAV Sound Support

Squeak needs an overhaul of it's audio file writing capabilities.

    Move things to logical classes and remove redundancies.

    Particularly, writing is bad. It should be fairly easy to implement
    writing for WAVE and AIFF standards for all types of sound. Also, 8-bit
    and 16-bit, mono and stereo should be supported.

    Several system primitives are needed to quickly write stuff to files.

Why should anyone want to do this?

  1. Audio is an interesting medium which will become important in the future.
    Having experience with real data types and how to handle them could be
    very valuable for people just getting into it.

  2. It is a good example of optimizing code to deal with a real-time

  3. This would be a good foundation to working on audio transfer over the

Jochen "Je77" Rick ( is the main contact person for this project.

ThingLab to Morphic

Thinglab is the first constraint-based programming environment.

The job is to work with existing Morphic UI components, so that we can have constraint-based web-browsing, 3-D graphics, multimedia, etc. Most of the pieces already exist in Squeak, and Dan Ingalls of the Squeak Team at Disney Imagineering has promised to help make it work.

External Image

Everything 3-D

Recent work has made Doom into a system management tool

External Image

We want this for a system manipulation tool: Deal with your objects as 3-D objects, put them in the hospital (debugger), map file systems to skyscrapers. Squeak already has a rich, cross-platform 3-D system that supports standard 3-D object formats (see the Humvee and Jet below), as well as the ability to map 2-D tools (like a Web-browser) as textures into a 3-D space.

The job is to create an easy-to-use framework to (a) map system objects onto 3-D representations and (b) map actions in the 3-D representations onto the system objects.

External Image