Published on

Project Heart Code



During the winter break, I had the priviledge to be part of the Project HeartCode team as the Web Development trainer.


HeartCode is a community service project organised by Singapore Management University's school of Computing and Information Systems, providing youths with the opportunity to explore their interest in IT.

Role and Responsibility

While the student engagement spanned only 5 days, with web development taking up 3, the preparation phase leading up to it was about 3 months long! During this time I curated training materials (Slides and exercises) on HTML, CSS, Javascript and Vue. I also trained the mentors which served as a dry run for the program.

Revision of course material

After getting feedback from the dry run, I decided to remove Vue from the syllabus as I found that it was too much for just 3 days, and focusing on the basics would be a better idea.

Furthermore, I decided to create a website to aid the teaching, which collates all materials for mentors and mentees, giving them access to the slides, exercise materials, and code snippets throughout the duration of the course. The site also served as a link to the projects the mentees created at the end of the engagement.

Javascript training page | Visit

Javascript training page


1. Teaching is not easy

I'm sure at some point in our education lives, we have or will chalk off our incomprehension of a subject to bad teaching. However, being on the other side of the fence has made me understand the difficulties that educators face.

Firstly, you need to put yourself in the shoes of the audience and try to recall how you felt when you were first introduced to the subject, how you were taught, the good and bad aspects of the path you took, then craft the lesson accordingly. But just as each student's challenges and pace are different, yours will differ as well, and thus, the lesson that you have curated based on your experience might be perceived as "bad" to them.

Secondly, you have to keep the students engaged even though the topic is dry and technical because once the students are disinterested, and the subsequent topics are built off the initial one, they will have an even harder time staying engaged. So inserting jokes, activities and breaks every now and then is essential but it takes a lot more effort as compared to just dumping information on them.

Lastly, since there is an end goal (for the students to create their website) and the engagement is time-bound, time management is crucial.

2. Be open to change

As Heraclitus says, "Change is the only constant in life," and it is important to learn to embrace it. When conducting the dry run with the mentors, I learned the value of getting feedback, consulting with others and being open to change. It is essential to be adaptable and willing to adjust as needed. By modifying the syllabus and further curating materials to support the teaching, I felt that it better engaged and enhanced the students' learning experience.

3. It is a marathon, not a sprint

Just as with many things in life, we sometimes confuse ourselves about the purpose of what we are doing. I was initially stressed out by the fact that the students might not be able to follow the lessons fully and placed my focus on trying to get them to remember everything that was taught. However, after some reflection, I remembered that the purpose of this engagement is to provide the youths with an avenue to explore their interest in IT, and what I could do is to allow them to explore and cultivate that interest.

With that realisation, I shifted my teaching approach towards encouraging the students to explore and cultivate their own interests in web development by showing them the possibilities and providing additional resources for them to explore outside of the classroom. Afterall, from my own experience, the classroom is just the starting point, true understanding comes from applying and self-learning outside of the class. If I were too focused on pushing the students to create the "perfect" website, it would become a chore for them, potentially killing their interest in learning altogether.

Final Words

I am grateful for the opportunity to have been a part of the team, as it pushed me out of my comfort zone, requiring me to conduct my own research and deepen my understanding of the content that I needed to teach. As someone who is not particularly adept at public speaking, I am glad I had the avenue to practice and improve my public speaking skills as well.