42SG | Day 1

42SG | Day 1

Orientation, Shell and Scripting

by Shen Nan

Jun 2023

Kickstarting 42 Singapore as the pioneer batch!

It’s a mixture of ecstasy and anguish stepping through the doors of the SUTD library for the start of 42 Singapore, since it has been a long while since completing another bootcamp (last was Rocket in 2021). Since there was an opportunity between jobs after leaving Circles, I thought, why not seize the opportunity to up-skill, upgrade and also network with fellow Singaporeans. I took this as an opportunity to refresh myself on my shell and git skills, and finally dive into programming in C and C++.

The first day assignment involved basic shell commands, mainly flavours of ls, ln, git and also obscure commands like these:

# to change the date and time of a specific file
touch -a -m -t 202306012307 file1
touch -h -m -t ... # this is for sym-linked files

# to set the file size
truncate -s 40 file1

I don’t think I’m going use these commands for a while

Conceptually, it was interesting to learn and relearn about man, awk and sed commands, and it helped reconsolidate my conceptual understanding of the concepts that were tested by repeatedly teaching and helping some of our peers.

At the time of posting this at 2237hrs, there were still around 40 of us, struggling to submit and grade our respective assignments. The most vexing part is that the code auditor required 100% precision in terms of submission of materials, and even an extra space in your submission meant another round of waiting for 2 evaluations from your peers, (and sometimes having to evaluate others to get ‘points’ to ‘beg’ for others to evaluate your work), before the auto-grader gives you a pass or fail.

Check out this monstrosity, in order to pass, you have to get the first question OK to qualify the rest of the questions to be graded….

I feel the mood seems rather spritely (perhaps it’s still day 1), and I’ve also made lots of friends on the first day. Lots of strategising regarding how to game the evaluation cycle, how to split the work and tasks, and lots of knowledge sharing. Hope to keep up the spirit, and more to come here!

Github link here →