HTW Berlin Medieninformatik HTW Berlin
Fachbereich 4
Internationaler Studiengang
Internationale Medieninformatik (Bachelor)
Info 1: Informatik I
Winter Term 2022/23

General Information Sheet


Welcome to the HTW and welcome to Informatik 1!

This page 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 page 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://people.f4.htw-berlin.de/~weberwu/info1/site. It is generally a good idea to keep a bookmark of my home page around, as I put lots of information there.

Contents:

Course Teachers
Contacting People
Course Materials
Course Details
Laboratories
Expectations and Policies
Tutorial
Where to Find Additional Information



Course Teachers

  1. Prof. Dr. Debora Weber-Wulff, weberwu@htw-berlin.de or d.weber-wulff@htw-berlin.de or debora.weber-wulff@htw-berlin.de, Tel: 5019-2320, Room: WH C 645. My office hours are posted on my web site and will probably be held in Zoom. The link is on my web page. I am notoriously bad to reach by telephone, but I read my email religiously.

    I strongly suggest that you Google me to see if you can figure out my position on plagiarism.


Contacting People

I have a collaboration room set up for the class on Moodle, a learning management system for collecting materials and submitting assignments. You can reach all the other students in your course this way, and there is a forum that reaches all members of the class (this is not identical to the people in your semester, as there are people taking this class from other semesters), a forum for questions for me, some additional material, and areas for uploading your exercises. You have automatically been assigned to this room by the administration.

Please use your HTW email account for all correspondence. We do not use "cute" email addresses like gogogirl@hotmail.com or master_of_the@universe.de in communicating with each other as professionals.

Please put up a picture in Moodle that looks like you—I will have difficulty learning to associate your face to your name if all I see online is a picture of your dog. These pictures are not public.


Course Materials

Textbook: The textbook for this course is Objects First with Java: A Practical Introduction Using BlueJ by David Barnes and Michael Kölling. I will be using the 6th edition (published in 2016). We are focusing on the core language of Java with a touch of functional programming. There are translations of older versions into German and other languages, they may work for you. Use at your own risk. The library also has some copies if you do not want to purchase the book.

Reference: There is no required reference for this course; the textbook plus a web reference such as Java's API documentation (https://docs.oracle.com/en/java/javase/11/docs/api/index.html) should be sufficient.

Further Reading: If you are interested in the topics covered in this class, you may wish to read more. In particular, I recommend:

These are all superb books. However, they were not cheap when I priced them last and a bit old. The last two 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 or order them from any bookstore (this may take a day or so). You can also get them 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. (If you buy it from Amazon, IMI gets a few cents kickback to pay for cookies for the showtime.... but English books are rather expensive at Amazon and they appear to treat their workers as slave labor). I strongly suggest only getting the English version, as Java usually changes by the time they get around to getting it translated into German :-( We will be using Java 17 under the hood of our environment, BlueJ 5.1.0.

There is also plenty of material online about Java, especially on stackoverflow.

If you feel the need to practice syntax, I strongly suggest using the CodingBat.


Course Details

Course Meetings

The class lecture meets on Wednesdays from 12:15-13:45 in room C 446 and Thursdays from 14:00-15:30 in room C 356 starting October 12, 2022.

I like to start on time. Excuses for being late do not amuse me.

I may have to move one or two lectures to accommodate other appointments. If so, I will announce it in advance via the Moodle announcements. I may be swapping times with another teacher so that we can have some more lecture time.

In addition to the lecture, each student is assigned to a laboratory session. There is no third group for people repeating the course. This group of people takes the exam for 100 % of their grade. If any of the beginners want this, please see me. Group 1 meets Thursdays 15:45-17:15, Group 2 meets Tuesdays 12:15-13:45. We now have a third exercise group Mondays 14:00-15:30.

Lab work

For each week you are expected to do a pre-lab, a written preparation for the labs. Each student does this work by themselves. It is okay to write on paper and take a photograph, or you can prepare a document that you show Alexander at the beginning of class.

The first lab will be an introduction to the equipment we have and the resources available to you in order to complete your work.

The tutorials are a chance for you to repeat material, ask questions, do extra exercises, etc. Your tutor will be available all semester, not just the 3 weeks before the exam, TIME. Learn to ask for help!

How to attend a Zoom lecture should we have to go back online

In case we have to revert to online teaching, this section details how that works. You may have had Zoom lectures in school last year, but not everyone comes directly to study from school. So how do you attend university-level Zoom lectures?

First: please be on time! I like to start right away. You can either install the Zoom app on your device, or just join through the browser. You have limited functionality using the browser, but enough for you to follow the lecture. Please use your full name on your video block! I once had seven Daniels in a class, I need to learn who you are and your names. Please put your video stream on for me. I like to see faces, not just blank black boxes, when I teach. If your computer can deal with it, you can use a background to hide your room. Please don't use one with animation in it, I understand that it is cute, but with 17 different animations I get seasick.... If you cannot use the video, I would appreciate you registering with Zoom and putting up a picture of you so that I at least see a face. I understand that your cat is much cuter, but please have a picture of yourself.

We are a University of Applied Sciences, that means that we want to teach you in a seminaristic manner. We expect you to ask questions, so feel free to jump in and ask a question! You can also use the chat window to ask a question - I usually have the chat window behind my laptop. However, if I am writing on the "whiteboard" (i.e. my iPad or a piece of paper under my cool, document camera), I may not see it, so feel free to speak!

In-class in Germany we knock on the table after a lecture is over instead of clapping or just gathering your things and shuffling out. In Zoom you use the reactions button to acknowledge the lecturer.

I am open to any and all suggestions on how to improve the learning experience for you. Feel free to email me, and I may have some anonymous feedback questions in the Moodle room for you.

Assignments and Grades

During the term, there will be 13 graded exercises numbered 0–12. Yes, this is how we count in Java. The graded exercises will be written reports on programming experimentation. The first exercise, "Getting started", is not graded. These exercises will be done with a partner who will be randomly assigned to you at the beginning of each lab session. Thus, it is important to be on time!

Your grade in Info1 will be a weighted mixture of the evaluated elements of the course (lab reports and exam exercises). The partial grades will be assessed as follows:

Stars

Meaning

****+

Exceptional - above and beyond the call of duty. Very seldom. Additional red star.

****-

Excellent: All of the exercises completed and an excellent report.

***--

Very good: All of the exercises completed, and a good report that may have some minor problems.

**---

Good: Something is missing, although the report is good, or the report has major problems.

*----

Satisfactory: Nothing worked, but you had a good report.

-----

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.

X

Late work, not handed in




       Yes, I know this adds up to 105%. It always does. I don't want to bitch about points with you.


Laboratories

The Long and winding road, CC-by-nc-nd, foreby, 2008

Wanderer, your footsteps are
the road, and nothing more;
wanderer, there is no road,
the road is made by walking.
By walking one makes the road,
and upon glancing behind
one sees the path
that never will be trod again.

From Selected Poems of Antonio Machado

Laboratory sessions are an essential part of the course. Laboratory assignments are posted on the home page and linked from the schedule. Finger exercises may be given in the text and should be worked by yourself before class to check your knowledge of the materials. You are encouraged to work in groups on them, but the writeup should be your own. .



Expectations and Policies

Missed Meetings

You are responsible for all material covered in each lecture. 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. Note that there is no script or slides. I do "live hacking", taking notes on the board (which is my iPad this semester). You need to learn to take notes—one page with important key words that you want to look up afterwards. Maximum.

Attendance at laboratory is mandatory. If for any reason you cannot attend your scheduled laboratory session, it is your responsibility (and not a friend's) to make alternate arrangements with us as far in advance as is reasonably possible. In particular, if you have an athletic event or other scheduled conflict, we expect that you will discuss this with us 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 documentation. In addition, we would appreciate it if you would make an effort to notify us at the earliest possible opportunity.

Late Work

Laboratory assignments will have due dates clearly indicated. Late work will not be accepted and counts as missed.

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.

We encourage you to work together on the exercises. They are designed for working in pairs, allowing you to help each other learn and to balance your knowledge and strengths. Any written work you turn in will be written jointly by the members of the pair, although it may reflect joint preparation with other students.

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. We 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, not your cousin.

Some labs will involve more explicit collaboration. In those cases, we 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. We want you to work together and to learn from each other!)

Of course, copying of the work of others (especially from the Internet) and not quoting it properly is entirely unacceptable and may result in a failing grade for the course.

We also encourage you to make use of the collaboration room forum for questions. Do not worry—if you have a question, there are sure to be five others with the same question, so ask! Someone is bound to help, either a fellow student, the tutor, or one of the teachers.

Tutorial

Our tutor, Nermin Rustic, will be holding a weekly tutorial Fridays from 9:45-11:15 in WH C 537. You can join if you want, it is not mandatory. He will also be available by email for questions.


Where to Find Additional Information

The primary source of information for this course is our web site. The home page for the course is located at http://people.f4.htw-berlin.de/~weberwu/info1/site. Course materials will be made available there and in the collaboration room. You can set your profile in Moodle to have news from the collaboration room sent to your preferred email address.


Copyright Prof. Dr. Debora Weber-Wulff
Questions or comments: <weberwu@htw-berlin.de>
Some rights reserved. CC-BY-NC-SA - Copyright and Warranty

The exercises are adapted from Objects First with Java, A Practical Introduction Using BlueJ. David Barnes & Michael Kölling, 2016


Last Change  2022-10-10 22:02