Interactive Learning Environment (ILE)
I am pleased to announce the initial (0.1) release of Interactive Learning
Environment (ILE), a free, open source environment for building web-based
learning environments that support arbitrary (instructor-defined)
interaction within distributed learning communities.
ILE is small but powerful environment for building
interactive learning environments.
It can be used to build any web application that needs
interactive, persistent form-based features. But its
main audience is teachers who think that hauling the
education to where students work and live is better
than the other way around. ILE is open source (free) software
and can be downloaded here
Comparable environments provide a bare
foundation to build on from first principles. ILE provides a finished
environment you can live in and learn from while remodeling it to suit.
The former requires unlimited expertise while the latter only requires
learning new skills as you need them from the built-in tutorial.
The installation/downloading tutorial provides
all you need; Steven Stansfield's Ocelot servlet engine and web server,
ILE itself, and a ILE-based tutorial that leads you through remodeling
the system as distributed into the system you need.
Interactive Learning Environments
|An interactive learning environment is a web-based environment that
supports structured interaction between a community of learners.
The world we live in is a learning environment more interactive
than anything on the web. ILE's goal is to bring to the web an
approximation of the interactivity we experience in everyday life.
So ILE forms are automatically persistent, just like writing
on a blackboard. Form contents are automatically preserved in a database
and automatically restored each time the page is revisited. This makes
it surprisingly easy to build web-based hand-outs,
syllabii, quizzes, and grade sheets and to build custom logic for
processing student submissions.
This requires custom logic to specify who can do what, to whom,
when, so ILE pages are fully programmable, even by non-programmers.
Each ILE page is an object; an entity that "knows how" to
present itself by sending HTML text to a browser and what to do with
fields in that page's forms or the database.
The teaching implications of this difference are so large that
they can't be conveyed in a brief paragraph. See the articles
in the ILE References for how interactive
learning environments are used in the author's teaching.
- Self Contained
- The distribution package contains everything you
need except for the MySql database server and Ruby
programming language, but provides instructions for installing these if need
be. The distribution includes the Ocelot servlet
engine, the DBH database interface, DBH drivers for MySql and other popular
servers, ILE's libraries, and an ILE-based tutorial, to be installed collectively
or individually as desired.
- No Assembly
- ILE installs as a completely functional integrated learning environment
that demonstrates how other ILE's can be constructed while explaining how
to transform the tutorial contents into your own. The standalone system can
be easily integrated with other web and database servers.
- The look and feel of all pages are specified by Template files.
Templates are fully programmable so they can automatically generate
standard navigational features to be shared by all pages. By default,
Templates usee CSS (cascaded style sheets) to
specify low-level formatting, but this can be easily changed if desired.
- Integration and Separation of Concerns
- Presentation and logic can be specified within the file that defines
each page for single-person projects (integration of concerns). Or they
can be specified in separate files (separation of concerns) to facilitate
- Pages are Ruby objects, not static data files, so they can be purely static
(hard-coded HTML), purely dynamic (everything programmatically generated), or
any point in between. Ruby is an object-oriented
programming language known for its elegance, simplicity and power that is
easily learned by non-programmers.
- Pages and Tasks
- Pages support unscheduled, unstructured interaction between a visitor and
the system. Tasks are a kind of Page that supports scheduled interaction between
a visitor and the learning community as a whole.
- Persistent Forms
- Form contents within tasks automatically persist in the database and are
automatically restored when the task is revisited. Instructor comments and/or
grades are managed the same way, and can be presented alongside each answer
- Web-based Administration
- ILE provides a complete set of web-based adminstrative tools for
starting/stopping the server, adding or removing Pages, managing student
registrations, and reviewing/grading student task submissions.
- Dynamically Reloadable
- Page or Task definition files are automatically reloaded by the servlet
engine when they change on disk.
- ILE is an open source project, licensed under the BSD/MIT license which
means it is completely free. It can be downloaded from the
- ILE implements the teaching infrastructure upon which the lead developer's
Taming the Electronic Frontier course
was based. This course won the $25,000 Paul Allen Foundation competition
in 1997 as the best distance education course nationwise.