Files
website/guide/semesters/semester3.md
T

67 lines
4.5 KiB
Markdown

<!--@include: ../../notice.md-->
# Semester 3
Semester 3 is an interesting semester in terms of the courses, ranging from well taught (Analysis II and TI) to atrocious (NumCS).
The same applies also to Semester 4, but the courses there are easier for many people.
## Numerical Methods for Computer Science (NumCS)
This is about as bad of a course as courses ever really get.
::: details The rant about the course {closed}
The course was entirely reworked for HS2025, where I took it, switching from C++ and Eiger to Python with NumPy and SciPy,
as well as changing the course structure and curriculum pretty significantly. The former of which really is an improvement,
as most data science happens in Python using NumPy. However, since the professor is from the Maths department teaching a CS course,
you can kinda see where this is going.
While the content is interesting, the poor teaching really made this course a chore.
Due to this, many people have stopped attending the lectures and simply went to the exercise classes, where TAs were working hard to explain the content in a more approachable way.
The weekly CodeExpert exercises also were a massive chore, with it not rarely taking longer to understand what the task was than implementing it,
due to the very poor way in which things were phrased. This is one of the few cases where using AI is absolutely essential, as it can save you so much time
cutting out the paraphrasing of the assignment.
The script also either suffers from poor language or from being "sloppified", since he used Google Gemini to correct the grammar.
This more often that not lead to swallowed equations, turning the whole script into a big mess.
:::
Thus, to make your life as easy as possible in this course:
- Use AI to rewrite the assignment's description if you don't understand the task within a few minutes (DON'T let it solve the task tho!)
- Skip the lectures after the first week if you still have to go through everything again to understand it
- Absolutely *always* go to an exercise class. Switch TAs quickly if your initial one doesn't do a good enough job for you
- Know that the exam was very easy for us (there is a chapter on the exam in my summary/script)
Finally, I want to mention here that I together with a friend have written an entirely new, much shorter script for the course.
It covers pretty much everything that is needed to pass this course, combining the lecture notes, script and notes from our TA (Nils Müller) into a single
script. It is available on ComSol, or on the [Summaries Repo on GitHub](https://github.com/janishutz/eth-summaries/blob/main/semester3/numcs/numcs-summary.pdf).
## Analysis II
This course is pretty much your box-standard, well-taught maths course at ETH.
Not much else is to be said other than do your practice for the exam and you should be fine.
## Systems Programming and Computer Architecture (SPCA)
This course, while not *technically* bad is very underwhelming. The topic frankly is too broad for just a seven credits one semester course,
which also doesn't help it much. Don't however be concerned that it would be very hard, it isn't.
Having a good understand of many of the concepts taught in DDCA certainly won't hurt in this course.
You will be learning to program in C, but not *really*. This is the primary problem with the course:
There is no incentive for you to do the exercises (which in fairness, are pretty cool to do), but so many great opportunities for making the course great were left on the table.
To pass this course, you don't need to solve any of the tasks really, though they certainly do help.
Simply practice writing C a bit and you're good pretty much.
This you can do by solving old exams, or doing your own little project (or doing some Advent of Code tasks in C).
## Theoretical Computer Science (TI)
By far the most unique course this semester, it is known for having a mid and endterm exam, which, if passed on average makes you pass the entire course.
Yes, you heard that right, if you pass these, you won't have to do the session exam!
TI is a lot about learning to do certain kinds of proofs in a certain way.
You learn that automatically by solving the exercises that you need to hand in weekly.
If you achieve more than 50% of the points over the sheets prior to each midterm, you are allowed to participate in them.
The exercise classes are also typically taught well, so the amount of effort required for this course is pretty low, apart from the weeks before each midterm.
To pass, solve a few old exams for each of the midterms and make sure to always hand in your exercise sheets!