Review of "3A"

2023-03-11

“3A” - semester abroad 🔎

Even though it’s a semester abroad, it would still be nice to do a review of the term, like in previous terms.

last-day-sem-1
Taken on the last day of classes, outside the SG building on campus.

Preliminary Information

Usually I insert a paragraph explaing course descriptions for computer engineering at Waterloo, but I guess now is the time to do the same for EPFL! This post will largely be taken from the perspective of an exchange student, so keep that in mind.

If you know what area of study you would mainly be taking on exchange, then you can go to the “study plans” on their website, checking both the Bachelor and Master cycles. (If you are exchanging in your 3A/3B term, chances are you will likely take at least one Master’s course, since those typically count as 3rd/4th year courses at Waterloo. In Computer Engineering, they usually are counted as TEs, or Technical Electives. The reason is that a Bachelor’s degree is only 3 years here, so a first year Master’s course is really a 4th year course, in theory!)

You can also use the search function at search.epfl.ch to search for specific courses based on the course code, name, or general keywords.

Courses

Course Selection

As an exchange student, you can pick courses from any section, though you are technically supposed to have a majority of your credits from the department you are officially exchanged to. There are certain restrictions on courses for exchange students (you will have to check the website), but one that is common to all students (I think) is that you cannot take more than one SHS/Management course each term.

Otherwise, free to pick! I think most exchange students try and take courses that are able to have credit transferred back to their home university, but there are also some who take courses of interest which can’t be transferred back. For CE specifically, you should have had a study plan of sorts already in place before your exchange with courses that have been approved by the exchange-course-transfer-coordinator (not the official title, but that’s what they are responsible for), so you likely will be picking from those courses.

As is usual, some course information can change that differed from your research (course you thought was offered in the Fall is now offered in the Winter, etc.), so be prepared for such changes.

Course selection takes place on ISA, the EPFL version of QUEST, and you should be able to figure that out quite well on how to add/drop courses. Check the academic calendar for any important deadlines!

Some notes:

  • I believe certain study plans are undergoing significant changes for the 2023-2024 year, which means course offerings could change, as well as the number of ECTS for courses, so some of the information I have here might be outdated
  • No one really checks if you have the prerequisite(s) for the course (if there are any), so it is up to you to decide if you have sufficient background to take the course. I think it would be best if you had at least some of the prerequisites, just because otherwise it will make the time in the course a lot harder (and probably less enjoyable), but it is up to you!
  • The equivalencies to Waterloo courses I listed below were specific to my exchange plan, and although were signed off on, they have not yet officially been transferred yet (that takes place after the exchange.) It is possible that you’ll get another equivalent course from the CS department for example, if you study CS.
  • For engineering, I believe they code the courses something similar to GENE 21Q, etc. So that might be what shows up on the transcript (not sure though.)

COM-208: Computer Networks

5 ECTS
Waterloo equivalent: 3B TE, ECE 358 (Computer Networks)

com-208-course
First time for me in an in-person class that was this big. I think we had over 300 students!

Course professor taught well, was kind, understanding, and friendly. The structure of the course means you’ll go through the different layers of a network (application, transport, network, link, physical) and study different parts of each layer. The “labs” in the course were unlike those at Waterloo—unmarked, usually done during the designated lab session, and can sometimes be exercise questions rather than an application-based lab. It is largely self-directed, and they release solutions afterwards.

The mark was largely determined by the midterm and final. There were different grading schemes, but at minimum the final was worth 54%, to a maximum of 100%.

Summary: good professor, course that made sense in its progression, study past midterms/finals is useful

CS-320: Computer Language Processing

6 ECTS
Waterloo equivalent: 3B TE, ECE 351 (Compilers)

sCaLA!

We used Scala for this course (which I had never seen before, but an EPFL professor invented it), which was a bit of a learning curve. Also had quite a few functional programming concepts, which as a CE student we did not take any courses covering that topic (that I remember.) The course had a midterm (30%) and no final, with the bulk of the grade focused on the labs (5 labs worth 10% each, then a final lab worth 20%.) The labs build on each other, as you develop a compiler for the Amy language (they also made this language for this course).

The content was pretty interesting (there was also some overlap from ECE 208), and the labs meant I got to meet some people more so than in some other courses. (Yay to burrito Wednesday!) The TAs were also very helpful for those of us who did not know any prior Scala 😅

food-truck
Wednesdays was working-on-lab day usually, and also getting a burrito from this food truck on campus.

Summary: Scala might be a bit of a barrier if you’ve never seen it nor dealt with functional programming before, but TAs are helpful. Content is interesting, it was nice to not have a final.

CS-323: Introduction to Operating Systems

5 ECTS
Waterloo equivalent: 3A Core, ECE 350 (Real-Time Operating Systems)

My cohort back home is currently going through ECE 350, so not sure how they are faring, but I think the lab situation was better here at EPFL than back home 😛

Although the lab situation might have been better here, I do think the course organization would have been much better at Waterloo (like a lab manual, clear instructions, communication with the professor and TAs, etc.) Maybe it was because they said they were slightly changing up the way the course was delivered this term, but overall it was a bit messy at times.

Regarding the labs: there were some initial issues with people using Apple Silicon, but that was fixed later. And everything could be done remotely and tested remotely, no need to spend some ✨quality✨ overnight time in E2.

Regardless, still an important course to take. I actually looked at the textbooks that we used at Waterloo in addition to the ones here at EPFL because well, it wasn’t always clear here 😅. For the grade distribution, was also lab-focused (two “quizzes”, 20% each, 10% weekly prep-questions (essentially free marks), 5 labs, 10% each)

The “quizzes” were later rebranded as midterm and final, weightings the same but dates changed, and we still don’t have a definite answer why, but that’s that 🤷‍♂️

Summary: course delivery could have been better (but maybe just a hiccup as they change things?), did get a better lab situation though. Textbook(s) were helpful to get what was going on.

ME-321: Control Systems + TP

4 ECTS
Waterloo equivalent: 3A Core, ECE 380 (Analog Control Systems)

Ah yes. Grading was that it was a final worth 100% 😬

The course was “standard” overall. I think as an ME course, the students were much more familiar with certain concepts than I was, but maybe that is just me.

The “TP” stands for “Travaux Pratiques”, so kind of like labs. They can be completed online, but you can also go into the lab to do them. Similar to COM-208, some of the weeks it would be just exercises instead of a TP, so you could work on that then too.

before-me-exam
Before the final, written in the SwissTech Convention Centre.

Passing the final (i.e. this course) was only by God’s grace, since I got some things but not others. Very thankful!

Summary: probably won’t be going into control systems (even though conceptually it is quite interesting!)

ENV-410: Science of Climate Change

4 ECTS
Waterloo equivalent: NSE, GENE 23Q (Topics for Natural Science Elective Courses Taken on Exchange by Computer Engineering Students)

As I mentioned earlier on, this is one of the “GENE 23Q” coded courses; I think if you take a TE it would be GENE 21Q for CE taking TE abroad, etc.

Professor and teaching staff were knowledgeable and friendly. This was a Master’s level course, and also had people from different academic backgrounds (business, engineering, environment, etc.) So not overly technical, and it covers broad areas but still going more in depth than I initially thought.

env-poster
Our poster, we actually placed 3rd in the conference for it! The hand is for size comparison, this was printed on the very large A0 paper

The grading breakdown was 50% final, 25% for 2 graded assignments, and then 25% for the poster + poster conference. The poster conference was something new for me, and got to do some graphic design 😎

Summary: A welcome change in pace from typical engineering courses, discussion on relevant topics to climate change, and opportunity to see what a poster conference is like.

French language course (summer intensive)

3 ECTS
Waterloo equivalent: depends

I took the course in the weeks before the Fall term started, and it was a nice way to remember some French things, learn about specific words in French-speaking Switzerland (natel = mobile phone, septante, huitante, nonante instead of soixante-dix, quatre-vingt, quatre-vingt-dix, etc.) The class in general was quite relaxed, and you get to meet some other students. Some are exchange students (Bachelor, Master), some are Swiss Germans, some are starting Master’s degrees.

For the Waterloo equivalent, it depends; a few of us that took it emailed our respective course-exchange-equivalency-advisors, and we all got some different results.

In terms of ECTS from the EPFL side too, even though the course was not taken during the Autumn semester, it still counts towards the term’s credit count. If you take a language course during the semester, it also counts towards the term’s credit count, but it does not show up on your transcript with the other courses, so you will need to request a separate attestation from the language centre upon completion of the course.

frenchcourse
Taken from this EPFL FAQ page, item 1.10

Summary: yay! If you don’t know any French, this could be very helpful. If you already know some French, then a nice refresher and getting to meet some other people.

Concluding Thoughts

Looking back, the term felt busy and relatively occupied with school, but I think that was part of the adjustment to different teaching structures and styles. Overall, a good term, especially for the first one! Got to make new friends, learn some new things, and get some Swiss education 😎

There are definitely many other aspects of the term that I did not discuss here, as this was largely a look at the school-side of things. Rest assured that those do exist!

See you soon :pencil2: