Tuesday, November 15, 2011

What I have learnt

A few days ago while I was doing the NUS teaching grading survey, I was surprised that I had more to say about CS3216 than any other modules. Of course, mostly good stuff!! Looking back at the semester, I always jokingly tell my friends "I'm kena sold to computing".

True story.

During poster session
This is the semester that was initially filled with uncertainties and later on transformed into a systematic deadline-based curriculum with small excitements in between.

Uncertainties: I doubted myself when Prof Ben said, 'every sem there're 1 or 2 students who drop the module'. I thought I would be the one cause I'm not that confident in my design skills and honestly speaking I don't know what's gonna come my way. But, I persevered and immediately during the first assignment, I kind of got the hang of it and began to trust what I do.

Systematic deadlines-based curriculum: After staying back in school for the first lecture of cs3216 on my first day of school, i kind of saw the truth about this sem: work work work. During the first few weeks of the sem, I created a list of deadlines for all my modules and to my horror, there seemed to be at least 1 deadline every week! It's like I've been pre-programmed into autopilot mode and all I do is to act like a robot and do projects super consistently, 1 submission after another. I liked the torture actually. At lear I know I've been working hard and even if I can't score well in exams, I know I did not waste any time and learnt a lot.

Excitements: These happens after each submission and every each feedback. Honestly, getting praised for our hardwork is really an awesome feeling. However, the sad thing is, not many modules use peer grading and we don't even get to hear complimentary words from lecturers. I like how we are requires to give comments to each other's works and sometimes, I get confidence boosts from reading the comments! Also, at the same time, I learn a lot from other teams and their projects!

All look so happy! 

What I have learnt:

1)  "definitely, some basic programming skills!"
Yes through the various workshops in the starting of the sem. Subsequently, i was lucky enough to experience some very basic coding in one of my other NM modules where we had to learn how to use Processing to create interactive games. Later on, during the final project, I could understand the big skeleton of the system my team built. I could have explored more on my own but i just didn't have the time due to crazy deadlines from other mods as well. I've gotten a few recommended self-learning sites, i hope to make this holiday meaningful using those. 

2) "more about UI/UX design"
Definitely. What i have done was all evolving around UI design! And i really learnt quite abit on how to design for programmers to use. Also, through UAT with target audience, i learnt that we should always bear this in mind when designing: always think like a user. 
Prize presentation. LOL
3) "how to work well in a team"
Or, should i have said 'how to work well with programmers'. It's real tricky at first cause generally, what they are looking for and what i think they look for are really different. Best take home point: design systematically. Cause we always gotta save each and every clickable element in .PNG file format with the correct size. 

Kids are just so adorable.
To sum things up, I really enjoyed he module. I can easily say its the most fulfilling module I've taken. Thank you Prof Ben for giving me the chance to take this module in the first place! :D I'm honoured to be one of students from the last batch.

10 year down the road, what i will remember about cs3216 are the friendships forged, the night that we stole beanbags to sleep on in utown, crazy laughing sessions at com1 at 1am, the unfinished fight for com1 mayorship on 4square, and many more wonderful moments like this...

Tuesday, November 1, 2011

Reflections

Wow. all the groups presented awesome stuff.

I really liked 'Letters to Amanda' cause it's really meaningful and the simplistic design is a boomz. Awesome sauce (Joshua style).

Other than that, I would like to talk about working with external companies. Both satisfying client's needs and satisfying proj requirements are IMPT, so whats the issue here. Actually, there isn't much a issue, but we are somewhat dependent on another company(that is not our client) for the graphics, audios, videos, used for app. So this kinda determines our progress for the app. Also, the time taken for whoever that need to get back to us regarding our queries is super long and not standard, so its really hard for us to gauge and plan.

Prof Ben told my group that we should still take charge of the project and produce results. We shouldn't be lagged because we don get the materials from them. Then, i was thinking, sometimes, we can't act on our own because we are building something for someone and we don't get the full decision right. Features we propose, also need to be approved by them. Of course, we could just build the ideas and then let them review later when they get back to us. Or build it with our self-created graphics then change it later when the professional ones are done later. We may just have to change the system again afterwards if they are unhappy with it despite us thinking the features are cool and awesome. I feel it's like a waste of effort if we are unsure whether will they be really put into use or scraped later on. That was what i felt back then.

Also, I know that even though client may not like the new features we did, it is ok to satisfy proj requirements because eventually people are subjective. One can like our idea, another may not. This is like a never ending dilemma - whether to satisy proj requirements and create something with less pro materials or wait for client's approval then proceed. So hard to strike a balance...

But of course I completely agree to Prof Ben now. We should not be hindered, especially by problems we claim to affect us but they actually don't.

So, my group got tog and discussed and we are ready to go ahead with new ideas and features. Gonna implement them and then propose to client. It's similar to 先斩后奏 in the sense. HAHA. Anyways it's all about the learning process!!!