Developing Your Own CALL Software: The Impossible Dream?

Frank Berberich, Tokiwa University

Explosive change in computer technology is bringing high-quality program development and multimedia resources within reach of the non-professional personal computer user. Such resources invite the free and extensive use of graphics, sound, animation, and video in CALL productions and encourage even the non-specialist to think of CALL development. Is it really so easy, or might one be better off using available CALL packages? A look at some of the skills, popular software tools, the development process, and media resources that are all part of making a CALL production suggests that such a project still requires more than a casual involvement. To focus this discussion, the term "CALL" will refer to highly structured programs, rather than to the entire range of English learning activities that involve a computer in any way.

Ready-made CALL Software

Hundreds, perhaps even thousands, of finished CALL packages are available commercially from many large and small developers and as shareware or freeware on the Internet. Commercial packages include those specifically designed for ESL/EFL learners and others intended for native-speaker children but which work well for ESL/EFL. The CELIA archive on CD-ROM is a somewhat uneven collection of more than 600 CALL packages and demonstrations. Other Internet resources are available on the ever-increasing numbers of ELT web pages.

Like most teaching resources, CALL packages vary greatly in complexity, quality, and perceived usefulness. As with most teaching materials, there are many approaches to a topic and even a well-executed production is unlikely to satisfy everyone. Thus, it is a rare CALL user who does not often feel that a given piece of software could be done better or who has not felt the impulse to incorporate their own--possibly new--ideas into software they'd like to design themselves.

Adapt or Make Your Own Software

As with textbooks, many EFL teachers feel that existing CALL materials simply do not meet their personal requirements closely enough. Choosing instead to do it themselves, some teachers embark on a journey that, while perhaps rewarding, becomes a significant avocation. For those less interested in a deep involvement with computers, it may be better to be more flexible. Some CALL software is also adaptable--for example allowing the relatively simple incorporation of user-created text and media--and may thus be adequate, if not ideal.

Developer Skills and Resources

Despite the great improvements in computer hardware, software, and development technique over the years, developing multimedia CALL software still requires a significant input of skills and resources. Such skills include those involving pedagogical issues that any good teacher needs. The use of media suggests sensitivity to visual and aural design issues--it helps to be an artist. Beyond these talents, a reasonable comfort level when confronted with the minutiae of programming teaching points and media into precise sequences will be helpful. Thus, because of the broad range of issues in pedagogy, narration, media creation, and, of course, programming, the individual developer must function something like a one-person movie production studio.

On the other hand, unlike in the old days of programming, when the developer had to do everything in such arcane general purpose computer languages as Assembler, BASIC, or C, there are now many sophisticated resources available. These include development "front-ends" that greatly simplify the coding task, and vast libraries of ready-made media which can be copied and pasted into a production as is, thus reducing the need for original artwork tremendously. Such "clip-art" libraries are available on the Internet and in CD-ROM packages.

The Production: Content and Logic

As the term suggests, "multimedia" means an assemblage of various media tied together in a framework of sequence and interaction. A multimedia production (also called a "piece" or an "application") is the collection of media and the processing framework that presents the media as needed and responds to user input. Commonly used terms for these two components are "content" and "logic." The content is tied together by the logic to make a coherent package.

For example, the content of a simple tutored drill production might consist of:

  • a background screen
  • various buttons--REPEAT, HELP, FORWARD, BACK, QUIT, etc.
  • boxes for display and text entry
  • files of drill item texts and sounds
  • a simple tutor character animation and associated voice files
  • background music
  • sounds such as button clicks, clock ticks, cheers, etc.
  • The logic would include:
  • getting in and out of the program
  • sequencing and displaying items
  • accepting user entries and responding to them
  • storing user data, and so forth.

Tools and Media Resources

Each medium has its own unique dimensions, aesthetics, tools, and techniques. Fortunately, the tools and resources available to the developer are equally extensive and varied. These include:

  • Media tools for graphics, sound, music, and video creation
  • Authoring tools for creating and combining logic with content
  • Content libraries of media "clip-art"

Media tools are software packages used to create and manipulate content and save this content into digital files for other programs. For example, a graphics package is used to extract and adjust images for size and image quality, and to add special effects. A video tool can capture video from tape, build sequences of video frames, and insert transitions, titles, and effects into the sequences. All of these tools can save the results into files for use by authoring programs to display content in the production. Libraries of such content files are also available on the Internet and commercially. A multimedia production is a set of such media files activated by the logic created with the authoring program.

Examples of general-purpose tools are:

Media-- Freehand, Photoshop, Premiere, Sound Edit,

Authoring--HyperCard, ToolBook, Director, Authorware

There is also a range of tools available for each medium, from these high-end professional packages to less sophisticated, but still useful freeware offerings.

Many more specialized tools are available for animation, 3D modeling, landscape generation, and a multitude of other media work. A gradual rise in sophistication of these tools eases the burden of low-level manipulation on the developer. For example, most animation packages can generate fairly complex movement sequences of multipart objects after the user specifies the components of the object, their movement ranges, and their beginning and ending positions.

The Internet itself is a new resource for CALL development. With advances in interactive Web technology, a Net-based production can display locally created content, link independently developed content, and invite and respond to user input. While this power is somewhat constrained by current limits on speed and capacity, it still offers a bright future for production and publication. Other valuable Internet resources are the various developer usergroups that provide a wealth of general information, techniques, and consultation.

Thus, while the tasks of multimedia development have increased greatly, so have the resources available to complete those tasks. Unfortunately, the complexity of a tool also often corresponds to its power. Each one takes significant time to learn. Similarly, the development time for a production grows rapidly with its complexity. Furthermore, as media become more sophisticated, it is easy for even the unpracticed user to perceive inaccuracies. While we can now do more, the expectation for quality is also much higher.

Tools and Metaphors

Approaching a new software tool can be a bit daunting, especially if it has the reputation of being "industrial strength"--a precise and powerful tool suitable for the professional. The impression of impenetrability is exaggerated by the 10cm wide boxes full of arcane documentation that such packages usually come in. Fortunately, there are some basic similarities among all software packages that make them easier to understand, and the most frequently used functions can usually be learned quickly.

One set of similarities is that most software packages provide the same basic file-handling functions. These include creating new files, input, saving and retrieving files, importing other files, and selecting, cutting, copying, and pasting various bits within a file. Whether the medium is lexical, visual, or aural, these functions are the same, often appear in the same place in menus, and use the same command keys.

In addition to these basic functions, each medium requires its own unique manipulations. For example, a good drawing program offers line and shape input, curve smoothing, a variety of coloring modes, various pen and brush styles and sizes, patterns for area filling, and so forth. A photo processing program includes such effects as blending, color matching and shading, and cutting along image edges.

Most tools are designed to realize a metaphor appropriate to working with the medium concerned. Once the tool's metaphor is understood, the use of the tool usually becomes far more transparent. Often, the metaphor is just the conventional, pre-computer environment used in working with the medium.

For example, the almost universal word processor metaphor is the page itself. The screen is a page image and one enters and manipulates text and other objects on this page. The mouse is a metaphor for the finger which points and selects. Even cutting and pasting come from the pre-computer days when skilled typists used razor blades, tape, and white grease pencils in their work. Incidentally, early mainframe computer-based word processors treated a document as a single stream of text, into which one put arcane commands to get page breaks, typeface changes, etc. There are still those who feel that using a mouse, requiring the removal of one's fingers from the keyboard, is unnatural.

One of the most widely used graphic tools is Adobe Photoshop, an application for sizing, retouching, and adding effects to pictures. The metaphor for this tool is, as would be expected, the photographer's workspace--light table, enlarger, cropping tools, various markers and retouching pens, and photographic dyes. For someone familiar with this workspace, the software is fairly intuitive.

The most common music creation metaphors are the conventional music score and the piano roll. When the program is started, one of these two types of screens appears and the user either works with conventional music notation, or with dots and lines along the piano roll-type score. Similarly, a video editor usually looks like a film editor's cutting board upon which sequences of video frames and audio tracks are displayed. These can be moved about and combined, linked with various transitions such as fadeouts, dissolves, wipes, and the like, and titles can be added.

Of particular interest are the production tools, because the metaphors for these are less clearly established by convention. The three most popular packages--HyperCard (and its Wintel equivalent, ToolBook), Director, and Authorware--use, respectively, the hypertext, filmstrip, and flowline metaphors.

The hypertext metaphor inspires the facility to link items in context, such as text or parts of a picture, among various files. By selecting or clicking on an item, the user jumps to the associated item in the linked file. Incidentally, it is this function, extended to files on separate machines, that gives the Web its power. A HyperCard production is a collection of "cards" called a "stack" linked so that when a user clicks on a certain item on a given card, some other card pops into view. A card can be a screen full of various media and so the user can easily navigate, or be navigated, among the content of the program.

In the filmstrip metaphor, the production elements lie on a timeline, on a kind of easel. The number of occurrences of these elements can be increased or reduced to adjust each element's duration relative to the other elements on the timeline. Many sequences of events can be created and these can be presented in any desired order using a scripting language. In Director, the film metaphor extends even to referring to the content elements as the "cast."

The flowline resembles a flowchart and icons on the flowline represent events in the flow, such as graphics, sounds, video sequences, and so forth. Branching and hypertext links allow free movement among the elements in the flow. The developer can also start and stop the production at any point along the flow, for testing and debugging, just by clicking on the relevant icon. As with the other packages, an elaborate scripting language supports more complex programming.

Thus, one can get up to speed with unfamiliar software by confirming the basic file-handling functions, understanding the metaphor of the tool design, and how the specifics of the medium are handled. Of course, these basics help in getting started; becoming efficient still takes time and practice.

The Development Cycle

As mentioned before, the production of modern multimedia CALL software can be much like making a movie, including the concept, script, storyboard--a sequence of sketches of main events in the production--media creation, and so forth. A textbook example (Luther, 1994, p.18) of the development cycle is:

  • Concept--audience; general content; form--game, simulation, tutorial, etc.
  • Design--style, general structure and flow
  • Collection--script, storyboard
  • Assembly--media development
  • Testing--internal logic and external environments
  • Distribution--Website; publication; packaging, etc.

In practice, few follow this plan faithfully. Often, the developer has an idea, makes some rough planning outlines, and possibly a rough storyboard, and then dives in. Some development activities are rather independent and can be done in parallel. For example, media can be developed simultaneously with the logic of the production. While the content is under development, simple screens or sounds can be used as place-holders in the program. Thus, a screen of text labeled, "Hawaiian beach background" and a "beep" might stand in for a full screen video and accompanying music.

How long does it take? In one Internet discussion among knowledgeable developers, an estimate of 400 hours of development for each hour of finished CALL activity seemed acceptable to many. The larger consensus, however, was along the lines of "It takes as long as it takes" and that estimates tend to stray from reality, almost always on the low side.

Media Resources

Content can be created from scratch with media tools, captured from existing media, or acquired as ready-made files. Content can be captured using scanners, sound recording software, photo slide digitizers, still and video digital cameras, and recording software. Depending on the skill and ambition of the developer, content creation can be fairly straightforward or a painstaking artistic endeavor.

Cataloged content libraries, usually available on CD-ROM, offer tens of thousands of "clip-art" samples of graphics, animation, sound, music, and video images for use free or with a small royalty payment. These libraries are often categorized by style and subject matter, and usually come with a browsing tool that allows searching for items by category keywords and previewing of thumbnail sketches. Some even include glossy paper catalogs. Music clip art includes simple music files to be used as is or edited for special effects, and MIDI files that can be modified note by note.

Using these clip-art resources is simply a matter of copying from the appropriate library, or downloading clips from the Internet if they are available there. The selected clips are edited with a suitable media tool to suit the production.

CALL Software Development as a Learning Activity

A growing area of interest is in CALL software development as a learner activity. Projects include cooperative development of online lexicons and structure references and Q&A bulletin boards. A more structured activity at one Japanese college involves teams of students using an authoring package to create programs to teach specific language points. Projects are used and critiqued by other teams. This activity is reported by the teacher (David Yoshiba, Shion College, private communication) to be effective and popular.

Conclusion--To Buy or not to Buy?

CALL software development involves design, technical, and aesthetic considerations and requires learning the complexities of tools to create useful software. Design, content creation, and authoring are all significant tasks that usually take a great deal of time. For those who do not see themselves as becoming hobbyists or more in multimedia development, it may be better to seek ready-made alternatives. On the other hand, the personal rewards of CALL development can be as great as those of almost any other creative process.