my dreams foretell this...

NUS CS Y2S2

It’s more than halfway over, WHAT? My mindset is shifting more and more towards preparing myself to land a job. It’s scary out there. But I’m pretty glad that I’ve landed an internship for this coming break despite applying preeetty late. I’ve got people to thank for that. Very much looking forward to getting some real SE experience, but I’ve got a taste of that this semester too.

CS3281, Thematic Systems Project I

i've been through some crises

CS3281 is an atypical mod not offered through CourseReg - you must apply through a form. The intake is also quite limited, at about 20pax. It’s handled solely by Prof. Damith (CS2103T), and it was my favourite module this go around!

It involves working in an open-source project, making real changes to real live projects with real consequences! I was working with MarkBind, a typescript-based static site generator targeted towards text-heavy websites like eLearning sites and documentation. The module itself is structured around maintaining and updating these projects while experimenting with AI tools and frameworks. I’ll make a separate post regarding my thoughts on these tools, as I believe they warrant a whole write-up.

I don’t think there’s a one-size-fits-all review of this mod, as it looks different based on which project you’re taking and your team. But I had a great experience with my mentor and teammates, and I believe we’ve made MarkBind a better application through our contributions and work. But this is just the start - CS3281 is a precursor to CS3282, where I’ll be working on the same project, but rather in a mentor role. There’s also other components to it, but I’ll get there when I get there.

There’s a lot to talk about, but I worked a lot on modernising the codebase. I migrated the whole project from CJS to ESM, did a JavaScript to TypeScript migration for a whole module of the project, and more. You can see my work done here. It was fun.

CS2109S, Introduction to AI and Machine Learning

this is still true

Cool mod. I’ve taken an AI module in polytechnic before, so this was a nice refresher and expansion on that. It starts of with “classical” AI (BFS/DFS/A*), then going on to “classical” ML with decision trees, logistic regression, and more, before finishing off with “Modern” ML - Deep learning, Unsupervised Deep Learning, Transformers.

The first half of the semester is a slog, though. The midterms were mostly okay, but I hated the A* search questions. They just felt like “gotchas” that didn’t really add much to the learning value of the course. The second half of the semester is much more interesting, and I especially enjoyed learning about transformers. They’re very interesting and almost simple concepts that are applied at an incomprehensible scale in terms of calculations.

The capstone project game on a simple grid

The workload is pushed up pretty high due to the capstone project. This iteration involved training an agent to perform well in a grid-based maze game. There’s two components - making the path-finder and training the image-detection algorithm. It took really long for me to perfect my image-detection model, but I must say it was immensely satisfying when I got one that worked well. Experimenting with model architecture, image augmentations, and even my image collection and labelling components was an experience that taught me a lot of things that weren’t in the lectures. But all this also means that it takes really long. My GPU was choking out.

And to be fair, they do warn you and give you time. The project is opened very early. It’s just that in my infinite wisdom I decided to put it off till later to pursue other things first. Regardless, after much time spent and one all-nighter, I was able to submit a solution that attained the maximum achievable mark.

Felt like I learned a lot through this module!

ST2131, Probability

why

I will never enjoy a math module. I may find it doable. I may even think the contents are interesting.

But I will never enjoy it.

DSA2101, Data Analytics Tools: Data Visualisation

more of this

A chill, practical mod where you’re mostly creating plots. This module used to be taught in R, but now uses python. So they taught libraries like Pandas, numpy, Matplotlib. Ones that were new to me was seaborn, plotly, and plotnine.

Midterms/Finals were open book which was WILD. I just downloaded all the documentation for these libraries using zeal, which was helpful here and there. The midterms/finals have plotting questions where you’re supposed to re-create a given plot with a certain dataset. So these were really quite manageable, especially with the ability to refer to any piece of documentation from any of the libraries tested.

The module also consists of a small amount of theoretical information - like how plots can mislead, what are some best-practices, data-ink ratio, and more. I wish this was expanded on. This was just a few slides in one lecture, but they were tested extensively for the finals! They’re not too bad, but I do wish this module had a bit of a heavier slant towards those topics rather than just being a plot-fest.

CFG1002, Career Catalyst

Take this in the first sem. I should’ve done that. Some interesting information here and there, and this is what probably prompted me to think of getting an internship ASAP.

CFG1004, Financial Readiness for Young Professionals

Did this for the credit to be honest. It was okay.

Conclusion

That was a good semester (not referring to you, ST2131). I did learn a bunch and have had fun, but I’m glad it’s over and I can relax for a bit. My time-management arc is over (see previous semester wrap-ups), and I had no problems in regard to that.

I feel like I’m in my habit arc right now. Habit arc is soo now right now. I’m trying to regularly play my guitar and go for runs. It’s odd because these are things that do give me joy, just in a separate way than say, gaming. The gratification is not as snappy - I tend to gain enjoyment after the fact when it comes to these things - so I think this makes it much more difficult to commit to them. I would love to do these things more regularly. I’m trying out habit-stacking. I’ll see how it goes.

Am looking forward to the start of my internship. Cheers.