Stuff I've done:
All the software packages listed here I wrote for my own work. I am
happy to give them out to those who may benefit from it, but I
really can't give you support. Feel free to e-mail me, but I can not
guarantee my response.
(c) MIT Media Laboratory
||GoGo is a project I'm currently working on for
my Ph.D. I'm trying to create a hardware framework for a
low-cost and highly available sensing/control device that can be
used for computer interfacing applications. A verity of devices
have been designed under this framework, each has its own name
i.e. GoGo board, Espion. Please visit the project
for more information.
Here is a list of software I wrote for this project so far. All
of them can be downloaded from the project's
- GoGo Board Monitor - Gives
users easy access to all the features of the GoGo board.
- GoGo Active-X control - An
SDK for the GoGo board.
- GoGo Library for Microworlds
- This code allows direct access to the GoGo from within
Microworlds (a modern version of Logo programming language.)
- Espion Programmer - A
simple compiler that allows users to program how the Espion board
Programming Continuum Project
(c) MIT Media Laboratory
||This project, initiated by Seymour Papert, aims
to create programming metaphors for very young children (~4 and
higher). One of the ideas is to have a LEGO car that children
can control where it goes (via a LEGO joystick). The car
remembers the child's instructions and becomes a "program." This
program can then be repeated or uploaded to the computer for
modifications. Experiments have been done in many schools in
Many people were involved in the development of this project. I
developed the code for the LEGO car and designed the protocol it
uses to communicate with the computer.
Please visit the project's
for more info.
Flights of Fantasy
||Together with my friends in the
Interactive Cinema group,
I made an interactive media exhibition for the Boston Cyberarts
Festival (April 21 - May 6, 2001) at the
DeCordova Museum. It's
an installation that tries to depict the future of storytelling.
We developed a system where visitors build their stories using a
children's block puzzle. The story then travels to birdcages in
an adjacent room. Every time someone opens a cage, a story will
be released (played on a small screen located inside the cage).
I was responsible for modifying the birdcages and for building
the necessary hardware to detect and playback the stories when
the cages are opened.
Read more about Flights of Fantasy
Microworlds File Processor Active-X control
(c) MIT Media Laboratory
This utility allows you to insert Project-Variables directly in
to a Microworlds project file (*.mw2). Yes, it processes the binary
file. So, for example you can insert a variable called "Foo" with a
value of 10 and a list variable "Bar" with a value [1 2 3 4] to an
existing project file "dummy.mw2"
For more information and download, please visit the control's
Regular Expression finder/replacer
||This is a small utility that
provides a simple interface to Microsoft's Regular Expression
library (it comes with IE 5.5+). It allows you to open a file,
do a find and replace using the power of RegEx. Please refer to
Microsoft's documentation to find out the RegEx syntax to use (Goto
search for "regular expression syntax.")
||This is a utility that I use to generate web
pages with thumbnails of my photos. See examples
here. This utility will be useful only when you have a lot
of pictures to publish on the web. You need to prepare the
thumbnails and the actual pictures and store them in separate
folders. Then, you create a template file into which all the
pictures will be inserted. Please look at the example template
for more info.
You will need IE 5.5+ to run this application.
This is a PERL library I wrote back in Thailand. It is designed
to help web database applications easier to write. The goal is
to separate programming from the layout design. Unlike PHP where you
embed your code within your HTML file, RgCGI works with template
files. You create your HTML file, format it the way you want, then
simply type in the database field names where you want the data to
appear. RgCGI will process the template and generate the final HTML
code for you.
RgCGI works with MySQL servers (but should work with other
databases that has a DBD:DBI driver).
Perfect Thai HTML
Sumphan Sarn (SPS) - on-line Magazine system.
This is a small application that can help Thai HTML developers
solve Thai font problems. It's key features are:
- Converts "extended character codes" generated by
most HTML editors in to a single 8-bit character. For example,
Netscape composer, Adobe Pagemill, Macromedia Dreamweaver will
translate the letter ¡
into ¡. These extended code sometimes cause the Thai
text to display incorrectly on web browsers. Perfect Thai HTML
converts these extended code back for you.
- Removes the language encoding syntax. HTML editors that do
not support Thai encoding (TIS-620 or Windows-874) will mostly
encode the HTML using "Western encoding" (iso-8859-1).
This causes the browser to encode the document using the western
character set, which mostly does not display Thai text properly.
- Replaces font used in the HTML file to the font you want
(you define this in the config file).
- Well designed user interface.
The current version is 2.01.
This program is a web-based collaborative content development
system. You can build your own magazine on-line with different
writers, across the Internet, contributing their articles. An
editor decides which article should be published.
See an example of SPS in action at http://proxy.nfen.in.th/sps
It's key features include:
- Easy to use web publishing system. Writers can crate an article
without any HTML skills.
- An editor has full control of every article submitted by
writers. The editor can choose to reject the article back to
the writer, accept the article and publish it (make it accessible
from the Internet), or keep the article in an archive.
- Supports pictures and sound.
- Fully Thai interface.
This program is still under development. If you are interested
please contact me for installation instructions.
It is written in Perl. Therefore, by
downloading the program, you get the source code as well. It
runs primarily on Unix (linux,solaris, etc) but can be modified
to run on Windows.
- OS: Linux preferred but should run on other Unix systems
as well. Modifications could be done for it to run on Windows.
- Perl 5
- MySQL database server.
Download - sps.tar.gz