It was yet again another tough Semester. I will review the modules that I took in this post. This isn’t a course summary and I will not be summarizing course content. I aim to keep this port short and sweet.

This was a very hectic Semester. Juggling an internship together with taking 5 modules (4 IS + 1 Core) took a toll on me. At the end of the journey, I’m happy to say that I am very contented with the outcome. It was my first time experiencing an online semester, and I am very fortunate to have a conducive place to attend online classes. I loved the time and freedom because you don’t need to spend time traveling to Seminars.

Again, I didn’t score very well for some modules during the first half of the semester. Others, surprisingly, played out well. That explains some of the dips in my mid-sem expected grade.

Course Difficulty Target Grade Mid-sem expected Grade Attained Grade
IS210 Business Process Analysis & Solutioning Easy A A- A+
IS216 Web Application Development 2 Easy (but tedious) A+ A A+
IS211 Interation Design and Prototyping Easy (but extremely tedious) A A- A+
COR-IS1702 Computational Thinking Difficult A A A+
COR-STAT1202 Introductory Statistics Easy A+ A+ A

I will reflect on each course, giving (1) a short intro followed by (2) what went well and wrong, concluding with (3) future steps for improvement / how to score better and (4) my take on the module.

IS210 Business Process Analysis & Solutioning

This course teaches you how to analyze a company’s business process and come out with solutions to automate and improve inefficient areas. We use modeling to understand sub-sections of a business process. Using these models, we do dynamic and static analysis using tools like Signavio. From here, we come up with alternate To-Be Processes and run simulations to determine its effectiveness.

In general, the module was quite easy for me as I can easily understand business terminology, and visualize business concepts. I attribute this to my long-term reading hobby where I have read a ton of leadership books, biographies, and more. All these have helped in developing and streamlining my business acumen. Only 1 thing went wrong, and that has to do with one of the Case Quizzes. This was my fault, because I did not revise the case study much, and that was an oversight on my end. Luckily, I did well, and the weightage was not very high.

Scoring for this module requires good business acumen and an in-depth understanding of business in general. I know this sounds very fluff, but it is what it is. Personal skills aside, I was blessed with extremely capable groupmates and that played a huge role. It motivated me to try my best and helped me tide through the tough times. I strongly recommend getting a group that is great at problem-solving and has good industry knowledge about technologies such as RFID or hyper-automation.

I enjoyed this module. The only tedious part was doing up the Salesforce badges. This course is great for an intro to Business Process Analysis, even though it seems kind of fluff. I can envision myself applying some of the skills learned, especially the workflow modeling diagram where we map and model a Business Process to find bottlenecks and inefficiencies.

IS216 Web Application Development 2

WAD 2 is 1 step up from WAD1 and focuses on Javascript and CSS. HTML basics should have already been learned, and the course does touch a little on Vuejs as well. A very excellent course because it truly embodies the principles of frontend programming. The material is paced well, and it is easy to understand how to manipulate the DOM. We also have a project component for this module, which I felt was quite difficult.

Everything went well for this class except for my first test where I didn’t score well. Luckily, the test was not a huge percentage and I could come back for the finals. My group’s project went well for this Semester and I am very happy with the outcome. You can read more about my Project here. I delve quite deep into the entire project, and I laid out the steps which we did to tackle the problems.

Scoring for this module revolves around 2 things. (1) Practicing and understanding frontend concepts like how CSS works, how Vue works etc, and (2) doing a solid project. Even though the project’s weightage isn’t very big, doing a good project makes you understand how the front end works. Treat it as revision for the exams. Best to start early, and if possible, leverage on open source frameworks and libraries. Also, choose a good Problem to solve and tackle and you’ll get bonus marks. Treat this as a huge hackathon, and try your best to ‘impress’ the judges (professors).

I loved the module because it gave me the freedom to fully develop an application and manage its entire lifecycle. I was never really strong at Vanilla Javascript, CSS, and Vue. This module pushed me to my limits and forced me to become a much more competent Frontend Engineer. I want to thank my groupmates, JP, ZQ, and WT for the constant code updates and consistent teamwork. I might be a little strong-headed at times and I thank everyone for putting up with my criticisms. Without them, I would have never pulled through the Semester. I am very greatful and truly enjoyed the long code hustles which we did.

IS211 Interaction Design and Prototyping

IDP teaches you about Design Thinking and how you can formulate a Prototype based on the 5 Stages of Design Thinking. You can read more about my project here, where I explain more in course detail. You have to conceptualize a Problem, interview users to understand breakdowns, craft Scenarios and Personas, and Prototype.

Nothing went well for this module to be very frank. We scored very poorly for our project, despite the immense effort which we put in. Only the finals were good, and I think that is because I excel more in difficult papers as I tend to be easily careless on easy papers. However, I am still proud of our project even though we got marked down. I believe that it is because of our Problem not being very ‘unique’, but I’ll address that point below shortly.

I am unsure of how to score for this module. For projects, I feel that it is more of breadth instead of depth. Do everything you can, such as storyboarding (it is a must as we got marked down for not doing this!) and many many (shitty) designs. These were the 2 things we didn’t do as we focused a lot on depth, but it seems that that was not what the professor wanted. For finals, use active recall and spaced repetition. I manage to study about 20 weeks’ worth of content in 3 - 5 days with this technique. Ensure that quizzes are repeatedly done until you score full marks, and understand why you didn’t get them correct the first few times. The final is very likely similar to the quiz (50 MCQs).

I didn’t like the Project Portion of the module. It is unfair to grade based on Problem Statements because if Problems were so easy to find (and solve), everyone would be Bill Gates and Sergey Brin. This course should focus on the UX design and grade solely on Design heuristics. I believe that my app was very well done, and I am proud to showcase it. The Professor was really good, but the class part was difficult. Especially because it is an online semester, it is easy to participate and extroverts no longer have the edge.

I want to thank my groupmates JX, Jon, Val, and Ian for everything that they have done. We grouped for BPAS, and it was splendid. Because they were such great groupmates, I was motivated to try and put in my best despite the many setbacks that we faced. No words can express my gratitude, and I hope that we remain close. keep friends close, and great people closer.

COR-IS1702 Computational Thinking

This is your typical algorithmic thinking module taught in many Computer Science Courses. You learn fundamental algorithms like BFS, DFS, UCS, and you also learn how to analyze them (BigO). There is some programming involved, but it is not a lot. Best that you have prior python knowledge so you can focus more on understanding and applying the algorithms learned.

This was a tough module for me. I made sure that I did all my tutorials and put in the work every week despite how tired I was. This paid off. I contracted a painful disease mid-way, and it greatly affected my midterms. I did not study well and when I came out of the exam, I was devasted. Surprisingly, I performed well and I was very relieved. This gave me the motivation to strive forward for my projects. I was also very fortunate to chance across the algorithm for my project very early, and I spent very little time on a hard project. I was able to think of some edge cases which obstructed my UCS algorithm, and this helped my group rank amongst the top 10 across the entire level.

To score, it is paramount that you do your tutorials and take the time to understand why it is like that. For the questions, I would spend a lot of time on them. During the lessons, I appreciate the professor going through the answers at the start. I see that a lot of people did not do their tutorials/spent enough time attempting them. You should complete the tutorials even if 1 question takes you 1-2 hours, as it did for me. For the project, strong Googling skills are a must. The algorithms definitely can be found online, and you just need to search hard.

This was a tough module for me. However, I felt it to be much-needed bitter medicine. The algorithmic thinking you gain out of it cannot be found elsewhere, and it helps you a lot in prepping for your coding interviews. So much that I didn’t realize this module would be that good.

COR-STAT1202 Introductory Statistics

This is a very simple intro to statistics module for JC kids. For those who have not taken stats before, it might pose a challenge. We learn about probability theory, normal distribution, hypothesis testing, linear regression, and more.

Surprisingly, this was the module that I found one of the easiest. I was hoping, and quite confident in scoring an A+ as I did well for the exams up to finals. However, my project was not well done and finals could probably have been done much better. I was complacent while studying for finals, and managed to lose quite a few easy marks. Even though I scored A+ for everything, it was not enough to pull my project up as we got a B. So those were the things that went wrong or right.

Math is all about understanding, and practice. It is a must to do as many problems as you can. Understanding gives you the rigor, and practice gives you the speed and clarity of thought while tackling problems. I took the time to understand formulas and why things were like that. I always asked myself ‘why’? This technique paid off I guess as I scored well for statistics.

On the whole, I would have preferred to learn more from the course. Linear Regression was not touched upon much, and we didn’t do many derivations. I feel like knowing that would have helped my understanding of the module. The project was very tough and we spent a lot of time. I am on the fence about the marks allocation, because I strongly feel that the project should be weighted much higher. The marking scheme is also very questionable as I do not believe that we should get a B for the project. However, it is what it is and we move on.

Summary and Winter

This concludes my Y2S1 Report. It was an extremely challenging semester that pushed me to my limits. My mental health was affected, and I was burnt out from applying to over 50+ internships and attending so many (failed) interviews. However, you only grow stronger and we must carry on regardless. I worked super hard, and I am glad to have so many supportive friends helping me.

I am happy with my results and I am using Winter to recuperate (although I am still doing work). I have finally joined the 4.0 club and I am looking forward to greater things to come. Cheers and Happy Holidays.