Forschungsstelle Digitale Nachhaltigkeit

Grundkurs Programmieren HS2020

Links und Eckdaten

KSL-Link: 458856
ILIAS-Link: 458856-HS2020-0
Umfang: 3 ECTS

Virtual Classroom: classroom.fdn.iwi.unibe.ch
Virtuelle Maschine: Kurzanleitung zur Installation

Einführungsveranstaltung: Freitag, 18. September 2020 von 10:15h bis 12:00h in der Aula (Raum 210) im Hauptgebäude, Hochschulstrasse 4, Bern
Unterrichtsform: Inverted Classroom mit YouTube-Videos im Virtual Classroom (Videos zu Hause anschauen, bei Bedarf Unterstützung vor Ort bzw. per Video Conferencing)
Individuelle Unterstützung vor Ort (bzw. per Video Conferencing): Freitags jeweils von 13:15h bis 16:00h, Hörraum 120 im Hauptgebäude, Hochschulstrasse 4, Bern

Prüfung 1. Termin: Donnerstag, 7. Januar 2021 von 13:15h bis 14:15h, Raum 001 im vonRoll-Areal, Fabrikstrasse 6, Bern
Prüfung 2. Termin: Donnerstag, 11. Februar 2021 von 16:15h bis 17:15h, Raum 001 im vonRoll-Areal, Fabrikstrasse 6, Bern

Überblick

In der ersten Hälfte des Grundkurses Programmieren lernen die Studierenden die Client-basierten Web-Technologien Hypertext Markup Language (HTML), Cascading Style Sheets (CSS), Bootstrap und JavaScript kennen. Durch ihre bisherige Internet-Erfahrung werden die Studierenden dadurch ein solides Verständnis dieser Technologien entwickeln und rasch Erfolgserlebnisse im Web-Umfeld erzielen können. Im zweiten Teil des Grundkurses Programmieren erlernen die Teilnehmenden die Grundlagen der Programmiersprache Python und wenden diese Skills anschliessend mit zahlreichen Programmierbibliotheken an. Dies erlaubt ihnen die Lösung von anspruchsvollen Aufgabenstellungen sowie die Erstellung von Datenanalysen und Datenvisualisierungen, die sie sowohl im wissenschaftlichen Umfeld ihres Studiums als auch in der Praxis nutzen können.

Methodik

Der Grundkurs Programmieren wird nach dem Inverted Classroom Prinzip durchgeführt: Der Stoff wird anhand von Screencast-Videos erlernt und dieser dann mittels Lösen von Aufgaben angewendet. In der Präsenzstunde jeweils am Freitag zwischen 13:15h und 16:00h unterstützen erfahrene Informatikstudierende bei Fragen und Problemen.

Lernziele

  1. Die Studierenden beherrschen algorithmisches Denken und können dadurch selbständig in zwei verschiedenen Sprachen (JavaScript und Python) Programmstrukturen konzipieren und realisieren.
  2. Die Studierenden kennen die Grundlagen von HTML, CSS, Bootstrap und JavaScript und können anhand dieses Wissens die Web-Technologien nach Bedarf gezielt vertiefen.
  3. Die Studierenden verstehen den technischen Aufbau von Websites und können eigene Client-basierte Websites umsetzen.
  4. Die Studierenden beherrschen die Grundlagen von Python und wissen, wie sie sich selbständig zusätzliche Python Programmier-Techniken mittels geeigneter Quellen beibringen können.
  5. Die Studierenden kennen wichtige Python Programmierbibliotheken (NumPy, MatPlotLib etc.) und können diese anwenden.
  6. Die Studierenden können Datensätze transformieren und importieren um sie mit Python zu verarbeiten und zu visualisieren.
  7. Die Studierenden verstehen die Möglichkeiten von Natural Language Processing (NLP) und anderen Machine Learning Technologien und kennen entsprechende Tools (Scikit-learn).

Termine

A) Modul Web-Technologien

Termin 1: 18.09.2020 Einführung und Überblick in die Veranstaltung, inhaltliche Zusammenhänge über HTML, CSS, Bootstrap und JavaScript, Einführung HTML, Beschreibung der Übungen und Ablauf - Studierende schauen sich zu Hause Videos zu HTML an und lösen Übung 1
Termin 2:
25.09.2020
Besprechung der Übung 1, Beantworten von Fragen, Unterstützung bei individuellen Problemstellungen am Laptop, Einführung zu CSS, Vorstellen der Übung 2 zu CSS - Studierende schauen sich zu Hause Videos zu CSS an und lösen Übung 2
Termin 3: 02.10.2020 Besprechung der Übung 2, Einführung zu CSS, Vorstellen der Übung 3 zu Bootstrap - Studierende schauen sich zu Hause Videos zu CSS an und lösen Übung 3
Termin 4:
09.10.2020
Besprechung der Übung 3, Einführung zu Bootstrap, Vorstellen der Übung 4 zu Bootstrap - Studierende schauen sich zu Hause Videos zu Bootstrap an und lösen Übung 4
Termin 5: 16.10.2020 Besprechung der Übung 4, Einführung zu JavaScript, Vorstellen der Übung 5 zu JavaScript - Studierende schauen sich zu Hause Videos zu JavaScript an und lösen Übung 5
Termin 6: 23.10.2020 Besprechung der Übung 5, Vorstellen der Übung 6 zu JavaScript - Studierende schauen sich zu Hause Videos zu JavaScript an und lösen Übung 6
Termin 7: 30.10.2020 Besprechung der Übung 6, Ausblick auf Programmieren mit Python


B) Modul Python

Termin 8: 06.11.2020 Inhaltliche Einführung zu Python, Vorstellen der Übung 7 - Studierende schauen sich zu Hause Videos zu Python an (Installation, Datentypen, Variablen, Kontrollstrukturen etc.) und lösen Übung 7
Termin 9: 13.11.2020 Besprechung der Übung 7, Einführung der neuen Inhalte, Vorstellen der Übung 8 - Videos zu Listen, Listenmutationen, Dictionaries, Module und Funktionen bei Python, Lösen von Übung 8
Termin 10: 20.11.2020 Besprechung der Übung 8, Einführung der neuen Inhalte, Vorstellen der Übung 9 - Videos zu den Grundlagen der Textverarbeitung mit Python (Text einlesen, mutieren, speichern etc.), Lösen von Übung 9
Termin 11: 27.11.2020 Besprechung der Übung 9, Einführung der neuen Inhalte, Vorstellen der Übung 10 -  Videos zu Datensätze einlesen und visualisieren, Lösen von Übung 10
Termin 12: 04.12.2020 Besprechung der Übung 10, Einführung der neuen Inhalte, Vorstellen der Übung 11 - Videos Einführung in Machine Learning mit Scikit Learn, Lösen von Übung 11
Termin 13:
11.12.2020
Besprechung der Übung 11, Weitere Möglichkeiten mit Python

Termin 14:
18.12.2020

Vorstellen der Prüfung zu Web-Technologien und Python

 

FAQ: Fragen von Studierenden zu dieser Veranstaltung

Ich habe mich entschieden, die Prüfung nicht zu schreiben. Muss ich mich noch irgendwo abmelden?
Wenn Sie sich über KSL angemeldet haben, sind Sie automatisch zur Prüfung angemeldet. Falls Sie nicht an der Prüfung teilnehmen wollen, müssen Sie sich bis am 1. Oktober 2020 aus KSL abmelden.

Ist es möglich, sich als Doktorand am Kurs anzumelden?
Grundsätzlich richtet sich das Angebot an die Bachelor- und Masterstudierenden der Universität Bern ausserhalb der Phil.-nat. Fakultät. Diese haben Priorität für die Teilnahme an den Übungsstunden und an der Prüfung. Jedoch können Doktoranden und alle anderen Interessierten ohne Einschränkung im Virtual Classroom die YouTube-Videos anschauen und auch im ILIAS die Übungen lösen.

Welchen Leistungsnachweis muss in diesem Kurs erbracht werden?
Es wird eine einstündige Prüfung auf dem eigenen Laptop geben, der mit der Bring-Your-Own-Device (BYOD) Prüfungsumgebung gebootet wird. Weitere Infos dazu folgen in der Veranstaltung.

Ist es (gut) möglich, die Veranstaltung auf Basis der Vorlesungsunterlagen und Übungsaufgaben zu absolvieren? Gibt es ein ausgearbeitetes Skript, ein oder mehrere begleitende Lehrbücher, oder 
sogar eine Aufzeichnung der Veranstaltung? / Ist es empfohlen bei den Lektionen des Grundkurs Programmieren anwesend zu sein, oder ist es auch im Selbststudium möglich?

Sie können gut am Kurs im Selbststudium teilnehmen ohne die Präsenzstunden zu besuchen. Wichtig sind einfach die Absolvierung der Übungen in ILIAS, damit Sie gut für die Prüfung vorbereitet sind. Alle Inhalte des Kurses werden durch YouTube-Videos vermittelt. Weitere Infos dazu folgen. Eine Aufzeichnung der Präsenzstunden ist im HS2020 vorgesehen.

I would be interested in coming for the programming course but I wanted to ask if the course will be in German or English?
The course this semester (HS2020) is in German only.

I was wondering if the course was open to the public or registration was necessary to attend the lessons. The reason why I'm asking this is that having experiments to carry on in my lab I, unfortunately, cannot guarantee complete attendance. I am not interested in the ects credits as I don't need them in my curriculum, but I would still be very eager to attend the course. Additionally, although I am studying German, I am not very good with the language yet and would like to try if I can follow the course, and I wouldn't feel confident enough in my german skills in case of an exam.  
The course will be in German only. However, as this lecture is following the inverted classroom model all the content is being taught inside videos and they will be published in our public virtual learning classroom. 

Bei der Beschreibung steht, dass jeweils freitags eine Lektion zwischen 13:15 und 16:00 eine Präsenzstunde durchgeführt wird - wie ist das genau zu verstehen? Kann da frei gewählt werden, wann genau in diesem Zeitfenster man für eine Lektion (45min) anwesend sein will (oder kann) oder ist das irgendwie fix und wird jeweils für die Folgewoche mitgeteilt?
Die Idee ist, dass Sie, falls Sie möchten, jeweils am Freitag während 45min an einer Präsenzlektion (je nach Situation auch im HS2020 über Zoom) teilnehmen können. Dieses Zeitfenster werden Sie nach dem Prinzip first come, first served frei wählen können. Es hat jeweils pro Zeitfenster 80 Plätze. Weitere Informationen dazu folgen an der ersten Präsenzlektion am Freitag, 18. September 2020 um 10:15h in der Aula im Uni-Hauptgebäude in Bern.

Ich habe vor, im nächsten Semester die Vorlesung und die Übung "Open Data" zu besuchen. Ist der Programmierkurs am Freitag als Ergänzung zu diesen Veranstaltungen gedacht, oder werden dessen Inhalte auch im Rahmen der Open Data-Übung erarbeitet?
Die Inhalte des "Grundkurs Programmieren" sind in kleineren Teilen überschneidend mit der Vorlesung und Übung "Open Data". Konkret wird in beiden Veranstaltungen HTML, CSS, Bootstrap und JavaScript unterrichtet. Beim "Grundkurs Programmieren" wird zusätzlich eine Einführung in Python unterrichtet. Bei der Open Data Übung erlernen Sie zusätzlich D3.js und entwickeln eine Datenvisualisierung zusammen mit Data Coaches aus der Praxis (siehe Beispiele im Open Data Show Room). Es macht somit durchaus Sinn, beide Veranstaltungen zu besuchen.

Ich würde sehr gerne an der Veranstaltung teilnehmen (aus reinem Interesse, nicht zum Erwerb von ECTS-Punkten), habe am Freitagnachmittag aber leider jeweils keine Zeit. Wäre es möglich, dass ich mich für die Veranstaltung anmelde und den Zugang zu den Lernvideos und Übungen erhalte, ohne an den Präsenzstunden der Veranstaltung sowie an der schriftlichen Prüfung teilzunehmen?
Ja, Sie werden Zugang zu allen Videos und Übungen erhalten, da wir die Inhalte auf unserer Website verlinken werden, sobald sie ready sind. Die ganze Veranstaltung ist so konzipiert, dass Sie nicht an den Freitags-Terminen teilnehmen müssen, wenn Sie zeitlich nicht können. Dennoch empfehlen wir Ihnen an der Prüfung teilzunehmen, da Sie bei erfolgreicher Absolvierung eine Bestätigung in Ihrem Diploma Supplement erhalten (als freiwillige Zusatzleistung). Oder mit anderen Worten: Nur mit einer erfolgreichen Prüfungsteilnahme können Sie belegen, dass Sie den Kurs besucht und die Inhalte verstanden haben.