Watson Interactive Laboratories
Watson Interactive Laboratories

Watson Interactive Laboratories
Watson Interactive Laboratories

The number of faculty members and students who have contributed to the Watson Project over the years is truly amazing. Below, I have attempted to provide a comprehensive list – along with contact information where available – of those who have made Watson possible. If any Watson alumni out there are reading this page and notice that I have left someone out, or have outdated contact information, please contact me.

The first person I would like to thank is Barry Kurtz. Watson would not exist without him. Barry came up with the original idea for a suite of labs to support a breadth-first introduction to computing – and then proceeded to convince me of both the value and feasibility of this approach. Barry was also the driving force behind convincing the National Science Foundation to initially fund the project.

During the first phase of the Watson project, Don Garrett and Alex Ramos were key members of the team. Don and Alex implemented the library of shared code that was central to the original C / SUIT lab prototypes. Other individuals who contributed to the development of this phase of Watson include: Pat Bronson, Lee Falta, Michael Gaudet, Dr. Gary Klein, Josh Kleinpeter, Dr. Barry Kurtz, Jeff Matocha, Unmesh S. Mayekar, Dr. Mike O'Neal, Alex Ramos, Dr. Louis Roemer, Vinay Shivaiah, Sameer Singh, Charlie Stear, and Mark Williamson.
During the second phase of Watson development, Josh Kleinpeter was my "right hand man. He was the first person to assist me with use of the labs in the classroom setting. Plus, he did an excellent job keeping the C / SUIT prototypes running well beyond the point at which they should have been retired.
The developers for the second phase of Watson include:
• Chris Dickenson, Gene Rogers, Chris Plock, and Dave Muse, Imperative
Mike O'Neal, Graphics and Watson-Java Toolkit
Chris Plock, Josh Kleinpeter, and Dave Muse, Database
• Heather Richards, Digital Logic
• Jeff Rugg, Spreadsheets and Data Structures
Ben VanWagner, Assembly
• Kasoum Gioul, portions of the Spreadsheet code
Jon J. Walker, mouse-oriented editor in Graphics

Jayson Calloway, Cai Hong, and Byren Vaughn helped prototype a number of these Java-based labs.

My “right hand man” for the third phase of Watson has been Cliff Lemoine. Cliff was invaluable in helping me to restart Watson development after a three-year lull resulting from my spending time in industry. Cliff helped tutor students in my CSC 100 classes, maintained the Phase II labs, and developed the object-oriented lab for Phase III.

A special heart felt THANK YOU also goes out to my good friend and former student Don Garrett who, in addition to being a primary developer in Phase I of Watson, returned to Louisiana Tech to pursue a Master’s degree and in the process developed the Java Swing framework for Watson Phase III. Don’s years in industry developing object-oriented Java-based applications provided him with the background to lay a solid foundation for the current set of labs. Without Don’s efforts, Watson Phase III would not exist.

The primary developers for Watson Phase III include:

• Brandon George, Spreadsheet
• Jim Patterson, Database
• Chris Martin, Data Structures
• Don Garrett, Graphics and Overall Watson Framework
• James Phillips, JavaScript
• Cliff Lemoine, Object-Oriented
• Clay Zuvich, Assembly
• Anthony Stonaker, Digital Logic

In addition to these developers, I’d like to thank the entire spring 2004 CSC 404 “Senior Capstone” class. This class did a spectacular job improving the look and feel of the Phase III labs, including developing all of the graphics, the user’s manual, brochure, CD case, flash-based web site, flash tutorials, and multi-platform (Windows, Mac, Linux) Watson CD. Additional efforts included: testing, bug tracking, bug fixes, and numerous improvements to the UI based on feedback collected from actual users. While all of those who worked so hard on this project deserve a BIG thank you, special recognition should be give to Jim Patterson (the Project Director), and Chris Martin and Louis Landry (who were jointly responsible for the “look” of Watson Phase III).

To each and every one of you, “THANK YOU!”

Dr. Mike O'Neal
Director, Project Watson

Watson development has taken place in three distinct phases: the first from 1993 through 1995, the second from 1996 to 1998, and the third phase from 2002 to 2004.

Phase I (1993-1995)

The first phase of Watson involved the conceptualization, design, and initial implementation of nine lab environments. During this time, Watson was support by a $100K grant from the National Science Foundation.

A Watson Lab: Phase I (1993-1995)

Watson’s core concepts of a unified graphical user interface, cross platform compatibility, breadth of concept coverage through the use of a suite of independent labs, and depth of coverage within individual labs by careful attention to the pedagogical content of individual lab activities, were established early on.
The original suite of labs included: a simple spreadsheet, a relational database, a data structures lab, a graphics-based programming environment, an imperative programming environment, a functional programming environment, a Finite State Automata lab, an assembly language and machine architecture lab, and a digital logic lab. These labs were implemented in C and used the SUIT (Simple User Interface Toolkit) libraries for cross platform compatibility.
While these prototypes established the viability of the Watson approach to introductory computer science education, they were not robust enough to be used outside of a closed laboratory environment with extensive student assistance provided by instructors and lab monitors. In fact, the Project Director’s candid assessment of the original implementation of Watson would be “buggy as hell”. This should not be surprising, given the goals of the project, its groundbreaking nature, and limited funding. Additionally the interface provided by the labs were not very attractive, nor intuitive.

Phase II (1996-1998)

By the mid-1990’s it became apparent that Watson needed a total rewrite in order to become a viable teaching tool. After several years of continuous classroom use, resulting in feedback from hundreds of students, the Project Director had a very clear idea of what worked and what didn’t. Furthermore, the emergence of Java and explosion of web technologies offered the hope of a stable cross-platform environment for Watson.
Given that NSF funding had expired at this point, the Project Director, set about the bold task of designing and implementing Watson in Java. Since very few Java-based tools or libraries existed at the time (combined with the fact that Java itself was rapidly evolving), the Project Director began by building up a “Watson Java Toolkit” of common components, such as choice selectors, numeric entry pads, and even low-level primitives such as “Watson Buttons”. Once these were in place he redesigned the graphics lab based on student feedback from the Phase I version. He then coded the lab and thoroughly debugged it. The graphics lab thus served as a “template” for all Watson Phase II labs.
Given this template students were offered independent study classes in which they would “re-implement” a Phase I lab using the toolkit and graphics lab as a guide. Some of the labs such as spreadsheet, database, assembly, and digital logic incorporated few pedagogical changes in their port to Java. Other labs, such as data structures, graphics, and imperative programming were completely rethought. Still other labs, such as the functional programming lab and finite state automata lab, were abandoned.

A Watson Lab: Phase II (1996-1998)

The result of Phase II was a collection of stable, albeit somewhat plain-looking labs, that could be accessed via web browsers. These labs were used successfully in Louisiana Tech’s CSC 100 courses for a number of years.
By 1998, the project had reached the point where national dissemination appeared imminent. In addition to Watson, its companion textbook (drafts of which have been student tested since the mid-1990’s) was nearing completion. Despite Watson’s promise, the Project Director had to reluctantly shelve Watson for several years. The continued lack of external funding for Watson, combined with allure of the dot com boom, enticed the Project Director into a two-year sabbatical in industry where we became the Chief Technology Officer for OneNetNow.com. After OneNetNow was sold to Earthlink in 2001, the Project Director elected to return to academia rather than accept a permanent position with EarthLink.

Phase III (2002-2004)

Upon return to academia in the Fall of 2001, four things became apparent (1) Since the labs had been written in the very early days of Java, they were no longer stable on modern Java environments, (2) The look of the labs had become outdated since they were not built with Swing components, (3) The pedagogical content embodied in the Imperative lab was no longer as appropriate as it had been in the mid-1990’s, and (4) The fact that Watson contained zero coverage of object-oriented programming concepts had become a serious omission.
Additionally, the uncompleted textbook could not simply be finished, as sections of it needed to be rewritten to reflect the changes in the field from the mid-late 1990’s to the early 2000’s. Furthermore, since the textbook and the labs are interrelated, any changes to the labs required similar changes to the text.
The Project Director began restarting Watson development in 2002. He recruited a graduate student, Cliff Lemoine, to help maintain the Phase II labs and to design and develop an object-oriented programming lab. In the Summer of 2002, he made some inroads into updating the textbook. During the Spring of 2003, he applied to the National Science foundation for funding to fully launch Phase III. Though the proposal reviews were generally strong, the NSF ultimately declined the application. (Oh well… Watson is not so easily killed.)
So, in the tradition of Watson, the Project Director embarked on Phase III. He recruited a bright team of undergraduates and with nothing but Independent Study credit in his pocket and pushed forward with Phase III.
The Phase III team was able to build on a Swing-based Watson platform implemented in 1999 by a former graduate student, Don Garrett, together with a nearly complete implementation of the graphics lab Don wrote. The Phase III team made rapid progress re-implementing several of the labs. From December 2003 through February 2004, database, assembly, and digital logic were ported. Data structures, and JavaScript were begun. From March 2004 to May 2004, the spreadsheet lab was successfully ported. During this time, the data structures rewrite was completed, and the initial implementation of the object-oriented lab was finished.
As of May 2004 the only lab that is incomplete is the JavaScript lab. Unfortunately, from a pedagogical standpoint, this is one of the most important Watson labs.

A Watson Lab: Phase III (2003-2004)

During the spring of 2004, the Project Director had the good fortune of teaching CSC 404 “Senior Capstone”. In the spirit of “use every resource at your disposal”, the Project Director selected Watson as the topic for Senior Capstone. In addition to providing desperately needed manpower for the Watson project, this choice enabled the class to gain near-real-world experience with a large project on the back end of the software design process. The CSC 404 class devoted tremendous effort to testing, documentation, and code maintenance. They tested the Phase III software with actual students and incorporated UI changes based on the student’s feedback. Furthermore the class refined the graphical “look” of the labs and incorporated this look into the web and printed documentation they developed.
As of May 2004, the Project Director is once again in the process of applying to the National Science Foundation for funds. These funds are needed to complete development of the JavaScript lab, provide critically needed support for ongoing software maintenance, and to help finish the companion textbook.

In Memory of Jon J. Walker

In the words of Kubrick's writer from A Clockwork Orange :

He "…was a victim of the modern age."

Watson Team

Watson Interactive Laboratories
Watson Interactive Laboratories
Watson Interactive Laboratories
Louisiana Tech University