Computer Science 151 -- Computer Programming Fundamentals
The basic concepts of programming. This course is taught in C/C++ and covers
material that students need to know in order to program. Some notes are made
as to other languages, such as Java, and/or Ada, though these are kept to a
minimum, so that the students are not confused by the examples. This course is
taught as a service course to non-computer science majors, and is the
introduction to Computer Science course.
This course covers such topics as:
Computer Science 151 (see above for course description) -- I served as the Head TA for this course, managing the web page for the course, coordinating the 8 other TAs for the course, and assisting with lectures, grading, and administration of one of the lab sections for the course, in addition to supervision of the other lab sections of the course. While in this position I selected the other TAs for the course, and dealt with contracting/scheduling issues, in addition to my teaching responsibilities, and providing feedback, and suggestions for possible assignments and exams.
Computer Science 451 -- Programming Paradigms, this course is the senior and graduate level course for computer science majors that deals with comparison and introduction to other styles and types of programming. This course teaches Prolog, ML, Java, and optionally Haskell, and Lisp, or purely theoretical languages, such as regular expression languages, DFAs and NFAs, lambda calculus, or other languages used to define procedures. The styles of programming taught in this course are functional programming, imperative programming, and logic programming.
This course teaches the basics of each language introduced and assigns small projects for each of the languages taught. The course assumes a knowledge of scheme, which is used to implement the theoretical languages described.
I assisted in teaching this course, by teaching the Java programming language and in assigning projects dealing with each of the topics in the course. Often this was done in conjunction with the lead professor of the course, though some assignments assigned and suggested by myself. In addition I graded all course work and projects for the class.
My Teaching Philosophy
In each course that I have taught, or assisted in teaching, I have struggled to ensure that the maximal amount of students learn the material. In this I have been somewhat successful, and while I have not reached 100% success in reaching each and every student I have some success and many of my classes I feel that the majority of the class has learned the material presented. I have achieved this through mostly persistence. The students must be taught the material, and simply repeating a course does little in this regard, other than simply repeating the material to them in a slightly different way. I have found that much more effective is to attempt to actually interest the students.
During my undergraduate degree, I learned a great deal of psychology that taught me that a student will not retain information if they are not interested in the material at hand. In relating this to teaching, I have always attempted to involve each student in the class. Some students initially find this irritating, and if a student continually avoids becoming involved there is little one can do to help him or her. So, the key that I have found is that they must become interested in the material, either through possible applications, or by directly relating it to their field of choice.
While the above may seem obvious, I have found that many simply regard their teaching responsibility as a task that must be done, and should be done in the quickest, and least involving manner as possible. Many teachers either look at teaching as a job that they do in order to get a pay check, or they look at it as something that must be done in order to retain a position. Each of these do not take an interest in the students without the students actually making an effort to come to them, and engage the teacher. I have taken the stance that the students must be educated, and this is for thier own good, and further that because I am able to teach, I should use that ability to educate students. Of course I cannot teach simply for fun, at least entirely (as I do teach martial arts without monetary reward), because of the logistics of reality, i.e. that money is required to buy things, and therefore one must have money if one wants to buy things (including the basic essentials in order to survive).
Though, even though this is the case, I look at it that my students should actually be there voluntarily, therefore I will not teach below the college level, as attendence in college is not mandatory. This extends to the fact that I will make all efforts to reach out to students, but if they are too stubborn to accept such efforts, then I will not force them to accept my help, such as enforcing mandatory office hours. These are for the simple reasons that college is not just a place that produces paper degrees. Each person that I assist in getting a degree, I would like to think is actually getting some education in getting the degree, not just listening to a bunch of stuff that is meaningless to them, in order to get a piece of paper that falsely states that they have been educated.
This is indeed something that I mean, though it may sound harsh. Too often, students go to school simply for the reason that they must have a piece of paper that says that they have been educated, whether they have or not. Many students seem to think that if they can get that piece of paper without getting educated, so much the better. In this way I am by far an idealist. I believe that this cannot be allowed. A student must learn something in order for me to sign the grade sheet that says that they learned something. For some students this is trivial, as they come into the class already knowing the material, and simply are in the class to get the credit that they have already deserved.
This is not usually the case though. Most often, students must actually be taught, or babysat. Though as to the latter, I refuse to allow these students to progress.