News
Re-exam inspection and future coursesWritten on 10.10.24 by Sven Rahmann There is an opportunity to inspect your re-exam results on Tuesday, 15.10., berween 14:00 and 15:30 in E2.1, 1.06. Unfortunately, only 4 out of 17 passed this time. This is a very low number, especially concerning the fact that the exam only checks elementary Python and the course does not even… Read more There is an opportunity to inspect your re-exam results on Tuesday, 15.10., berween 14:00 and 15:30 in E2.1, 1.06. Unfortunately, only 4 out of 17 passed this time. This is a very low number, especially concerning the fact that the exam only checks elementary Python and the course does not even touch complex topics like concurrency, asynchronous functions, metaclasses, static type verification, etc. This will change in future editions of the course: The study regulations are in the process of being changed to make the programming course a graded 8 CP course. When they will go into effect is not known. Perhaps the next programming course is already under the new regulations, perhaps not; this depends on the speed of the lawyers and administrators. If you have passed the programming course, it is recommended to stay in the old regulations (you are protected as long as you are studying within regular time limits). However, I also want to say that if you find the programming course very stressful and/or difficult, the Master program in Bioinformatics here may not be the right thing for you, and we made a mistake during admissions. Typically, the selection commitee is careful to check for existing programming experience. But this is only on a paper transcript and we cannot see actual skills. This programming course is (1) a refresher, (2) an opportunity to learn another language, and (3) a way to get some practical experience during the project(s). The exam mainly tests code understanding (because programming on paper is hard), which is a key professional skill and was practiced with the quizzes during the semester. |
Re-exam TODAY in the GHHWritten on 08.10.24 by Johanna Schmitz The Python re-exam takes place today at 15:00 - 18:00 in E2.2 (Günther Hotz lecture hall). It is recommended to arrive 5-10 min in advance to find a seat and get installed.
|
Re-exam registrationWritten on 24.09.24 by Sven Rahmann Please remember that the registration for the Python course re-exam is only possible up to 1 week before the exam. This means registration ends on Tuesday 01.10., which is in one week from today. No late admissions will be possible. If you intend to participate, please register now in LSF. Note that… Read more Please remember that the registration for the Python course re-exam is only possible up to 1 week before the exam. This means registration ends on Tuesday 01.10., which is in one week from today. No late admissions will be possible. If you intend to participate, please register now in LSF. Note that the exam number is 10085. |
Exam inspection and Re-ExamWritten on 12.08.24 by Sven Rahmann Due to popular demand, the re-exam has been moved to the afternoon (15-18) on the same day 08.10. The re-exam will thus take place: Tuesday 08. October, 15-18, in room 0.01 (in E2.1). You may inspect the results of your first exam next Monday 19.08. between 10 and 12 in E2.1, 1.06. Note that… Read more Due to popular demand, the re-exam has been moved to the afternoon (15-18) on the same day 08.10. The re-exam will thus take place: Tuesday 08. October, 15-18, in room 0.01 (in E2.1). You may inspect the results of your first exam next Monday 19.08. between 10 and 12 in E2.1, 1.06. Note that grade changes from not passed to passed are extemely unlikely, as we have carefully looked at all edge cases. |
Exam ResultsWritten on 31.07.24 by Johanna Schmitz Dear all, your points and passing status is now entered to your personal status page. We will let you know soon when the exam review will take place. Kind regards, |
Exam Time and PlaceWritten on 29.07.24 by Sven Rahmann The Python exam takes place tomorrow at 09:00 - 12:00 in E2.1 (CBI) in room 0.01. It is recommended to arrive 5-10 min in advance to find a seat and get installed. Because the room wil be quite full, we may use different variants of the problems to make sure no copying from other students occurs (or… Read more The Python exam takes place tomorrow at 09:00 - 12:00 in E2.1 (CBI) in room 0.01. It is recommended to arrive 5-10 min in advance to find a seat and get installed. Because the room wil be quite full, we may use different variants of the problems to make sure no copying from other students occurs (or would be immediately detected). |
Python tutorials cancelled this weekWritten on 23.07.24 by Sven Rahmann Dear all, due to illness, the Python tutorials must unfortunately be cancelled this week. The lecture will take place as usual and will be an opportunity to ask questions. Also, some usefull tools will be introduced. Please remember that the (un)registration deadline for the exam next week is today. |
Exam Registration (Deadline: Tuesday!, exam number 10085)Written on 19.07.24 by Sven Rahmann Dear all, it is time to register for the Python final exam on Tuesday 30.07.2024. The exam number is 10085. The registration deadline ends one week before the exam date! (No exceptions. Really! No exceptions.) This means, you can register or unregister in LSF until Tuesday 23.07. Because… Read more Dear all, it is time to register for the Python final exam on Tuesday 30.07.2024. The exam number is 10085. The registration deadline ends one week before the exam date! (No exceptions. Really! No exceptions.) This means, you can register or unregister in LSF until Tuesday 23.07. Because the final project part 3 may not be completely graded by then (deadline was extended to Sunday), we recommend the following: If you believe that you may qualify AND you want to take the exam, then please register now. In case that you fail the project, we will cancel your registration for you. You will not receive a fail grade if you do not qualify. Note that we cannot register you after the deadline; we can only cancel existing registrations. And again, there is absolutely no way of registering late.
|
No lecture on July 16 + Project deadline extension to July 21.Written on 09.07.24 by Sven Rahmann There will be no Python course lecture on July 16. The next and last lecture will be on July 23. Also, the project (part 3) deadline will be extended to Sunday July 21, 23:55. |
Tutorials this weekWritten on 08.07.24 by Johanna Schmitz Dear all, since I am on a conference, there will be no tutorials this week. The next tutroial is planned to be on Wednesday, 17.07, 14:00. Best, |
Points project part 2Written on 05.07.24 by Johanna Schmitz Dear all, the points for the project part 2 are available and you can find the feedback as your submission for Project part 2 feedback. The possible points are
Dear all, the points for the project part 2 are available and you can find the feedback as your submission for Project part 2 feedback. The possible points are
If you got 0.5 points you don't need to modify your code in estimate_afm.py, but the problem should be solved for part 3. In some submission the --show option did not work as expected, but since this does not effect part 3, it is not mandatory to fix this issue. If you got 1 points, this means that your method worked on the provided samples. However, since the complete data is more complex and noisy, it might not work on all samples, in which case you also need to revisist your code. Here are some more general remarks that are also important for part 3:
Regarding assignment 06, please use the most recent tests, since there was a mistake in the first version. |
Project Part 3 now onlineWritten on 04.07.24 by Sven Rahmann Dear all, part 3 of the project is now online. For simplicity, you can download preprocessed measurement series as a pickled Python dict. A partial program (that loads the data) is also available. Please read the slides with the task. Writing the streamlit app (a basic version) should be simple, so… Read more Dear all, part 3 of the project is now online. For simplicity, you can download preprocessed measurement series as a pickled Python dict. A partial program (that loads the data) is also available. Please read the slides with the task. Writing the streamlit app (a basic version) should be simple, so please spend your time on robustifying your slope estimation. It should work at least for all 128 * 128 series-0 measurements. Good luck! (Deadline is in 2 weeks from today.) |
Project Part 3 delayedWritten on 03.07.24 by Sven Rahmann Unfortunately, part 3 of the project turned out to be more difficult than we anticipated, and until we have reduced its complexity, it will be delayed. We hope to publish. the task tomorrow (Thursday). You will have the full 2 weeks to work on it. We apologize and suggest you work on the other… Read more Unfortunately, part 3 of the project turned out to be more difficult than we anticipated, and until we have reduced its complexity, it will be delayed. We hope to publish. the task tomorrow (Thursday). You will have the full 2 weeks to work on it. We apologize and suggest you work on the other assignments in the meantime. |
Project Part 2Written on 02.07.24 by Johanna Schmitz Dear all, the deadline for the project part 2 and assignment 05 is today. Best, |
Evaluation of the CourseWritten on 26.06.24 by Sven Rahmann We have added two evaluation links to the Materials page (on top). Please evaluate both the course and the tutorials. Deadline is 17.07. Your evaluations, especiall free text comments, help to improve future editions of this course. Thank you! |
Results project part 1Written on 20.06.24 by Johanna Schmitz Dear all, the results and feedback for project part 1 are now online in the CMS. The feedback is visible in the submission section (the message You did not submit in time. The submission is closed. is the same for everyone). These are the possible points: - 1 point: you passed part 1 and… Read more Dear all, the results and feedback for project part 1 are now online in the CMS. The feedback is visible in the submission section (the message You did not submit in time. The submission is closed. is the same for everyone). These are the possible points: - 1 point: you passed part 1 and everything was fine, except some minor things like plot titles, empty legends, etc. - 0.5 points: you passed but there are major revisions required so that you will be able to pass part 2, e.g., some missing plots, etc.. Please solve these problems directly in the new file estimate_afm.py - 0 points: you failed, because you either did not submit on time, the code did not work or you plagiarized If you got zero points, this means that you failed the project and cannot qualify for the exam anymore. We also ran plagiarism checks for the project and the old assignemnts and you can see on your personal status page if you passed the plagiarism tests or not. Remeber that it is not allowed to copy solutions from other students, ChatGPT or other internet sources. If you have any further questions, please come to the tutorials. |
Important informationWritten on 18.06.24 by Sven Rahmann Hello everyone, here are a couple of important bits of information! 1. Please be sure to submit project parts ONLY via your git fork by commiting and pushing. We will automatically download and test your code on the sample.txt file. If it doesn't work (or we cannot get your code automatically), you… Read more Hello everyone, here are a couple of important bits of information! 1. Please be sure to submit project parts ONLY via your git fork by commiting and pushing. We will automatically download and test your code on the sample.txt file. If it doesn't work (or we cannot get your code automatically), you have a problem. Please follow the instructions very carefully (and read the last news, too). 2. Today, part 2 of the project is released. Please continue from your old codebase and implement the new funcitonality. Please COPY the final part1 file into `estimate_afm.py` and ONLY work on that for part 2. Remember: We will auto-download `plotafm.py` to test it, so it should always be in working condition. Do not modify your part 1 solution further. 3. One of you pointed out that numpy 2.0 was just released (after many years of development). Please DO NOT yet switch to numpy 2.0 but continue with the 1.26 branch. There may be some early bugs and incompatibilities, and we may run into problems when testing code (with our version 1.26) that was developmed for 2.0; so please do not update numpy. 4. As usual, there is also a new weekly quiz (on numba). Happy coding! |
Project submissionWritten on 17.06.24 by Johanna Schmitz Dear all, the deadline for assignment 4 and project part 1 is tomorrow. For the assignment, the submission is as usual in the CMS. The submission for the project is in your git repository. Please follow the instructions in the project description and create in git a new folder project-afm/… Read more Dear all, the deadline for assignment 4 and project part 1 is tomorrow. For the assignment, the submission is as usual in the CMS. The submission for the project is in your git repository. Please follow the instructions in the project description and create in git a new folder project-afm/ and push the two files sample.txt and plotafm.py (with your changes) to this directory (and not project_01 with the partial file).
|
Error in Quiz 08Written on 06.06.24 by Johanna Schmitz The current quiz 08 has a mistake in question Q9 (there are several correct answers, but you can select only one). Please choose the FIRST correct answer. |
Assignment and Programming ProjectWritten on 04.06.24 by Sven Rahmann Tomorrow (Wednesday), a new assignment AND part 1 of the programming project will go online (at 6am). Please be sure to read both and submit both on time. The programming project will consist of several parts; in the end, the whole application must work and produce reasonable results. Part 1 is… Read more Tomorrow (Wednesday), a new assignment AND part 1 of the programming project will go online (at 6am). Please be sure to read both and submit both on time. The programming project will consist of several parts; in the end, the whole application must work and produce reasonable results. Part 1 is relatively easy: parsing the actual data from a text file and plotting it. Data and a stub Python file are provided as well. |
Exam Dates and TimesWritten on 30.05.24 by Sven Rahmann The written exam for the Python Course takes place on Tuesday 30.07.2024, 09:00 - 12:00. This is an ungraded exam (pass/fail only), but since in the future, the course will be graded (new study regulation), you may optionally apply for a graded exam IF you plan to switch to the new… Read more The written exam for the Python Course takes place on Tuesday 30.07.2024, 09:00 - 12:00. This is an ungraded exam (pass/fail only), but since in the future, the course will be graded (new study regulation), you may optionally apply for a graded exam IF you plan to switch to the new regulations. The re-exam takes place on Tuesday 08.10.2024, 09:00 - 12:00. The rooms are yet to be determined, probably E2.1, 0.01. |
Points Assignment 02Written on 23.05.24 by Johanna Schmitz Dear all, the points for assignment 02 are now entered in the CMS. Here are some general remarks for all assignments: - Only submit your function implementations and do not include function calls. If you include function calls with local files we cannot run your code. - Your submission must be… Read more Dear all, the points for assignment 02 are now entered in the CMS. Here are some general remarks for all assignments: - Only submit your function implementations and do not include function calls. If you include function calls with local files we cannot run your code. - Your submission must be self-contained. All functions that you need must be implement in the file. For example, imports from old assignments do not work. - If not stated otherwise, all tasks should be solvable in a few seconds with a naive approach. We therefore timeout the tests if your code takes very long (after around 30s per test). For assignment 03, there was an update to one of the test, so please update your fork again. |
Lectures move to E2.1, 0.01Written on 21.05.24 by Sven Rahmann Dear all, from now on, the Python course lectures will always take place in E2.1, seminar room 0.01. The tech problems in the GHH are just too annoying. Also, the attendance in class is small enough to move to a smaller room. Thank you for your understanding. |
RecommendationsWritten on 14.05.24 by Sven Rahmann Good morning, please make sure your code runs from the terminal. IDEs sometimes change your code or run it under conditions that aren't reproducible when do automated tests. Your code must run in the terminal with pytest and pass the tests. You can and should try it out. Also, if you have not read… Read more Good morning, please make sure your code runs from the terminal. IDEs sometimes change your code or run it under conditions that aren't reproducible when do automated tests. Your code must run in the terminal with pytest and pass the tests. You can and should try it out. Also, if you have not read the Missing Semester info or done the git/bash/shell tutorials, etc., you'll have problems in the future.
|
Points Assignment 01Written on 13.05.24 by Johanna Schmitz Dear all, the points for assignment 01 are now available in the CMS. If you have any questions please come to the tutorials this week, where we will also discuss the solution (Tuesday 15:15 or Wednesday 14:15). |
Reminder Assignment 01Written on 07.05.24 by Johanna Schmitz Dear all, just a quick reminder that the submission for assignment 01 is today, at 23:59 (in CMS). Please also note that submitted files with syntax errors, indentation errors, etc., will results in zero points for all tasks. |
Assignment 00 - Passsing StatusWritten on 29.04.24 by Johanna Schmitz Dear all, we decided to change the passing status of assignment 00. You can find your passing status at your personal status page. Now everyone passed who submitted a "reasonable" solution for task 2 in the CMS and correctly adjusted the README. The assignment was supposed to be very easy with… Read more Dear all, we decided to change the passing status of assignment 00. You can find your passing status at your personal status page. Now everyone passed who submitted a "reasonable" solution for task 2 in the CMS and correctly adjusted the README. The assignment was supposed to be very easy with simple print statements, you shouldn't have added any additional spaces, tabs, typos or require user input in your code. For the following assignments, we will only grade your assignments based on our automatic tests, so you will get no points if you do not conform with the specified format that you can test yourself with the provided example tests. |
Quiz 02 and assignment 01 availableWritten on 24.04.24 by Johanna Schmitz Dear all, the second quiz and the next programming assignment is now available in the CMS. Due to some problems with the CMS, the quiz was not available this morning, so everyone who did the quiz before 11:50 has to redo the quiz. For the programming assignment, we added a template file and… Read more Dear all, the second quiz and the next programming assignment is now available in the CMS. Due to some problems with the CMS, the quiz was not available this morning, so everyone who did the quiz before 11:50 has to redo the quiz. For the programming assignment, we added a template file and tests to the git repository. For more information about testing in python, extra slides are now available in the tutorials section. |
Quiz 01 and assignment 00 onlineWritten on 17.04.24 by Johanna Schmitz Dear all, you can start the doing the first quiz online at your personal status page, you have time to complete it until Friday, 19.04. 23:59. In addition, the mandatory assignment 00 is online, you can find it in the Materials section. Please note, that the final submission of the programming… Read more Dear all, you can start the doing the first quiz online at your personal status page, you have time to complete it until Friday, 19.04. 23:59. In addition, the mandatory assignment 00 is online, you can find it in the Materials section. Please note, that the final submission of the programming assignments (.py file only) is via the CMS, but you should still work on the assignment in your forked git repository. You will need the git repository mainly for the two programming projects. We also added a link to the MIT missing semester if you are unfamiliar with git, shell or other basics that we highly recommend you work through this week. |