Welcome to Computer Engineering

| ⌛ 6 minutes read

📋 Tags:


Welcome!

Hello and welcome to CG1111A! 🙌

Congratulations on getting into Computer Engineering! 🎉

It was NOT easy getting here. Our IGP is pretty darn high.

Your academic career will see you touch MANY aspects of the computing world. You will explore a fair bit of the Computing world, from the lower levels e.g. Logic gates, transistors… ​ of abstraction to the higher levels e.g. Algorithms, machine learning ​.

Your first year here will be as fulfilling as it is challenging. The road ahead may feel scary and daunting… Discrete structures? Algorithms? Linear Algebra? Forget all that.

Take it one step at a time. You will be fine.

And now, introductions and admin matters.

This TA

Chances are, you’re in my lab section (Lab 1 Monday, Lab 2 Friday). I’m your Lab Teaching Assistant, Nicholas.

If you’re not my student but take CG1111A, I have no idea how you found this. You are more than welcome to browse this website! In fact, do share this with your fellow CEG mates if you find it useful.

I’ve taught this module once last AY and I regularly help the ECE department out with open house labs.

I bake, I climb, I <3 cats, and I am addicted to coffee. If you know these you basically know me 😫

This Course

The teaching staff should have shared with you what CG1111A is all about.

Basic information like grade breakdown and syllabus are well documented on Canvas Under home/Course Overview/Assessment ​ and the initial briefings.

Don’t fret - if you study consistently, this course is very manageable! 👍

Here are some administrative details that may be useful to you:

Absentee-ism

If you cannot attend a lab session, please do the following:

  1. Drop a courtesy text in the telegram group as well so that I know who to expect during the lab sessions and provide help if needed.
  2. EMAIL the lab’s professor stating why and CC me in the email @ nicholas.yek@u.nus.edu.

If the lab session is graded, please let your lab’s professor know if you can attend a make-up lab session. Make-up sessions are not guaranteed. Please stay healthy!

Finishing Labs early

If you finish the lab early, as long as there are no group components, you are allowed to leave the lab and run off to your next appointment (or afternoon nap). For graded labs, I highly recommend staying for the whole duration and double checking your values and notes.

Attire and other stuff

  • No food and drinks
  • Wear covered shoes. This is Lab policy1. Unlike EG1311, long pants are not required.
  • Bring your own laptop and phone charger. 3hrs lab will drain your phone…
  • Bring a jacket – especially if you’re particularly sensitive to the cold
  • Recommendation – bring a calculator & tablet for writing (or pen and paper if you’re analog like me). This will be useful for mathing things out and whiteboarding. Those are not really possible with just a laptop.

Learning Journal Matters

In previous years, many students have come to me being worried about what the “learning journals” need to look like. The guidelines are in files. But generally speaking, it’s really just your own notes for the course. It will not be graded.

This is an opportunity for you to think about how you want to organize not just CG1111A but also all your NUS related notes and knowledge. It will come in useful when you least expect it.

Useful Resources

Here’s what I wished seniors told me when I was starting out.

Everything Computer Science

NUSHackers have collated a living document containing all sorts of useful information for all things Computer Science. Go take a look!

I highly encourage going for their Friday Hacks as well. Fun talks!
(Disclaimer: I am not a coreteam member, but I think their talks and workshops are really great avenues to explore all things software!)

Resistor Calculator

Go to your app store and install a RCC Calculator (Resistor colour band calculator). No links provided because Android and Apple both have their own equivalent.

Internship stuff

Project Intern Telegram Group - Tips and tricks to getting that n=0 and n+1 internship.

Frequently Asked Questions (Non-CG1111A)

Here’s a bunch of FAQs that I’ve compiled over the years that I think are useful for any CEG freshie.

Operating System

If you use MacOS, especially if your machine has an M1 chip… you may have difficulty running CEG software2 down the road due to the architecture.

Windows is the tried and tested OS (by virtue of almost everyone using it).

Linux is a better OS for learning and developmental purposes. I highly recommend installing Linux on your computer, especially at the start of the semester when you can afford messing up your data. Do note that exam software like Examplify CANNOT be run on Linux. You will need to dual-boot.

Calculator

If you come from the JC track, your graphic calculator (GC) will suffice.

HOWEVER (this applies to everyone), in courses you will take Year 2 onwards, exams e.g. CG2023 ​ will often require non-programmable calculators. Seeing as how you can play games like flappy bird and doom on your GC (especially Texas Instrument calculators), you probably need to invest in a non-programmable calculator in the long run in NUS.

Flappy bird on Ti-84
DOOM on a GC. src: vice.com

This is NOT A MUST AND THIS IS A SUGGESTION - the calculators sold at NUS COOP (inside CLB) get the job done well. The Casio fx-991Ex model they sell is capable of imaginary number arithmetic which is extremely useful for CG1111A and CG2023, where imaginary number manipulation is a bread and butter affair.

Course planning

Plan NOW. If you FEEL you want to have a second major/minor in anything, you need to start thinking about when/how you want to clear the pre-requisite modules. I have peers in Y3 needing to overload ungodly amounts of modules to clear their minor, or simply being unable to clear the requirements on time to secure their 2nd major/minor.

IDE

If you really don’t know where to start, just get visual studio code and call it a day. It comes with enough features and is simple enough. Explore other editors in your own time!

VSCode is able to integrate with Arduino as well! If you hate the Arduino IDE (I hate it), VSCode is perfectly able to run Arduino libraries with proper setup. The setup - maybe I will write about it in another article.


  1. I have seen students get denied entry to the lab before for violating shoe policy. ↩︎

  2. In EE2026, the Xlinix verilog software required for the course is not available for MacOS as of my understanding and cursory research as of writing. You will need to do your work using the Lab computers. ↩︎