Hello there.

I'm a front-end developer passionate about cutting-edge technologies and impacting everyday lives. It's nice to meet you!

Userstyles Experiment #1 –

So I was just browsing Amazon the other day looking for stuff to buy (I guess you can call this the guy version of window shopping), and found out that I got the infamous redesigned interface. About time!

As much as I appreciated the new design and valued it much higher than the old one, there was still something missing. And I think I figured out why: It was wide! Looking at YouTube, Facebook, Google+ or most other popular sites* – they seem to all be fixed-width. And as a result, it was too hard to focus on the content when everything was so spread out.

So I started taking out Stylish and Userstyles, and started modifying Amazon to one that I’d like. But it turned out to be quite for the non-unified structure across all pages. They all have a header and a footer (actually, where the footer is placed in terms of structure is different each page as well), but each page has a different structure. Some are made of tables, some are made of divs, some are surrounded by a <center>, and others are a bunch of really complicated, overlapping table cells.

My immediate reaction was to use javascript to wrap the whole page up to one single div, have that div centered, and done. At first I thought it was a great idea, as I could keep everything simple with almost guaranteed success across the whole site – since it didn’t matter how the page structure was designed. However, there were some conflicts with that and the sciprts that the page came with, like the departments dropdown menu, so I had to look for an alternative.

I then went through every alternative of pages (search page, product listing page, account center, and so on) and tried to find a solution that fit each one of them and combined them together. It was simply painful. And because the solutions were so idiosyncratic to these pages, not all the pages could be modified.

But hey, at least those that I modified look great!

I encourage you to try download and put it on sometime (It supports most modern browsers), and you’ll soon notice a difference in your shopping experience. Trust me.

*Excluding Picasa, but contents adjust themselves so that they fill the screen; Gmail or Google Calendar – the flexible width provides more space for more content.

Important things

It’s uncannily funny that it’s always these tech products release that I find most inspiring.

Facebook just launched its new “Timeline” profile interface, which was advertised to let you “tell your life story”. Under that giant shiny tagline was a promotional video, made exactly like, well, a timeline, of somebody. The video started at a “story” of how a kid was born, then goes up (mimicking “scrolling up” on a web browser), witnessing the glorious moments of life: making his first steps, going to his first singing contest, graduating from high school, meeting his girlfriend, getting married, having a kid of his own born; and finally ended in a “cover picture” of him and his daughter.

I was excited to activate such feature to my profile, only to realize things were more difficult, way more, than it looked like to have an organized profile like that. When it comes to memories, every single bit becomes important. If I could, I wanted to make every single darn story “featured” on my timeline, and make every single photo I could possibly find up on my cover photo. So that I could always look back in reminiscence and remember every single moment, and to live through them again.


I thought it would be easier.

No, seriously, I thought it did.

And there we have it. As we gave each other that last hug – now that I think of it, it’s probably the first real hug ever – Everything suddenly went back in time and turned me back to a little boy again, wanting more for his father’s presence. I could not help but to think of those things undone, words unsaid, and responsibilities as a son unfilled.

It’s funny how I’ve kind of been waiting for this moment to be free for 18 years. And now, at the verge of it, I don’t feel like it anymore.

Just some crazy thoughts

Which of the Hong Kong tourists in the shooting tragedy would have even remotely thought of being involved in it when they first left for Manila?

What if I was on that bus? What if I was the one that Mendoza was pointing the gun at?

Would I be able to bravely call back to Hong Kong and ask for help under Mendoza’s watch? Would I be selfless enough to take a bullet for my family members? Or would I just cowardly run away like the bus driver?

These things, they used to seem so far away. As I read the news reporting from court these days as they examine the event, I can’t help but to think that, who knows, one day that might happen to me. What would I do then?

The world is messed up. I am scared.

A note to self: Lessons from the WWW App

A week ago, I created an web app designed to aid ICS students in choosing their WWW trips where their friends are going. Like the app I created a while ago with courses, this idea came up from the millions of “where are you guys going?” wall posts on Facebook – why not just create a central hub for people to see where people are (or in some cases, aren’t) going?

Development took a little bit over a full day and made me sleep at 5am – something that I would have definitely not done normally. Could have took much less time had I not played with the various Facebook APIs, jQuery effects and aesthetic elements, but you know, it was worth it. I mean, in the end I took this mini project as an experiment in itself, testing what works and what doesn’t, and improve on the later products.

And here is my report.


My Birthday Wishlist! :D [Updated]

I realized writing this post might generate an opposite effect than what I was hoping for, but I mean, since this is my blog and all, I might just let myself out. I mean, come on, this is the only time in the year where I can be selfish. 😛

My birthday is coming up in exactly 10 days of postage (Aug 15). I’m excited. Looking back at my birthday last year (which was my sweet sixteen) and how I didn’t get anything at all, I plan to get at least myself (or… hint hint) to buy myself a birthday present. So here it goes.


Last Day of Work. Mixed Emotions.

I don’t know what July 14th might mean to other people, but to me, it means a lot: the last day of my first job!

In the past month, I’ve had a wonderful opportunity to work in the VeriGuide team with some amazing people to make a plagiarism detection system for teachers and students in school to use. My main job was to integrate the already-completed system with Moodle, a Learning Management System that has quite a lot of market shares in schools today, with some minor addition such as beautifying and tweaking interfaces and what not.

For pretty much the whole month, I’ve been waking up at 7 (while all you sleep till like 12), show up at office by 9:30, work for 2 hours, go to lunch, work again for like 5 hours and go home. Yeah, the regularity of my holidays was pretty much like school, and I gotta tell you, it has been driving me crazy, at least for the first couple of days.

That said, it has still been a fantastic experience for me. Not only did I get to improve on technical details (by working with some other nerds and dealing with multiple languages between PHP, XML, JSP, and Java), I also had to do some critical thinking “exercises” and learned how to communicate with other people effectively. We organized ourselves with Google Docs (which were amazingly helpful, I finally realized), held some discussions in our tiny office (which was also used by some grad students for their research work under the same prof), and made this work experience not only about codes, but also about interaction with people and team-building – something that I could not have otherwise learned.

Lastly, the amazing people that I was working with is probably what made my month so great. I had so much fun just working, talking and even taking after-lunch chilling breaks with them – so thanks a lot!

Now on my last day, I’m kinda happy because I’m now (kinda) free; but I say I’m definitely going to miss what has happened during the past month in a small office at CUHK. Keep in touch!

I believe!

Just came back from an exhausting, but nevertheless absolutely amazing, 4 days-long spiritual retreat organized by my church. To sum the camp in a sentence, I was able to take 4 days off everything else – work, school, or any other things in the world – and just truly relax and reflect over the past year. Turns out, by filling myself with so much work in the past, I have actually missed a lot of things that I didn’t realize them until this past weekend. And all I have to say is, “WHOA!” – how the heck did I miss such blessings and think that God wasn’t with me this whole time?

John 10:4 says “When [the Good Shepherd] has brought out all his own [sheep], he goes on ahead of them, and his sheep follow him because they know his voice.” I simply loved it when our speaker explained it as a beautiful picture with Jesus taking the three steps before I did and made sure the path is safe, then turn around, reaching His hand and asked me to trust in Him through all kind of difficulty there might be – because He has been through everything and knows exactly what the journey is like.

I didn’t plan to post anything spiritually related on my blog when I first started it, but this feeling is getting so strong that I just felt like I had to say it to the world (Yes, I know I’m just exaggerating, considering the amount of readers I have 😛 ) When I finally had a chance to count all the things that God has done for me, how many times I have broke His heart yet still He was still trying to get me back on the right track, I simply collapsed. There is simply nothing that can stop me from saying: I believe!

Tom Cruise? Me? What?

In the camp, we were separated into small groups, and after every message we’ll have some time to discuss about the talk. During one of the discussion times, we played a little icebreaker game to “get to know each other”, I guess?

The game was somewhat like Telephone, but instead of talking, we draw the message out. The first person will start a general topic, pass on and the second person will have to draw it out. Then, the third person, without knowing what the first person has wrote, needs to guess what the second person has drawn, then write what he think it is out. Fourth person will draw it again based on the previous person’s response, and so forth.

So, I started the game with the topic “Tom Cruise” (partly because I just watched Knight and Day, partly because I wanted to see what Tom Cruise would look like in drawings 😛 ), and passed it to the next person with a warning that my topic is going to be hard to draw.

The second person laughed out loud when he saw what I wrote, then got stuck there for a while not knowing what to draw. After a while, he must have suddenly remembered the movie and drew this out:

The third person stared at the drawing and had no idea what it was talking for a while. But after some struggle, he figured out too (with giggles, teehee)

Now I don’t know what happened here for the fourth person. But it turned out something like this:

The fifth person of course couldn’t figure out it was Tom Cruise, and it seemed most logical for her to write this down (ask her why):

So the last person took the liberty and drew this out based on the above:

So, in a sense, Tom Cruise and I must share some common traits or something. Maybe we’re both just too good looking that people get confused easily. 🙂

Who are we doing the work for?

Yesterday, during Economics class, after showing us the Fear the Boom and Bust video (again), my teacher said something was surprisingly insightful. I couldn’t remember the exact quote, but it sounded something like this:

I feel that teachers often give assignments for students to do it for teachers, such as essays, which are actually not very helpful to students.

What an interesting idea I’ve never thought of. Relating back to myself, the assignments that I find most motivated to those that relate to us more, those that make us feel like we are not doing it just for a grade. When we grow up, we won’t be writing essays for teachers anymore, but real stuff without a “rubric” to be grade on: it’s either a thumbs up, or “pack up your stuff” thing.

Graphics Design has been one of my favorite courses, because it simulates an environment of fwhat real designing life is like – Mr. Meyer is a genius in the way that he set up all the competition and teamwork factors, etc. Because of this, I learn much more than just the skills, but also experiences of what real life feels like. The same goes for Media and Computer Science, where its assignments are not done for just the teacher and the grades, but for the students in the school and those around us.

And yes, our MAD Project also fits perfectly in this category. I don’t know about you guys, I actually enjoy MAD Project. It gives us an opportunity to show off ourselves and to demonstrate our true abilities. These kind of projects will be what we are working on when we grow up, so take advantage of this opportunity to really do what you want to do, and enjoy in the process.

I mean, this is the real point of education, isn’t it? It’s to prepare us for the real life, not for the teachers!