Saturday, March 14, 2009

Episode 8 : Software Engineering

From Prof Ben's last email regarding blog posts ...


I'm assuming that my previous post with the purple dog's picture is not acceptable for grading purposes.

************

On Monday, Prof Ben gave a lecture regarding the Principles of Software Engineering. It's not really something too new to me, and I've heard these golden points many times over. However ... it's particularly disheartening to realize that I'm common offenders of most of them.

Subconsciously, I've known my flaws all along ... however, I just haven't had the insight or sensibility to change my programming methods. I'm always in a rush for time, and my stubborn mentality heightens the problem. Given tight deadlines, I don't think a lot before i initiate my coding. That goes for both Assignment 1, and Assignment 2.

I work for effectiveness, but paid little attention on efficiency.

This is kinda reflected in my peer reviews as well ... disheartening but true.

"More thinking, less coding"
This phrase keeps ringing in my head ever since the lecture. I was trained to be an engineer, but voluntarily side-tracked to programming and development. I self-taught most of the programming and software knowledge I know, as well as oweing to the guidance of several important people in my life. I guess I need to either shape up or ship out (which at present, is out of the question for me).

Modularity, Decomposition.
Abstraction
Separation of Concerns
Generality
Design for Change

I read Wenhan's post ... and I kind of agree with him... Maybe it's an engineer thing. I've heard these Principles many times over, but I can't really see the distinct boundaries separating them. To me, modularity is the mother of all principles. The rest are simply different definitions of the same logic with different methods.

In short, Divide and Conquer.

Instead of one huge gigantic block of code, the framework should be structured such that functions are neatly organized, readable, and easily modifiable. This allows for concerns (such as interface design and logic) to be easily separated and the messiness reduced. This also allows for future expansions and scalability ... just like adding lego blocks to each other. Abstraction and information hiding can also be achived, when functions, classes, and libraries are neatly and modularly planned out.

I have lots of thinking to do ... and challenges ahead as usual. I hate to admit that my codes are rather spaghetti, but I guess I'll just have to improve myself if Captain Cook were to take off to an even greater heights.

Bear in mind though, that the Principles covered during the lecture only applies to the generation of software and codes. In the real world, far more important principles need to be taken into consideration if you are to launch a successful product.

Principles such as ...

Usability of Product
Teamwork
Practicality of Ideas
Publicity
Market Demand

And as usual ... these are stuffs that doesn't need elaboration ... coz everyone already subconsciously know what they represent, and how important they are.

The question is, why are we stubbornly not persuing it sometimes?

You can bring the cow to the water, but you can't force it to drink ...

Many times in life, the knowledge (the principles in this case) represent the water, while we are the cow. We have been convinced that the water is essential to us, but why are we just nodding in agreement without ever touching the water ourselves?

When queried, our answers in defense are usually stuffs like "no time ... i'm not good enough for that ... etc".

I think the best answer to the question, lies in our personality. We are just too stubborn or lazy to get out of our comfort zone, and then we come up with an excuse to validate or justify the present situation ... so that we become not the one to blame when things cock up because of our stubborness.

Prof Ben keeps saying that he is teaching to earn his pay ... actually that is kinda the only thing (and best thing) he can do for us. The door has been shown, noone can make you go through it other than yourself.

Moo.

********************

We are all fighting for our grades, our dreams, and our ambition. However ... somewhere in NUS Science ... a fellow student just had an additional barrier unfairly slapped in front of her before she is able to chase her dreams like us.

Please check this out, and help if you can.
http://blessxiaoou.net/eng/



God Bless.

Thursday, February 26, 2009

Quotes: On Fear



"Courage is never the absence of fear. Rather, it is knowing fear, yet still having the will to push on"

Tuesday, February 24, 2009

Hello World

Hello to the world!This particular blog post has been posted online via BlurBlog V1.0!!Signing In, posting, and synching has been done to blogger from BlurBlog interface!

I am very happy!

That I can make my fonts italic!

And Now its underlined!

  1. And Then Numbered too!
  2. Look at Me!!!
  3. <----- Number 3!!!

Look!!! Right Justified!!

Tuesday, February 17, 2009

Quote

Nothing worth doing is ever easy.

If it's easy, then it probably ain't worth it.

Monday, February 16, 2009

Episode 7 : User Interface Assignment



Seeing how web services like Yahoo! Answers has worked so well, the GetHelp! application sounds like a pretty good idea indeed.






The interface design, however ... looks pretty terrible. It apparent the team needs better designers.



Elements Layout


The home page is simply too cramped and messy. Buttons are lying around everywhere unorganized. This can be very very frustrating to the target user who's trying to fill in his details ASAP. More than once, the buttons are placed so near each other that users may accidently click on the wrong links. Here's the most prominent example.



The "recommendations" link has been placed right next to the "badges" tab with very little margin. There's a good likelihood that impatient users will accidently click on the wrong links, giving rise to unnessary frustrations. The same applies to the mini icons placed beside the "need quick help?" section.


With reference to the same picture above, one can notice that lots of white spaces are surrounding the text and picture elements. So why do the designers choose to cramp their text and icons into a tight bundle instead of utilizing these white spaces?


Checkboxes


The designers apparently overused their checkboxes on the home page. In the "Who do you wish to ask?" Column on the home page, 3 checkboxes are present to the user as options. There's a bit of logic problem over here ... what if someone checks all 3 boxes? Then what is supposed to happen?


Each of these options are dependent of the other options. If you choose to post your question to ALL of your friends, how can you "pick and choose reliable ppl at the same time?". Confusion!


Instead of checkboxes, a radio button should be placed here.


Logic Flow


Looking at the home page ... i don't really know what the developers are trying to achieve. Is it sufficient for users to simply type their queries in the big "I need Help With ..." column in order to post their questions? Or is it compulsory for the users to fill in further details in the 2 columns below?


Looking at the home page, I'm pretty tempted to simply enter my query, and then press the big red button without any further hassle. If a popup box should appear later on with messages such as "You have missing fields. Please fill them and re-submit.", I know i'll get pissed.


If the bottom 2 columns are compulsory fields, I have 2 suggestions for improvement.


1) Redesign the home page to make the bottom 2 columns more prominent, with colors, bigger fonts etc, such that users will not miss it before pressing the submit button.


2) Remove the botton 2 columns from the home page, and place them within dedicated pages, where users will be redirected after pressing the submit button.

Overview Page


Check out the proximity and the positions of the buttons above. It seems that the "Recommendations" link has been forced to sit underneath the "Overview" link due to the lack of space. Classic example of poor CSS implementation.

Also, it has come to my attention that ... just looking at the picture alone, I don't even know which page I'm currently in. None of the 4 tabs above are lit (unlike the tabs in the homepage). In fact, why are there 2 different styles of tabs in the top panel? Do they serve completely different purpose?

Consistency in elements design is one of the basic rules in creating a usable interface. As a layman user, I don't really know what different categories these buttons may be sorted in. The only thing I will know, is that they are all links to different parts of the same application. As such, it serves well for the developers to apply a consistent design to the tabs on the top panel.

Project Page

Erm ... the tabs on the top panel are covered partially by the help details banner?

The help section looks far too basic with minimal details functionality in place. What if I have screenshots to show? Is that supported? What if I have an essay to write to relate my problems? Is that supported as well? If the answer is no, then the designers probably have to wake up their ideas a little bit.

Bots

For an application like this, there are multiple possibilities of abuses by bots and all. Furthermore, the help posting functionality has all been squeezed onto the front page. It'll not be difficult for evil botters like Jason to spam the website with malicious content. He has done it before and he will do it again ... mercilessly thrashing the programs of innocent developers who use PCs instead of Mac.

Anti-Jason Measures Suggestions: Put a captcha at the right places to verify human users. Also, there should be a limit to the max number of posts by a user within a given period of time.

Saturday, February 14, 2009

Episode 6 : Pitch

External companies are pouring in to pitch their ideas to levarage on the facebook network. Even the NDP organizing team has expressed interest. It's undebatable that facebook's influence in everyone's way of life still remains strong. Advertisements ... Games ... Publicity ... facebook has a solution for all, thanks to the flexibility of its applications interface.

It particularly amuses me that I (or any of my coursemates for that matter) could have been the one who created facebook 1.0. I may be wrong, but the early version of facebook doesn't seem too technically complex to implement. Who could have predicted that it'll grow into such a giant 2 years down the road? On top of that, there's already friendster in the market. Infused with a little user-generated-content, however, facebook easily overtook friendster. Of course, friendster's infamous server lags helped a bit too.

During my day-dreaming sessions ... I often make wild guesses to myself on the next big platform to emerge. What kind of idea will it be? Most importantly ... who's idea will it be? Do i stand a chance at all?

God knows, we'll just have to see as we go. Meanwhile, the least that we can do is to keep our faith strong.

Truely, no sky's too high, if you soar with your own wings.

------------------------------------------------------------------

My 2 cents on what I feel about Friday's pitching party.

...

Simply, it has been great.



No kidding. I know that that's the default answer for anything prepared by Prof Ben, but it really really has been a most enjoyable and enlightening session. Like most of my fellow students, I believe, I have already expected it to be quite an eye opener even before coming. I didn't expect, however, for the idea-sharing and interaction spirit to stretch to such a point of excitment and amazement (to me, at least).

I am very very impressed by the Pixie chip introduced by the Human Networks Labs. In fact, this is precisely the idea suggestion which I have suggested to Prof Ben last year, when I submitted my portfolio and documents required for my application to CS3216. In social networking sites such as friendster and facebook, the dimension of space and distance is negated. I can reach out to friends and strangers regardless of where they are presently. However, I have a personal vision of re-kindling the inter-human interactivity in the real world, without losing too much of the cross-boundary benefits derived from facebook. Therefore, I was proposing an application, much like a simple IRC chatroom, but that groups people based on their present physical location. Think about it, you can talk to that nice cute girl sitting on the front row of the LT which you are presently in. You don't have to know her, its cool to just hook up a friendly chat about random things. Especially since both individuals are presently connected thru the same boring lecture session, they might have a common topic to yakk about. Going by the same logic, I can use this app to talk to my neighbours (which most ppl don't usually do these days ... sadly) at night, or even arrange a supper session with people living near me. The most promising technology that I can thought of to power this vision is BlueTooth. I see a lot of potential in this. If this is to be embedded into a games interface, the gameplay will be totally awesome! Elven Blood in real life! I think Varsity Chronicles will be pretty cool with this gadget too! Imagine your mobile device beeping if a member of a rival faculty physically enters your territory and closes in to your perimeter (perhaps for lunch ... etc). You can gather up your party and fireblast the intruder, who in turn may gather her Jie Meis nearby and retaliate.

Now that's what I call true human interaction.

Also, it has been great to know Luther, of Lut! Games Studio. I played a number of his games, and thoroughly enjoyed it. If you have time, do try out the fright series game "Darkness" by him. I like to work on games, as a hobby and maybe even as a part-time job. As such, its great to know a local developer who is producing games of such quality. On top of it, he's an alumni of the same class I'm in right now. I sincerely hope that the Coolies, the developers of Captain Cook, will have a shot to rise to his level of achievement.

Lastly ... perhaps the biggest eye opener pitched in my direction, is the copied version of FarmWars onto the Xiao Nei platform. The developers are actually earning 12k per week !!! Based on a copied idea! At first, I thought that this will be a good problem to have, since only famed ideas are copied. Then again, putting myself in the original developer's shoes, I'd be damned to know that someone else is leeching in big bucks based on my idea. It could have been me! Worse still, there's probably nothing I can do to topple them. Thanks Wangsha and Boa for the great presentation ...

I'd be even more damned if the same happens to Captain Cook.

Tuesday, February 3, 2009

Episode 5 : Facebook Seminar

It's really quite a shame, that I'm not allowed to blog about my own presentation material. I would just love to go on and on and on about Graffiti.

There's just so much to talk about, and so much to be surprised about.

A total of 7 applications were presented during the seminar. All applications are worthy, most of them pretty creative, some flashy, and most requires complex technical programming. All these factors combined, with a carefully planned out game-play sequence or work flow, it's no surprise that the active user counts reached into the millions.

Graffiti, however, if you noticed, has none of the qualities mentioned above...

Its not really too creative or novel, no flashy animations or colors were used in the design, and I doubt that its too difficult to do up the program with the world wide web's support. It's active user count, however, sky rocketed ... and even with big names like Intel and Dell throwing in sponsorship moollahs.

One can publish an article analyzing the reasons for its blossom ... but personally, I believe, it sums down to 3 simple letters.

...
U G C , at its best.

...
...
...
I'll stop here for now ... and leave the imagination to everyone else. Do think through one question though:

Can you think of another facebook application like Graffiti, which allows the creation of true User-Generated Content to promote its growth?

Applications that allows the user to choose from a limited template of items shouldn't be classified into the same category. Fluff friends lets you choose a pet out of a limited number of creatures ... and to choose backgrounds from a limited set. The "uniqueness" of these "UGCs" is limited only to the finite mathematical permutation of these different items. In the case of Graffiti, however, the permutations are infinite ... just like Wikipedia and YouTube.

And know what? Drawing a Graffiti expression, is much simpler and motivating than writing up an entry in Wikipedia, or making a video for YouTube.

Lastly, before I begin my application seminar entry proper, here's the highly acclaimed ...

"Personification of Evil"







Bwahahaha ...

I'd like to thank my beloved friend, Liu Ling, for her work on the Graffiti. :)


    Facebook Seminar Application Critique


Being quite an avid gamer myself, and for my constant amazement and curiosity at games programming, I'm going to talk about Elven Blood. Partially also, that it is VERY IRRITATING having hordes and hordes of invitations from friends to join their parties in Elven Blood.

The team gave a pretty thorough presentation for the application. Many points caught my attention, and got me thinking. Here's my 2 cents.

1) Shortness of Quests
This particular sentence from the presenter especially got my thinking gears moving :

"The Quests are completed too soon ... Development can't keep up with gameplay .... usership dropped tremendously"

In general, I believe that multiplayer games on the internet can be classified into 3 categories:
  1. Linear Gameplay
    An example is Playfish's Geo Challenge. A fixed number of stages are set, and fixed by the developers. Players can only play the stages from start to finish with minimal interactivity with others. The only basis of competition is via the scored points.

  2. Exploratory Gameplay with Maintainance
    Partially-linear games which are exploratory in nature, but require frequent developer's expansion and intervention to retain players. Elven Blood probably belongs here. User can interactly nicely with other players ... but the main objective of the game is probably to completes quests. So ... what's next after all the quests are completed? The developers will have to create expansion and continuations. No doubt that these games will attract a good mass of initial users, but to retain them, the developers will end up working all day to maintain it. Not too desirable...

  3. Exploratory Gameplay with Low Maintainance
    Warbook, Battlestations, Pet Society? Same as category 2, except that the game is pretty iterative in nature, such that it still remains fun even when the developers stop development for a long while. In Warbook, after players get more gold and more land, they attack other players, become more powerful, and the cycle repeats. Along the way, they form parties that bond and disperse. In these ways, a community is formed. Lesser developer intervention may be necessary, so in the meantime, the developer can go ahead to persue other money making avenues.

Elven Blood falls into category 2. The game is fun initially ... but the proliferation of players mean that development will have to be fast to maintain this source of revenue. The fun derived from the game is almost as short lived as the finite features programmed into the game.

At time, I wonder if these kind of games are worth perusing at all. It may work if its a single player game like Final Fantasy, but in a multi-player environment, we really need borderless and limitless gameplay to simulate a true community. That way, the players can enjoy the game timelessly, and the workload will be reduced on the development side.

2) Blessings and Sponsorships
From my understanding, Elven Blood obtains its revenue from companies which advertised in its platform. Clicks or views to these companies' website are integrated in-game as "blessings", which can grant boons and enhancement to one's character in the game. The presenters claimed that this will not distort or disrupt game-play ... but I can't help but disagree to a certain extent.

By granting bonuses whenever players clicked or signed up in the advertiser's websites, I feel that the developers are openly manipulating the players like marketing chess-pieces in the game. In a way, indirect manipulation. It certainly starts a chain effect to force people to click on the ads, since they cannot receive blessings (and get ahead in the game) without them.

Sure, some gamers might not have the initial intention to invoke these blessings. However, seeing so many other players (sometimes opponents) getting ahead by spamming the blessings, they are forced to follow suit. This sets off a chain reaction. If not handled well, the gaming environment can be thoroughly destroyed and overtaken by marketeers and profiteers. User ship will like fall to a halt, and complaints and critics can be expected to appear from everywhere.

I've come across an MMORPG called Dark Ages. What I have heard, is that the money minded admins have ended up destroying the game by releasing powerup items cheaply for real money. User (who originally have to pay to play the game) became dis-illusioned by the blatantly obvious marketing core of the system, and simply stopped coming.

Eventually, a game is meant to be fun, fair and entertaining. An ideal business model should return revenue (albeit a little lower), but at the same time maintaining the fairness of the gaming environment. The most basic form of advertising that falls under this, I believe, will be banner advertisements. Other forms may perhaps be additional features, like what Intel and Acuvue did to Graffiti.

3) User Generated Quests
UGC has proven itself to be an undeniable means of spurring user activity. Minimal developer intervention is needed, as the user's creation continues to make the applications stay afloat or soar.

I can't seem to picture, however, the idea of having user-generated quests integrated into Elven Blood. Among the good users, there can be many malicious users lurking around with inappropriate intentions. If their generated contents goes unchecked in a game like Elven Blood, the whole game-play may become quite twisted. On the other hand, if developers were to check every single one of the submitted quests, development workload may amplify by a large degree, and many contributors are bound to be dissatisfied and turned away by the quality control.

What I feel about UGCs, are that there are no midpoints to it. The flood gates can either be fully opened, or tightly shut.

I may be wrong ... but I'm a little doubtful about the suitability of user generated contents being integrated into online games.


Elven Blood
Before attending the seminar, I have largely heard about Elven Blood, and have been in constant bombardment by invites to join parties from the x-th inner circle. I didn't try out the app then, as i didn't feel that I'll like it. It seems to me like a very forceful embedding of a marketing powered game engine onto facebook. Also, from what I have previously heard about the application (which turns out to be correct as explained during the seminar), it is not as scalable as users might have expected it to be. From the time of the very first bombardment of invites I have received from friends to add the application, I have a hunch that the application will only last as a hype.

The fascination is not completely over yet though. Let's wait and see how things go from here.

Episode 4 : Coolies

And so finally... the alpha release of Captain Cook is ready.

It has been quite a journey ... really.
So many sleepless nights spent coding and debugging in the SOC Basement, on the very same table i ate my chicken rice during the WPF workshop. So much blood, sweat, tears, insults, encouragement, insanity and supper marking our days.

I have witnessed the seemingly unnoticable procession of days to nights and nights to days from the air-conditioned dungeon surrounded by computer labs and power sockets. Equipped with our trusty laptops (no thanks to the MACK BOOKS) and a bottle of Hae Bee Hiam, we fought back our desires to sleep and focussed on our entrusted objective.

Seeing how my social life is severly damaged (breaking of dates with my girlfriend, working thru CNY, flying my friends' aeroplane when Im suppose to cook food for their gathering), im finally beginning to accept that I got very very bad time management skills...

Oh well, at least I am present during CNY at the right times to still get my Ang Paos.

I am absolutely thrilled with the product of our nightless slogging. Captain Cook is finally bug-free ... but the version put online, frankly, is hardly beyond satisfaction. Many features, optimizations and enhancements on Kar Meng's jotter book has not been implemented yet. I am keen to push it further into eventual fruitation, but for now ... just for now ... the version we have is good enough.

The programming choices can be improved, the animations can be enhanced, and more nifty features can be implemented, and we're still eager for the ride.

Hurrah for Captain Cook and Hurrah for the Coolies (Yeah, that's the developer team).

If anyone wants a recipe implemented, leave a comment, and we'll consider it!

Cook on. =)

Thursday, January 22, 2009

Episode 2: MS

Am late for my blog update .... thanks to the no-day-no-night Assignment 1 working schedule our group have came up with. Been working my head off for the past few days and nights, with only a few hours of sleep sandwiched in between.

On Microsoft
A decade ago, Microsoft was like THE Company to take on the world. Today, much of its reputation has been swallowed up Apple, with another considerable fraction getting taken up by Linux.

In the recent years, Microsoft has been getting quite a bit of bad press all over the place, with issues such as security breaches and bug fixes. Tons of people out there literally despises Microsoft as a company.

What's wrong here ... i really wonder all the time. Is it real that Microsoft products are simply inferior to its competitors, or is the source of all these hoohahs limited to the marketing arena? I'm not a staunch fann of Microsoft, I do use Linux and carries around an Ipod Touch, but I'm just a little puzzled about the validity of claims such as "MicroSoft sucks".

Microsoft may have poor marketing skills, especially with this guy around:




Also, the first version of Vista is known to not be too popular ... with issues of premature release and all. However, are these negative aspects truely sufficient for us to overthrow the benefits Microsoft has come up with over the years? A surgeon may have his good name removed for prescribing a wrong drug by accident, but that doesn't mean that his skills are inferior to the rest.

I'm not sure if my doubt is founded, but I am pretty satisfied with my Microsoft products so far. True that there are small crashes here and there, but I choose not to condemn the entire company/product package for that.

We can only see how Windows 7 go.


XNA X-Box Live
The gaming industry is notoriously hard to enter, especially for people who graduated from a not-so-prestige University such as MIT. Its great that Microsoft has provided a platform for gamers to share their content freely. I'm not too sure of the profitability aspect, but what I do know is that it encourages innovation. As long as your product isn't too uncool, the system links you up with audiences and critics who'll be playing with your work.

How cool is that?

WPF
I believe that more can be elaborated on WPF, on top of what Apurval has talked about the other day. Interactivity aside, WPF allows designers and programmers to work concurrently on a same project. In simple terms, designers can work on thier own design files, and programmers have their own set of logic implementations. At the end of the day, WPF allows both parties to seamlessly combine the 2 components. If one party should update the software later without informing the other party, there won't be any fears of breaking the overall software.

This is a step that Microsoft has taken to emulate Apple to some extent, I believe. The same goes for their Deep Zoom feature. All along, I believe that Apple products has emphasized on style over substance. I'm not such if the logic and feature implementations are better than Microsoft's, but their product presentations are definitely world-class. That factor alone, has won over many avid fans and consumers to worship Apple products.

There has been alot of debates online on whether Silverlight is better than Flash. Both have their pros and cons I believe, (Flash's major con is that the programming can get super messy) but the major issue that will hamper Silverlight's entrance is that the market is already dominated by Flash packages. I once come across a file format who's trying to take over the PDF market ... I didn't really believe in it. Can the same be said for SilverLight? Then again, there have been multiple examples that the first movers in an industry may not be the permanent winners. We can only wait and see.

Friday, January 16, 2009

Episode One

Hurrah for Group 2!

We had our first meeting yesterday. Am very very delighted to find that everyone is so passionate and full of fire. So full that the meeting lasted from 6pm till 2am yesterday.

So much to do, so little time.

So much challanges ahead, so much more unknowns.

I sincerely believe that the best way to improve yourself is to constantly surround yourself with strong people, and take on seemingly impossible challenges.

Like Prof Ben mentioned, what doesn't kill you, makes you stronger.

On top of that, I don't believe in being killed. I don't believe in dying. So long as one posses the right attitude, the right determination, and right passion, it's absolutely possible that he attains immortality. If he lacks the drive and all, then there's really no point to even embark on the journey from the start.

Seriously, it takes a lot to "die" from workload. By the way, I don't mean dying literally. If one truely tries, it's almost impossible for him to be killed by his challenges. A runner at a 10,000 man marathon may arrive in the 8325th place. He may not be within the best rankings, but if he does his best to complete the race with full effort, he is already a winner.

So what's the outcome?
He walks away a better man than he was yesterday.

I sense rough seas ahead, juggling between my work and CS3216. That's quite the way I like it. Some people actually thinks I'm insane (Especially my mama and my gf). Then again, measures of sanity among successful people are hard to come by (Think Steve Jobbs).

This is a hell of a ship, and we've got a hell of a crew.

Tuesday, January 13, 2009

D'Hatch Dae

Oh, and a pleasant coincidence.

CS3216 blasted off, on the very same day i turned 26.

I'm officially more than a quarter century old.

It's 14th January now, so hopefully I dun sound as if I'm trying to attract presents. =)

Take Off

Despite all the hoohahs and ravings about school reopening, I wasn't really in my top form on Monday, 12th January ...

I got home late last night ... so late that it's early. Took a cold shower to shiver myself awake, and then proceeded to my work desk. After working off some admin stuffs and checking out a few details about the class later, i decided to take a short power nap to energize myself a little. You just can't work well when you're yawning away every 10 minutes.
I settled myself down on the bed, set the alarm for 1.5 hours, and slept for 3 hours.

Woke up, saw my work half done on the work desk, panic-ed, and took another cold shower to shiver myself awake.

Then i remembered about the show-and-tell. In the videos of last year's featured show-and-tells, it seems that quite a bit of wacky stuffs are going on. I had the impression that it was going to be like one of those dull "When I grow up I'm going to be a fireman!" kind of self-confidence speeches that make kids look adorable. The videos are rather interesting, I must say. The last thing I'd expect will be for someone to bring along his pet birdie to make friends with the class.

So what's the one thing that caught my soul other than working, girls, programming, designs, and girls ... ?

Cooking.

Yay~even evil professors ought to have their hungry times i guess. I thought about making my speciality Dong Fen (Vermicilli) .... but decided that it'll be too messy to go around. I need something convenient and tidy...

Vermicilli

Meatballs it is then. My grandma's signature dish.

Meat Balls fresh from the Wok


Proceeded to buy ingredients, cook, pack, and then drove off to NUS for the take off.

The first lesson was mainly introductory. Seniors joined the class to give us their take of the module last year. The most used phrase during the session was probably "Sleepness Nights". Looks like I'm in for more cold showers. Despite the seemingly horrific workload, I find myself rather excited to begin this new chapter. More challenges, that's my breakfast of choice. Hell yeah. Prof Ben also shared a number of precious insights, both from his lecture and his admin assignments, as well as some quotes from a Confucious-lookalike. They are mainly philosophical, and thought-provoking in nature. Main questions to be answered ...


What do you seek to accomplish in your life?

You ready to make sacrifices for it?

Do you like meatballs?

Next was speed-dating, where the ice between the students were broken. Then came the show-and-tell. As expected, wacky and fun stuffs were presented. There's a G.I Jane in combat attire, armed with Machine Guns and a broken chin. There's a guy who actually did the Calsberg-bottle wind blowing music trick. There's a guy who hacked into Warbook and got banned for becoming an instant millionaire. There's a guy who got me considering painting my new laptop full pink. And to my pleasant surprise, there's a guy who topped off my meatballs with a dash of spicy Vietnamese dessert.

Had a great-time, had quite a bit of good laughs, and most importantly, got to know alot of great people. May sound politically correct, but I mean it. Never have I started any modules, with such a warm get-together with my fellow coursemates. My only regret was that I didn't manage to find minced chicken for the meatballs ... for some reason the nearby mart only carried pork that day. And for that, I guess I had created a moment of awkwardness when I announced that it's not halal.

To my readers : I'm really sorry for any unhappiness caused, promise that it won't be repeated!

Drove home, and find my facebook and msn bombarded with new friend requests and friend adds. w00ts!

Right on!

Chances like these don't come by often, and I'm darn glad as hell that I'm on the bandwagon this time. Thank you all, thank you TAs, and Thank you, Prof Ben.

So I find myself asking the question again...


Are You Ready for them sleepless nights?

Hell Yeah

..

..