Sunday, April 18, 2010

Lesson Learnt

Time flies when you are enjoying it. It’s probably the fastest and the most fruitful semester I have ever experienced. 3216 is no longer just a module code but a number I will remember in life. I’m so thankful to be in this class, exploring the real world, learning from great lectures and killing projects, sharing the suffering with many wonderful pain suckers, and eventually growing up.

In the blog entry “What I hope to learn from CS3216”, I wrote, “Think higher, do better, and become stronger”. And now it’s time to check.

Learning and Thinking

I doubt if I could find a better class in NUS to teach me learning and thinking. Frankly, I didn’t expect I would learn this from a module. I thought I would only gain this ability through myself exploration. It turns out, in deed, I’ve learnt to think more, think harder, and keep learning. Thanks prof as an excellent guide to help me enhance this ability in a short term. You teach me how to fish, the skill that I will use in life to be able to survive. And the rest is for me to practice more in order to succeed.

How did I learn?

1. Lectures

2. Projects

3. Spamming on Facebook, Buzz and Google Reader

Lectures are pretty good. Those guest speakers are really impressive. Some lectures attracted me more than others. This also helped me to figure out what I like and dislike.

I definitely learn most from projects. It’s always important to dirty your hand. Learn from experience. Learn from practice. That’s the best way.

The extra learning material is from social network XD. I’d like to say: Prof, it works, and it helps. J The only problem is I read very slowly. L

Do Better

We have done 4 projects in this course. The best memories come from them. XD

1. Facebook Application: BoomzCart

It looked like a huge project as I was quite blurred at that time. No web app experience, no technical skills. But there was one thing I believed: we could learn and we would finally make it.

So started from zero. We learnt whatever we needed. W3Schools and Google were our best friends. A lot of technical skills were learnt from this project. It’s really a great warm-up exercise. It pushed you under pressure immediately at the right start. It’s also like problem set 3 in 1101s - After the first suffering, the rest pain became normal. And gradually we knew how to enjoy it.

Special thanks to Justin!!! You are a good program lead in our team. We could not do so well at the beginning without your guide. (I still remember that day you took MC to join our work hahah!)

2. Facebook Seminar: MarketPlace

This project was a break after the first one. It’s the most relaxing and quite interesting project. We could simply do a presentation according to the requirement. But we chose not. Joshua got this awesome idea to make a video presentation. Therefore, we got the chance to try something different: making a fancy story, drawing simple pictures and taking 400+ photos to make them move!! That’s really cool experience. I enjoyed it a lot. XD

3. Google Wave: Bubble Man

Prof always told us, “Code less, and think more.” Well, this what we did for this project. I have to say, bubble man was just a backup. We actually came up with a greater idea. But unfortunately we were unable to do it given the short time + CNY + recess week. I think not just our group, others may also feel they could do better if it’s not during [CNY + recess]. But there are still groups who’ve done a great job, e.g. YourBrainStormer. From this project, we learnt “ideas are cheap, execution matters” from our own example.

Nevertheless, I think we still did a good job. Two groups camping in Sheares Hall Block C lounge was also fun!

4. Final Project: PeopleBAWX

“一份耕耘,一份收获”We put most efforts in the final project, we definitely learn most from it.

First of all, I guess I won’t touch Visual Studio at all if I’m not doing this project. And I would probably miss the chance to explore the powerful WPF. And it’s quite cool to build software from scratch. My point here is, always be open to accept new stuff, learn something different, and judge in the end.

I don’t want to mention too much about the technical stuff. But I want to highlight the UI design part. It’s useful to analyze the user behavior when you are doing UI design. People are not like you. Don’t expect they follow your rules. You must create an environment that makes them feel comfortable and controllable. And each event designed must fulfill their expectations. I think this applies for both desktop and web applications.

Another thing I learnt from final project is Team Dynamic. People in this class are all very nice to work with (thanks all my project mates XD). But different people have different working styles. Sometimes it took time to get used to each other. Sometimes there might be misunderstanding. Sometimes you got confused and lost motivation. These are the problems that may affect a team’s performance. But they can be easily solved through better communication. Even talking random stuff can help build up the bonding among team members. Think less about you and me. Think more about WE as a team so that those small “bugs” can be fixed easily. It’s also important to keep the motivation. We, as a team, must believe in what we are doing. Having a clear plan, assigning tasks properly and updating each other frequently helped us to keep in mind the big picture and always know what to do next. We sometimes fell behind the schedule. Therefore, we needed to catch up quickly or change the plan accordingly. These are the lessons learnt along the way. I think it helps future projects as well.

Anyway, our project has not ended yet. It seems we still have a long way to go, and a lot more to learn! Jiayou guys! Let’s do better!

Become Stronger

Do I become stronger?

Yes, because CS3216 failed to kill me. I survive, and I grow.

Since this is the beginning of our journey rather than an ending, let me set “what I hope to learn” for next semester. Next time, I hope I can be more confident, effective and responsible.

Thank You

Thanks to our evil prof Ben for not killing me but teaching me lifelong lessons instead. It’s really great experience!!!

Thanks Mr. Goh J You are the poorest but the best TA in NUS. Thank you for taking good care of us!

Thanks tutor Yanjie, Su Yuen, Jason and Yuen Hoe for the workshops and projects help!

Thanks my friends Zhaocong, Wangsha, Xusu, my dearest neighbor ZZ, and many more for supporting me!

Last but never the least…Thank you, my lovely classmates! We together make the legend of CS3216! :P