NUS CEG: Year 1 Sem 2
Dec 19, 2021

NUS CEG: Year 1 Sem 2

This post was written in hindsight so it's gonna be written in the past tense.

Modules taken:

1. CS2040C: Data Structures and Algorithms

  • Lecturer: Prof Ho Lun Cheng (Alan)
  • Difficulty: Medium
  • Grade Obtained: B+

Assessment Weightage (forgot the percentage):

  • 4 Programming Assignments
  • Finals
  • Practical Exam
  • Visualgo Quizzes

Review:

This module teaches you how to create and implement basic data structures and algorithms in C++. Went into this module expecting the worst after the horror show of CS1010 but this was honestly not that bad. Prof Alan really explained the concepts clearly, using really good analogies to make an otherwise dry topic enjoyable to learn. Unlike CS1010, this module focuses more on the implementation of your code instead of getting your end result correct which makes the learning experience much more meaningful.

Tips for the average/struggling CS2040C student:

  • During the PE,
  • Practice with Kattis.
  • Try to code out every data structure and algorithm covered by yourself

2. CG1112: Engineering Principles and Practice 2

  • Tutor: Prof. Boyd Anderson
  • Difficulty: High
  • Grade Obtained: B

Assessment Weightage (forgot the percentage):

  • Project
  • 2 graded quizzes
  • Project Report

Review:

This module requires a lot of self-learning, especially with the project where you'll have to learn how to work with ROS (a linux-based robotics operating system) to read and display data from the lidar. The quizzes also assess us in kind of a weird way since they test you on certain concepts learnt from the labs and how well you navigate the documentation for the lidar.

Anyway, I spent long hours on the project figuring out ROS and debugging the robot. Learning and understanding bare metal programming was also pretty difficult.

3. EE2026: Digital Design

  • Lecturer: Prof Alioto and Prof Chua Dingjuan
  • Difficulty: Medium
  • Grade Obtained: B+

Assessment Weightage:

  • 4 lab assignments: 25%
  • Project: 35%
  • Midterm quiz: 20%
  • Final quiz: 20%

Review:

This mod covered number systems, boolean logic, combinational logic, sequential logic and how to desing finite state machines. This module also introduced us to Verilog, a hardware description language which happens to be a pain to code in. Anyway, the theory part of the module isn't difficult. However, the labs and the project are pretty difficult and can be extremely time consuming (CS1010 flashbacks). Thank goodness the lab assignments increase in difficulty level and there are only 4 of them.

For the project, you are expected to pair up with a group mate and develop an entertainment system with a microphone and screen connected to your FPGA board. The project can be extremely time consuming if you wanna make it good since coding with Verilog is extremely tedious compared to using any software languages. (eg: you'll have to hard code each pixel on the screen manually) I'm actually not too sure if there are any libraries out there for Verilog but the documentation and online help for Verilog is pretty poor in my opinion (could be because the situation is highly dependent on your hardware).

4. MA1508E: Linear Algebra for Engineering

  • Lecturer: Mr Christian Go
  • Difficulty: Medium
  • Grade Obtained: B+

Assessment Weightage (forgot the percentage):

  • 4 Tests
  • Weekly quizzes
  • Graded homework
  • Project
  • Finals

Review:

This module was super abstract and dry. It really takes some time for you to visualise the vectors. However, Christian is a friendly and helpful lecturer who teaches us the concepts with examples so that we can see how all the theorems are used. In addition, the weekly quizzes and graded homework really force you to be consistent and to revise often. As long as you're not falling behind, this module is actually doable.

5. UTC1001F: Bioethics in the 21st Century

  • Lecturer: Prof. Fong Yoke Sim
  • Difficulty: Easy
  • Grade Obtained: Pass/Fail

Review:

This module is the junior seminar I had to take as part of the U-town College Program. It was pretty interesting learning about the various ethical issues we face in the modern world with biotechnology and it's definitely a breath of fresh air from the other modules.

Jonathan Mui

Jonathan Mui

I am a Computer Engineering (CEG) Student studying at the National University of Singapore (NUS). I only decided to make this blog in my 1st semester of year 2 so some of these posts may be back dated.

Ask me anything or leave a comment

Related Posts

Categories