A Cookie's Life

Warning: This is mostly a crappy blog. Crappers and crap-accepting folks alike: Welcome! To all others: Warning. Danger! Keep Out! Read On At Your Own Risk! The author shall by no means be liable for any damage caused directly or indirectly, implicitly or explicitly as a result of the reading of the contents of this blog.

Tuesday, October 06, 2009

Coding Quirks 2

And since I'm on medical leave today, I might as well rant about the kind of quirky stuff that I saw that is blood-vomitting-inducing, heart-wrenching and out of this world. Okie, I exaggerate, but seriously, the coding is bad enough.

In the midst of all the debugging that I had to do (well, for example, I found 11 bugs on just a simple window to create a list of items and to generate a list of user-defined selections of that same list), here are some of the quirks that I came across...

1. Find me if you can...
Quirky code:
void main() {
int mynumber = getnumber(5);
}

int getnumber(int number) {
getnumber2(number);
};

int getnumber2(int number) {
getnumber3(number);
};


int getnumber3(int number) {
return 5;
};


What does it mean:
In the program, I want to store a number. Let's call it mynumber. Now, assign that value to be getnumber, which will return getnumber2, which will return getnumber3 which will return 5.

Layman terms/equivalent:
A, B, C and D are in the room facing each other, and A wants to know the name of D. As such, A asks B (in an obvious manner such that D would know it) to ask C to ask D for D's name. After that, D has to tell C to tell B to tell A the name.

Quirk:
Why can't you simply just assign the value of 5 to mynumber???!!! (i.e. simply ask D his name!)

Optimized code:
int mynumber = 5;

2. Cut-and-paste frenzy...
Quirky code:

for (int i=0; i!=5; i++) {

if (i==0) print (0);
else if (i==1) print (1);
else if (i==2) print (2);
else if (i==3) print (3);
else if (i==4) print (4);

}

What does it mean:
I want to print out 0 to 4 on the screen. So, let's start with a number. Let's call the number 'i'. Let 'i' start from 0, and increase it by one each time. Once 'i' reaches 5, stop the increments. Now, as 'i' increments, check its value. If it is a 0, print out a 0. If it is a 1, print out a 1. If it is a 2, print out a 2. If it is a 3, print out a 3. If it is a 4, print out a 4.

Layman terms/equivalent:

In order to type out the numbers 0, 1, 2, 3, 4 on a word processor (i.e. Microsoft Word), first you get someone to count from 0 to 4 slowly. As that person is counting, you get someone else to confirm the number that first person said. Upon confirmation, you type out the number. What the @#$^%???!!!


Optimized code:
The terrible, but more 'forgiving' method in view of the above ultimate example:
print(0);
print(1);
print(2);
print(3);
print(4);


Preferred method:
for (int i=0; i!=5; i++) {
print(i);
}




3. Processing frenzy...
//To duplicate a list of items...
for (each item in Listbox1) {

int position = getindex(item);

//Add the item if the index is valid
if (position != -1) ListBox2.add(item.Text, position);
}


private int getindex(listitem item) {
for (int i=0; i != ListBox1.items.count; i++)
if (ListBox1.item.equal(item)==true) {
return item.index;
break; }
}

return -1;
};

What does it mean:
I have a list of items that I want to duplicate. So, for each item that I want to add to the new duplicated list... first, go through all the items to find its position. After that, then add that item at the same position as it previously was in the list that I want to duplicate. Do this for all the items in the list.

Layman terms/equivalent:
When you want to duplicate a class list, first, select a student from the list. Then, go through the list to find the index number of the student. Once you've found that student, go to the empty class list and write the student in the same exact index number. Do this for all the names in the class list...

Quirk:
Why do you have to keep searching for the index number when you could have simply copied it in order???

Optimized code:
for (int i=0; i!=ListBox1.items.count; i++) {
ListBox2.add(ListBox1.Item[i], i);
}


Okie, that's all the ranting for today until I find more time to blog about more quirks...



All-Time Cookies' Stunt

Well, it has been some time since I've last blogged an entry. In any case, the cookie's back, and with some stunt. That's not all, considering that this time round, the stunt's performed by a duo...

Usually, when one cookie is blur (yup, yup, it happens to any one of the two cookies from time to time), the other would be alert enough to end the blur streak. However, this time round, on one sunday morning when the two cookies were serving in church...

[First song ends and the band proceeds to the next song]

[The other cookie starts playing the intro to "We Offer Praises" by Ron Kenoly and glass cookie plays along]

[As the other cookie played, the MD started playing his bass, but in an obviously unsure manner]

[The worship leader did not start singing after the intro]

Glass Cookie's thoughts: Eh, worship leader, don't blur leh...

The other cookie's thoughts: Worship leader blur? Maybe I should play the intro again.

[The other cookie starts playing the intro again, and glass cookie joins in - this time round, the band did not join in]

[Worship leader stops playing but faces the band and smiles widely]

Glass Cookie's thoughts: Is the worship leader on strike or what? Man, this is unexpected!!!

Worship leader: He's been good =) (i.e. referring to the song "He's been good" that should be played next)

[The other cookie starts to laugh in embarrassment]

[Glass cookie starts to laugh too]

[Glass cookie starts to panic, because he realised that for the song "He's been good", he is supposed to play a solo intro...]

[The crowd starts to clap in encouragement]

[Glass cookie starts to switch to the correct instrument on the keyboard and starts playing...]

Oh well, such stuff happens when a song is to be cancelled from the list, and the two cookies happen to be blur at the same time...



Saturday, July 25, 2009

Coding Quirks

After over a month on the job, I found a bunch of quirks and inefficiencies when I was told to optimize a collection of programming codes. In some case(s), it was totally unacceptable, according to a computing friend of mine. Well, I'll attempt to put those coding practices currently employed as simply across as possible (since they are probably no different from egyptian hieroglyphs for most people).


1. For the love of assignments...
Quirky code:
int mynumber = 0;
mynumber = 5;

What does it mean:
I need a container to store a number.
Let's call it mynumber.
Let mynumber be an integer (i.e. whole number)
Let mynumber contain the number 0 initially.
Now, set mynumber to contain the value 5.

Layman terms/equivalent:
I want a basket with a random number of apples.
Now, take out all the apples.
Now, I want to put in 5 apples. (Does it sound geh gau? Hehe...)

Quirk:
Why do you need set nynumber to 0 when you could initially set it to 5?

Optimized code:
int mynumber = 5;


2. One can never be too specific...
Quirky code:
if (condition1==true AND condition2==true AND condition3==true) Then
//Do something
else if (condition1==false OR condition2==false OR condition3==false) Then
//Do something else
End

What does it mean:
If condition1, condition2 and condition3 is true, then [do something]
If not, then, if condition1 is false or condition2 is false, or condition3 is false, then [do something else]

Layman terms/equivalent:
If the shirt is green colour, [do something]
Otherwise, if it is red, or if it is blue, or if it is yellow, or if it is white, or if it is black, or if it is pink, or if it is dark green... etc. etc. etc. till the cow finds its way home, gets old, goes cranky and hallucinates about what other colours it might possibly see and dies... then [do something else]

Quirk:
Well, there is something with an 'otherwise' equivalent which is not used...

Optimized code:
if (condition1==true AND condition2==true AND condition3==true) Then
//Do something
Else
//Do something else
End


3. Double negatives...
Quirky code:
if (condition1!=false) Then
//Do something
End


What does it mean:
If condition1 is not equal to false, [do something]

Layman terms/equivalent:
Imagine someone who talks in this manner: "If you are not (not (not (not tired))), would you like to... etc."

Optimized code:
if (condition1==true) Then
//Do something
End


4. To be absolutly absolute...
Quirky code:
x = abs(-5 + 8 / 200)
if ( abs(x) > 5 ) Then
//Do something
End

What does it mean:
Set x to the value of (-5 + 8 / 200) and 'absolute' it (i.e. make it positive)
if the absolute of x (which is already 'absoluted') is greater than 5, [do something]

Layman terms/equivalent:
Log into your email account.
Then, log into your email account (via another web browser window) to check for mail.

Optimized code:
x = abs(-5 + 8 / 200)
if ( x > 5 ) Then
//Do something
End


Well, there are many more quirks that I came across, but I guess I shall stop for now lest my blog becomes a groggy-inducing aid. =)



Sunday, June 21, 2009

Fragged

Well, something interesting that I noticed at my work was the following, when I defragged the computer assigned to me the first time:


This is definitely, seriously, absolutely the most fragmented hard disk I've ever come across in my lifetime. Man... I'm wondering what else I could possibly come across as the days go by...



Sunday, June 07, 2009

Smoker...

Today, as the double-cookie with the cream in the middle (i.e. Glass Cookie [GC]and his Other Cookie) was heading to one of the cookie jars (i.e. home), they met a lady who was standing by the walkway. The following occurred:

Lady (looking pathetic): Sorry ah, could you help me?

GC (now that she has gotten his attention): Hmmm?

[The double-cookie stops, looks at her and waits for her to elaborate (actually, i'm confused as to whether it's "stops, looks at her and waits" or "stop, look at her and wait" since they're two. Hey a double-cookie is a singular. Oh well, I guess "stopped, looked at her and waited" would be more appropriate but I think I've gotten off track again. Okie, back to the topic...]

Lady: I lost my EZLink card and I need to go to the hospital...

[GC thinks she's fishy (well, not that she smells fishy but fishiness was strongly in the air) and walks off with his Other Cookie]

[As the double-cookie walked on, GC was concerned about that lady being a genuine case. As such, he turned back]

GC (to the lady): So, you need money to go to the hospital is it?

Lady: Yah. I lost my EZLink card and I need to go to the hospital to visit my mother...

GC (interuppting): So how much do you need? I could spare some coins...

Lady: Oh, could you lend me $10? I need to buy an EZLink card...

GC's thoughts: Wow, somehow my sponsoring of an EZLink card worth $10 was more vital than the visit. You're trying to smoke me right?

GC (interuppting again): You need to go to the hosptial right? So coins should be enough... How much is the trip?

Lady: Oh, I need to buy some fruits for my mother when I visit. She's quite jialat (i.e. in a very bad shape) now.

GC's thoughts: Wow, someone in hospital and at a very critical state is still interested in eating fruits when you visit! How interesting... And if she knew you were that bad a shape in finances, she at her critical state would blame you for not bringing fruits. Whatever...

GC (starts to walk with his cookie dear): Oh, in that case, I cannot help. Sorry...

Lady (getting more desperate): Can lend me $10? I give you my IC (personal identity card) number?

GC's thoughts: Hmmm, do I look like a loanshark to you? It's not like I could contact you via that unless I go to the police. And if I were a loanshark, I wouldn't want your IC number. I would want your IC =)

[GC waves a no, turns and walks off]


Thought: Sigh, don't curse your mother for a living man...

Thought 2: You've got to try harder than that to smoke me. Then again, it's better that you didn't try harder after all... it saves me 10 bucks.

Thought 3: Thinking back, perhaps it didn't matter if you tried harder. I doubt the capability of a success at any rate...



Saturday, May 23, 2009

Congrats

This entry is to congratulate Nicholas Cheong for attaining his Master of Science in Communication and Media Technologies in a short period of 9 months today =)

And as usual, as always, like it has always been,

GOD IS GREAT!!!



Monday, May 18, 2009

1st Day @ Work =)

Today was my first day at work. It's not bad, considering that they paid me quite a sum just to sit down to read through manuals. One just needs to endure the boredom and drowsiness...

All in all, I have to thank the Lord in granting my prayer request for a job. In fact, I'm one of the few in my course to secure and start working... =)

Lalala...



Tuesday, May 12, 2009

FYP Presentation

Just last week, these were the happenings during my final year presentation on some e-learning application on the basic laws of th*rm*dyn*mics:

[Glass Cookie (G.C.) and The Other Cookie (T.O.C - not the table of contents) arrives and waits for G.C's prof and the moderator to arrive]

[Moderator arrives first]

G.C.: Hi prof, could [T.O.C.] sit in during the presentation?

Moderator (smiles a wide smile): Sure!

[G.C. Starts to set up his laptop, load the presentation slides and waits a while.]

Moderator: By the way, do you know who am I?

G.C's mind: Erm, seriously... No. Wait... why the &^%#@$ should I bother who you are? But then again, given such a question asked you must be pretty high up in the school as much as your ego is huge... Hmmm... I have a bad feeling about this guy now. I suppose this is one of those killer moderators that students were fearing. Actually, like I care (i.e. read as: do I care)? Give me C for my FYP and my grades are still unaffected =) If I needed a first class honours, then perhaps I should start to worry that I don't know you...

G.C's mind (with the ah-beng seh [i.e. gangster style]): You wan to give C ah? Give la. (With a gangsterish beckoning hand motion) Come come come... Just give...

G.C. (smiling - effort was required to smile, and to smile like it's meant to be a smile without the Do-I-look-like-I-care? look [EWRTSATSLIMTBASWTDL]): Erm, no... but I suppose I've seen you before in one of our lectures.

Moderator (grinning): Alright... you'll know later. In any case, my very first question to you is, did you consult any of our th*rm*dyna*ics prof when you did your project?

G.C. mind: Oh my, I am so going to hurt your ego when I say NO... not at all. You mean I need to? OK, maybe for the year ones, I should. But why should I bother? I'm aiming secondary schools, JCs and maybe year 1 th*rm*dyna*ics students... OK, let me hurt your ego now...

G.C. (smiling, EWRTSATSLIMTBASWTDL [refer to above]): Erm, nope.

Moderator (cocking his head to one side and giving the "Oh, ok. Whatever" look): Oh, ok.

[G.C. goes to show him a mobile device application, which he was totally disinterested about]

[G.C's Prof comes in, does some greeting before G.C. starts the presentation]

[G.C. starts the presentation and continues in spite of the moderator's disinterested look]

[G.C. mentions about some failure rates that were unverified and got slammed. Moderator's ego has been hurt again. G.C's prof was slammed for not checking through also. However, G.C. and G.C's prof agrees that it was their fault]

[G.C. ends the presentation with "well, any questions?" and the Moderator unsheathed his 屠龙刀 (i.e. dragon slaying sword)]

Moderator: As I've said earlier, my very first question to you is whether you approached any of the th*rm*dyna*ics prof

G.C's mind: Why should I? You mean my professor who does engine cycles don't know the basic laws of th*rm*dyna*ics for nuts? I am not really aiming the first year students okie?

G.C. (smiling, EWRTSATSLIMTBASWTDL [refer to above]): Nope.

* Well, the general contents of the conversations that went on were largely forgotten. However, they were in the form of the following:

- Moderator slams and condemns project as inapplicable

- G.C's prof steps in to re-state that the target audience is from secondary school to year 1 students

- Moderator states that it is merely good at stirring interest for perhaps secondary and junior college students

- G.C. is confused as the project is aimed at stirring interest at mainly the secondary and junior college students

- G.C. is happy that the prof recognises the applicability of this e-book...

- Moderator comments that in his own opinion, he feels that the project is useless with regards to trying to improve any grades (which G.C. agrees) [Disclaimer: G.C. placed a clause that the project was aimed at improving grades of year 1 students because he needed more content to write an intro. So, this is G.C's error]

- G.C. was relatively unaffected, other than a little irritated that his efforts and crazy programming have gone unnoticed.

- G.C. starts to count money should the e-book start to sell as the prof continues ranting on...

- G.C. felt that the moderator really did not give a %^#&@ about his prof, who is the HEAD of a*rospace. So what if he is the course coordinator? His prof has course coordinators under him.

- Moderator turns back to T.O.C for agreement/acknowledgement of what he said and T.O.C simply smiles back.

- G.C's prof stepped in to relate his own th*rm*dyna*ics teaching experience about how students were lost with regards to the laws of th*rm*dyn*mics

- Moderator refutes G.C's prof

- G.C. guesses that the moderator's ego that was really well-hammered by G.C. earlier on...

- Moderator talked about his Stamford education, his 12 years of teaching experience...

- G.C. guesses that it probably did sound impressive but he couldn't be crap bothered (oh, and did G.C. mentioned earlier that a friend upon hearing his rant mentioned that the moderator's teaching suc*ed? After 12-3 years...)

[After the presentation, the moderator leaves and G.C's prof goes over to G.C.]

G.C's prof: So [G.C.], how have you been these days?

G.C. (genuinely smiling): Well, I'm ok! =)

G.C.'s prof: Maybe we could meet up one of these days about selling the e-book...

G.C. (still genuinely smiling): Yup.

G.C's prof: Don't worry about the grades. Although he was firing all the way, it was because you [mentioned something that you shouldn't] about th*rm*dyn*mics course (i.e. the failure rates) and as course coordinator, he had a lot to say about it. He's a nice guy actually.

G.C's mind: In my opinion, he is an egoistic b*stard however genuinely smiley he could possibly get. But it's ok. I am unaffected under your protection anyway.

G.C (still genuinely smiling): Yup, ok. See you, prof!


Thought: I guess it was the Lord + knowledge of a C-average this semester not being able to affect my grades that kept me calm =) Thank you Lord! =)

Conclusion: Whatever, really. Slam all you want. For all you know, I might be the only student that is getting money out of an FYP project =)

Conclusion: At least The Other Cookie appreciated my powerpoint slides. I mean, who does simple 2D-animation programming and real-time 3D modelling objects (i.e. rotate any given model you want at will via the mouse) in powerpoint slides nowadays?



List Of My All-Time Big Stunts In M&D

30 Jul 2006 - When Silence Is Golden 2
It's funny how history repeats itself in a different form. This time, I minimised the volume of the keyboard to zero to try out a new song "I believe in miracles". And for yet (again, miraculously, ironically) another bizarre reason that I know not of, I actually turned the volume up WITHOUT knowing - and CONTINUED practising. Somehow the amplifiers were turned off by the sound guys (probably a safety measure against stuntmen like me?) until they could finally silence it no more and suddenly, out of the nowhere (oh, sorry, that would be the keyboard) came a loud note that penetrated the silence. I jerked in shock (very obviously). And yes, once again it's during the announcement time when silence is definitely golden.



04 Jun 2006 - Time and Congregation Waits For No Man
It was another faithful day in church, playing the keyboard for morning service, 9 and 11 a.m. After the 2nd service praise & worship session, it so happened that no one else could make it for the closing song. Well, since I was pretty free, I was asked to play it. So, I went down, charted out the chords, practised the piece in the tabernacle. On my way up the stairs, the first thought in my mind was: "Hey, it's so crowded. I need to get up the stairs. Now, how do I queeeeeze my way through?". The second thought in my mind was: "Hey, why is there a crowd coming down at this time? ... ... ... NOOOOOO!!!!!!" Man, time passes fast when you're practising the piano in church, and painstakingly slowly when it comes to exam pieces.



[No date] When Silence Is Golden
It was during the announcement, when pastor was giving out announcements before the offering song. Silence was observed as the pastor spoke. I retracted my hand from the score folder beyond the keyboard. For some amazing reason, my hand retraction path headed for the keys of the keyboard. And since the word 'fast' to describe the retraction rate was an understatement (for yet another reason I know not of)... you know the rest of the story.



[No Date] When Silence Is... Anything But Golden
Hmmm... once the amplifier on my side was switched off for some reason during praise & worship. And for some other reason that I know not of, I thought that the keyboard sound couldn't be heard. So, I tried pressing some keys. Didn't hear anything - drums were too loud. I proceeded to bang some keys repeatedly until... hmmm... I thought I heard something. Oh oh... ONLY my amplifier was turned off. (Note: Instrument: Brass sect 1, volume - max.)




List Of Other Small Stunts/Experiences In M&D

Fastest Fingers First
As a keyboardist, one usually comes into contact with different instruments within the same piece. It usually varies from strings, brass, violin to organ sounds. The funny thing is that sometimes, it is possible that your mind suddenly goes blank, and when the next instrument is required, I go "Oh no, what's the number combination for brass???!!! Wait wait wait wait...". And as usual, time and tide waits for no man. No. More accurately, a drummer waits for no number-fumbling keyboardist. Yea, that's the description man. Solution (ok, this is not a solution but an undesired consequence): Play a brass part with strings, or an organ part with brass, or none at all.



Cold Fingers
Usually, the atmosphere in the sanctuary is very cold to me. Sometimes, the atmosphere in the sanctuary is deep-freeze cold. Under cold or colder conditions, the fingers may or will harden and lose its dexterity. Then again, stuff could still be played, however stiff the fingers may be (with diminishing quality). Solution? Rub them while resting, or else, take off one playing hand and rub it vigorously without catching too much attention. I mean, what else can i do? I remove both hands when I need them ON they keyboard!!! Oh, I missed out that hand-clapping would be a sure kill to whatever heat you may have desperately tried to generate.



Record Breaker
Well, each week CD-RWs and envelopes used to contain the scores passed to musicians would be recycled. They are returned back to the musician's basket in the metal cabinet so that they can be used again. Of course, each time a person would return his/her envelope and CD used the previous week. Well, just somewhere in the 3rd week of June 2006 I returned a record holding of (prehaps of all-time in Lighthouse Evangelism's 16 years of establishment) of 9 envelopes with 3 missing somewhere at home. Oh well, you can't really blame me cause for the first time in my life, I saw the word "envelope" in the sms reminder about recycling. Or at least I would like to think so, about my first time noticing that word (fingers crossed).



Stubborn Pedal
Do you have any idea what it is like to have a pedal refusing to budge when moved with your feet, only to exceed its ideal position when you decide to set your adjusting strength to "brutal level". At that kind of rate, it just never gets to the position that you want it to be. Last resort: Bend down and move it with your hand just before the drummer starts his 4-beat intro to the next song.



Moving Pedal
Amazingly, although the pedal refuses to budge when you want it to, somehow it also refuses to stay in the spot when you want it to. And the more you pedal, the further it gets away from you no matter how you position your foot. And in extreme cases you may find yourself almost starting to slouch or slip from your seat, not that the keyboardist seat is any immobile than the pedal to begin with. Solution: Try to kick it back (this is the time when the above experience suddenly comes in again). Just what's with the pedal, I wonder?



Confession...
Take a look at the following score:

=)

Well, since strings sound somewhat soft, and somewhat muffled such that demisemiquavers are not to distinct, and considering it does take up time and there are 5 other pieces to go, and considering this is but 2 bars in a 100 bar piece, and considering blah blah blah... sometimes I play just a note. (OK, most of the time, happy?) Hey, I'm not the only keyboardist around guilty right? Someone tell me I'm not the only one... pleeeese....



Inventions
- Metal-coated tea bag to help with the sinking (Edmund Lum)

- Sound-powered telephone (Edmund Lum)

- Sound-powered telephone (Edmund Lum)

- Plug-in phones for plugging into a payphone to call - unable to recieve call. However, 10 cents will still be needed and you pay your monthly phone bills as usual (Edmund Lum)

- A clean dirt-free rubbish chute (Edmund Lum)

- A touchpad keyboard similar to the touchpad on a laptop, with letters on it (Edmund Lum)

- USB-portable touchpad (Edmund Lum)

- A square CD for better storage (Edmund Lum)

- Battery-powered book (Edmund Lum)

- Disposable dustbins (Edmund Lum)

- A "short circuit" switch that help save electricity when there is nobody at home (Edmund Lum)

- A white/black highlighter (Edmund Lum)

- Safety deposit box made of pure diamond for hardness. It is transparent to allow better visual of objects within it (Edmund Lum)

- An optic mouse combined with a decorated ball placed inside like an old-school mouse to allow any surface usage (Edmund Lum)

- DIY handphone to cut cost (Edmund Lum)

- A plastic knife - no rusting and it is lighter (Edmund Lum)

- Quick dry glue, only 0.2 sec of dry time (Edmund Lum)

- Doorless toliet for faster access (Edmund Lum)

- A pen with wider pen hole to prevent that all-time infamous ink jam (Edmund Lum)

- A 5-mm thick paper to prevent paper cut (Edmund Lum)

- Water-proof toilet paper to prevent wetting the entire roll when dropped on a wet floor, or easy breakage (Edmund Lum)

- A thermal panel powered heater (Edmund Lum)

- A faq list for patients who do not want to reply to any visitors (Edmund Lum & Glass Cookie)

- A deodorant that puts people off (Mustard seed)

- An umbrella with a wire connection (to attract lightning) that's earthed (Edmund Lum)

- An earthquake detector that sounds when there's an earthquake (Edmund Lum)

- A water sensor at the shoreline to detect an approaching tsunami (Edmund Lum)

- A energy-saving fridge that switches itself on via a smell senser specially for detecting certain rotting smells (Edmund Lum)

- A fire extinguishing bomb that creates a huge area of vacuum (sounds familiar?) so as to deprive the fire of oxygen (Edmund Lum)

- A solar powered torchlight

- A power-saving exit sign that lights up only when someone is around (Gabriel Goh)

- A self-locking door that locks itself when no one's around and unlocks itself when someone's near (Edmund Lum)

- Pencil lead harder than steel to improve on its fragility (Edmund Lum)

- A water-proof teabag to prevent breakage over long periods of soaking (Edmund Lum)

- A manual powered air conditioner (Glass Cookie)

- A water-sensitive sprinkler (Edmund Lum)

- A auto retractable roof via light and water sensors, hidden in the wall for protection (Edmund Lum)

- An anti-burglary system with the switch and sensor in the same room (Edmund Lum)

- A wooden barbecue pit (Glass Cookie and Edmund Chen)

- An acrylic oil rig and drill bit to save $$$ (Glass Cookie and Edmund Chen)

- A windows based DOS command prompt program (Glass Cookie)

- A wired handphone (Jackson Lum)


Misc
- A birthday breakfast celebration (Glass Cookie and Jackson Lum)

- A domesticated grizzily bear (Glass Cookie, inspired by Amanda Low)