A description of this document is available.

Candidate Information

Name
Joseph N. Wilson
Campus Addr.
E301 CSE Building
Phone
392-1360
Department
CIS
Tenured?
Yes
Current Rank
Assistant Professor

Qualifying Criteria

Dr. Wilson generated 317.12 credit hours during four of the six semesters considered under the program. This was the highest number of credit hours generated by eligible faculty in the CIS department during the same period, 2.727 times the department median and 2.725 times the college median.

Teaching Evaluations

The following evaluations of teaching are included in the portfolio:

COC 3110 sec. 0735 (Fall 91)                                Enrollment: 117

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     2.36 (1.24)        2.03 (1.15)        1.93 (1.07)
Course Evaluation      2.47 (1.20)        2.34 (1.23)        2.38 (1.24)

	
COT 6325 sec. 0737 (Spring 92)                              Enrollment:  19

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     1.31 (0.55)        1.93 (1.06)        1.92 (1.09)
Course Evaluation      1.82 (0.97)        2.25 (1.18)        2.34 (1.24)



CAP 4410 sec.  0750 (Fall 92)                               Enrollment:  12

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     1.27 (0.47)        2.00 (1.19)        1.95 (1.11)
Course Evaluation      1.79 (0.99)        2.34 (1.25)        2.40 (1.24)


COC 3110 sec. 0732 (Spring 93)                              Enrollment:  62

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     1.99 (1.07)        1.96 (1.09)        1.86 (1.05)
Course Evaluation      2.35 (1.17)        2.29 (1.24)        2.26 (1.21)



COP 3212 sec. 0809 (Fall 93)                                Enrollment:  47

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     2.01 (1.03)        2.01 (1.12)        1.95 (1.10)
Course Evaluation      2.45 (1.24)        2.29 (1.22)        2.38 (1.24)



COP 3212 sec. 0810 (Fall 93)                                Enrollment:  62

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     1.99 (1.10)        2.01 (1.12)        1.95 (1.10)
Course Evaluation      2.51 (1.30)        2.29 (1.22)        2.38 (1.24)

	

CIS 4930 sec. 0842 (Spring 94)                               Enrollment:  23

                    Course Mean(Sdev)  Dept. Mean(Sdev)  College Mean(Sdev)
Teacher Evaluation     1.38 (0.62)        2.02 (1.13)        1.91 (1.07)
Course Evaluation      1.43 (0.57)        2.43 (1.27)        2.38 (1.24)

Teaching and Learning Philosophy and Supporting Professional Achievements

Teaching Philosophy Statement

The central pillar supports my teaching activities is the belief that students are willing to learn and are capable of doing so. My job as a teacher is to provide an atmosphere in which those who need information are given it, those who lack tools are provided with them, and those who desire motivation are challenged and encouraged to find it within themselves. I want all the students I teach to understand that they are studying in a first-class department at a first-class university. Below, I explore the ways in which I have attempted to address these issues in the courses I taught at the University of Florida during the three year period with which the 1994 TIP award is concerned.

COC 3110/COP 3212 Introduction to Computer and Information Sciences

In the Spring of 1991, I volunteered to teach the Fall 1991 offering of this large introductory course (required for CIS and CEN majors) under the condition that I be allowed to set a new curriculum for it, and that the new curriculum would be followed at least through the Spring of 1992. The course had not been taught by any one professor more than once in the previous several years, and its content had varied widely. This course can, however, be considered to be the most important in our curriculum since it introduces our students to the fundamental concepts and techniques of developing computer programs. My goal was to set this course on a sound foundation. I believe I achieved this goal with great success.

I redesigned the course around the text Structure and Interpretation of Computer Programs (Abelson and Sussman) used in the introductory programming course at MIT. I found the text to be ideal at introducing procedural abstraction, data abstraction, and other fundamental concepts of computer programming and computer science.

I outlined a new approach to evaluation of students as well, requiring students to complete two to three small programming assignments per week. This forced the students to master many small concepts and interact with computers on a regular basis. I believe that this has a two-fold benefit: it encourages students to keep current with material that otherwise might be ignored until later due dates, and further such encouragement makes it easier for students to face the many hours of programming required in courses they take later in their undergraduate CIS curriculum.

I developed a comprehensive set of course notes that I have updated regularly and that have been employed by each professor teaching the course since my Fall 1991 offering of the course. In semesters in which I have taught the course, I've made the notes available for photocopying in the Engineering Library.

I set forth a policy requiring that all programs be graded by human beings. I believe that it is naive to imagine that students can learn to write excellent programs if they are not given feedback on their creations by human evaluators. Since such grading is a time consuming activity, I developed software to assist teaching assistants in grading student programs and recording their scores. I have continued to improve and update this software and it is still being used in support of the course.

EGN 1002 Freshman Engineering (SUCCEED sections)

This course does not appear in my evaluations because it is taught by members of each department in the College of Engineering. This laboratory course is the matter of the Freshman Interdisciplinary Laboratory NSF SUCCEED grant funded in the Fall of 1992. The goal of the course is to assist students in understanding what each of the engineering disciplines involves by giving them a real laboratory experience in each department of the College.

I developed the laboratory materials and supporting software (a robot programming environment and simulator) and have taught it every Fall and Spring since it has been offered. The course combines a brief lecture (ten minutes) with a hands-on laboratory in which students program the robot simulator. The documentation I developed for the course employs theories developed in The Nurnberg Funnel: designing minimalist instruction for practical computer skill, John Carroll, MIT Press, 1990. The Guided Exploration Handbook I developed is available as a hypermedia document browsable with Mosaic via the uniform resource locator http://www.cis.ufl.edu/~jnw/Karel/ .

CAP 4410 Introduction to Computer Vision

I developed this undergraduate course, which was first taught in Fall 1989 using equipment I acquired from an NSF Undergraduate Instrumentation Laboratory Initiative upon which I was the principal investigator. This course is taught as a senior level elective. My goal was to provide students with an opportunity to learn about this active area of research in our department. My goal was successful, in that of the many students who have taken the course, several have gone on to actively work in the area of computer vision.

The difficulty in teaching this course is to do justice to the area while aiming the course at undergraduates. For many of CIS students, this is the first course in which concepts taught in Calculus and Linear Algebra are actually applied to a variety of problems. I try to achieve a balance between qualitative and quantitative presentation, providing the fundamental concepts in a formal way and then discussing specific methods without developing the entire theories supporting them. As with all other CIS courses, hands-on experience is essential. Providing equipment to allow students to develop computer vision application programs and test them on real data is what led to the original NSF equipment request.

COT 6325 Formal Languages and Automata Theory

Again, I was first to teach this course at the University of Florida. I believe I taught this first in the Spring of 1985. This course introduces graduate students to the fundamental properties of computation. The two equivalent but opposing views of language and automata are considered. This course provides students with the necessary intellectual tools to view many seemingly diverse problems in a few key ways that are critical to understand if one is to manipulate any nontrivial information with a computer.

The fundamental teaching strategy in this course is to illuminate the subject. Texts in this area are typically quite dry and require significant assistance from a teacher to show the simplicity of the underlying concepts (which seem quite complex on the surface).

CIS 4930 Object Oriented Programming

I developed the course in the Fall of 1993, and was first to teach it at the University of Florida in the Spring of 1994. This course is offered as a senior-level elective. It presents students with the tools necessary to understand how to use the object-oriented approach to system analysis, design, and implementation in an object-oriented language. Growing acceptance of the object model in both academic and commercial programming practice has made this course a critical addition to our curriculum.

I chose to provide on-line course materials to students via the Mosaic browsing tool for WorldWide Web multimedia hypertext documents. This choice allowed me to provide the syllabus, homework assignments, project descriptions, and other reference materials on an up-to-the-minute basis, but allow students to retrieve the information at their convenience. I found this to be an effective way of providing a wide variety of detailed information to them. The documents for this course are still browsable from the uniform resource locator http://www.cis.ufl.edu/~jnw/CIS4930/ .

I also asked students to develop their system designs using the same multimedia document preparation system. This reinforced the system design principles taught in the course by requiring multiple representations of each design element. It also introduced them to cutting-edge information presentation techniques and tools.

In addition to using the C++ programming language, I had students complete projects using the Dylan language recently developed by Apple Computer (Dylan: an Object-Oriented Dynamic Language, Shalit 1992, Apple Computer). I found that the only Dylan implementation available that would work on our system was a public domain interpreter known as Marlais. I found a variety of problems with the Marlais interpreter, took over the development of this piece of software, and have been the author of this software product since version number 0.3. It is now in revision 0.5.4. Not only did this benefit students in the course, but Apple Computer Corp. distributes the software I developed for this course and it has been employed by people around the world. This can be found on their ftp site, cambridge.apple.com in /pub/dylan/Marlais or via their WorldWide Web page http://www.cambridge.apple.com/ .

Self Study Analysis

My instructional efforts during the last three years have primarily been course-oriented and not department-oriented. Although I believe each of the specific innovative contributions I have made has led to an improvement in instruction for the students, some of these improvements have demonstrated flaws in coordination in our department's undergraduate program as a whole. I believe that I need to do more work in arranging my efforts so that courses I teach mesh better with the entire department curriculum. This will require a more concerted effort on the part of myself and other faculty members, but must be done if we are to push our program forward.

As an example, consider the introductory course. The reorganization of COC3110 I instituted in the Fall of 1991 embarked on the use of the Scheme programming language rather than a more traditional language such as Pascal. I knew that students would resist this change, therefore, I did my best to motivate them by pointing out the novelty of their activities. Previous to this semester, it had oft been the case that the Data Structures course would use a programming language different from COC3110, but students did not typically worry about such differences. Realizing that students would become more sensitive to such issues, I proposed a group of one-hour courses designed to provide rapid introduction to particular programming languages. These could be taken by students to help them gain familiarity with languages to be used in other parts of the curriculum. Unfortunately these classes were initially taught by graduate students. I believe they too needed a firm foundation and need to be taught in a uniform way from semester to semester. I failed to insure that this step was taken.

I have discussed the multiple-course dissonance problem with the faculty who have taught the introductory course in the last few semesters. Drs. Crummer, Dankel, Bermudez, and I are considering the issues involved in coordinating the introductory course with the several courses that follow it including Data Structures and Software Engineering and are currently engaged in discussions about how we can better support the needs of these courses in the introductory course's curriculum. I believe that this kind of joint work can provide the biggest improvement in my instructional efforts.

My primary difficulties in presentation and lecture style are with pacing of my speech. My natural tendency is to speak rather quickly. This tends to place a hardship on students who are not up to date on material and on foreign students. I have attempted to address this in the last few semesters, and student comments about this issue are tapering off.

I need to improve my course planning in offerings of non-introductory courses to improve the homework assignments. In the Object Oriented Programming course, several students noted that more homework and programming assignments would be helpful. I hope to balance this desire against the difficulty students face in completing homework assignments. Merely increasing numbers of homework assignments would probably tend to increase student frustration.

In short, I believe there are several areas for improvement in my course offerings. I think that coordinating coursework across the board is the most important issue to be addressed, as it will have the biggest impact on a student's world view.

Innovative Course Designs/Modifications

These are listed under the separate course headings in the Teaching Philosophy Statement above. To recap, they are

Letters of Recommendation

Letters of recommendation are attached in the supporting documents (Attachments A, B, and C).

Publications and peer-reviewed educational research funding focusing on undergraduate education.

The methods I employed, and results I garnered in the first offering of the undergraduate Introduction to Computer Vision course are reported in the following publication

I was one of the twelve investigators on the NSF SUCCEED project Freshman Interdisciplinary Laboratory, headed by Marc Hoit of Civil Engineering, which led to the development of the laboratory version of the EGN1002 course.

Measures of Quality

My course evaluations, the attached letters of evaluation, and the attached comments from anonymous student evaluations, should serve to show the quality of classroom teaching I have achieved.

I was voted ACM Professor of the Year in April of 1994. I believe that the fact I received this award at the end of the three year period of this TIP indicates my excellence in teaching over the entire period.

I was the candidate nominated for the 1993-94 Teaching Award by the CIS Teaching Awards Committee. This underscores the fact that it is not only students who understand and appreciate my teaching efforts.

I have encouraged students to publish their work and have jointly written papers with them, giving them credit in authorship as appropriate. This include the following recent papers:

Measures of Productivity

Undergrad Course                       semester  enroll.  %responsibility  TA? 

COC 3110 Introduction to CIS	          F 91     117         100%         Y
COC 3110 sec. 0732 Introduction to CIS   Sp 93      62         100%         Y
EGN 1002 Freshman Engineering            Sp 93       *           8%         Y
COP 3212 sec. 0809 Introduction to CIS    F 93      47         100%         Y
COP 3212 sec. 0810 Introduction to CIS    F 93      62         100%         Y
EGN 1002 Freshman Engineering             F 93       *           8%         Y
CIS 4930 Object Oriented Programming     Sp 94      23         100%         Y
EGN 1002 Freshman Engineering            Sp 94       *           8%         Y

Graduate Course                        semester  enroll.  %responsibility  TA?

COT 6325 Formal Lang & Automata Theory   Sp 92    19           100%         N


* Approximately 12 different students per week each week of the semester.
See description of this course in Teaching Philosophy Statement
in Section 4.

	
               Credit Hours F91-Sp94    Contact Hours F91-Sp94

Undergraduate         1322.5                      16.7
Graduate               203.2                      27

Measures of Creativity and Innovation

Karel Programming Environment

The Karel Programming Environment Software used in EGN 1002 and the Guided Exploration Handbook for that software that I developed have been embraced by students taking the class. Approximately 99% of students taking that laboratory course have completed every exercise assigned to them. Part of this is due to my employing techniques discussed by John Carroll in his book The Nurnberg Funnel: designing minimalist instruction for practical computer skills, MIT Press, 1990. In this text, Carroll points out the failure of traditional teaching methods in providing instruction for practical computer skills and outlines an approach to what he terms guided exploration that rewards computer users' natural exploratory tendencies.

Use of the WorldWide Web for Instruction

I have led the University of Florida, and much of the country, in the use of the WorldWide Web for providing instructional materials to students. This allows immediate and direct on-line access to course syllabi, lecture notes, homework assignments, project descriptions, and other reference materials. To give an idea of the value students place on such information, during the month of March, 1994 there were over 250 accesses to the document describing my CIS 4930 course, and over 200 accesses to the document describing the programming project active during that period. This information gathering activity resulted from a course having 23 students. Clearly students use this capability, gathering information from a single document multiple times as necessary.

Getting students to carry out their work using hypermedia documents also allowed them the opportunity to break into hypermedia document creation at a time when it is in its infancy. Consider that the English department (through the IBM Writing Project) is now touting the use of this type of medium as being ``pioneering.''

Implementation of Cutting-edge Object Oriented Programming Language

To support the Object Oriented Programming Class, I took over the Marlais implementation of Dylan, a leading edge dynamic object-oriented programming language. I've made this available not just for use in UF courses, but also for use by the general public. This implementation has been recognized by Apple Computer Corp. and is currently distributed by them via ftp and WorldWide Web. During the month of September alone, over 44 colleges and businesses obtained copies of this software from the University of Florida and many others obtained copies directly from Apple Computer.


This document is copyright 1994 by Joseph N. Wilson.
$Id$