Okay, ehrlich gesagt haben wir keine Ahnung, ob diese Fragen häufig gestellt werden. Wir haben zu selten unsere Strichliste dabei. Aber es sind zumindest Fragen, von denen wir denken, dass man sie haben könnte. Oder sollte. Kein Druck. Und einige der Punkte - vor allem die später genannten - sind durch Anmerkungen in früheren Lehrevaluationen veranlasst.
Ich habe meine iLearn-Anmeldung vergeigt. Was soll ich tun?
Auf der Über-Seite im iLearn steht die Kontaktperson für derlei Fälle, nämlich cds. Schreibt ihm eine nette Mail, dann kümmert er sich drum.
Wo kann ich außerhalb der praktischen Übungen arbeiten?
Eine Übersicht über Rechner- und Arbeitsräume findet sich hier. Wenn im Grundausbildungspool (kurz "GAP", in der Hermann-Rodewald-Straße 3, Raum 105a/b) genug Platz ist kann man sich üblicherweise einfach hinsetzen und dort arbeiten. Wenn zu dem Zeitpunkt ohnehin gerade eine Programmierungsübung stattfindet, kann man sogar unseren Hilfskräften Fragen stellen. Toll!
Wie frage ich so um Hilfe, dass Leute mir gerne und schnell helfen?
Du hast ein Problem mit deiner Abgabe zu einer Hausaufgabe? Oder irgendein anderes Problem? Wende dich gerne, falls es passt, an die Hiwis in deiner Übungsgruppe oder, falls das nicht passt, per Mail an deinen Übungsleiter. Um die Wahrscheinlichkeit zu erhöhen, dass er dir gerne hilft, solltest du ein paar Dinge beachten.
- Erwähne deinen Namen. Im Absender steht oft genug nur "stu123456". Die wenigsten kennen die stu-Nummern all ihrer Studierenden auswendig.
- Erwähne, in welcher Übungsgruppe von welcher Veranstaltung du bist (Zeit und Übungsleiterperson).
- Liefere alle Informationen mit, die möglicherweise helfen könnten. Wir könnten sie auch im iLearn suchen, aber das ist aufwendig und bei der Anzahl von Mails, die wir so kriegen, schwer machbar und ehrlich gesagt auch einfach nervig. Bei einer problematischen Abgabe beispielsweise sind folgende Infos praktisch:
- Der Quellcode.
- Die genaue Testausgabe.
- Eventuelle Theorien dazu, was das Problem sein könnte.
- Schritte, die bislang nicht zur Problemlösung geführt haben.
Die Tips hier gelten übrigens nicht nur in unserem Kontext. Generell steigt die Wahrscheinlichkeit, dass Leute einem helfen, mit der Mühe, die man sich macht, ihnen alle möglicherweise relevanten Informationen zu liefern.
Wenn ich Z eingebe, taucht auf dem Bildschirm ein Y auf. Was soll ich tun?
Im GAP kann man zwischen englischem und deutschem Tastaturlayout umschalten. Das macht man, indem man Strg-Shift gleichzeitig drückt.
Warum startet mein Programm nicht?
Du hast ein Programm geschrieben, welches im Prinzip top aussieht, sich aber nicht starten lässt. Zum Beispiel das hier:
import acm.program.ConsoleProgram; public class Wubbel extends ConsoleProgram { public void run() { println("Yo!"); } }
Laut den Beispielen in unserem Buch sollte das Programm laufen. Tatsächlich brauchen wir aber in unserer Vorlesung noch eine sogenannte main
-Methode, die unser Programm startet:
import acm.program.ConsoleProgram; public class Wubbel extends ConsoleProgram { public void run() { println("Yo!"); } public static void main(String[] args) { new Wubbel().start(); } }
Nun kann man das Programm wie gewohnt per Rechtsklick → Run As → Java Application starten.
Wie kann ich in Eclipse schnell die main
-Methode generieren?
Man kann Eclipse so konfigurieren, dass man zum Schreiben unserer main
-Methode nur acmmain
eingeben muss und dann durch Strg+Leertaste Eclipse bitten kann, die komplette Methode zu implementieren.
Warum funktioniert mein Test nicht?
Zunächst sollten alle Testdurchläufe bei Bedarf eine Fehlermeldung erzeugen. Diese könnt ihr sehen, wenn ihr auf den entsprechenden Durchlauf klickt. In den meisten Fällen sollte die Fehlermeldung eigentlich schon erklären, was falsch läuft. Ein paar Meldungen können aber trotzdem nochmal erklärt werden.
Warum warnt mich Eclipse davor, dass eine "serialVersionUID" fehlt?
Aus Gründen. Ist egal. Das kann man aber ausschalten. Dafür einfach die Anleitung ausklappen…
Ich kann schon Java!
Die meisten Hausaufgaben haben eine optionale, schwierigere Aufgabe, die schon mehr Kenntnisse voraussetzt oder generell etwas schwieriger ist.
Viele Kommilitonen und Kommilitoninnen können Java noch nicht. Denen könnte man helfen, indem man ihnen Dinge zu Java erklärt. Allerdings: einfach deren Hausaufgaben herunterprogrammieren hilft niemandem und ist gegen die Regeln!
Warum Java? Ich finde <beliebige Sprache> besser!
Um mal aus dem Buch zu zitieren:
The purpose of this book is to teach you the fundamentals of programming. Along the way, you will become quite familiar with a particular programming language called Java, but the details of that language are not the main point. Programming is the science of solving problems by computer, and most of what you learn from this text will be independent of the specific details of Java.
Das fasst ganz gut zusammen, worum es uns geht: wir benutzen Java als das Beispiel, an dem wir Programmieren lernen wollen. Natürlich könnten wir auch andere Sprachen benutzen, und Sie sollten auf jeden Fall neugierig auf andere Sprachen bleiben - ein paar davon werden Sie auch noch im Laufe Ihres Studiums kennenlernen. Für den Einstieg mit Java haben wir uns aus verschiedenen Gründen entschieden:
- Wir können an Java alles zeigen, was wir zeigen wollen.
- Es gibt im Internet viele Ressourcen zu Java.
- Java ist weiterhin eine der meist verwendeten Sprachen.
So listet z.B. der TIOBE-Index Java seit 2003 auf Platz 1 oder 2; andere Dauerkandidaten für die Top-3 in den letzten dreissig Jahren sind C und C++, die "Vorfahren" von Java. Selbst wenn - unwahrscheinlicherweise - ab heute keine einziges neues Programm mehr in Java geschrieben werden würde, wird es noch für geraume Zeit (d.h., voraussichtlich, bis auch Sie in den wohlverdienten Ruhestand gehen) reichlich Java-Software geben, für welche Expertise gefragt ist.
Wir könnten jetzt natürlich ewig über die speziellen Vor- und Nachteile von Java gegenüber anderen Sprachen diskutieren, aber ehrlich gesagt verbringen wir unsere Zeit lieber produktiv...
Warum dieses komische ACM Java?
Insbesondere für diejenigen, welche bereits mit Java gearbeitet haben, mag das "ACM Java" erst einmal befremdlich erscheinen, auch wenn es sich nur in Details von "richtigem Java" unterscheidet. Zunächst einmal ist "ACM Java" aber ganz normales Java, nur dass wir Packages verwenden, die von der "ACM Java Task Force" (JTF) entwickelt worden sind, um den Einstieg in die Programmierung für diejenigen zu erleichtern, welche noch kein Java können. Das Ziel der JTF war, "To review the Java language, APIs, and tools from the perspective of introductory computing education and to develop a stable collection of pedagogical resources that will make it easier to teach Java to first-year computing students without having those students overwhelmed by its complexity." (http://cs.stanford.edu/people/eroberts/jtf/). Insbesondere wird etwas historischer Ballast, den Java von C geerbt hat, versteckt, und Programme werden als Objekte behandelt. Tatsächlich sind die Unterschiede aber relativ gering, so dass zum einen diejenigen, welche schon Java können, auch keine Probleme mit den ACM Packages haben sollten, und zum anderen diejenigen, welche mit ACM Java eingestiegen sind, den gegen Ende der Vorlesung erfolgenden Umstieg auf normales Java problemlos meistern können sollten.
Und, nebenbei bemerkt – es geht in der Vorlesung, wie weiter oben erläutert, um allgemeine Konzepte der imperativen objektorientierten Programmierung; dies ist kein "Java-Kurs"!
Warum Englisch? Ich finde <beliebige Sprache> besser!
Kurze Antwort: weil Englisch für Informatiker wichtig ist.
Warum mosert der Prof, wenn ich meinen Laptop aufklappe und nicht hinten sitze?
Weil es nicht nur Laptopnutzer vom Geschehen ablenkt, sondern auch die Drumherumsitzenden (siehe z.B. hier (Abschnitt 5.3), hier und hier). Tatsächlich ist auch für die Laptopnutzer selbst der unmittelbar vorlesungsbezogene Einsatz von Laptops für Vorlesungsmitschriften nicht unbedingt förderlich (siehe z.B. diese Studie und diesen Artikel).
Weswegen schreibt der Prof die Folien ab?
Um einzelne Punkte als besonders wichtig und mitschreibenswert zu kennzeichnen. Wie bereits oben bemerkt sind handschriftliche Notizen nachgewiesenermaßen förderlich für den Lernerfolg. Weiterhin hat der Dozent tatsächlich manchmal einen Plan, wie es innerhalb der Vorlesung weitergehen soll, und auf welche dann bereits an der Tafel festgehaltenen Punkte man später nochmal verweisen kann.
Ist das laut/stickig hier im GAP! Was soll ich tun?
Es ist ok und sogar gewünscht, sich nicht nur mit dem "Personal" sondern auch untereinander über Lösungsstrategien etc. zu unterhalten. Dabei sollte aber bitte Rücksicht auf andere genommen werden. Das insbesondere was die Lautstärke betrifft. Normalerweise funktioniert das auch ganz gut. Wer sich trotzdem nachhaltig gestört fühlt, möge bitte a) die Störer freundlich bitten, leiser zu sein, oder b) sich eine ruhigere Ecke im GAP suchen. Fall c), der/die aufsichtführende Mitarbeiter/in muss um Hilfe gebeten werden, ist auch denkbar, bisher aber noch nicht vorgekommen. Und schließlich: im GAP kann es bei voller Belegung und schlecht eingestellter Lüftung schnell stickig werden. Dann bitte nicht zögern, dies kundzutun; der freundliche, normalerweise testierende Mensch am Dozententisch kann dann z.B. den Technikservice (http://www.inf.uni-kiel.de/de/service/technik-service) oder das Gebäudemanagement (Herr Groth, Tel. 2656) anrufen, in der Regel erfolgt dann schnell Linderung.
Soll ich kostbare Lebenszeit für die EvaSys-Umfrage opfern?
Falls zunächst noch nicht klar ist, was die EvaSys-Umfrage ist - kein Problem, gegen Ende des Semesters trudeln diverse Mails ein, typischerweise eine für jede Pflichtlehrveranstaltung, in der man freundlich eingeladen wird, an einer Umfrage teilzunehmen. Die Teilnahme an den Umfragen ist wesentlicher Bestandteil des (Achtung:) Lehrqualitätssicherungsprozesses. Besonders interessant sind typischerweise die Freitextantworten. Nachdem es letztlich um den Studienerfolg geht, sollte gerne insbesondere auf folgende Fragen eingegangen werden: 1. Was hilft mir beim Lernen? 2. Was hindert mich am Lernen? 3. Wie könnte man die unter 2. genannten Punkte verbessern?
Die Umfrageergebnisse kommen den Dozenten zu und werden auch von einer regelmäßig tagenden (Vorsicht:) Qualitätssicherungskommission gesichtet. Hieraus wird ein Bericht generiert, der z.B. im Fachschaftsraum eingesehen werden kann. Aus hoffentlich nachvollziehbaren Gründen wird dieser nicht elektronisch verbreitet und/oder öffentlich gepostet - aber so hat man einen guten Grund, doch mal bei den netten Fachschaftlern vorbeizuschauen. Falls etwas wirklich im Argen zu sein scheint, wird ein kollegiales Gespräch mit dem/der Lehrverantwortlichen geführt. Die primäre Funktion der Lehrevaluation ist jedoch, dass Vorlesungsteilnehmende einen einfachen, anonymen Weg haben, den Lehrenden direkt mitzuteilen, was ihnen auf der Seele brennt.
Übrigens: Dozenten sind auch Menschen! D.h., Kritik kommt wirksamer an, wenn sie freundlich & konstruktiv formuliert wird, und auch loben darf man gerne mal. Und: Lehrevaluationen sind mittlerweile auch üblicher Bestandteil von Bewerbungen auf Dozentenstellen; d.h., insbesondere für Übungsleiter, die sich später mal bewerben wollen, können (hoffentlich positive) Lehrevaluationen wichtig sein. Dafür ist natürlich auch wichtig, dass - im Falle von mehreren Übungsleitern - das Feedback persönlich zugeordnet werden kann, oder zumindest die betreffende Übungsgruppe ("Fr 20-22 Uhr") identifiziert wird.