FHTW Berlin

FHTW Berlin
Fachbereich 4
Internationale Medieninformatik
Info2: Informatik II
Sommersemester 2006


General Information Sheet


Welcome to Informatik 2! We will be looking at Data Structures and Algorithms in Java this semester.

This handout describes some of the general information that you will need to know about the course.  It also includes course policies that I will expect you to abide by during this term.  You should read through this handout and make sure that you understand its contents.  You will probably also want to save it for future reference.  This handout -- as well as other course information -- is available on the web via the course web page, http://www.f4.fhtw-berlin.de/~weberwu/info2.
 
Contents:    Course Staff
    Course Materials
    Course Components
    Laboratories
    Expectations and Policies
    Where to Find Additional Information



Course Staff

 

Teacher and Tutor

  • Prof. Dr. Debora Weber-Wulff, weberuw@fhtw-berlin.de, 5019-2320, Verwaltungsgebäude Room 802.
    Office hours Thursdays 14-15 and by appointment.
  • Maria Kruger (maria.krueger@fhtw-berlin.de) will still be offering a walk-in clinic. The times will be announced at the beginning of the semester.

Contacting me

I am best reached by email. I usually read email regularly, and late at night. if you have something urgent, this is probably the best way to contact me.

Collaboration room

I have a collaboration room set up for the class. There are forums here for you to ask questions, for announcements, and there are areas here for you to submit your assignments.

http://evideo.fhtw-berlin.de/moodle/course/view.php?id=22

If you do not already have an id here, please follow the instructions on the login page. There is a secret key to get into the room. It is Algorithms.

I do not want assignments sent to me by email, they should be directed here.

Course Materials

We do not have a textbook for this course. There are lots of books on the subject, but none that I really like.

Goodrich and Tamassia.
Data Structures and Algorithms in Java with CD-ROM. Wiley, ISBN 0471193089, 40 €
Some of the structures and algorithms are described very well, others I don't like.
Standish.
Data Structures in Java, Addison-Wesley, ISBM 020130564X, 52 €.
Ditto.
Bailey
Java Structures. McGraw-Hill, ISBM 0071160914, 39 €.
http://www.cs.williams.edu/~bailey/JavaStructures/
Hubbard
Data Structures with Java. Schaum's Outlines, ISBN 0-07-136128-6. 2001. $16.95.
This is a compact collection of samples and exercises.
Waite
Data Structures and Algorithms in Java. LaFore.
With a nice CD containing all of the examples.
Harel, David
Algorithmics - The Spirit of Computing. Addison-Wesley. 1987.
Has nothing whatsoever to do with Java, but explains Algorithmics nicely, with just the right amount of theory.
Ottmann and Widmayer
Algorithmen und Datenstrukturen. BI Wissenschaftsverlag. 1993.
Relatively thorough in the theory, but of course no connection with Java.

Cormen, Th.H.; Leiserson, C. E.; Rivest, R.; Stein, C.
Algorithmen - Eine Einführung. Oldenburg. ISBN 3-486-27515-1. 2004.
Big. Thick. In German. Lots of math. No code.

Lang, Hans-Werner
Algorithmen in Java. 2. Auflage. Oldenburg. ISBN 3-486-57938-X. 2006.
The book is in German, unfortunately. But since the author as a Hilfskraft in Kiel taught me Automata Theory, he gets special mention even though the book is rather heavy on the theory side. He does give many algorithms in Java, however, which makes them good for our purposes.

Please don't get Weiss, Data Structures and Problem Solving using Java. It is a translation from the author's Pascal book and completely misses the mark on the object-oriented way of thinking. The others do too, to some extent or other. Maybe someday Lynn will get around to writing a book on this, too.

Exercises will be posted on the web site, a week in advance of the first group. There will be pre-labs that I expect you to have completed before you come to class. .


Course Components

Course Meetings

The lecture is given once a week on Mondays in the fourth and fifth block (13.45-17.00) in HG 239.

In addition to the lecture, each student applied to be in a biweekly 4-hour laboratory session. If you are not in the Informatics 2 lab, you will be in the MeTe 1 exercise session.

Assignments and Grades

During the term, there will be 8 exercises which will be written assignments on programming. We will be programming lots of "little" things about algorithms and data structures. There will be a 2-hour examination on or about February 5, 2007, 13.45 - 15.15, HG 029. The examination will cover data structures and algorithms and conceptual understanding in ways that may be difficult to assess during the laboratory sessions.

Your grade in Informatics 2 will be a weighted mixture of the following elements of the course

You may volunteer, in groups of two, to take lecture notes for one of the sessions and publish it in the communication plattform. This will give you a free 5% of your grade and tends to be very useful! You must pass the examination to have your lab work counted.

I want to have the assignments handed in as reports (in .pdf format, please) explaining the process that you used in the lab. You should include your code, but I want to focus on what you tried, what failed, what worked. I expect the reports to be in complete sentences and to explain any collaboration (see below) that happened. Remeber to put the assignment in the Moodle area and don't forget your names and matriculation numbers! Your report should have a reflection at the end on what you learned in this exercise.

I will be giving "stars" to let you know how well you are doing on each graded exercise. No stars does not mean no points - it means you handed in a report on time, but it was nothing to write home about.

No stars - nothing worked, but you managed to scrape together a report. Or you did a million bells and whistles, but turned in a half-page report using bullet lists of misspelled sentence fragements that are, however, technically a report on time. Any report that is late will cost you a star in addition to taking 0,3 off your grade.

To earn an 1.0 in Informatics 2 , you should regularly demonstrate mastery of the material, have a strong understanding of and performance in laboratory work, be a valuable participant in course meetings and collaborations, and complete all portions of the course work in a timely fashion and write excellent reports.

To earn a 2.0 in Informatics 2 , you should demonstrate a solid grasp of most of the course material, competently perform laboratory work, participate in course meetings and collaborations, and complete all portions of the course work in a timely fashion and write good reports.

To earn a 3.0 in Informatics 2 , you should demonstrate a sufficient understanding of the course materials that you can go on to build on that understanding in subsequent courses or employment, participate in course meetings and collaborations, and complete all portions of the course work in a timely fashion.

If none of the three descriptions above fits you at the end of Informatics 2 , there are two possibilities:
 

  1. Your understanding of the material and demonstrable performance of that understanding is inadequate to  build on in subsequent coursework. In this case, you are ineligible for a Informatics 2 final grade of 4.0 or above. You will need to repeat the course and pass within 2 semesters in order to be able to continue with this program.

  2.  
  3. Your understanding of the material and demonstrable performance is adequate to receive a 3.0 or higher, but  you did not participate in course meetings and collaborations or you did not complete all portions of the course work in a timely fashion. In this case, your final grade will be adjusted to reflect this factor as follows:
  4. Missing one laboratory or one assignment may add 0,3 to your grade.
    Missing three laboratories or assignments may add 1,0 to your grade.


Late work will not be accepted and may be treated as missing work. Missing work will be graded as a 6,0. Always turn in what you have completed on time rather than delaying in the hope that you will be able to do more.

Laboratories

Laboratory sessions are an essential part of the course. The laboratory assignments will be posted on the home page. You must work in groups of two. This means that I expect you to work together and not do every other exercise alone. There is a pre-lab for many of the exercises. It is usually a good idea to think these through before coming to the lab. I expect each student to have their own pre-lab copy with them when they come to class. The report, however, will be for the group, so there will only be one report for two people. All lab work must be turned in on time and be labelled with the names of the students who did the work.


Expectations and Policies

Missed Meetings

You are responsible for all material covered in each lecture unless otherwise indicated. This material may not be covered elsewhere, so if you miss a meeting, you are responsible for getting notes from a friend or otherwise making up the material. Handouts will not be distributed on paper, but will be made available on the course web site.

Attendance at laboratory is mandatory. If for any reason you cannot attend your scheduled laboratory session, it is your responsibility to make alternate arrangements with me as far in advance as is reasonably possible. In particular, if you have an athletic event or other scheduled conflict, I expect that you will discuss this with me as soon as the conflict is scheduled. I understand that unforseen events do arise (see below); however, your brother's wedding is (probably) not one of them.

The only exceptions to this policy (i.e., last-minute or after-the-fact rescheduling) will be in cases of significant and unanticipatable emergency. In these cases, we request a note from a doctor. In addition, we would appreciate it if you would make an effort to notify the course staff at the earliest possible opportunity so that we can adjust accordingly.

Collaboration

This section details the general course collaboration policy. Certain assignments require different kinds of, or restrictions on, collaboration. When the collaboration policy differs from that described here, it will be specified in the laboratory assignment.

I encourage you to work together on the exercises. They are designed for working in small groups, allowing you to help each other learn and to balance your knowledge and strengths. Note that collaboration extends to discussion and problem-solving, but not to writeups. We expect that any written work you turn in will be done by one of the two authors of the notes, though it may reflect group preparation.

Experiment work is a more complex topic. It is often useful to discuss your program with peers or with me, and I strongly encourage this. It is particularly useful to do so as a means of debugging your program. Reading code written by others and having others critique your code are good ways to improve your programming style. However, it is of no benefit to you or to anyone else to have someone else actually do your experimental work. I expect that the default assumption (i.e., unless specified otherwise) is that experimantal assignments are your own work, but may reflect input from others just as an essay edited by friends might. You should be the one who wrote the code you turn in.

In each piece of work that you turn in, you must specify everyone with whom you have collaborated and each person's role in the collaboration (e.g., pre-lab, post-lab discussion and analysis, in-lab coding  - specify which pieces or how responsibility was distributed - , debugging, or advice). Failure to specify such collaboration will be interpreted as a statement that you have not collaborated with others in your work. While this is acceptable under course policy, it is probably ill-advised. (Really.  I want you to work together and to learn from each other!)

Examinations are diagnostic in nature and as a consequence should represent independent work.

Of course, copying of the work of others is entirely unacceptable and will result in the lab in question being marked as missed. This includes pre-lab work.

Where to Find Additional Information

The primary source of information for this course is the world-wide web. The home page for the course is located at http://www.f4.fhtw-berlin.de/~weberwu/info2/. Course materials will be made available there. Check this page regularly for news and updates.


Copyright 2006, 2007 Prof. Dr. Debora Weber-Wulff
All rights reserved.
Questions or comments: <weberwu@fhtw-berlin.de>