Courses/EIMI 25WS: Difference between revisions

(create EIMI Course page)
 
 
(3 intermediate revisions by the same user not shown)
Line 11: Line 11:
* Kurs im Vorlesungsverzeichnis: [https://spur.uni-regensburg.de:443/qisserver/pages/startFlow.xhtml?_flowId=detailView-flow&unitId=22970&periodId=549&navigationPosition=courseoverviewShow Vorlesung] / [https://spur.uni-regensburg.de:443/qisserver/pages/startFlow.xhtml?_flowId=detailView-flow&unitId=22971&periodId=549&navigationPosition=courseoverviewShow Übung]
* Kurs im Vorlesungsverzeichnis: [https://spur.uni-regensburg.de:443/qisserver/pages/startFlow.xhtml?_flowId=detailView-flow&unitId=22970&periodId=549&navigationPosition=courseoverviewShow Vorlesung] / [https://spur.uni-regensburg.de:443/qisserver/pages/startFlow.xhtml?_flowId=detailView-flow&unitId=22971&periodId=549&navigationPosition=courseoverviewShow Übung]
</div>
</div>


== Overview ==
== Overview ==
Der Kurs dient als Einführung in verschiedene Grundkonzepte der Informatik und Medieninformatik  
Der Kurs dient als Einführung in verschiedene Grundkonzepte der Informatik und Medieninformatik.
 
Besprochen werden geschichtliche Entwicklungen von Computern und Programmierung; Grundlagen der Datenübertragung, Rechnerarchitektur und Betriebssysteme; der Aufbau der menschlichen Wahrnehmung; sowie Grundkenntnisse zu Zahlensystemen, (Programmier-)Logik und Dateiformaten.


<!-- Floated Table that contains the big topics of the course note(32.5em)-->
<!-- Floated Table that contains the big topics of the course note(32.5em)-->
Line 47: Line 50:


<!-- Rest der Beschreibung -->
<!-- Rest der Beschreibung -->
Besprochen werden geschichtliche Entwicklungen von Computern und Programmierung; Grundlagen der Datenübertragung, Rechnerarchitektur und Betriebssysteme; der Aufbau der menschlichen Wahrnehmung; sowie Grundkenntnisse zu Zahlensystemen, (Programmier-)Logik und Dateiformaten.
 
In der dazugehörigen Übung werden wichtige Werkzeuge und praktische Kompetenzen vermittelt.
In der dazugehörigen Übung werden wichtige Werkzeuge und praktische Kompetenzen vermittelt.


Line 59: Line 62:
Für einen (großen) Graphen, der den gesamten Kurs zeigt [hier] klicken.
Für einen (großen) Graphen, der den gesamten Kurs zeigt [hier] klicken.
</blockquote>
</blockquote>
<!-- Table that contains simple/fast queries for the beggining & ending nodes of a course -->
{| class="wikitable"
! '''Vorwissen''' !! '''Ziele'''
|-
<!-- Linke Spalte -->
| style="width: 50%" | {{#widget:SPARQLquery|code=
#defaultView:Table
# Prerequsisite=outside -depends on-> Course-Topic=inside
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wd: <https://graphit.ur.de/entity/>
select distinct
?Vorwissen ?VorwissenLabel
where {
  # get all items that are included in sessions (as some categories include more items)
  wd:Q2113 wdt:P14 ?session.
  ?session wdt:P3 wd:Q427.
 
  ?session wdt:P14 ?item.
  ?item wdt:P1 ?Vorwissen. # get the prerequsites
  MINUS { wd:Q2113 wdt:P14/wdt:P14 ?Vorwissen. } # filter out all prereqs that are included in the course
  service wikibase:label { bd:serviceParam wikibase:language "en".}
} LIMIT 30
|caption=Items, die nicht Teil des Kursen sind, aber als Vorwissen vorausgesetzt werden
|height=20vh
}}
<!-- Rechte Spalte -->
| style="width: 50%" | {{#widget:SPARQLquery|code=
#defaultView:Table
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wd: <https://graphit.ur.de/entity/>
SELECT DISTINCT ?ZielLabel ?Ziel
where {
  wd:Q2113 wdt:P36 ?Ziel.
  service wikibase:label { bd:serviceParam wikibase:language "en".}
} LIMIT 20
|caption=Items, die als Kursziele markiert sind
|height=20vh
}}
|}
=== Timetable ===
<div style="border: solid 5px #d2d6e0; background-color:#eaecf0;">
{{#widget:SPARQLquery|code=
#defaultView:Timeline
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wd: <https://graphit.ur.de/entity/>
select distinct ?Datum ?Session ?SessionLabel # ?Inhalte ?InhalteLabel
where {
  wd:Q2113 wdt:P14 ?Session.
  ?Session wdt:P3 wd:Q427.
  ?Session wdt:P19 ?Datum.
  # OPTIONAL {?Session wdt:P14 ?Inhalte.}
 
  # Get the amount of eng alias found for an item
  {SELECT ?Session (COUNT(?alias) AS ?aliasCount) WHERE {
    ?Session skos:altLabel ?alias.
    FILTER (LANG(?alias) = "en").
  } GROUP BY ?Session
  }
 
  # re-get the alias as ?SessionLabel (for the links)
  ?Session skos:altLabel ?SessionLabel.
  FILTER (LANG(?SessionLabel) = "de").
  FILTER (!contains(str(?SessionLabel), "Ü:")). # nur VL
 
  # Filter out all descriptive alias (aka. don't use a "[Course] - 01a"-type label)
  OPTIONAL {
    ?Session skos:altLabel ?alt.
    FILTER (!regex(?alt, "MMT", "i"))
    FILTER (LANG(?alt) = "en")  # Ensure the alias is in English
  } # and save them in a different var
 
  # Default to the normal alias, but use the descriptiv one if it exists
  BIND(IF (?aliasCount > 1, ?alt, ?alias) as ?SessionLabel)
 
  service wikibase:label { bd:serviceParam wikibase:language "en".}
} ORDER BY DESC(?SessionLabel)
LIMIT 50
|height=35em
|caption=Alle Vorlesungstermine des Kurses
}}
</div>
<div style="border: solid 5px #d2d6e0; background-color:#eaecf0;">
{{#widget:SPARQLquery|code=
#defaultView:Timeline
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wd: <https://graphit.ur.de/entity/>
select distinct ?Datum ?Session ?SessionLabel # ?Inhalte ?InhalteLabel
where {
  wd:Q2113 wdt:P14 ?Session.
  ?Session wdt:P3 wd:Q427.
  ?Session wdt:P19 ?Datum.
  # OPTIONAL {?Session wdt:P14 ?Inhalte.}
 
  # Get the amount of eng alias found for an item
  {SELECT ?Session (COUNT(?alias) AS ?aliasCount) WHERE {
    ?Session skos:altLabel ?alias.
    FILTER (LANG(?alias) = "en").
  } GROUP BY ?Session
  }
 
  # re-get the alias as ?SessionLabel (for the links)
  ?Session skos:altLabel ?SessionLabel.
  FILTER (LANG(?SessionLabel) = "de").
  FILTER (contains(str(?SessionLabel), "Ü:")). # nur Übungen
 
  # Filter out all descriptive alias (aka. don't use a "[Course] - 01a"-type label)
  OPTIONAL {
    ?Session skos:altLabel ?alt.
    FILTER (!regex(?alt, "MMT", "i"))
    FILTER (LANG(?alt) = "en")  # Ensure the alias is in English
  } # and save them in a different var
 
  # Default to the normal alias, but use the descriptiv one if it exists
  BIND(IF (?aliasCount > 1, ?alt, ?alias) as ?SessionLabel)
 
  service wikibase:label { bd:serviceParam wikibase:language "en".}
} ORDER BY DESC(?SessionLabel)
LIMIT 50
| height=35em
| caption=Alle Übungen des Kurses (nur eine Termin wird angezeigt)
}}
</div>
=== Interessen & Vorkenntnisse ===
Ein Diagramm, das Items zeigt, die Studierende als "interessant" oder "bekannt" markiert haben.
<div style="border: solid 5px #d2d6e0; background-color:#eaecf0;">
{{#widget:SPARQLquery| code=
#defaultView:SwarmScatterChart
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT DISTINCT ?known ?interests ?itemLabel 
WHERE {
  wd:Q2113 wdt:P14/wdt:P14 ?item.
  OPTIONAL {
    SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?known) WHERE {
      ?student wdt:P25 wd:Q2113.
      ?student wdt:P12 ?item.
      FILTER (!contains(str(?SessionLabel), "Demo")). # rm Demo Students
    } GROUP BY ?item ?itemLabel
  }
  OPTIONAL {
    SELECT ?item ?itemLabel (COUNT(DISTINCT ?student) as ?interests) WHERE {
      ?student wdt:P25 wd:Q2113.
      ?student wdt:P23 ?item.
      FILTER (!contains(str(?SessionLabel), "Demo")). # rm Demo Students
    } GROUP BY ?item ?itemLabel
  }.
  BIND (IF(!BOUND(?interests), 0, ?interest) as ?interests).
  BIND (IF(!BOUND(?known), 0, ?known) as ?known).
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
}}
</div>
=== Preview ===
Eine Liste an Themen, die im nächten Termin behandelt werden.
<div style="border: solid 5px #d2d6e0; background-color:#eaecf0;">
{{#widget:SPARQLquery| code=
#defaultView:Table
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wd: <https://graphit.ur.de/entity/>
select distinct ?today ?sessionDate ?interested ?completed
?item ?itemLabel
?resource ?resourceLabel ?url ?type ?typeLabel
where {
  { # subquery: get the session for next week
    SELECT ?session  ?today ?sessionDate
    WHERE {
      # get all sessions, that are "bigger" than today
      # BIND("2024-04-29"^^xsd:dateTime as ?today) # for test
      BIND(now() as ?today) # for real
 
      wd:Q2113 wdt:P14 ?session.
      ?session wdt:P3 wd:Q427.
      ?session wdt:P19 ?sessionDate.
      # FILTER(?sessionDate > ?today).
      FILTER(xsd:date(?sessionDate) >= xsd:date(?today)).
    } ORDER BY ASC(?sessionDate)
    LIMIT 1 # limit to 1 session
  } # end of subquery
 
  # limit to 1 session (from subquery)
  ?session wdt:P14 ?item.
  OPTIONAL {?item wdt:P21 ?resource.
            ?resource wdt:P20 ?url.
            ?resource wdt:P3 ?type}
 
    { # start of union
      {  # get all items user is interested in
      SELECT ?item ?itemLabel
      WHERE {
          ?user rdfs:label "{{#username:Max Mustermann}}"@en.
          ?user wdt:P23 ?item.
      } }
      BIND(IF(BOUND(?item), "true", "false") as ?interested)
  } UNION {
      { # get all items user has completed
      SELECT ?item ?itemLabel
      WHERE {
          ?user rdfs:label "{{#username:Max Mustermann}}"@en.
          ?user wdt:P12 ?item.
      } }
      BIND(IF(BOUND(?item), "true", "false") as ?completed)
  } UNION { # union: get all other items
      ?session wdt:P14 ?item.
      ?user rdfs:label "{{#username:Max Mustermann}}"@en.
      # Remove all item user is interested in / has completed -> otherwise duplicates
      MINUS {?user wdt:P23 ?item}
      MINUS {?user wdt:P12 ?item}
  } # end of union
 
  service wikibase:label { bd:serviceParam wikibase:language "en".}
} ORDER BY DESC(?resource)
LIMIT 80
| caption=A Todolist for {{#username:Max Mustermann}}
| height=30em
}}
</div>
== Erste Schritte mit GraphIT ==
# '''GraphIT-Account einrichten'''
## Account einrichten via: [https://graphit.ur.de/register Registrierung]
### Der Benutzername wird öffentlich angezeigt, also gerne auch ein Pseudonym wählen
### Den Kurs "EIMI 2025 WS" für die Teilnahme wählen
# ''' Benutzer-Item überprüfen'''
## Logge dich bei GraphIT ein (Menüpunkt ganz rechts oben)
## Dein Benutzer-Item findest du einfach über die Suchleiste (über deinen Benutzernamen)
## oder über deine Nutzerseite: [[User:{{#username:Max Mustermann}}]] (bist du nicht eingeloggt, wird auf eine Beispiel-Nutzerseite von "Max Mustermann" verlinkt).
## Hier sieht du alle Verknüpfungen die von oder auf dein Item zeigen. Aktuell sollten hier 3 Statements sein (siehe z.B. das Item Q630: [[Item:Q630|Markus Mustermann]])
### '[[Property:P3|instance of]]' (P3) + '[[Item:Q167|Student]]' (Q167)
### '[[Property:P28|username]]' (P28) + Benutzernamen (siehe Schritt 1)
### '[[Property:P25|participates in]]' (P25) + [[Item:Q2113|EIMI 25/26WS]] (Q1986)
### &rarr; fehlt eines dieser Statements, füge es mit dem '+ <span style="color:#008CBA">add statement</span>' Button hinzu
# '''Vorkenntnisse und Interessen angeben'''
## Auf https://test.graphit.ur.de/app/src/pages/selectionTools/ einmal mit Benutzername und Passwort (aus Schritt 1) anmelden.
## Oben rechts die Lehrveranstaltung "EIMI 25WS" auswählen.
## Im angezeigten Graph die damit verbundenen Themen anschauen.
## Alle Themen als "completed" markieren, mit denen man sich schon befasst hat (auswählen und Taste '1' drücken bzw. den Button auf der rechten Seite).
## Mindestens fünf Themen als Interessen markieren (auswählen und Taste '2' drücken bzw. den Button auf der rechten Seite).
## '''Änderungen speichern über den 'save'-Button unten rechts!'''
## Auf der eigenen Item-Seite überprüfen ob die Interessen und Vorkenntnisse korrekt dokumentiert wurden.
Als ein Beispiel kann [[Item:Q157|Max Mustermann]] angesehen werden. Für eine detailiertere Übersicht kann die Seite [[ExampleStudent]] besucht werden.

Latest revision as of 12:47, 23 September 2025

Kurs Einführung in die Informatik und Medieninformatik, Wintersemester 25/26

B.A. Medieninformatik, Universität Regensburg.



Overview

Der Kurs dient als Einführung in verschiedene Grundkonzepte der Informatik und Medieninformatik.

Besprochen werden geschichtliche Entwicklungen von Computern und Programmierung; Grundlagen der Datenübertragung, Rechnerarchitektur und Betriebssysteme; der Aufbau der menschlichen Wahrnehmung; sowie Grundkenntnisse zu Zahlensystemen, (Programmier-)Logik und Dateiformaten.

Wichtige Themen


In der dazugehörigen Übung werden wichtige Werkzeuge und praktische Kompetenzen vermittelt.


Der Leistungsnachweis ist eine schriftliche Prüfung am Ende des Semesters.

Um zur Klausur zugelassen zu werden, müssen während des Semesters wöchentliche Übungsblätter bearbeitet und bestanden werden. Erwartet wird dazu auch eine aktive Mitarbeit in den Übungsstunden.


Für einen (großen) Graphen, der den gesamten Kurs zeigt [hier] klicken.

Vorwissen Ziele

Items, die nicht Teil des Kursen sind, aber als Vorwissen vorausgesetzt werden

Items, die als Kursziele markiert sind


Timetable

Alle Vorlesungstermine des Kurses


Alle Übungen des Kurses (nur eine Termin wird angezeigt)

Interessen & Vorkenntnisse

Ein Diagramm, das Items zeigt, die Studierende als "interessant" oder "bekannt" markiert haben.

Preview

Eine Liste an Themen, die im nächten Termin behandelt werden.

A Todolist for Max Mustermann

Erste Schritte mit GraphIT

  1. GraphIT-Account einrichten
    1. Account einrichten via: Registrierung
      1. Der Benutzername wird öffentlich angezeigt, also gerne auch ein Pseudonym wählen
      2. Den Kurs "EIMI 2025 WS" für die Teilnahme wählen
  2. Benutzer-Item überprüfen
    1. Logge dich bei GraphIT ein (Menüpunkt ganz rechts oben)
    2. Dein Benutzer-Item findest du einfach über die Suchleiste (über deinen Benutzernamen)
    3. oder über deine Nutzerseite: User:Max Mustermann (bist du nicht eingeloggt, wird auf eine Beispiel-Nutzerseite von "Max Mustermann" verlinkt).
    4. Hier sieht du alle Verknüpfungen die von oder auf dein Item zeigen. Aktuell sollten hier 3 Statements sein (siehe z.B. das Item Q630: Markus Mustermann)
      1. 'instance of' (P3) + 'Student' (Q167)
      2. 'username' (P28) + Benutzernamen (siehe Schritt 1)
      3. 'participates in' (P25) + EIMI 25/26WS (Q1986)
      4. → fehlt eines dieser Statements, füge es mit dem '+ add statement' Button hinzu
  3. Vorkenntnisse und Interessen angeben
    1. Auf https://test.graphit.ur.de/app/src/pages/selectionTools/ einmal mit Benutzername und Passwort (aus Schritt 1) anmelden.
    2. Oben rechts die Lehrveranstaltung "EIMI 25WS" auswählen.
    3. Im angezeigten Graph die damit verbundenen Themen anschauen.
    4. Alle Themen als "completed" markieren, mit denen man sich schon befasst hat (auswählen und Taste '1' drücken bzw. den Button auf der rechten Seite).
    5. Mindestens fünf Themen als Interessen markieren (auswählen und Taste '2' drücken bzw. den Button auf der rechten Seite).
    6. Änderungen speichern über den 'save'-Button unten rechts!
    7. Auf der eigenen Item-Seite überprüfen ob die Interessen und Vorkenntnisse korrekt dokumentiert wurden.

Als ein Beispiel kann Max Mustermann angesehen werden. Für eine detailiertere Übersicht kann die Seite ExampleStudent besucht werden.