Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Ich habe meine iLearn-Anmeldung vergeigt. Was soll ich tun?

Auf der Über-Seite im iLearn steht die Kontaktperson für derlei Fälle, Jan Tikovskynämlich cds. Schreibt ihm eine nette Mail, dann kümmert er sich drum.

...

  1. Erwähne deinen Namen. Im Absender steht oft genug nur "stuIrgendwasstu123456". Die wenigsten kennen die stu-Nummern all ihrer Studierenden auswendig.
  2. Erwähne, in welcher Übungsgruppe von welcher Veranstaltung du bist (Zeit und Übungsleiterperson).
  3. 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. (wink) Bei einer problematischen Abgabe beispielsweise sind folgende Infos praktisch:
    1. Der Quellcode.
    2. Die genaue Testausgabe.
    3. Eventuelle Theorien dazu, was das Problem sein könnte.
    4. Schritte, die bislang nicht zur Problemlösung geführt haben.

...

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.

Expand
titlea) Fehler beim Kompilieren

Falls wir das abgegebene Programm nicht kompilieren konnten, wird diese (oder zumindest eine ähnliche) Fehlermeldung erzeugt:

Image Modified

Für Kompilierfehler gibt es normalerweise zwei Ursachen:

  • Falscher Klassenname: Prüft ob die hochgeladene Klasse genau so heißt wie in der Aufgabe vorgegeben.
  • Falsches Package: Ein Package darf nur verwendet werden, wenn das auch in der Aufgabe erwähnt wird. Besonders am Anfang werden wir noch kein Package verwenden. Die entsprechende Warnung in Eclipse könnt ihr einfach ignorieren. Später muss das Package genau so heißen wie in der Aufgabe angegeben.
Expand
titleb) Keine Programmiersprache ausgewählt

Image Modified

Wir akzeptieren nur Java-Code in den automatischen Tests. Eine Stolperfalle ist, dass auch im iLearn die Programmiersprache auf Java eingestellt werden muss. Hierzu müsst ihr in der kleinen Box oberhalb eurer Abgabe Java auswählen.

Image Modified

Als kleiner Bonus habt ihr dann auch ein schönes Syntax-Highlighting in eurer Abgabe.

Expand
titlec) Der Style-Checker meckert

...

Manche Fehlermeldungen beginnen mit "The following output was generated checking the style of your code:"

Die meisten Formatierungsprobleme können in Eclipse recht einfach mit Ctrl-Shift-F (Cmd-Shift-F) behoben werden. Es gibt jedoch Ausnahmen, wie die folgenden, wobei wir gerne gerne noch Ergänzungen dieser Liste entgegennehmen:

Name 'Ftemp' must match pattern '^[a-z][a-zA-Z0-9]*$'.

Hier ist das Problem, dass der Variablenname nicht mit einem Kleinbuchstaben beginnt. Zur Erklärung der Fehlermeldung: "^" steht für den Anfang des Namens, dann soll ein Kleinbuchstabe kommen, dann beliebig viele Buchstaben oder Ziffern, dann mit "$" das Ende des Namens.

In line 19: '}' should be on the same line.

Die (in diesem Fall zugegebenermaßen nicht sehr hilfreiche) Fehlermeldung hätte lauten sollen: "'}' should be on the same line as the else keyword". Der Code hier sah folgendermaßen aus:

Code Block
}

else {

Die Fehlermeldung verschwindet bei folgendem Code:

Code Block
} else {
Expand
titled) Der Test geht gar nicht

Es kann eine andere Fehlermeldung mit einem Fehlercode angezeigt werden. Üblicherweise ist das kein Fehler von euch (zur Ausnahme siehe b), sondern etwas ist an unserer Infrastruktur kaputt. Bitte meldet solche Fehler bei eurem Übungsgruppenleiter und/oder bei cds

...

.

...

Image Modified

Ich kann schon Java!

Voll gut! Aber erstens haben wir bislang noch niemanden getroffen, der nichts noch hätte dazulernen können, und zweitens haben wir Dinge vorbereitet, um auch Leute mit Vorerfahrung nicht zu langweilen:

  1. Die meisten Hausaufgaben haben eine optionale, schwierigere Aufgabe, die schon mehr Kenntnisse voraussetzt oder generell etwas schwieriger ist.

  2. 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!

  3. Wer an herausfordernden Programmieraufgaben Spaß hat, kann ab dem 2. Semester an Christoph Daniels Programming Challenges-Kurs teilnehmen. Als Hinführung dazu bietet C4 einen Haufen von Aufgaben, an denen man sich die Zähne ausbeißen kann. Am besten auch gleich mit anderen zusammen!

Mir ist langweilig! Und was ist C4?

Für die Glücklichen, die in den praktischen Übungen sitzen und den Aufgabenzettel incl. Bonusaufgabe schon komplett gelöst haben, sind die C4 CAU Coding Challenges ein vortreffliches Mittel gegen Langeweile. Die meisten der C4-Aufgaben sind dem alljährlich stattfindenden ACM-ICPC International Collegiate Programming Contest entnommen, an dem übrigens auch Kieler Informatikstudierende teilnehmen können (bei Interesse fragt den Dozenten). Viele der Programmierprobleme setzen eher fortgeschrittene algorithmische Kenntnisse voraus, aber folgende Aufgaben sind auch gut für Einsteiger geeignet:

  • All in All
  • Beat the Spread
  • Counting
  • Fibonacci
  • Fibs
  • I Love Big Numbers
  • Light More Light
  • Odd Sum
  • Reverse and Add
  • The Trip
  • Vito's Family
  • Word Scramble

Für den Anfang empfehlen wir jedoch den Example-Challenge, um sich mit C4 etwas vertraut zu machen.

Warum Java? Ich finde <beliebige Sprache> besser!

...

Kurze Antwort: weil Englisch für Informatiker wichtig ist.

Expand
titleDetails

Längere Antwort: weil Englisch für Informatiker wichtig ist. Wirklich wichtig. Deswegen auch der entsprechende Hinweis im Studieninformationsblatt (Punkt 5, Voraussetzungen und Kenntnisse) für den Informatik-Bachelor. Englisch ist bereits im Studium nützlich, nachdem hier das "wissenschaftliche Arbeiten" (§2 der Fachprüfungsordnung für den Informatik-Bachelor, in anderen FPOs werden sich ähnliche Begriffe finden) vermittelt werden soll, und die z.B. für Seminar und Abschlussarbeit relevante Literatur zum weit überwiegenden Teil auf Englisch verfügbar ist. Englisch ist auch in InfProgOO nützlich, und das nicht nur, weil viele der zur Verfügung gestellten Materialien (Buch, Folien) auf englisch sind. Etwas weiter geschaut – ein Anspruch dieser Vorlesung ist, dass erfolgreiche Teilnehmende etwas mit "Primärliteratur" wie der Java Language Specification anfangen können, welche, wie die allermeisten Sprachstandards, auf englisch gehalten ist. Auf wichtigen Foren wie Stackoverflow, welche sich Informatiker zu nutze machen können sollten, wird englisch gesprochen. Die Suche nach "programming" auf google liefert zum Zeitpunkt des Schreibens dieser Zeilen ca. 30 mal mehr Treffer als die Suche nach "Programmierung". Die allermeiste Software, ob open-source oder nicht, ist auf englisch dokumentiert und auf englisch "geschrieben" (Kommentare, Namen, etc.). So ist es z.B. auch bei Bewerbungen sicher nicht von Nachteil, wenn man darauf verweisen kann, im Studium von Anfang an (auch) mit englischen Materialien gearbeitet zu haben.

Zum Glück scheint, laut Umfrageergebnissen hierzu, für die allermeisten die Verwendung von Englisch kein erhebliches Problem zu sein, und sehr viele begrüßen ausdrücklich die Verwendung von Englisch. Tatsächlich kann Deutsch in der Informatik auch ziemlich grausam sein, mit Stapelspeichern, Programmbindern, und nicht zuletzt der Müllabfuhr, die die Halde regelmäßig von Abfall befreit. Trotzdem sind wir uns darüber im Klaren, dass Englisch eine zusätzliche Hürde sein kann, neben allen anderen Herausforderungen, die ein Studium so mit sich bringt. Von daher bemühen wir uns, den Einstieg so einfach wie möglich zu machen, z.B., indem Erläuterungen in Vorlesung und Übungen auf deutsch erfolgen, und wir auch auf deutschsprachige Literatur verweisen. Zum Schluss, vielleicht etwas zur Beruhigung, falls sich doch noch jemand Sorgen macht: in der Klausur werden Aufgaben auf englisch und deutsch gestellt, und Antworten können in beiderlei Sprachen verfasst werden.

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. Mobile Geräte in der Präsenzlehre: Ablenkung oder Lernchance? Von der unstrukturierten Nutzung von Smartphone & Co. hin zu einem orchestrierten Modell für Vorlesungen hier (Abschnitt 5.3),  Laptop multitasking hinders classroom learning for both users and nearby peers und Why I Just Asked My Students To Put Their Laptops Away 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).

...

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. Deswegen sollten beide Türen geöffnet sein, damit die Lüftung vernünftig arbeiten kann. Falls es trotzdem stickig wird, 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.

...