Hasso-Plattner-InstitutSDG am HPI
Hasso-Plattner-InstitutDSG am HPI
Login
 

Programming Experience (Sommersemester 2023)

Lecturer: Prof. Dr. Robert Hirschfeld (Software-Architekturen) , Dr. Jens Lincke (Software-Architekturen) , Marcel Taeumel (Software-Architekturen) , Eva Krebs (Software-Architekturen) , Stefan Ramson (Software-Architekturen) , Tom Beckmann (Software-Architekturen) , Toni Mattis (Software-Architekturen) , Leonard Geier (Software-Architekturen) , Lukas Böhme (Software-Architekturen)

General Information

  • Weekly Hours: 4
  • Credits: 6
  • Graded: yes
  • Enrolment Deadline: 01.04.2023 - 07.05.2023
  • Teaching Form: Project seminar
  • Enrolment Type: Compulsory Elective Module
  • Course Language: German
  • Maximum number of participants: 20

Programs, Module Groups & Modules

IT-Systems Engineering MA
Data Engineering MA
  • SYSE: Systems Engineering
    • HPI-SYSE-K Konzepte und Methoden
  • SYSE: Systems Engineering
    • HPI-SYSE-T Techniken und Werkzeuge
  • SYSE: Systems Engineering
    • HPI-SYSE-S Spezialisierung

Description

Programming Experience (PX) is a subset of User Experience (UX) focusing on software developers, which are users of their programming tools and environments. Contrary to end-users, developers have the capability to build their own tools and systems, and to adapt them for their needs. In self-sustaining systems, such as Lively4 or Squeak/Smalltalk, these tools can be adapted while they are being used.

In this seminar, the participants will create or adapt tools and systems in self-sustaining environments with a focus on the programming experience. Topics of interests are programming tools for exploratory programming, babylonian programming and native image.

Requirements

In-depth knowledge in at least one dynamic programming language.
Knowledge of JavaScript, Java, Smalltalk and associated technologies (e.g. ASTs) helpful, but not required.

Learning

Die Themenvorstellung wird am Dienstag, den 18.04. in A-2.2 stattfinden.

Examination

Grading will take place based on the work on one of the projects. To complete the course, the following requirements are to be fulfilled:

To obtain the six credits, the following requirements are to be fulfilled:

  • Work on a project topic, regular demonstration of progress, quality of code (50%)
  • Final presentation of results (30%)
  • Documentation of topic, its background, results, and software design decisions (20%)

One week before the final presentation, students will submit a draft of their current slides for feedback. One day before the final presentation, students will submit

  • sources (e.g. PPTX) of the presentation slides,
  • a PDF version of the presentation,
  • current state of the project’s source code, and
  • a short screencast (mp4)

All source code created during this seminar will be licenced under the MIT license.

Zurück