FHTW Berlin |
This handout describes some of the general information that you will need to know about Informatik 1 (called Info 1 by the administration). 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/info1/. It is generally a good idea to keep a bookmark of my home page around, as I put lots of information there.
Contents: |
Course Staff Course Materials Course Components Laboratories Expectations and Policies Where to Find Additional Information |
Prof. Dr.
Debora Weber-Wulff, weberwu@fhtw-berlin.de,
5019-2320, Room VG 802.
My office hours are Thursday 10-11. I am notoriously
bad to reach by phone, but I read my email religiously!
David Zellhöfer (david@8bit-inferno.de) is the tutor for the laboratories.
Contacting People
I have a mailing list set up for the class, so that you can reach other students. This is not the same mailing list as the one for your semester, as there are people taking this class from other semesters. You can join anytime by sending an email to majordomo@fhtw-berlin.de with the words
SUBSCRIBE IMI-INFO1
in the body. What? You don't have email yet? I passed out forms on orientation day! Then please go to the computer center and obtain an email account. You can't study without one!
Text: The textbook for this course is a draft of Interactive Programming in Java (IPIJ) by Prof. Dr. Lynn Andrea Stein, MIT.
The course web site has links to the on-line versions of the text. You may read the materials on-line (at http://www.cs101.org/), or print them out for yourself. Since printing is more expensive than copying, you might want to organize making copies amongst yourselves. The FHTW does not have funds to make the copies for you. If you are caught printing the text out on the lab printers, your account will be revoked. We barely have enough money for paper and toner for normal instruction. I strongly suggest reading each chapter before attending the accompanying lecture.
Reference: There is no required reference for this course; the textbook plus a web reference such as Java's API documentation (http://java.sun.com/j2se/1.4.2/docs/api/index.html) should be sufficient. However, some people prefer to have a paper reference in addition to the on-line reference.
If you prefer to have a paper copy of a Java reference, I recommend that you acquire a copy of
Java in a Nutshell by David Flanagan (O'Reilly).
Be sure that you get the most recent edition. This book is an excellent reference on Java and it is reasonably priced. It is available from a bookstore or online. (If you buy it from Amazon, IMI gets a few cents kickback to pay for cookies for the showtime....) I suggest getting the English version, as Java usually changes by the time they get around to getting it translated into German :-)
Further Reading: If you are interested in the topics covered in this class, you may wish to read more. In particular, I recommend:
Java Gently by Judy Bishop,
Concurrent Programming in Java by Doug Lea, Addison Wesley.
Java Design by Peter Coad and Mark Mayfield, Prentice Hall.
These are all superb books. However, they were not cheap when I priced them last. They cover more advanced material than we will in this class, and none are in any way required for Info1. During the term I may recommend other advanced books for those who wish to learn more about certain topics.
Sources: You can buy Java books (among many other places) at a technical bookshop such as Lehmann's, order them from any bookstore (this may take a day or so) or from on-line stores such as amazon.de, bol.de, or buch.de. Some publishers -- like O'Reilly-- also sell their books directly. Shop around for a good price.
Course Meetings
The class meets on Thursdays from 12.00-15.15 in HG 027 for the lecture. We will have a 15 minute break in the middle. I may have to move one or two lectures to accomodate other appointments. If so, I will announce it in advance and put it on our web site.
In addition to the lecture, each student will be assigned to a laboratory session. Group 1 meets even weeks and group 2 odd weeks on Fridays from 8.00-11.15 in VG 212. I expect you to be in the lab, logged in, and ready to go at 8.00. Excuses for being late do not amuse me.
Assignments and Grades
During the term, there will be 7 graded exercises. The graded exercises will be written reports on programming experimentation. There will be a 2-hour examination on Feb.4, 2005 in the lecture hall. We will have 2 shifts of exams, Group 1 and Group 2. The examination will cover Java programming and conceptual understanding in ways that may be difficult to assess during the laboratory sessions.
Your grade in Info1 will be a weighted mixture of the evaluated elements of the course (laboratories, written assignments, and exam) together with my assessment of your understanding of course materials, e.g. in laboratory check-in and check-out interviews, participation in class meetings, etc.
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 Info1, 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 Info1, 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 Info1, 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 Info1, there
are two possibilities:
Missing
one laboratory or one assignment will add 0,3 to your grade (i.e. lower your grade).
Missing three
laboratories or assignments will add 1,0 to your grade.
Late work will
not be accepted and will be treated as missing work. Always turn in what you have
completed on time rather than delaying in the hope that you will be able to do
more.
Laboratory sessions are an essential part of the course. Each week, a laboratory assignment will be posted on the home page. Finger exercises are given in the text and should be worked by yourself to check your knowledge of the materials. You are encouraged to work in groups on this. The experimentation labs consist of three parts: pre-lab, in-lab work, and post-lab work. We will be working in the Linux laboratory, in VG 212.
Pre-lab
Students are expected to come to their assigned laboratory session having completed the preparatory work. In general, you are not expected to have begun the programming of the laboratory assignment before coming to lab; however, you are expected to have spent time outlining the program that you intend to write and to have planned the various steps that you will take during your lab.
Students who do not prepare adequately for lab will be denied admission to the laboratory until they are prepared. This will give you less time for experimentation and will be reflected in your grade for that laboratory.
In-lab
Each experiment is designed so that there is a range of work that might solve the problem. You should begin by implementing a simple piece or version of the solution. When this works to your satisfaction, you should build on additional features or behavior. The experiment assignment will indicate a target portion to be completed in lab. Often, you will be asked to design test cases as a part of the pre-lab exercises or to share code and test cases with your classmates.
As a rule, you are not expected to spend any time outside of the laboratory session at a computer, programming. You are, however, expected to spend time preparing for the lab and writing your report. Expect to spend at least as many hours outside of class as inside working on this. Of course, you may continue programming if you would find it helpful at any point: to try out the programs and environments that are provided; to test hypotheses; to develop intuition; or just to have fun!
Your grade on the laboratory will be based on how well you complete the target portion of the assignment. In general, it is better to do this part well than to go beyond the target portion. You will get a better grade for having a good report than for implementing all sorts of bells and whistles.
You may leave the lab as soon as your work is done. The lab begins at 8.00 sharp and the door is locked from the outside. I expect you to be here on time.
Post-lab
After the experiment session ends, you should write up and turn your completed assignment on the specified due date. Although the details of the post-lab writeup will vary from lab to lab (and from student to student), you can expect that it will generally include:
You should also include
You submit your exercise to me by email using the following subject line: Info1: LabX where X is the current lab number. Failure to do so will result in a sarcastic response the first time. I may choose to ignore your submissions if you continue just sending emails with the subject line "Homework".
I expect you to use a professional email account with either your name or the matriculation number supplied by the school. You may use other providers, but names such as "cuddles" or "Mr.Tree" which might be amusing in a casual setting, are not appropriate for professional or university work. So if you must stick with cuddles, at least organize a professional sounding alias and mail to me from that, forwarding my answer to your cute address.
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 outside of class, but all course handouts 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, I request a note from a doctor. In addition, I would
appreciate it if you would make an effort to notify me at the earliest
possible opportunity so that I can adjust accordingly.
Late Work
Laboratory assignments will have due dates clearly indicated. Late work will not be accepted.
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. I expect that any written work you turn in will be your own, though it may reflect joint preparation.
Experiment work is a more complex topic. It is often useful to discuss your program with peers or with course staff, and we 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 experimental 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.
Some labs will involve more explicit collaboration. In those cases, I will explicitly specify ways in which labs can be broken up, so that each person writes code but no one person writes the whole program, or indicate explicitly that a particular lab or portion of the lab may be programmed together, as a team. Even in this case, it is important that each team member have an opportunity to independently compose some code. Since the pre-lab will generally involve designing the code that you are going to write, it is best to also allocate responsibility for pieces of the code to members of the team at that time.
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 (especially from the Internet) is entirely unacceptable and may result in a failing grade for the course.
I also encourage you to make use of the course-wide mailing list (imi-info1@fhtw-berlin.de) for questions. Do not worry - if you have a question, there are sure to be 5 others with the same question, so ask! Someone is bound to help!
Where to Find Additional Information
The primary source of information for this course is our web sit. The home page for the course is located at http://www.f4.fhtw-berlin.de/~weberwu/info1/. Course materials will be made available there. Check this page regularly for news and updates.
Letzte Änderung: 2004-12-16 17:44 |