Public guest lectures

On September 21 there will be three public guest lectures on programming: Location: Zilverling, room 2042

9:00-9:45 Dr. M. van Dooren, “Bringing exception handling to the 21st century" 11:00-11:45 Prof. A. Fehnker, "Software Analysis for Students: how to become a great programmer" 13:30-14:15 Dr. M. Habib, "Algorithms: Design, Selection and Evaluation”

Abstract Marko van Dooren: “Bringing exception handling to the 21st century"

Ever since their invention, checked exceptions have been a point of much discussion. On the one hand, they increase the robustness of software by preventing the manifestation of unanticipated checked exceptions at run-time. On the other hand, they decrease the adaptability of software because they must be propagated explicitly, and must often be handled even if they cannot be signalled. In this lecture we will liberate exception handling form the dark ages, and bring it into the 21st century. We will learn how anchored exception declarations give exception handling the same dynamic nature that forms the basis of all modern programming languages. By making exception handling more dynamic, we can still guarantee exception safety without risking massive invasive changes when new exceptions are added.

Abstract Ansgar Fehnker: "Software Analysis for Students: how to become a great programmer"

Software is at the core of many innovations, and programming is an essential skill for any graduate in a technical or semi-technical field. In this talk we will review the core aspect of what it takes to become a great programmer. The starting pointfor this talk is to consider what makes a good program, and how tools can help to create great programs. The will review different techniques and their potential to improve software quality. It will be informed by experience with developing a industry strengthsoftware analysis tool, and experience in teaching programming , and software and systems design at university.

Abstract Mena Habib: "Algorithms: Design, Selection and Evaluation”

We compare different search and sorting algorithms and compute their algorithmic complexity. We also discuss how to evaluate them, and select the best algorithm suitable for a given problem.