Good afternoon, folks!
This was the sentence my CG3207 professor, Dr. Rajesh, said at the start of every amazing three-hour lecture every Wednesday at 6 p.m. To be honest, Dr. Rajesh is the best professor I have ever met in NUS ECE. His passion and his depth of knowledge in computer architecture reminded me vividly of the excitement I first felt when studying SC1006 at NTU, where I was also blessed to meet another incredible professor – Prof. Mohammed M. Sabry Aly.
Without a doubt, I can say that Dr. Rajesh’s enthusiasm, combined with my long-standing love for this field, made CG3207 the most inspiring module I have taken so far at NUS. More than that, this module opened the door to something entirely new in my Year 2 Semester 1 – a connection that tied my past, present, and future together.
In CG3207, I ported the CoreMark benchmark onto a RISC-V pipelined processor that my teammate and I built from scratch using Verilog HDL on a Nexys4 FPGA. This moment brought me right back to my time in the NTU HPC Team, where I first encountered benchmarking – but back then, we were benchmarking pre-built CPUs and GPUs.
This time it was different, we benchmarked our own processor.
When the benchmark finally produced results through the UART onto my terminal, the excitement I felt was indescribable. It was one of those rare moments where abstract knowledge suddenly became alive.
But CG3207 was not just about computer architecture. It reshaped how I see my entire CEG journey at NUS. Through the eight levels of abstraction from Harris & Harris’ DDCA, and through Dr. Rajesh’s clear explanations, I suddenly understood how the entire CEG curriculum is carefully structured around this hierarchy of computation. It also became the intellectual highlight of my semester.

From the physics and device level (CG2027, EE3431C), to analog circuits (EE3408C, EE4407, EE5507), to digital logic (EE2026, EE4415, EE5518), then to microarchitecture and architecture (CG2028, CG3207), followed by operating systems (CG2271), and finally application software (CS1010, CS2113) – I finally saw the full picture. Step by step, layer by layer, we are being taught how a computer truly works – from electrons to applications.
It amazed me to realize that what took humanity nearly a century to build, from transistors to VLSI processors to personal computers, is now distilled into our undergraduate education. As I type this on a laptop built upon the very foundations I am learning to understand, I am filled with awe and gratitude.
This bottom-up approach resonates with the concept of First Principles thinking, popularized by Elon Musk. It involves breaking a problem down to its undeniable truths and building up from there. As a CEG student, I am grateful to be taught the fundamental “truths” of the circuit level. I believe this deep knowledge will empower us to solve the massive problems facing our generation – such as the skyrocketing energy consumption of high-performance computing – by innovating from the hardware level upward.
This is also what I love to speak about during interviews – why I chose CEG, and why I choose to work on projects rooted in this discipline and where my passion comes from.
As a CEG undergraduate at NUS, I am deeply grateful for the opportunities I have been given across these semesters. In Year 1 Semester 2, I learned how to approach innovation from a broad perspective. In Year 2 Semester 1, I gained the rigorous technical foundations which are tightly connected that make practical and impactful solutions truly possible. Underlying both of these, however, is the heart of gratitude that was shaped in Year 1 Semester 1 – a reminder of where these meaningful moments come from, and a call to give back to the One who made them possible. Looking back, I now see clearly how this semester’s highlights are not isolated achievements, but a continuation of the journey that began in my first year.
Of course, not everything in life flows smoothly. This semester, in particular, might have been the semester with the most sad moments I have experienced so far at NUS.
In mid-September, I fell at a bus stop in NUS. My knees were injured, and worse, I broke a tooth. While the wounds healed, the broken tooth became a permanent mark on my life. Additionally, two months later, after long periods of intense work and sitting, I experienced hemorrhoids for the first time.
These two incidents forced me to stop and reflect deeply.
I realized that my accident with my tooth taught me to let go of vanity. I was not created to be perfect in appearance, but to be created “right.” This shifted my focus from the pursit of appearance to the gratitude for being healthy. Furthermore, the second injury served as a powerful reminder not to let my entire focus narrow to only my studies and work. Constantly pushing myself without proper movement or rest will eventually take a serious toll on my body.
This semester, not every course brought me the same sense of inspiration as CG3207. While most of my courses were meaningful and well-designed, there were also a few that turned into some of the most frustrating academic experiences I have had at NUS so far.
The first of these was CS2113, where I did not have a particularly smooth experience working with my team. I genuinely wanted the team to function well, yet time and again, unexpected issues arose – many of which were beyond my control. Still, looking back now, I realize that CS2113 gave me something far more valuable than just technical skills: it gave me real exposure to working with very different kinds of people. Learning how to cooperate in such a team, despite differences and frustrations, is a lesson I know I must continue to learn and accept in my life.
The second course was ES2631, which is probably the first “fluff” module I plan to S/U at NUS. From the very first tutorial, I felt a bit lost after being assigned to my group, where I ended up doing almost all the work for Assignment 1 – a presentation – and still received a grade that felt far below what I expected.
During this course, I tried to apply the creative thinking I learned from DTK1234. For example, I proposed a sharing-umbrella system on campus to solve the problem of carrying an umbrella between classes. However, this idea was quickly dismissed simply because the problem was deemed “not significant enough.” From my perspective, the significance of a problem is highly subjective, and its criteria are often vague.
Beyond that, I often felt that this course was less about meaningful innovation and more about teaching students how to write what felt like “eight-legged essays” in the 21st century – even at NUS.
Looking back on these difficult moments, I have come to recognize a common thread running through them. Throughout this semester, I placed too much importance on the external aspects of life – appearance, academic performance, work, and grades. In doing so, I gradually drifted away from what truly matters. I began to lose sight of the deeper purpose of my life: to live with gratitude, and to devote myself to things that are truly eternal – things that will not fade, decay, or be destroyed by time.
At this point in my journey, seems that I now can see these painful moments from a new perspective. They were not meaningless setbacks, but gentle redirections. Each of them served to shift my focus back to what truly deserves my attention. I now understand more clearly that all external things will eventually pass away; they are impermanent by nature. What I should truly invest my heart and effort in are the things that are eternal.
Having said that, this reminds me of a sentence from one of my high school english teachers,
The end is always good!
I feel that the grace I have experienced never stops, in this semester as well.
This semester, I had the opportunity to become a member of a voluntary CCA at Temasek Hall, where we visited a nearby primary school to help the children with their homework. It was truly a deeply meaningful experience for me. I got to know the children personally, guided them through their schoolwork, and even played sports with them after class. Their innocence, energy, and sincerity brought me a kind of joy that is difficult to describe with words.
Although I didn’t manage to come to the last session, I was so moved that the kids wrote a lot of notes to my friends! This is so cute and heartwarming!
As the semester concluded, I received news that exceeded my wildest expectations: I received an offer for the Student Exchange Programme (SEP) at EPFL and an offer for the French Double Degree Program (FDDP) at CentraleSupélec!
This connects the dots of my journey perfectly. Before starting at NUS, I chose to learn French specifically because I dreamed of going to EPFL. I never expected the FDDP opportunity to arise as well. It is a beautiful loop – experiencing the grace of a decision made years ago coming to fruition now.
In all, the countless graces I have experienced this semester – together with those from my past – once again remind me of a profound truth: life is always surrounded by grace. At times, things may appear difficult, confusing, or even painful, yet I continue to place my trust in the One who holds my life in His hands. When I choose to surrender every decision to Him, I find a peace unlike any other – one that no part of this world could ever give.
As this semester comes to an end, I can feel that I am standing at a point where the road ahead is still unknown. I may not clearly see what is waiting for me, though I can already sense that the coming one or two semesters may be extremely challenging and demanding. Yet despite the uncertainty, I know with conviction that my life is in His hands. To trust, to follow, and to remain faithful – that is enough.
Dec 7th 2025, National University of Singapore, Kent Ridge Campus
]]>Try new things, try crazy things. Throw the convention out of the window.
Just as I wrote at the beginning of my DTK1234 DTJ blog, there’s truly no better sentence to sum up my Y1S2 than this one above. I still remember that during the winter vacation after Y1S1, I discussed with my CS1010 tutor, a very capable senior from the mathematics department, about which courses were good in our school. And during the discussion, I found that the senior agreed with one of my viewpoints, which was,
Universities should not be confined by prescribed curricula or specialized courses. Instead, students should take more classes that interest them and are of exceptionally high quality within the university.
I think this is also one of the main reasons why I chose to take CS2030S with the CS students in Y1S2. However, this statement seems to add another layer of meaning to university life, which is to experience the high-quality courses available in the university. I admit that this is not wrong, but in fact, what I’m grateful for is that in Y1S2, I discovered an even more amazing perspective…
If in Y1S1, what impressed me the most was the wonderful and warm hall life as well as the highly demanding professional courses, then in the just-passed Y1S2, what I consider the highlight is having obtained or discovered a set of framework on how to systematically design and implement an innovative solution when facing complex real-world problems. Such a framework is not rigid and fixed but will be improved step by step as I take more courses, just like gradually increasing my skillset.
To put it simply, what I found most amazing, exciting and thrilling when building this framework was discovering the connections between various things. Here, “things” mainly refer to the courses I have taken, but can also include everything that has happened in my life, such as my hobbies and observations of nature. I think it is precisely because of the diversity of these “things” that I feel the ingenuity of these connections, to the extent that I would describe them as “elegant”. These connections interweave with each other, seemingly forming a large network diagram, and this network diagram seems to be an important part of the skillset that I have gradually built up during my college life, or perhaps even throughout my growth process.
So, in short, apart from experiencing the high-quality courses at school, I am very grateful to have discovered that in my college life, I should also explore the connections between different things. This not only enables me to constantly enrich my skillset and improve this problem-solving framework, but also helps me to always keep a grateful heart, grateful for discovering such a wonderful world!
Many people would say that the common courses at NUS are boring or useless. However, in my opinion, every common course I have encountered so far seems to be closely linked. So when I find myself in one course, I can apply the knowledge I have learned in other courses, which makes me very excited and thrilled. But I think the most important thing is that it makes me see that every event I encounter in my life seems to be carefully arranged. Although I don’t know the reason why it happens to me at the time, many times, it is precisely the time that tests my faith and obedience. Because after experiencing the event, I always seem to discover what I have learned from it, whether it is knowledge growth or spiritual growth. In short, I believe that the arrival of every event has a beautiful purpose!
So, what exactly is this framework that I consider closely connected? To put it simply, I think the foundation of this framework is from coming up with crazy ideas to implementing the crazy ideas and then managing the crazy ideas in teams. It’s not hard to notice that each part of this framework’s foundation revolves around “crazy ideas”. And when it comes to crazy ideas, the first thing that comes to my mind is a common course this semester – DTK1234. Therefore, I would like to start with this course to talk about the first step in building this framework’s foundation – how to come up with crazy ideas.
I have detailedly recorded my mental journey in the DTK1234 course on my DTK Blog. To put it simply, the most important thing that DTK1234 has taught me is “how to come up with crazy ideas”. I still remember using the 5 iteration steps in class to constantly improve my idea, and constantly asking “why” to discover the root cause of the problem, etc. In short, in this course, I not only needed to come up with a crazy idea, but also needed to simply implement this idea, and finally needed to get feedback from users to improve my final product. I think this is actually a microcosm of the case when I need to solve a more complex real-world problem.

Figure: DTK1234's rough loop to solve a practical problem
In my other common course PF1101, there is a statement about the uniqueness of the project, which says:
Every project is unique. But uniqueness and similarity are not binary opposites. We can still draw inspiration from similar projects to complete our own project.
I think that since DTK1234 serves as a microcosm for solving real-life problems, its significance does not lie in our copying a certain idea or solution. More importantly, what we should learn is the approach to solving problems. For instance, the loop for solving problems I mentioned in the first paragraph can be regarded as an approach to problem-solving. Because each problem is unique, but certain problem-solving approaches can still be applied. This is why we say,
Give a man a fish, and you feed him for a day; teach a man to fish, and you feed him for a lifetime. (In Chinese, it is called “授人以鱼,不如授人以渔”)
What I want to say is that DTK1234 is a very comprehensive course that trains and applies creative thinking to solve practical problems in real life. If we look at it from a higher perspective (the huge and complex problems in real life), I think the most important point that DTK1234 trains me is to come up with a crazy idea with creative thinking. This idea is very important, and its novelty largely determines the quality of the solution (for more details, please refer to my PF1101 blog). However, it must be admitted that crazy and great ideas are often not achieved at once. They still need to go through continuous iterations to grow into truly great ideas. And coming up with crazy ideas is only the first step in this framework.
The proposal of “Crazy Ideas” is indeed important, but it only remains at the stage of “fantasy”. Therefore, turning the idea into reality is an indispensable part of this framework. It is worth being grateful that I find that in the implementation, the accumulation of various professional and technical knowledge is largely required. Thus, all the technical courses I have learned come in handy!
A simple example is that when I have an idea to enhance the laundry experience for Hall users, to realize this idea, I might need to create an app. To create an app, I need to master programming skills. These programming skills are what I learned in CS1010 and CS2030S. Or, when I have an idea in the engineering discipline and want to make a device, I will find that I need basic mathematical modeling thinking and knowledge of physics to conduct theoretical feasibility analysis. Besides, I might also need to know 3D modeling skills so that I can turn my idea into reality through 3D printing. Such examples are everywhere in my life. In a word, I think it is to make me see the importance of these technical courses because these technical skills are actually enriching my skillset step by step, and I have to use this skillset to solve most of the practical problems in my life.

Figure: DTK1234's product with 3D printing
However, it is worth mentioning that I have discovered that these individual areas of expertise are not isolated from each other. In other words, every course I have taken, including both techinical and common courses, is not isolated. This relationship is not hard to find among courses with prerequisites. However, I have also experienced this wonderful connection between common courses and specialized courses! For instance, in the common course EG1311 on robotics, I personally experienced that devices fixed with rubber bands instead of hot glue are more stable and reusable. In my technical course CG2111A on robotics, my team and I ingeniously applied this idea to our robot named Alexandra! Another typical example is that in CS1010, I learned to use the Divide and Conquer method to solve complex programming problems through recursion. When facing a large project in my DTK1234 and PF1101 courses, I also attempted to apply this idea! There are many more such examples.

Figure: Same inspirations but used in two courses!
In a nutshell, this is precisely one of those “elegant” connections I mentioned at the beginning of the article, namely, the connections among techinical knowledge from different aspects that exist in techinical courses! And I think, this may serve as another spark to learn more techical courses bah. 😂
A product born from implementing crazy ideas not only requires the initial implementation but also long-term maintenance. This maintenance is no longer something that can be effectively handled by an individual but rather demands a team. Just as I learned in CS2030S,
The software I write needs to have high maintainability and scalability/extensibility.
At the same time, just as Prof. Boyd told us in the last lecture of CS2030S,
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
-- John Woods
Being a “responsible” coder and writing software that is highly maintainable and scalable is undoubtedly an individual way to manage crazy ideas. However, in this semester’s courses, there is one that is directly related to management, which is PF1101 – Fundamentals of Project Management.
I have elaborated on how legendary this course was in another blog of mine. However, in a nutshell, I think the most significant meaning of this course is that it taught me how to effectively manage a team and a large-scale project in real life, which is from initiating, to planning, to executing, to monitoring/controlling, and finally to closing. I believe this course has filled in the last piece of the puzzle for me!
PF1101 is another compulsory common course in my major. And doesn’t it better illustrate that not all common courses are so useless? 😂
However, there is still a significant flaw in this framework’s foundation. The flaw lies in the fact that this framework can only be applied to solve practical problems in real life, that is, functional problems. In DTK1234 DTJ, I discussed an enlightening issue with a grand master. The issue was that not all the problems we encounter in life are practical and functional ones; there are also many other types of problems, such as human-centered ones. When it comes to these other types of problems, I think the framework introduced here may not be applicable. However, as mentioned earlier, learning is not about learning how to copy then apply, but about learning how to construct the thought process for solving problems. Just as we have constructed the thought process for solving practical and functional problems here. Therefore, even if the framework is no longer applicable, I have still learned the method of constructing a framework. This is already the most important and very much worth being grateful for!
So far, I think the framework for how to innovatively solve a real-life, practical and functional problem has been roughly established. However, as the name suggests, this is just a simple and rough framework, and its true content still needs to be continuously improved. But, it is worth being grateful that I think, with this framework in place, I will gradually have a general direction in the following three years of my uni study.

Figure: The Network Diagram to solve functional problems
Besides filling in this framework, I think another interesting point is to discover the connections that exist in various aspects of life! Not only through experiencing good courses at university, but also by paying attention to every single thing encountered in life! This is truly amazing!
Similarly, this connection did not arise out of thin air, but it seems to have always existed. Therefore, I think I merely discovered this connection. For this reason, I believe this is also a very worthy place to be grateful. Because I know I have no ability to “discover”, and I also know who opened my “eyes” and enabled me to see such wonderful things. Everything seems to work together for good, so that by closely observing the things created around us, we can discover many wonderful graces!
Although I have no idea what lies ahead of me, I am well aware of who holds the reins of my future! And I legit look forward to discovering more grace in my future studies!
Jul 8th 2025, Shanghai, China
]]>Le temps file!
This was a phrase our French teacher once introduced in class. She often brought it up right before the end of each lesson because, truly, time always seemed to fly by so quickly. And in my final week here, I finally feel the full weight of the Weber–Fechner law: the last few days have passed in the blink of an eye. And looking back, this entire month seems to have vanished so swiftly.
I still clearly remember how I felt when I first arrived in Rouen. It was uneasy, and a little anxious to me. After all, it was my very first time setting foot in Europe, all by myself. I had come to a place nearly ten thousand kilometers away from home. And this is also an entirely unfamiliar place to me. I had no idea how I would manage in a foreign country, surrounded by a language I barely understood. I didn’t know what challenges I would face. I truly didn’t know.

Figure: Rouen Cathedrale
Carrying these feelings with me, I still remember that at start I just want this month to pass quickly. Life here felt incredibly inconvenient at first. Not only did I have to navigate the challenges within my host family, but I also had to keep up with daily reviews and reinforcement of the French lessons. During that first week, I felt utterly drained – both physically and emotionally.
Looking back now, I realize that the true highlight of this month-long journey was studying at French in Normandy. Above all, I feel incredibly lucky to have shared my classes with almost the same group of classmates throughout the month. Although the teachers changed each week, my classmates remained largely the same – and for that, I’m truly grateful.
Our group was very diverse, with students from all over the world. The chances of us meeting in any other context would have been so small, yet here we were, all brought together in Rouen this June by a shared goal:to learn French. I’m genuinely happy to have met each and every one of them.
And I won’t forget hiking through Étretat with my Japanese classmate, the open-hearted conversations we had every Wednesday afternoon’s Discutez with people from different corners of the globe, or the countless little presentations we tackled together in class with randomly assigned partners. Each moment stays with me and resonates with me!

Figure: My classmates!
At first, I couldn’t understand why we had a different teacher every week. I thought it would be better to have one teacher guide us through the whole month. But in the end, it was this rotation that made me feel especially grateful during the final week, when I was reunited with Azza, who had also taught us in the second week.
I truly want to thank all the teachers who guided me during my time here: Fahameh in the first week, Azza in the second and last, and Thomas in the third. I’ll never forget their patience in answering my questions and the encouragement they gave me along the way. Every time I read the personal message each teacher wrote at the end of the week, I could feel just how joyful and rewarding learning French can be.
I also want to thank my fellow NUS classmates who came here to study French with me. I’m truly grateful for this opportunity to grow from unfamiliar to familiar and from familiar to friends! I sincerely hope we’ll have the chance to explore France together again someday.
When it comes to my stay in Rouen, I think my feelings can be summed up in one simple truth:
In a foreign land, if I have a place to sleep and enough to eat, I should be grateful. And even if not, I should still be grateful.
This past month, I lived in what was perhaps the most challenging environment I’ve ever experienced, but I still feel deeply thankful. Not only because I had a place to sleep and enough food to eat, but also because I was surrounded by classmates from all around the world. We shared conversations, helped one another, and lived under the same roof as a small global community. These moments of connection, of mutual support, of shared laughter over dinner are what I’m truly grateful for.

Figure: Friends living together
As I come to the end of this month-long journey learning French in Rouen, I realize that it has been nothing short of incredible. At the beginning, I was filled with fear, even the urge to run away. But by the end, all I feel is gratitude. And that transformation is nothing but magical.
To all my friends and teachers: I legit look forward to meeting with you again someday and somewhere. Again, Thanks for meeting!
Au revoir!
On my flight home from Paris, I was incredibly grateful to be allowed into the cockpit of the Boeing 777. As someone passionate about aviation, it meant the world to me to have this opportunity – especially on just my second flight log entry! It was a moment that filled me with awe and appreciation.

Figure: Visit the Boeing 777 Cockpit
What made it even more meaningful was the journey behind it:
from simply having a passion for flight, to applying it in one of my courses’ projects, and now, finally, experiencing it firsthand in real life.
It felt like a full-circle moment! And it’s legit amazing!
And then came another surprise! After a friendly chat in French with the crew, I discovered that both pilots were from Rouen! What a coincidence! When they asked me what stood out most about Rouen, the first thing that came to mind was my unforgettable adventure with French in Normandy!
Jun 29th 2025, Paris Charles de Gaulle Airport, Paris, France
]]>Before this semester even began, I had already heard from my seniors that PF1101 was an easy SU course, that is something you could just cruise through and forget about, because, after all, “it has nothing to do with your major, right?” But is that really true? I don’t think so.
In this course, my group and I chose the sea transport industry as the focus of our utilitarian project. And to be honest, I had absolutely no idea what I was doing at first 😂. I still remember how lost I felt in the beginning. When Prof. Low introduced the nine areas of project management, I couldn’t help but wonder how on earth I were supposed to apply all of them to my own group project.

Figure: PM is a 9 to 5 Job!
I had a vague idea about building an autonomous vessel control system, but no clue on how to make that vision real. Faced with such a complex challenge, where was I even supposed to start? During our first tutorial, our group had a few scattered ideas – someone mentioned using an edge-AI chip – but we were far from forming a coherent plan. It was like staring at an empty sea, not knowing where the ship should sail.
But looking back now, I’m truly grateful that at the time I realized what our group was missing was a solid, comprehensive solution. And this solid solution would become the foundation of our entire project, shaping the key components of project management like the work breakdown structure, the list of activities, and the project life cycle, etc. And these elements, as I later understood, were not just important, but were absolutely essential to the success of any project.
I still remember one of the tutorial videos that showed how a house is built – from laying the foundation to completing the structure. Every step was deeply connected, forming a living, breathing system. That moment struck me. Our project was no different. We couldn’t treat each part in isolation; we needed a solution that was systematic, grounded, and thought through from the start. Only with that kind of clarity could we begin to manage the project effectively.
But the question remained:
How do I go about building a system that is not only complete and solid, but even a little bit crazy – just crazy enough to spark the energy, the drive, and the passion I’d need to carry the entire project through the long journey of project management?
If I had to pick one highlight from this course, it would be the moment I designed what I truly believe was a justifiable, innovative solution. But looking back, what I’m even more thankful for is the process that led me there – a process that gently nudged me toward thinking creatively, toward building something entirely new. And in many ways, that mindset was something I had first started cultivating and training in DTK1234.
I came to realize that designing a meaningful solution begins with understanding the context, which in our case is:
Why autonomous vessels?
In the real world, sea transport is favored for its large capacity and low cost, but there’s a catch – voyages often last for months. And if a captain has to manually control the vessel the entire time, the mental and physical demands are overwhelming. As we dug deeper into our project, we discovered that fatigue is one of the leading causes of maritime collisions. That sparked a question in my mind:
How can we reduce the captain’s workload and lower the risk of accidents?
The answer became clear – automation. This understanding became the backbone of our belief in the value of autonomous vessels. It also reminded me of something vital: you have to understand the “why” before working on the “how”. That’s what being utilitarian really means to me, which is not just solving problems, but solving them in a way that is practical, meaningful, and truly useful. After all, at the end of the day, the solution we’re designing isn’t just for us – it’s for our users. Or in other words, it’s for our clients.
The next step was to understand the gaps. In other words, why aren’t autonomous vessels already common today? Through our research, we identified two major barriers:
But why was it important to uncover these difficulties? I came to see this as a process of narrowing the problem space. By identifying and isolating the key gaps, we were able to apply a “divide and conquer” approach, breaking the larger challenge into manageable parts and systematically solving each one to ultimately construct a complete and cohesive system. This will make our solution more focused, targeted, and coherent.
This process of narrowing down was personally transformative for me. Whenever I face a complex, unfamiliar system, I tend to feel overwhelmed – as if I need to solve everything all at once. But this course taught me that I don’t have to. I just need to solve one small problem at a time, and over time, those small victories can be accumulated in some way into something much bigger.
Real-world projects are like this too. Each project touches on a vast and complicated domain. That’s one of the reasons I felt lost when choosing a topic in the beginning – everything felt too big. But now I’ve learned that the key is to first define what exactly you’re trying to solve (divide), then focus on tackling those subproblems one by one (conquer), and finally, to synthesize these partial solutions into a complete, integrated system (combine). It’s this structured, focused, and iterative mindset that I now carry with me, not just in PF1101, but in how I approach complex challenges in general.
The next step was to look outward, which is to study existing projects and explore whether there was anything we could learn from them. As Newton once said, “If I have seen further, it is by standing on the shoulders of giants.” I was reminded of a quote by Prof. Low during our very first lecture, when we discussed the uniqueness of projects.
Even though each project is unique, there is still so much to learn from past experiences.
Armed with the context I had explored in Step 1, and the gaps I identified in Step 2, I began to look for inspiration beyond maritime transport – and that’s when it hits me: the Aviation Industry.
I’ve always been an aviation enthusiast. Every time I board a plane, I find myself in awe of the precision, the complexity, and the sheer brilliance of modern aircraft. And this time, from that fascination, I saw a clear connection, which is a parallel between aviation and autonomous sea transport.
That led me to the central question that would shape our entire project:
Could we learn from aviation to build a better solution for maritime automation?
It was in this step that everything I had done so far, from understanding the context to identifying the core problems, finally came together. These earlier insights helped me narrow the scope of where I looked for inspiration. And what I discovered was nothing short of magical: so many ideas in the real world connect and echo each other in unexpected ways. Once you truly understand the problem you’re solving, and the environment you’re solving it in, you will open the door to discovering inspiration across domains.
And to my delight, even something as simple as “I love flying” turned out to be meaningful. It became a bridge, linking my personal passions with my academic work. That small detail from everyday life ended up shaping the direction of my entire project. And for that, I am truly grateful.
Finally, I came to the most exciting part, which is designing our solution. This is where the insights from aviation helped me “make the shift”, which is a term from design thinking that means applying inspiration we got from the existing projects into a new context. Armed with this mindset, I studied how planes achieve safety and automation and found two key components:
Inspired by these insights, I designed our own Autonomous Vessel Control System (AVCS).

Figure: My AVCS Design
And within our Autonomous Vessel Control System (AVCS), the TriNav System operates through a tightly integrated closed-loop mechanism involving three core components.

Figure: The closed-loop workflow for VMS
Alongside the TriNav Guardian, both systems are designed to address real-world maritime challenges, which mainly are based on the gaps I have found in the above step. These challenges and how each AVCS component contributes to solving them are detailed in the following image.

Figure: The problems that AVCS solves
Step by step, I turned scattered ideas into a structured, systematic, and practical solution. And after designing our solution, I found myself genuinely excited about the rest of the project management process. I wanted to bring this idea to life, not just in theory, but in practice. This experience helped me realise how every part of the journey – from understanding the context, to identifying the gaps, to learning from existing projects, and finally designing our own solution – was deeply connected. Each step built upon the last, like links in a strong, unbreakable chain. This way of thinking also showed me how creative thinking and project management can come together in powerful ways. It’s not just about planning, but it’s about vision, structure, and bringing something meaningful into the world.
I think this Eureka moment is what made project management so exciting to me. From initiating to planning, navigating through ambiguity sparked my growing interest, as it felt like I was solving real-world problems that could genuinely make a positive impact on people’s lives. However, as I moved from planning into the final stages – executing, monitoring, and closing – I noticed a gap between planning and execution. It reminded me of the common gap between vision and reality: “How well would our AVCS actually perform in the real world?” That’s still unknown. More testing would be needed, especially the tests we couldn’t conduct ourselves, but could still account for in our project’s planning. Even this taught me something important: project management isn’t just about action, it’s also about preparation for the unknown.
All in all, I truly loved this PF1101 experience. From a small spark of an idea to a solid, structured solution, and then using the five project management processes – initiating, planning, executing, monitoring, and closing – to analyse and refine both the whole system and each of its parts. This journey helped me transform my initial confusion into an interest in project management, which also made me fall in love with project management. To me, this experience of project management was a miniature of real-world projects and a magnified lens on the small projects in my studies. On a more personal level, it helped me see how I can apply the same mindset to other areas of my life and studies. I genuinely believe that the lessons I’ve learned from this course, especially the way each project management process is interconnected – from understanding the context and identifying the gaps to drawing inspiration from existing projects to design our our solutions – will stay with me for a long time. I’m confident that I’ll continue to carry these insights with me throughout my journey as a computer engineer.
So, in the end, would I say this course is useless for engineers?
Absolutely not.
For me, this course was far from useless. In fact, it was surprisingly fun to discover something meaningful and exciting in a module I initially thought would be irrelevant to my major. More importantly, I’ve come to see that there’s an indispensable connection between PF1101 and all the other courses I’ve taken at NUS.
But how exactly does it connect?
Well … I’ll save that for my next blog post, which will be a reflection on my CEG Y1S2 journey. Stay tuned!
Jun 22nd 2025, Rouen, Normandy, France
]]>Try new things, try crazy things. Throw the convention out of the window.
I still vividly remember a quote that left a profound impact on me during my final year of middle school. It came from the iconic Apple commercial released in 1997, titled “Think Different.” The ad went:
“Only those people who are crazy enough to think they can change the world, are the ones who do.”
Back then, I was deeply inspired by this message. Think Different wasn’t just a slogan to me, it was a call to dream bigger. Especially after reading Steve Jobs’ biography, my admiration only grew. Jobs had brought to life so many revolutionary products that truly changed the world 🌍. I, at that time, at around 15, too, longed to build something that could make a difference.
However, that dream was temporarily shelved as I became immersed in the demands of schoolwork. It wasn’t until my first year at NUS, when I enrolled in DTK1234: Design Thinking, that the spark reignited. Through this course, I gradually reconnected with that earlier passion – for innovation, for challenging the norm, and for believing that bold ideas can change the world.
As the course began, I was so surprised to discover that one of the three main topics for the semester was centered around plants – one of my absolute favorites! 🌱 What a wonderful coincidence that felt almost too perfect to be true. With that excitement in mind, I dove into the first few Individual Learning Activities (ILAs), only to realize that they weren’t as easy as I had hoped. Still, I’m grateful for those initial challenges, because within those ILAs, I started to uncover little sparks of curiosity and delight. And there were so many fascinating and unexpected insights hidden in the process!
This was the preparation of my Design Thinking journey in DTK1234. Although this was just an introductory segment, and many of my peers said it wasn’t directly connected to the rest of the course, I personally found it deeply impactful. In this segment, we are asked to explore the concept of the Norman Door – which may be a poorly designed door that confuses users about whether to push or pull. It may seem like a small concept, but for me, it was a revelation. It opened my eyes to see how deeply design affects our everyday experiences, often in ways I don’t even realize.
By exploring the “Norman Doors”, which are designs with poorly perceived affordances that confuse users about how to operate them, in my daily life, I discovered that feedback mechanisms and principles of visibility are key to designs with well-perceived affordances. For example, I chose Tesla’s car door handle as my “Norman Door”. It has a decent feedback mechanism, which means I can relatively easily find the correct opening method by pressing different positions, but it does not seem to follow the principle of visibility well since I could not immediately figure out how to use it when I first saw it.
From my experience, why was I unfamiliar with the Tesla handle’s operation? I think a significant reason was my habit of using traditional car handles – those hollow, outward-pulling designs. So, when faced with a completely new design, I felt disoriented. This raises an intriguing question: is it because we’re constrained by traditional ways of thinking so that we perceive certain objects as having “poorly perceived affordances”? If so, this leads to an interesting conclusion: not every “Norman door” is a “bad design.”
Some designs that seem to be “Norman doors” may, in fact, represent the direction of future innovation. A great example is Apple’s first iPhone, the world’s first touchscreen phone. Before the iPhone was released, people were accustomed to phones without touchscreens, relying solely on physical buttons, like BlackBerry devices. So, when the first iPhone launched, many found it unfamiliar and might have even considered it a “bad design.” However, the first iPhone undeniably set the standard for smartphone development from its debut to the present – and likely for the future – because the original iPhone seamlessly connected a new way of interacting with phones (the new function) through the touchscreen (the new form). On the other hand, for simpler products like traditional doors and faucets, if they lack basic perceived affordances – meaning they fail to change the traditional mode of operation but instead add unnecessary complexity to existing designs, which leads to “poorly perceived affordance.” In such cases, these designs can genuinely be considered failures, as they overcomplicate functionality without adding real value.
In my experience, when viewed from a different perspective, Tesla’s embedded door handle design actually connects a new way of opening car doors (the new function) with the hidden handle (the new form). One of the advantages of this approach is that it cleverly leverages aerodynamics to enhance vehicle performance. Additionally, many Chinese car companies, such as BYD, Xiaomi, etc, have followed Tesla’s lead and adopted this hidden handle design. So, perhaps such designs represent the trends of the future?
Finally, this experience has taught me an important lesson: when designing a product, strive to adhere to the principles of visibility and feedback. However, don’t be limited by traditional constraints. Dare to think outside the box – what you design might just become the trend of the future? Thus, a new mindset formed in my brain: “Try new things, try crazy things.” Throw convention out of the window and explore ideas I wouldn’t normally dare to try. This thinking laid the foundation for my entire Design Thinking Journey. With this mindset, I felt excited to tackle the case ahead of me!
This discovery shook me – in the best way possible. Even before diving into the core of design thinking, I was already feeling that spark of innovation again. The Norman Door reminded me that meaningful design starts with being observant, questioning the norm, and reimagining the ordinary.
From this segment onward, I seem to step into my Design Thinking Journey. The main goal of this part was to train our creativity – or more precisely, our creative thinking. Some people might be naturally creative, but I believe creativity isn’t something you’re simply born with. It can be cultivated through practice and intentional effort. Why? Because creativity, at least the way I understand it, doesn’t always mean inventing something entirely new out of thin air. Sometimes, creativity means combining existing functions in new ways, or improving on what already exists. Both involve creating something out of nothing, but the first relies purely on imagination with no external reference, which feels a bit unrealistic to me. The second, on the other hand, acknowledges the value of building upon existing ideas – and I find that much more grounded.
That said, I have to admit this segment gave me a really hard time at first. I felt completely lost. I was struggling with two things: 1) The topic of plants was just too broad. There were too many directions to explore, such as watering, sunlight, soil, fertilization… it was overwhelming. 2) I didn’t initially understand that this activity was more about “quantity over quality”. We weren’t expected to come up with perfect solutions, just lots of them would suffice.
Looking back, I now realize the true purpose of this segment was to train the fundamentals of creative thinking. More specifically, it introduced methods that could be incredibly helpful in developing creative ideas, like the 5-step iteration process. One moment that really stood out to me was when I used the “making a shift” technique to improve my original idea for controlling how much sunlight a plant receives. At first, I thought about using a special kind of glass that could regulate light reflection. But that would require advanced knowledge in materials science and physics, and probably wasn’t practical. Then I had a breakthrough. I remembered the robotic vacuum cleaners. Then I thought, why not give the plant wheels? In that way, it could simply move to find the sunlight it needs.
This “making a shift” technique didn’t just help me in DTK1234. It also inspired an idea I ended up using in another module, PF1101. And when I tried to optimize my ideas using the 5-step iteration method, I realized that this was exactly what creative thinking looks like in action.
FYI! There one guy who implemented this idea out! It’s quite interesting!!! Here is the link
This segment marked the true beginning of my Design Thinking Journey. For the first time, I felt like I was no longer just exploring design principles. Instead, I was applying them in a way that felt real and personal. The main purpose of this part, in my view, was to clearly define the problem I wanted to solve. And in doing so, it also addressed the first source of confusion I had in the previous segment. I realized that narrowing down the scope of the problem allowed me to focus more effectively on designing meaningful solutions. It was a turning point.
One part of the process that really stood out to me was the practice of asking “why” repeatedly during the user interview to uncover the root cause of a problem. For example, by continuously asking “why” when talking to my interviewee, I found that the surface-level reason for overwatering plants was a lack of knowledge about how much water was appropriate. But as I dug deeper, I discovered a more fundamental reason: the user was afraid that if they didn’t water enough, the plant might die.
This moment completely shifted the way I saw the problem. It not only helped me understand their behavior more deeply, but also revealed aspects of their personality. Those insights allowed me to tailor my solutions more effectively.

Figure: Key insights derived from the user interview process
Looking back, I’ve come to see this ILA as far more than just an interview. It was a process of insight discovery – powered by the simple act of asking “why”. And as I’ll share in the next part, this very skill became one of the most valuable tools I used throughout the rest of the course.
To be honest, up until this point, I still wasn’t very confident in my own design thinking. I think it was because I hadn’t come up with a truly “crazy” or groundbreaking idea yet. That made me doubt whether I was doing it right. But looking back now, I feel grateful – because all the work I had done during the Discovery Phase laid a solid foundation for what came next. When I started thinking about possible solutions, I could genuinely feel myself using systematic thinking to structure my ideas and approach the problem with clarity.
One thing that really helped streamline this process was applying the “Jobs to Be Done” (JTBD) framework. I realized that JTBD could guide my thinking in a very natural and organized way, helping me stay focused on the user’s true needs. Here’s the JTBD diagram I created:

Figure: Use JTBD and knowledge learned from Intro ILA to ILA 2 to come up with a crazy idea
For me, this round of idea generation was a legit Eureka moment. It was the first time I felt a genuine sense of excitement and ownership over an idea I wanted to pursue. That moment gave me not just a direction, but also the motivation to start turning my idea into reality.
“Prototype” is a word that I heard countless times back in high school during my FRC robotics competitions. Back then, for me, prototyping meant actively making physical components to test the ideas out, because the gap between simulation and reality is often wider than we think, and most of the time, that gap can’t be bridged through theory alone. I found that this segment of the course worked in mostly the same way.
During my prototyping process, I encountered two major challenges: 1) The efficiency of the watering pipe, and, 2) The overall stability of the system. What truly excited me was that the power of asking why came to the rescue once again! For example, when building the water tank, I asked myself:
By identifying the real root cause, which is an oversized tank, I improved the prototype by switching to a smaller one, and the result was immediately better. It was a simple fix, but it showed how much value lies in thoughtful questioning, which is to continuously ask “why”.
Besides this example, I also noticed that some basic knowledge of physics and math could be incredibly helpful in this stage – for instance, when analyzing the system’s center of gravity.
Overall, I genuinely love prototyping. Whether it was back in FRC or now in DTK1234, I’ve always found joy in the process of turning crazy ideas into something real. There’s something incredibly rewarding about watching an idea take physical form, even if it’s imperfect. That feeling of progress is legit unforgettable!
And then came the final segment: evaluating my actual solution. Surprisingly, as I got closer to completing this journey, it felt like I had come full circle – back to where it all started, with the “Norman Door”. I found myself asking the question which is very familiar to me again: How do I prevent my design from becoming a Norman Door?
During the evaluation phase, I realized something important: understanding whether a system has clear and well-perceived affordances isn’t something that prototyping alone can reveal. As a designer, I’m often so focused on solving problems that I may unconsciously overlook usability issues. For instance, I placed three water pipes in a triangular layout, assuming it would be intuitive because it looked stable and made logical sense to me. But during user testing, I was surprised to find that the user didn’t understand it at all. That moment was a wake-up call – it showed me just how different a user’s perspective can be from the designer’s intent. It’s like passing an idea through a long pipe: what comes out the other end may not be what you expected. There’s always some distortion, some loss in translation between what you design and how it’s perceived.

Figure: My Evaluation Test WorkFlow
That’s why evaluation is so powerful. It helps close the gap between what I want to create and what the user actually experiences. Through testing, feedback, and iteration, I refined my solution to offer clearer affordances – and in doing so, I brought my entire Design Thinking Journey to a thoughtful and meaningful close.
Overall, one quote from the lecture that deeply resonated with me was:
“Design Thinking is a creative approach to solve problems or enhance existing solutions.”
As I completed this Design Thinking Journey, I realized that for me, the greatest joy in design thinking lies in discovering the connections between different segments and applying the various skills I learned to different scenarios, thereby better using creative thinking to solve practical problems. I think design thinking represents a big closed loop where each part is closely connected to the others. When I found myself returning to where my journey began after completing the final phase, I felt incredibly excited! This design thinking journey may have been challenging, but I firmly believe that the skills and knowledge I gained will serve me for a lifetime!
And now, looking back to that quote from the Apple “Think Different” campaign:
“Only those who are crazy enough to think they can change the world, are the ones who do.”
I’d like to add my own reflection, so now it becomes:
Only those who are crazy enough to think they can change the world and actually try to make it happen are the ones who do.
Because dreaming is important, but daring to act is what makes a difference.
Try new things. Try crazy things. Throw the convention out of the window and truly make your idea come true!
This part I legit legit want to give bigs thanks to Matt! It was, without exaggeration, a legit meaningful and eye-opening discussion! I legit learned a lot from him! Below are some very interesting points I want to talk more about
During both the prototyping and evaluation phases, my primary focus was on improving the functionality of my design,which is to make sure it embodied the two qualities of good design that were mentioned in the intro segment:
However, after Matt’s reminding, I realized that I am not the end-user of this product. If I want more people to use – or even love – my design, it had better also be visually appealing. Functionality alone is not enough. That’s when I start to see:
The iteration process is not just as a way to refine what the product does (functional), but how it looks and feels (beautiful).
For instance, could the water tank at the top of my system be shaped like a flower? 🌸 Could the pipes be redesigned to spiral elegantly around the plant’s stem rather than just standing upright? These small aesthetic changes may seem minor, but they can make a product go from functional to beautiful – and perhaps more importantly, from useful to desirable. I am so impressed by Matt’s idea!
One of the most important takeaways from my Design Thinking Journey is the realization that identifying the right problem to solve is essential. That’s absolutely true. In many of my own experiences, these problems were closely tied to functionality. For example, something wasn’t working efficiently, or something could be optimized. However, after Matt’s reminding, I realized that in the real world, not all problems come from functionality issues. In fact, many arise from people’s subjective experiences and perspectives, which are what we often call human-centered problems.
For example, the idea we discussed in the intro segment:
“Not every Norman door is truly a Norman door, and this is because sometimes, it’s the user’s convention that creates the confusion.”
This really struck me at first. But if we think carefully about it, the core of this idea is that humans are subjective creatures, thus the conventions we create and follow may also be subjective.
For instance, the Tesla door handle may seem intuitive to someone who drives a Tesla regularly, but may be completely confusing to someone who has never used one. What feels natural or obvious is often shaped by personal experience and expectation, not just objective design flaws.
So, till now, the skills I have learned in DTK and those in other courses, seem that can be used to solve the problems related to functionality at most of the time. However, faced with those human-centered problems, are these skills still applicable and effective?
In fact, if we think in depth, problems don’t exist in a vacuum. Instead, they’re always about people. Whether we’re engineers or not, we are ultimately solving human problems. That means people – with all the emotions, experiences, and biases – are the subject of our problems, not just the audience. And because people are subjective creatures, the problems we are about to solve are human-centered at most of the time.
Throughout my Design Thinking Journey, I mainly applied creative thinking to improve the functionality of my product – and while that is certainly important. After Matt’s reminding, I’ve come to believe that truly creative people are often the most empathetic ones.
But I think this is true only in engineering and other practical disciplines. After all, what is the ultimate goal of engineering? It’s to solve problems – but more specifically, human problems. That means, when designing creative solutions, we can’t afford to ignore the emotional and psychological dimensions of those we are designing for. We must understand people deeply, including the hidden reasons behind their behaviors and frustrations. In other words, creativity and empathy are inseparable.
Matt shared a particularly eye-opening example that helped me understand this. Imagine someone designs a toilet brush that works really well in theory. It can effectively clean the toilet. That’s great! But then, why do we still encounter dirty toilets? Clearly, the problem isn’t entirely technical. Instead, it lies on the human level. It’s because some users may say, “I don’t want to use a toilet brush because it brings my hands too close to the toilet bowl.” Others might say, “I injured my hand and can’t use the brush properly.” These seemingly simple comments reveal a deeper insight: the obstacle isn’t the brush’s effectiveness, but people’s willingness and ability to use it.
So, the real design challenge becomes: “Can we create a system that keeps toilets clean without requiring users to physically handle the brush at all?”
This example beautifully echoes the point I made earlier: in the real world, most problems are not purely functional – they’re human-centered. That’s why, in reality, the most creative people aren’t just inventive; they are empathetic also. They see through the surface of a problem to understand its roots, which is often buried in human behavior, emotion, or need.
This profound question was posed by the legend – Matt. But for now, I choose to leave it unanswered. I believe it’s one of those questions that deserves to sit with you, to grow with time, and to quietly shape your life without you even realizing it.
That said, one example is that he mentioned a student who, before taking DTK, would often jump to offer solutions even before fully listening to someone’s problem. But after going through the DTK course, that same student learned to pause, listen patiently, and only then respond thoughtfully.
This subtle shift reflects a deeper change – not just in how we approach design, but in how we relate to people. And perhaps, that is what design thinking is ultimately about: not just affect the way we solve problems, but affect the way we live our daily life.
As Prof. Boyd once said in CS2030S,
Without YOU, this course would not be so wonderful like what it is!”
So, I want to say a big, heartfelt thank you. To
May 3rd 2025, National University of Singapore, Kent Ridge Campus
]]>For my Java Learning Notes, I have migrated them to my coding website
Sorry for any inconvenience caused and enjoy your learning journey!
]]>Nostalgic, legit nostalgic
This was something I heard from my CG1111A TA when he saw his Final Project Robot being displayed as the sample robot to us.
I happened to hear this sentence by chance, but it left a lasting impression on me. It wasn’t until that moment that I truly realized how quickly time flies. I believe, for my TA, when he said this, he had realized that a whole year had already passed. I’m not sure why, but somehow, his words resonated with me.
As a “special” student, I also have been in this “new” place (Singapore) for one year alr. However, how often do I get to pause my busy life, look back on the path I’ve traveled, and realize that along the way, there were so many moments to be grateful for? I feel guilty, regretting that I did not start this idea earlier. But it doesn’t seem too late now, does it?
To be honest, Y1S1 in NUS CEG is not easy — or rather, it’s incredibly challenging. That’s why from the Lecture 1 in CS1010, we are told to “work hard” and not limited to that, we are told to “work very very hard”.
I still can remember that from midterms onward, there’s been at least one test every week, and in the second-to-last week, there was at least one test every single day. It feels as if I’ve been transported back to the intense days of preparing for my GaoKao. But unlike those days, first of all, this time, I’m living in the C BLK of Temasek Hall at NUS — a Hall known for its athletic spirit, but is also a warm, close-knit “family” collectively nurtured by all Cblings!
For me, as an Internationsl Student, living in Temasek Hall is my second experience of Singapore’s hall culture. However, this time, it’s different — or more precisely speaking, considerably different.
Honestly speaking, I feel that my being able to join Temasek Hall is nothing but a “miracle”. When I was applying for accommodation, I had already heard from my senior that in NUS, the “best” living environments are at PGP and Utown. Halls, on the other hand, were often described as noisy and less ideal (at least based on the information my senior shared with me). So, I chose three houses at PGP and included all my CCAs in the application (I wasn’t sure if it would help HAHAHA, but I just wanted to increase to chance to get into the houses).
Yet, when the results were released on July 5th, I found myself assigned to Temasek Hall, which was a Hall! At that moment, I felt a bit disappointed, worried that the environment wouldn’t allow me to focus on my studies. Still, I consoled myself with the thought of having a single room instead of a double room. Even worse at that time, when I found out I was assigned to C Blk, my senior told me that it’s the noisiest block because it’s closest to the Comm Hall and usually people from A and B Blks passed through. Hearing this, I felt even more frustrated.
However, now, everything has turned around entirely. After spending a whole semester in this “warm Cblings Cupermarket”, I couldn’t be more grateful that I wasn’t assigned to PGP. I’ve discovered that not only was my initial perception about TH completely wrong, but everything here is absolutely amazing and warm! And it all began with THOC - where the dream starts!
THOC stands for Temasek Hall Orientation Camp, which is the largest activiy in Temasek Hall. Honestly speaking, this has been the most thrilling Orientation Camp I’ve ever attended. I can still vividly recall the unforgettable activities I participated in during OC. For instance, on the final half-day, my friends and I were blindfolded and took part in a series of exciting activities. It was absolutely exhilarating! On top of that, I can’t forget the countless strange questions asked by the “Changed voice” aunties and uncles, HAHAHAHA!
The most touching part was the final night of THOC. That evening, my friends and I were blindfolded and led to the open rooftop. When we removed the blindfolds we had been wearing for half a day, the first thing we saw was a breathtaking sight — that was the candles prepared for each of us by the seniors. It was such a moving moment! Then, our Block Head Yu Cheng delivered an impassioned speech that I still remember vividly. He reflected on the past few days and, more importantly, said, “I know the past few days have been an unforgettable experience for each of you, but don’t forget, your uni life just begins! I hope each of your journey will be even more unforgettable. And remember, Temasek Hall will always be your home!”
Still immersed in the moving speech, we were guided, with candles in our hand, to the Common Hall. In front of me stood two lines of people forming a human corridor that I had to walk through to reach the end. Along the way, my candle would be blown out by someone, only to be reignited by another person nearby. At the time, I just thought it was a fun activity, HAHAHA. But now, I feel like I’ve started to understand the thoughtful design behind it.
The lit candle seemed to represent our hope. Walking through the human corridor symbolized our uni life. Those who blew out our candles represented the challenges we encounter, each trying to extinguish our hope. Yet, there were always others around us, ready to use their candles to relight ours, reigniting our hope. And when we finally reached the end of the corridor, having completed this journey, we earned the right and had the obligation to help others — to relight the candles of those still making their way forward, helping them reignite their hope.
Besides THOC, another event that left a deep impression on me was Angel and Mortal, organized by our C BLK Comm. Here, I want to once again thank my angel, Minh Anh, and my mortal, Gwentella (nickname: darling. That’s why I was called “darling angel” HAHAHA). I’m so grateful to my angel for all the welfare packs, heartfelt notes, and the final gift—they truly helped me get through a challenging period of study. I also want to thank my darling Gwentella for the many delightful inverse-welfare surprises and the moving letter at the end! I’m incredibly thankful to both of them.
During the final revelation, I was deeply moved. Seeing so many people stand up for me and “justice for WENBO” was soooo heartwarming. Honestly, I wasn’t too concerned about the final outcome, but I was sooo moved by the love and support from all the lovely Cblings! Lastly, I’m legit grateful to the Block Comm and Block Head for taking the time to recheck everything, which gave me the opportunity to share the title of AY24/25 C BLK’s Best Angel with Xin Wei!
Looking back on this AnM journey, two moments stand out to me the most. Firstly, I finally got the chance to make up for last year’s AnM regret in NTU Hall 12 by designing a website to challenge my darling(mortal) this time. Using the website as a platform, I was able to bring some of my small ideas to life — essentially it’s just a simple “give-back gratitude” idea. I tried to channel the blessings I’ve received from the locals and pay them back through this small activity. I know there were many areas where I could have done better, so I’m especially grateful for my darling, Gwentella, for her understanding and patience!
Secondly, it is something I didn’t expect but discovered as I reflected on this AnM journey with my darling. Let me explain it in detail. The website I designed is about the theme “Find your Happy Meal and find your Angel”. Since one of AnM’s goals is to help us get through the challenging midterm period, I realized that this theme applies perfectly to my uni life as well!
In uni life, we may face countless moments of difficulty and stress. But through AnM, I’ve learned that even when life hits you hard, there are always “Happy Meals and Angels” around you. So, no matter how tough the challenges are, don’t let them defeat you. Take a moment to observe the people and things around you, and you’ll discover that your life is filled with tons of “Happy Meals & Angels” and they are all the blessings!
In addition to these two activities, I also participated in many other fun and team-building events organized by the C BLK Comm throughout this sem, such as the BLKOut, welfare events, and fire warden. So, I legit legit want to thank all the cute C BLK Comms for organizing so many wonderful activities this sem. I also legit appreciate your warm invitation for me, an IS, to join in — HAHAHAHAHA!
As an IS in Temasek Hall, I genuinely want to thank everyone here because this place has legit let me feel a sense of inclusiveness and warmth. Even though I’m far from home, the people and the environment here have made me feel like I’m living in another “HOME”, just as Temasek Hall’s slogan says, “Some call it a hostel, we call it a HOME!”. Here, I’ve gained many solid friendships, and I’ll never forget the dinners we’ve shared, the games we’ve played, and the laughter we’ve experienced together as Cblings. I love my HOME, and I love all the Cblings!
Although I don’t know how much longer I’ll be staying here, from the nervousness at the start of the semester to the contentment now, this journey has taught me that some things are beyond my own judgment because my perspective is so limited. And perhaps, the best way to face such moments is to trust in that everything is part of the best plan.
Anyway, I don’t know if this will be my LYLC, but I’ll always treasure these beautiful memories forever!
Now, after talking about the Hall Life here, I inevitably have to return to studying, as that is the main purpose of my being here. As mentioned at the beginning, this sem’s study has not been easy for me, even though I already have a year of experience. Please allow me to share some of the insights and reflections I’ve gained from my studies in this sem.
CS1010 (Programming Methodology) is legit a course that has shocked me! For someone like me with no competitive programming experience, this course is legit incredibly difficult. I still can’t forget how, before every PE (Practical Examination), I always thought I was well-prepared, only to feel like my confidence was completely destroyed after each PE (😭)! It was really, really frustrating. But what I’m truly grateful for is that this unique experience and feeling has given me a whole new perspective on certain things.
First, a very practical lesson I learned is that coding is never something that can be mastered “in one go”, especially practical coding, as opposed to theoretical tests. This is very different from the science education I had before. In many cases, practical coding is not just about theoretical derivations. It’s more about testing your proficiency. Only after you’ve practiced enough and gained a solid understanding of the algorithms and data structures required for certain problems can you quickly solve them within a limited time frame. That’s why I still remember what Prof. Ooi said in class, “Don’t stop your hand doing the ‘dirty’ work!” It’s such a useful piece of advice! Train your programming mindset every day, even if it’s just solving one problem.
Secondly, what I found particularly impactful was one of the three pieces of advice Prof. Ooi shared with us in the first lecture of CS1010: “Grade is not everything. Focus on: learning new skills, leveling up your skills, and enriching your experience.” Although this course has brought many challenges and pressures throughout the sem to me, it wasn’t until the last lecture, when Prof. Ooi recapped CS1010 with us, that I realized how many “Nostalgic Moments” I had experienced. I discovered that I had learned so much throughout this sem! The emphasis for this word of advice lies in the second part — what we should focus on is not the grade itself, but the progress and growth we experience during the learning process! This has been incredibly useful and inspiring for me!
Lastly, I would like to once again thank every Prof and my TA of CS1010, as well as my dear “battle buddies” (classmates HAHAHA). Thank you for your patient guidance throughout the sem. Every time I attended the lecs/tuts/labs, I felt I gained a fresh perspective and valuable insights. This feeling is legit wonderful!
CG1111A (Engineering Principles and Practice I) is another course that has legit surprised me! I didn’t expect it to be so enriching and useful! From the basic principles of circuit analysis to the fundamentals of analog circuits - Op-Amps and the final project the utilises all what we have learnd to build an “a-maze-running robot”, the course content has been laid out in such a gradual and structured manner. At the same time, these topics have aligned perfectly with my future interest - chip design! How amazing it is!
Besides the course content, what left the deepest impression on me in this course was my Prof Khoa, my TA Yijian, Telfer, and Lim, as well as my CEG classmates in the same lab. The warmest moment in this course came during the last class, after each group completed the Final Maze Running, Prof Khoa bought bubble tea for everyone! As I sipped the bubble tea and looked at the robot I had built with my teammates, a sense of deep gratitude and emotion filled my heart. In this course, I not only gained a lot of professional knowledge but also forged many friendships and experienced warmth. How moving it was! So much so that during the final group photo, I genuinely felt that we, along with the Prof, TAs, and Lab Manager, were one “big family” — growing together, helping each other, and learning from one another!
Therefore, in conclusion, I would like to sincerely thank the Prof, every TA, Lab Manager, and my classmates in CG1111A. Thank you for making this course incredibly warm and awesome! I wonder, one year from now, if I’ll recall this beautiful morning when we all enjoyed the bubble tea together, chatting and laughing with one another. “Nostalgic, legit Nostalgic!”
Besides CS1010 and CG1111A, the other courses I have taken in this sem are also very warm and awesome! As a token of gratitude, I have included detailed information in my lecture notes to help any CEG junior or anyone studying these courses. I hope my notes will be helpful to you!
Even now, I still vividly remember the words of our Dean during the SOC welcome speech on the afternoon of August 1, 2024: “Recalibrate yourself because you are in NUS SoC now.” This sentence left a deep impression on me and constantly reminded me that there were many geniuses around me. Truthfully, I don’t consider myself one of those exceptionally brilliant geniuses. Instead, I’ve come to realize that this understanding, as I mentioned in CS1010, has encouraged me to focus on learning new things, leveling-up my skills, and enriching my experience — rather than solely focusing on my GPA.
Beyond that, this recognition of my own “limitations” is not about self-deprecation or an attitude of passive life-style. To me, it represents a sense of contentment and trust that comes from deeply understanding that “Your grace is sufficient for me.” All the wisdom I possess is precisely what suits me best. If I had more, I might become arrogant; if I had less, I might feel lost and inadequate. So, what I have now is exactly enough. That’s legit one thing I should be very grateful for!
In short, everything happens is the best plan! Speaking of this, it reminds me that the opportunity to study at NUS itself is a profound blessing! Looking back now, my studying journey feels nothing but a miracle. First and foremost, I want to express my gratitude to every Prof and classmate I had at NTU. Without the academic foundation I built there and the various challenges I overcame during my year 1 at NTU, I don’t think I would have been able to adapt and thrive as quickly in the new environment of NUS CEG in this first semester.
Interestingly enough, I realized that the knowledge I gained during my first year at NTU seemed almost tailor-made to prepare me for what I would encounter this semester at NUS. For example, in NTU, the mathematics course only covered the first half of James Stewart’s Calculus. At that time, I was eagerly looking forward to studying the second half, whcih is the multivariable calculus. But due to my course structure, I never got the chance. Then, upon arriving at NUS, I discovered that the Prof here assumed we already knew the basics of calculus (that’s precisely what I learned at NTU) and immediately dove into the multivariable calculus. That’s amazing!
And this once again proves that everything happens is the best plan!
At this point, this recap seems to be coming to an end, which also means that a semester of life and study is coming to a close. Looking back on this past semester, the shifts in my mindset, the changes in my thoughts and my actions, have all brought a profound sense of growth to my heart. In summary, what I’ve come to realize is that around you, there are countless “Happy Meals & Angels,” representing so many things to be grateful for. So, don’t let life’s pressures weigh you down — pause often, and discover the “little blessings” around you. It is through gratitude that you will find the strength to keep moving forward! 🌟
Anyway, what’s truly worth celebrating is that I will soon be reunited with my family after four months apart (😭). How time flies! It feels like just yesterday I was saying goodbye to my parents at the airport, and now, tomorrow, I will be meeting them there again! I think for me, the saddest moment is at the airport, when I have to say goodbye to my family, but the most exciting moment is also at the airport, because that’s the place where I get to reunite with my long-missed family! It’s only when you’ve lost something important that you realize how wonderful it is to have it, and how much it is worth being grateful for having it!
Perhaps, this is one of the insights that studying abroad has brought me: only after being away from home for a while do you truly realize the beauty and warmth of having a home. No matter where you go, your “root” will always be in your homeland. East, West, HOME is the best!
Once again, I would say this page is too short for me to include everything in. Even if I had thousands of pages, I could never finish writing about all the grace and love I have experienced. But anyway, may all gratitude be transformed into action!
Here, I sincerely wish everyone a happy holiday and a Happy New Year in advance! 🎉
Dec 3rd 2024, National University of Singapore, Kent Ridge Campus
]]>Thank you so much for spending your precious time reading my “nonsense”😂, you have read around 3000 words! That’s super awesome!
The first semester in Year 1 for Comp Eng students at NTU is not that stressed. It’s likely that you have much free time to do things you like.
Name: Ethics & Civics in a Multicultural World
Grade: A
Name: Healthy Living & Wellbeing
Grade: B+
Name: Engineers in Society
Grade: A-
Name: Physics for Computing Grade: P(ass)
Name: Introduction to Computational Thinking & Programming
Grade: A+
Name: Digital Logic
Grade: A+
As a foundamental core course, this course is very important if you want to learn more about computer hardware, like computer architecture. Many books will take digital logic as the very first course before they start talking about the computer architecture. So, it’s very important.
Name: Mathematics 1
Grade: A+
Math 1 is not difficult for those who take PRC GaoKao to get into NTU, so my advice here may not be suitable for others. But I still think the textbook is very very helpful for this course.
The second semester’s workload is much heavier than the first sem because of the emergence of more difficult core courses, like DSA.
Name: Inquiry & Communication in an Interdisciplinary World
Grade: A-
Personally speaking, I really like this course. It’s a bit like writing composition in my high school. But the difference is that in high school I use Chinese, but in uni I use English. The main idea remains almost same, about fresh arguments, criticial thinking etc. I would say this course will be very interesting and not hard if you have a very nice tutor. For my advice on this course:
Name: Navigating the Digital World
Grade: B+
This is just a normal CC course, I would say your group members play a vital part.
Name: Discrete Mathematics
Grade: A+
Discrete Mathematics itself should be the very very important and fundamental course for the algorithm in computer science. But in NTU, seems that our discrete math doesn’t serve that purpose well. Most of the course content are not much related to the algorithm, it’s more about math itself. So, I strongly recommend you take some other school’s discrete math if you want to improve your algorithm ability. Also, in NTU, the sem1 version and sem2 version are different and sem1 version seems to be harder.
Name: Linear Algebra
Grade: A+
Linear Algebra is often considered useful in Artificial Intelligence. It is very important too. I would say NTU CCDS’s Linear algebra is okie lah. But if you want to go deeper, I also strongly recommend you taking MIT Gilbert Strang’s Linear Algebra.
Name: Computer Organisation & Architecture
Grade: A+
This course is divided into two parts, the first half is about ARM Assembly and the second half is about computer architecture. Usually, the first half is considered harder than the second half. The course is built on the basis of your Digital Logic and is usally the part that comes after Digital Logic on most classic books. It can help you understand the behind working principle of computer program and some computer hardware.
ARM Compiler armasm User Guide
This document provided by ARM is very very useful. If you are confused about some instructions in ARM, you can refer to the document. To be honest, it was not until the day before the test that I found this document very useful.
Modern Assembly Language Programming with the ARM Processor
This book is also not bad, but the coding style may be a little bit different from what you learn. The main idea remains the same however.
You are also strongly recommended to use the VISUAL simulator to get a deeper understanding of the ARM assembly.
Essentials of Computer Organization and Architecture.
As the textbook for the second half, this book is written so well that you can understand the basic and fundamental principles of the computer architecture. Especially the one about memory and cache.
Computer Organization and Embedded Systems.
This book can serve as a complement of the book above. It will discuss more at the logic gate level. For example, the principle of DRAM and SRAM etc.
Name: Data Structures & Algorithms
Grade: B+
As one of the most important and hardest core courses in NTU CCDS, this course needs your strong self-learning ability (especially after the course coordinator has changed). To be honest, I am really not good at this course and don’t think I got some useful advice. I would say as a very important course in Computer Science, it is far from enough if you only learn in NTU, so I strongly recommend you take some other school’s DSA. Some of the resources I find useful are below:
Name: Introduction to Data Science & Artificial Intelligence
Grade: A+
The course serves as an introduction to DSAI, I would say the quality is quite okay. If you take this course seriously, you will definitely learn a lot. And for this course, I think the best resource is GitHub.
At the end of my AY23 S1, or more precisely speaking, just immediately after my Digital Logic Final, I didn’t know what I was thinking about that time, I just rushed to the Library and tried to find some interesting book about technology to read. I remembered at that time, since I messed my last question in the Digital Logic paper, I wanted to relax myself by finding some books to read. (I know it’s weird ah)
At that time, I had already been tired of reading some course-related textbooks, so my focus was on “storybooks”. At first I was quite at a loss, having no idea which book to read. But then I remembered one man, whose book impressed my a lot during my secondary school time. That book also inspired my passion for computer engineering, which combined software and hardware. He was Walter Isaacson, and that book was Steve Jobs(book). At here, I don’t want to talk too much about Steve Job(book), but to be honest it planted an Apple dream in my heart. Also maybe a bit tired of reading biography, I tried this book by Isaacson instead, hoep to find something useful in the innovation, as well as improving my English via reading the authentic English book.
However, finding time to read this book is hard, even though I brought this book back to my home country, I didn’t finish reading this book until the end of AY23 S2. (yeah, it took me about one semester!) Actually I would say if all in reading, then should definitely not take that much time to finish. But due to some uncontrollable reasons, it took me a long time to finish reading. One disadvantage doing so is that the long interval makes me forgot most of thing about the previous chapters. So, don’t procastinate like me. But fortunately, as a storybook, it doesn’t matter that much if you forgot about the previous chapters, but I would still highly recommended you not to do intermittent reading, especially letting the interval be very long.
Isaacson has put some food for thought inside some paragraph in some chapters. But there is such a “take away” section inside the book, which serves as a summary of all the food for thought in the previous chapters. Some points really impress me so I want to note them down.
Collaboration
Innovation comes from teams more often that the lightbulb moments of lone geniuses. One good example mentioned is about the ENIAC. This also intrigues my thought on what my school’s career coach has told me and his meaning is roughly that if you’d like to work or think alone, PHD may fit you and otherwise, if you prefer more team work, then companies may fit you in the future. At that time, I thought it was useful. But now, I think I need to rethink about this question: Scholarly research and Commercial Endeavours.
An interesting exmaple used by Isaacson is Standford and MIT. While the former is suitable for those who are interested in both, the later may put more emphasis on research. From this book, Isaacson’s focus is mainly on those entrepreneurs, which I think may not be suitable for our normal people. But on a second thought, the main idea of collaboration seems to be still applicable. Doing scholarly research, which may be the main work by those PHD, is not necessarily only about lone work, from my point of view. In today’s world, I still prefer the Stanford mode, which is doing something practical, that’s about doing something to the world instead of immersing only in the academic field. I remember that scholars in Stanford often have one foot in the industry and the other in the academia. But, I still very respect those scholars who works solely in academia. I would say that without their contribution to some abstract fields, we may not truly make any world-chaning innvations.
While collaboration is undoubtedly important, the next idea also impresses me a lot.
“Stand on the Shoulders of Giants”
The name is given by me. The original sentence on the book is: “The digital age may seem revolutionary but it was based on expanding the ideas handed down from previous generations.” This is pretty close to what Issac Newton has said “If I have seen further, it is by standing on the shoulders of Giants.”
The first example is the evolution in the electrical engineering, from vacuum tubes to transistors. At that time, kids can get access to these devices easily and thanks to the fast development in this field, they can get new ones after old ones. One advantage of doing so is that you can build basic computers or calculators on your own from scratch. I strongly agree that doing things by your hands is the best way to trigger your interest in a field. Also, using newer devices to replace the old ones can trigger you to think about which part needs to be improved. I really like idea of knowing how one device works from its bottom. Especially in today’s digital world, what our university and society wants is letting you know how to quickly apply one specific technology. But I think knowing the basic technology behind is much more important and interesting, which can also help the innovation on the existing things. That’s a reason why I always like to read the textbooks of the course I take at the uni. Doing things practically and understand its basic operatiing ideas behind, that’s what I think we should do to cultivate the innovation mindset.
When talking about standing on the shoulders of giants, one thing we can’t miss is Open-source. This kind of open-source free software, like Linux and free collaborative projects, like Wikipedia, are dubbed as “commons-based peer production” by Professor Yochai Benkler from Harvard. I would say it’s true, especially for those who have participated in some open-source projects. I beleve the thrill of seeing your code being added to a large project will definitely make you want to contribute more to that project, making it robust and well-maintained.
There are many other take-aways in the book, but among these, the above two resonates with me most.
As a book focusing on the innovation in tech world, this book is good to read after the finals or during the spare time. If you is interested in the history of the tech world, this book is also a not-bad choice.
]]>