Lecture
Informatics I: Introduction to Computing for Chemists
Prof. Philippe H. Hünenberger / HS25
Fall semester 2025 (HS25)
15 September – 19 December 2025
Lecture
Thursdays, 08:00-08:45 + 08:50-09:35 hrs, HIL E3 , ETH Hönggerberg (14x2 hours); lecture No 529-0001-00
Participants
First-semester students BSc Chemistry or Chemical Engineering + third-semester students BSc Interdisciplinary Natural Sciences (Biochem.-Phys. option) or Chemical Biology
Lecturer
Prof. Dr. Philippe H. Hünenberger, HCI G233 , tel. 25503, , www.csms.ethz.ch
Language
The lecture is given in German, but all the written material, including the lecture slides and exercise scripts, is entirely in English
Goal
Provide the students with a starting package concerning the (nowadays very important!) computational aspects of natural sciences; more precisely, the goals of the course include:
- Acquiring a basic knowledge of computer hardware (data representation and processing, computer architecture, data communication and networking)
- Acquiring a basic knowledge of computer software (operating systems and programming languages)
- Learning to work with the UNIX operating system (prominently used in sciences!)
- Learning to program in Python (focusing on the principles of programming rather than on the advanced features of Python itself)
- Understanding basic algorithms (e.g. sorting, searching and numerical algorithms) and algorithmic strategies
- Understanding how algorithmic and programming choices influence computational accuracy and efficiency
- Acquiring a perspective on the applications of computers in chemistry (representation of chemical structures, databases, molecular simulation)
lecture | week | date | theme | exercise |
---|---|---|---|---|
1 | 38 | 18.09.2025 | Introduction / UNIX | - |
2 | 39 | 25.09.2025 | UNIX / Data Representation | 1S |
3 | 40 | 02.10.2025 | Data Representation / Data Processing | 1T |
4 | 41 | 12.10.2025 | Python Part 1 | 2S |
5 | 42 | 16.10.2025 | Python Part 2 | 2T |
6 | 43 | 23.10.2025 | Python Part 3 | 3S |
7 | 44 | 01.11.2025 | Python Part 4 | 3T |
8 | 45 | 30.10.2025 | Exact Algorithms | 4S |
9 | 46 | 13.11.2025 | Numerical Algorithms | 4T |
10 | 47 | 20.11.2025 | Algorithmic Strategies | 5S |
11 | 48 | 27.11.2025 | Hardware / Network / Databases | 5T |
12 | 49 | 04.12.2025 | Computational Chemistry | 6T1 |
13 | 50 | 11.12.2025 | Special Topics (buffer) | 6T2 |
14 | 51 | 18.12.2025 | Correction Sample exam / Exam information | 7 |
Lecture number, calendar week, date, theme, and exercise number of the exercise in progress during this week
Lecture notes
- A script of the lecture slides (student version) will be distributed at the first lecture as a booklet (pdf also available in the documents page); this script corresponds to the lecture slides of the previous semester, minus most of the "fun" slides and all of the answers to thinking questions [IMPORTANT NOTE: I may not be able to distribute a lecture script (booklet) at semester start in HS25 (as I usually do) - in which case students will have to download the lecture pdf's weekly from the web page)]
- The slides corresponding to the lecture as given (including "fun" slides and answers to thinking questions) will be posted on this site after each lecture (pdf in the documents page)
Exercises
See the exercises page on this site
Sample examination
- At the last lecture (sample examination), the exam of the previous summer session will be solved "interactively" by the lecturer and students
- The sample-exam problem statement will be made available to the students about two weeks in advance, for students who first would like to try on their own (recommended; pdf in the documents page).
- The sample-exam solution will be posted after this last lecture (pdf in the documents page)
- The sample-exam is for self-training (it is not corrected/graded by the assistants and does not count as an exercise)
Examination
- IMPORTANT NOTE: Starting from the fall semester of 2025, the programming language taught will change from C++ to Python. It will be possible to take exams in spring 2026, fall 2026, and spring 2027 in either Python or C++. However, starting from the fall exam of 2027, the exams will be conducted exclusively in Python.
- The duration of the examination is two hours
- The problem statement (Angabe) are provided both in German and in English
- Your answers can be written either in German, in English or in French
- No material is permitted besides pen and paper (possible exception: a dictionary)
- No admission condition (Testat) is imposed
- Since the exercises on the computer do convey and test essentially different skills as those being conveyed during the lectures and tested at the written exam, the results of the exercises are taken into account when evaluating the results of the exam (obligatorisches Leistungselement). More precisely, the average of your best five exercise grades will determine 12% of your final exam mark (0.72 points). In case of repetition of the exam, the exercise marks from a previous semester can be taken over.
- Complete previous exams by Prof. Hünenberger (from spring 2014 onward) are available (including problem statements in German and English as well as a sample solution; pdfs in the documents page; one recent exam may be temporarily removed and used as sample examination); it is highly recommended to use this material to prepare for your exam, but unwise to base your preparation exclusively on this (the scope of the examination encompasses the entire content of the lecture and of the practical exercises) [IMPORTANT NOTE: all the previous exams until spring 2025 are for C++ instead of Python]