Personal Philosophy

 

The dominant theme in computer history has been the rapidly increasing access to computer power by more and more people. When the first commercial computer became available in 1951, computer literacy had a simple definition — being able to program in assembly language on a Univac. In the fifty years since then, the field has grown in such a way that only science fiction writers seem to be able to make accurate forecasts.

 

At one time, an activity such as balancing your checkbook would have required writing a computer program with file access. Today with a spreadsheet, the casual user needs no skills beyond the knowledge of how a checkbook. With packaged software available today, a small businessperson can buy a program that will not only balance a checkbook but also print out the checks and keep a record of expenses for tax purposes. The skills required would be those needed to keep and interpret records for tax and other purposes. The programmer (creator) of such a package, however, needs to have not only strong programming skills (including analysis, design, coding and testing) but also the full knowledge of the businessperson in keeping records.

 

As a person who has studied the discipline of education at the college level, I have seen the importance of clearly articulating a philosophy supporting what I am doing in the classroom. College teaching is not an inborn skill nor is it a skill which can only be developed by experience. The design of a course, the method of presentation in the classroom, the difficulty of examinations, all contribute to a coherent whole only when they are carefully planned with a definite goal in mind. That goal depends upon the nature of the course, the needs and capabilities of the students, and, very importantly in the case of computer science, the resources available.

 

While the department, not the individual instructor, sets the syllabus of a course, there are many other factors governing the design of a course that are the responsibility of the instructor and must be carefully planned. In all of my courses, I assume that the students will read the book and I teach accordingly. The amount of time in class precludes giving students complete notes if enough material is to be covered. The notes should guide the reading, reinforce important concepts, clarify what is difficult, and serve as a guide for studying for tests. The student should work two hours outside the classroom for each hour within (Carnegie unit definition).

 

As an experienced instructor, I can usually predict what students will find hard. This is augmented by frequent homework to allow the students to see if they really understand a concept and to alert me if a large number do not. Tests cannot replace homework and projects as each test is so limited in time that it must stress concepts that admit reasonably short answers.

 

Of course, any assigned work must be collected, graded, and returned. I attempt to return homework at the next class meeting, a major project at the second class meeting. When returned, an assignment must be gone over or it fails to be a learning experience. Mistakes common to many members of the class can be reviewed in class but writing programs or documents requires, as in developing writing skills in general, individual attention.

 

Facts are not ends in themselves. In computer science, we are not producing students who know what we know. They would be obsolete within a few years. We are producing students who understand the concepts behind what they are doing so that when new concepts come in, they will learn them. In computer science, learning must be a lifelong obsession. Fifty years ago, the first commercial computer appeared. In the next fifty years, what changes must we expect? Our current students will be active in the field during this time but the field will have changed so that we cannot even guess what it will be like. It is our obligation to start them understanding the "whys" behind what they are doing and to insist that they have the base upon which to grow.

 

You cannot predict the future in a field in which you cannot keep up with the present.