Principles of Software Engineering

I think the agile development cycle is cool – iterative development. I think that’s what we need for EusoffWorks IT wing. We’re too dependent on the Waterfall model. EDIT: After talking to CheeEng (the EusoffWorks IT-Guru), apparently it’s not that we are too dependent on the Waterfall model, it’s just that we don’t even have a proper development model OR the members are just incompetent to begin with… Oh well, maybe what we need is just someone to motivate them enough to die for the projects… like a certain prof that we know.

The major getback is the assurance for non-programmers that they are useful in this module.

Tankie – 3 men team

Next up, SCRUM -> very interesting. The important feature of SCRUM is the ‘sprints‘ – blocks of short time with a list of goals

Scrum -10 mins everyday (status update) 3 questions

  1. What have I done?
  2. What are you going to do today?
  3. Will any of my work done today affect anyone else’s work? OR Are there any dependencies before you can work on your part?

and so there’s a product backlog with all features listed down and priorities.

Will this work in our CS3216 or school environment? Just as Justin and Prof. Ben has mentioned, in this module, there’s not gonna be someone who’s just going to look at the spreadsheet and be the archer/sniper.So how do we integrate this?

Next up, yeemun(?) EDIT: wei man(thanks dingyan) a girl who worked in “Lucas film” on Star Wars: Jedi Alliance @@ as project lead. She shared her experience on Scrum project management.

Dialogue with Mr. Ong Peng Tsin

Who is this guy Mr. Ong Peng Tsin. More details @ the Facebook event. DISCLAIMER: this blog post was written during a lecture.

Honestly, I went into the dialogue session without any idea what it’s gonna be like. I would have guess what it is since it was prof. Ben who organised the dialogue. But seriously, this is effectively my first dialogue session with a successful entrepreneur. within the first few minutes, I know I’m in for a treat.

Just like the first CS3216 class, soon enough hard questions kept popping-up, e.g. “how do you define success?” “what’s your motto in life?” “how do you manage to overcome your biggest challenge in life?”. Mr.Ong answers all of them with no sweat. It seems like successful people always have a set of formula under their belt. For Mr.Ong, it is “Clarity”. a simple search in the eng-chi dictionary gave the chinese equivalent of 明晰. “Define clarity” on google gave it as “the state, or measure of being clear, either in appearance, thought or style. (wikitionary)”. It is of the clarity of purpose. It is about being clear that this is where I should be now, doing what I should be doing. That, I classify as good material for my mental acrobatics. We shall leave the acrobatics for later. Another key point that sort of hit me was Mr.Ong’s definition of Smart people. I don’t really remember why he attempt to define a smart person. I know it has to do with some engineering recruitment etc. But anyway, the first criteria is the ability to work with people, team-working skills. That’s true, as we all know 2 brains is definitely better than ONE, especially those who resonates. however this definition is everywhere. The thing that hit me was the second criteria – an inquisitive mind…. It’s about the natural curiosity about things around. It’s about asking the question WHY and the attempt to answer the question on our own. It’s about trying to figure out hard questions. According to these criteria, In a way a smart person is a person with clarity as well. Clarity requires a lot of consistent question answering.

With this set of formulae, I try to do some curve fitting with my experimental data (personal experience). Immediately, it’s intuitive that it’s a nice fit. this might sound like a brag but the immediate conclusion is that I’m smart! I believe most of us in CS3216 must be smart as well, if not we might not even pass prof. Ben’s recruitment exercise. As described in my “about joshuatj” page I love mental acrobatics, to a point I take it as my hobby (or sport). Essentially, mental acrobatics is my unique way to achieve clarity. It’s no too big a different from what Mr.Ong has described. That’s what I do all the time, I enjoy asking myself hard questions and attempt to answer them logically. (Thank God that I’ve met some rare individuals that can take my mental acrobatics e.g. Cheeeng and recently Kana and Raymond)

In a way, what I’m doing here is sort of like Thinking out loud (writing out loud?) and I really like this a lot. I called this “Output Learning”. I believe that unless I am able to put what’s in my head into words (saying it out OR writing it down), I don’t really understand what’s going on.

So now, the mental acrobatics, as Mr. Ong has said, startup is like an Extreme sport, if one is not ready, one shouldn’t jump into it so soon. However, I was taught to live a middle way  life 中庸之道. How do I balance this two apparent opposite polarity? Is extremity absolutely necessary for influencing others?

ah… and I found a transcript of another interview with Mr. Ong 2 years ago. That is after I wrote this post

Individual Work (“Blogging for Credit”)

and so it seems that we’re supposed to do this for every class… Hmmm… Let’s do this after my FYP Interim presentation. >.<

There are no guidelines in terms of the length of each entry. The point however of this blog is to
“ensure” that students pay attention and actually learn something when they come to class. 🙂 For
starters, students may wish to reflect over the following points for each lesson:
1. What are your general impressions/comments on the lesson?
2. What are the key ideas of the lesson?
3. What do you agree/not agree with?
4. What questions do you have about the ideas/concepts discussed?

By the way, I’ve added “Facebook Connect” for the comments. Next i’m gonna try to add “Google Friend Connect”.

Eusoff Hall Corporate Video 0809

as shown during Show & Tell! I didn’t did much self-intro during the session. But basically I pretty much a media guy, having spent most of my life in EusoffWorks. I spent my last summer interning in NUS Hollywood Lab, Los Angeles. By the way, if any of you are interested, you should apply, registration is opened all year round Fully sponsored air-fare and allowance – awesome opportunity not to missed! (BTW, this Hollywood internship banner is all over campus, you should’ve at least saw it once)

If you like this video. You should visit for some featured videos. And if you’ve ran out of video on that site, feel free to visit

What I hope to learn in CS3216

Well, that is it. I got in. I’m taking the alleged “most-xiong” module of all time. From what I’ve heard so far, I think this is definitely not an opportunity to missed and I’m glad I’m in it. Rumour has it that this will be the final year that CS3216 will be offered in NUS. If that’s true, I’ll be the final batch of CS3216 – and that is a pretty good milestone.

For those who have no idea what I’m talking about CS3216 is a module offered by NUS School of Computing (SoC). Its full name is “Software Development on Evolving Platform”. This semester, the “evolving platform” is Google Wave. Now that is something real cool – I’m once again at the forefront of evolving technologies.

It’s good to be writing again. It has been some time since I’ve wrote something. Oh no wait, I’ve just wrote 35 pages for my FYP report. But it’s different I guess – Blog is much more dynamic, it is closer to ramblings than proper structured writing. I like that feeling when my “brain pores” opens up one by one. It’s almost as if I can feel the inter-connection being form between the neurons in my brain.

Anyway, I’m supposed to be writing about what I hope to learn in CS3216. But before that, I would like to talk about CS3216 itself.

First of all, the fact that CS3216 is the converging point for NUS most talented individuals excites me. It’s like 华山论剑 where all the 武林高手聚集。I’m sure that I will not walk away from this module empty-handed. I have always believe that the best in me will only be ignited (挑旺) if I am being put through tough challenges. In one sense what Vinod Khosla (first CEO & Chairman of Sun Microsystems) said is really true “every big problem is a big opportunity” I’ll add “…the bigger the problem the bigger the opportunity“. I will never be satisfied until I’ve tried to overcome it, and if it doesn’t really work out, I will keep trying until as and when God slam the door on my face.

While I am writing, some scenes in Dragon Ball came into mind. I vaguely remember the plotline of 孙悟空 getting stronger and stronger each time he pushes himself over his comfort zone. I think if we don’t constantly push ourselves we’ll be stagnant and start rotting instead. Well in RPG games, your level can only go up as your experience increases. I believe it’s no different in our current reality – we have to keep leveling up!

Ok, enough of my ramblings. What I hope to learn in CS3216. Firstly, it’ll be programming. I think the mere fact of being around elite programmers while they’re working is enough to absorb enough essence to last me for quite some time. Besides, the intensive programming assignments will push me to pick up programming legitimately, that’s good.

Next I hope to learn more about how to learn from learned people. It’s not that I don’t know how to learn yet. But from what I’ve heard so far, there’s no doubt I’ll be learning a lot of new things by the end of this module. Thus, I am more interested in solidifying some of my ‘learning skills’ as I use them in this module.

I hope to build networks. CS3216 attracts talented people with like-minds. It’s gonna be an exciting journey traveling along with people who could understand what you say, people who knows how to appreciate xkcd, people who goes shopping @ SIMLIM (only), people who gets all excited with new gadgets and technologies and hopefully develop long lasting friendships .

I have always wanted to work on my pet project – a collaborative social media platform. However, I am technically too weak to realize my ideas. Hopefully my ideas will be able to resonate among the class mates. Praying hard here. Ha.

EDIT 20100212: The more I think about it I think the strongest reason that I insist on joining this module is the like-mindedness of Prof. Ben Leong and myself. No doubt he’s very charismatic but some of his principles and world view are not dissimilar with mine. In addition, I got to know that he is a Christian who believes in God’s Will reigns in our life. And his wife plays WoW! Ok, that is totally random but it shows how COOL is Prof. Ben… a wife that plays WoW… I am still stunned.