The Data Structures & Algorithms
Covenant

Fall 2002

Learning Objectives

The objective of this program is primarily a practical one: to help students improve their programming skills, with emphasis on Java and object-oriented programming. Doing this requires both practice writing actual computer programs as well as a study of the existing body of knowledge about how to write programs that accomplish the desired result. A huge variety of data structures and algorithms have been developed since the first programmable computers were created and represent much of what is currently known about how to turn computers from electronic junk into useful instruments. This program will focus on that body of knowledge and use it as a source of worthwhile programming projects to practice and improve programming skills.

Upon completion of this course, participants should have acheived basic understanding of the following topics and skills. However as with most significant skills, mastery is unlikely to come after only ten weeks. Therefore the objective is to gain a good enough understanding to be self-sufficient learners capable of studying, practicing, and mastering these skills independently.

Participants should be able to:

Student Responsibilities and Requirements for Credit

Academic credit for the course represents the achievement of some reasonable standard of understanding of the course material. College credit would be meaningless if it was awarded without the student somehow showing at least some level of understanding of the material. Full credit cannot be awarded to anyone who clearly has not demonstrate an adequate understanding of the learning objectives outlined above. No credit will be awarded to anyone who has neither learned the material nor shown reasonable effort to learn it. Reasonable effort means at least showing up on time to all meetings and completing the assignments. Partial credit will very rarely be given in cases where a student has a reasonable excuse for completing some but not all of the course such as a medical for family emergency. Full credit in the course does not guarantee a 100% positive evaluation. Evaluations will reflect the quality of each student's work.

Time Commitment

Seminars are scheduled each Thursday evening from 6pm to 10pm in room LIB2205. In addition to the class meetings, students will be expected to spend a significant number of hours outside of class completing the assigned work. The students are exected to give appropriate feedback if the workload seems unreasonable.

Attendance

The course does not follow a textbook so all of the material will be presented in seminar. Therefore on-time attendance is required. Unexcused absence or failure to show up on time could become grounds for dropping a student or not awarding credit. Some unavoidable absences are expected. Students must make every effort to notify the instructor (preferably by email) as soon as possible after they discover they may not be able to attend. Students should be aware that they are still responsible for demonstrating their understanding of material covered whether or not they were present.

Participation

Participation is really part of attendance and shows the student is present in both mind and body. Without a traditional grading system, the only way for the seminar leader to produce an accurate evaluation of a student's progress and mastery of the material is from their contribution in seminar plus the assigned work they turn in. To assure their success in learning the material is recognized, students should make every effort to join in discussions when they have something to add or ask.

Assignments

Each student is responsible for turning in all assigned work by the due dates specified unless prior arrangements are made with the instructor. Failure to do so will be reflected in student evaluations. Alternative assignments designed by the student are possible and encouraged, although they must be approved by the instructor in advance of the due date of the original assignment.

Evaluations

Each student is required to hand in two evaluations at the final class meeting. 1) a self-evaluation for your transcipt 2) a faculty evaluation which will go into the instructor's Evergreen portfolio.

Faculty Responsibilities

I'm fully committed to doing everything reasonabley within my power to give students the opportunity to meet the learning objectives outlined above

Contacting me

As this is an Evening & Weekend Studies program and many of the students with full-time jobs are not able to meet with me on campus during the day anyway, I do not plan to maintain regular office hours or use my campus telephone number. My schedule is however very flexible and I am happy to make arrangements to meet students anytime or talk on the phone if they schedule a meeting in advance. I want to be as accessible as possible without creating an unrealistic time burden that impacts my preparations for the class. The best way to reach me is by email (tolnasb@evergreen.edu). If you want to speak to me by phone, please leave a message which includes YOUR phone number with Sharon Wendt, my program secretary. I work from home and due to unfortunate problems in the past I prefer to not give out my home number.

Feedback and Evaluations

I will provide timely feedback to students on all assignments, giving priority to students having the most difficulty with the material. 

I will meet with each student during evaluation week and provide a written copy of my evaluation your work.

In the unlikely event that by the fifth week I feel a student may not be able to achieve full credit for the course or a positive evaluation, I will notify that student of my concerns in writing. I wouldn't want either of these two unpleasant scenarios to come as a surprise. I will then work with that student to try to design a plan for success.

Timeliness

I respect the students' time and realize that many students must make considerable sacrifices to attend class. I will make every effort to be on time to all scheduled meetings. If I am more than 15 minutes late then students may leave without incurring an unexcused absence. If for any reason I cannot be present due to illness for example, I will contact students by email as soon as possible.

Civility

I think it should go without saying that we are all adults here and we should all behave as such and treat each other respectfully but I'm encouraged by Evergreen to say something here about it anyway. If anyone in the program, student or faculty, has a grievance against another, first they should attempt to resolve it with that individual. If the matter can still not be resolved, they should escalate it to the course instructor, followed by your dean (Russ Fox). Please consult the college grievance and appeals process if the matter still cannot be resolved. For more information consult the Evergreen Social Contract.

Plagiarism

Plagiarism and academic honesty are very serious subjects. Technological developments often force a reexamination of many traditional ethical and legal matters whose principles and standards are often difficult to apply in the context of rapidly changing modern technology. Plagiarism in the context of program source code is one of these issues. Corporate "intellectual property" interests notwithstanding, the culture of computer programmers has traditionally encouraged sharing and re-using source code whenever possible in the spirit of helping each other out, spreading hard-won knowledge, speeding progress and innovation (in spite of Microsoft's position on the "freedom to innovate") and saving each other from "reinventing the wheel". However, even in this free-and-easy informal culture certain ethical standards apply which mirror those in similar intellectual pursuits. As in any of these pursuits, one of the most important sources of satisfaction and motivation for programmers is the recognition of their work by their peers.

In light of all of this the following definition of plagiarism will apply in Data Structures & Algorithms: Plagiarism of source code is the use of code developed by another person either directly (cut & paste) or as a source for derivative code without attributing work done by the original author in the same source file. I want to encourage students to exchange ideas and look at each other's code in the spirit of collaboration pioneered by many programmers before us even though I am requiring each student to turn in separate and unique projects. Cross-pollination of ideas can often lead to the best and most creative solutions and we can learn a lot from each other. Students may re-use Java classes written by another student or downloaded off of the net or from a book CD-ROM so long as their project as a whole is an individual original work and any code they re-use is attributed to its original author. Taking credit for anybody else's work is plagiarism and will be treated as such according to Evergreen's standard policy on plagiarism.

  I have read and agree to abide by my responsibilities as described in this covenant.
Student Signature: