PB173 Domain specific development

Faculty of Informatics
Spring 2023
Extent and Intensity
0/2/0. 2 credit(s) (plus extra credits for completion). Type of Completion: k (colloquium).
Taught in person.
Teacher(s)
doc. RNDr. Petr Švenda, Ph.D. (assistant)
Mgr. Roman Lacko (lecturer)
Mgr. Milan Patnaik (lecturer)
Guaranteed by
doc. RNDr. Petr Švenda, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable of Seminar Groups
PB173/perl: Mon 13. 2. to Mon 15. 5. Mon 12:00–13:50 B011; and Wed 17. 5. 12:00–13:50 B011, R. Lacko
PB173/securityLec: Tue 4. 4. 16:00–17:50 A318, Tue 11. 4. 16:00–17:50 A318, Tue 18. 4. 16:00–17:50 A318, Tue 25. 4. 16:00–17:50 A318, M. Patnaik
PB173/security01: Thu 6. 4. 12:00–13:50 B411, Thu 13. 4. 12:00–13:50 B411, Thu 20. 4. 12:00–13:50 B411, Thu 27. 4. 12:00–13:50 B411, M. Patnaik
PB173/security02: Thu 6. 4. 16:00–17:50 B410, Thu 13. 4. 16:00–17:50 B410, Thu 20. 4. 16:00–17:50 B410, Thu 27. 4. 16:00–17:50 B410, M. Patnaik
Prerequisites
PB071 Principles of low-level prog. || SOUHLAS
We expect you to have knowledge of appropriate programming language and operating system based on your desired seminar group. A mandatory prerequisite is passing the PB071 course or exemption given by the lecturer.
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
The capacity limit for the course is 35 student(s).
Current registration and enrolment status: enrolled: 14/35, only registered: 0/35, only registered with preference (fields directly associated with the programme): 0/35
fields of study / plans the course is directly associated with
there are 75 fields of study the course is directly associated with, display
Course objectives
Enhance your programming capabilities in the language appropriate for the particular selected application domain.
Learning outcomes
The general goal of this course is extension of knowledge of a programming language in a particular area of expertise based on the particular seminar group. Each seminar group will define its own specific learning goals.
Syllabus
  • The concrete content of the course depends on the individual thematic groups which are listed in Teacher's information area.
Literature
  • Literatura dle tématické skupiny.
Teaching methods
In lectures, the students create programs in given area, usually one per week, finishing it as individual work. Lectures contains necessary theoretical introduction. Remaining time is devoted to solve practical programming problems with employment of related development tools.
Assessment methods
During the whole semester, student will undertake several programming homework and/or a project. The amount of homework and final evaluation criteria are specified by each tematic group.
Language of instruction
Czech
Further comments (probably available only in Czech)
Study Materials
The course is taught each semester.
Teacher's information

The groups/topics for a given semester will be announced via email before the start of seminar group enrolment and they will be filled to this page.

Currently, we know of the following topics for spring 2023:

  • Programming in Perl language (Roman Lacko, Czech) – the main goal is to teach basics of Perl language, demonstrate proper usage and good practices. The teaching is spread over the whole semester (2 hours/week).
  • Binary exploitation (Milan Patnaik, English, 4 weeks intensive) – The group will cover basics of reverse engineering of binaries, writing exploits including Return Oriented Programming (ROP) and microarchitectural attacks (Meltdown, Spectre). The teaching will be given in English language and will have form of a condensed intensive training during 4 weeks (6-8 hours/week).
  • Example topics: Image processing, Applied cryptography and secure programming, Systems programming in Linux, Implementing an interpreter in C++, Efficient programming, Implementing a small OS kernel, Binary analysis and disassembly.

The course is also listed under the following terms Autumn 2010, Autumn 2011, Autumn 2012, Autumn 2013, Autumn 2014, Autumn 2015, Spring 2016, Autumn 2016, Spring 2017, Autumn 2017, Spring 2018, Autumn 2018, Spring 2019, Autumn 2019, Spring 2020, Autumn 2020, Spring 2021, Autumn 2021, Spring 2022, Autumn 2022, Autumn 2023, Spring 2024.
  • Enrolment Statistics (Spring 2023, recent)
  • Permalink: https://is.muni.cz/course/fi/spring2023/PB173