General Politics

2012: Year in Review and thoughts about gun control

Happy New Year everyone. Once again I’m doing a yearly review of the highlights and low points of each year for me, and so this will be for 2012.

First off though, I want to talk about some thoughts on gun control. The recent Newton Shootings have spurred some discussion on gun control. Some gun rights activists have often responded with the following arguments.

If you ban guns, criminals will find a way to get them anyways since criminals don’t care about the law.
My response: Well, yes of course criminals will break the law, but the point is if guns were banned, then it will be a lot harder for them to get guns in the first place. The shooter actually stole the guns from his mom, which wouldn’t have happened if guns were banned. Most shooters don’t become criminals until they start shooting. Until then, they’re just a regular citizen. Plus, people break laws all the time, including traffic laws, but it doesn’t mean we shouldn’t have them there.

Guns don’t kill people, people kill people. If you start banning guns, why not ban cars and knives too?
My response: Cars are designed for transportation. Knives are designed for cutting food. Baseball bats are designed to play baseball. Guns however, are designed for killing. There’s no comparison here, because its apples and oranges.

Now, I respect people’s gun freedoms, but I really don’t think they need 30 round clips and assault rifles to protect themselves when a mere pistol would do fine. Now, onto the year review:

-Traveled a lot this year.
-First full year of full time employment.
-Steady progress as a front-end developer.
-Met lots of new friends.
-A short relationship, fun while it lasted.
-Improved my Korean.
-Made $8k off of Intrade, and $6k from the stock market.
-Parents helped me buy my own condo in San Francisco.

Low points:
-Friends are mostly international students who go back after a few months.
-Work can be kind of dull at times.


2012 was mostly a year of relaxing, in contrast to 2011, which had a lot of set goals. I traveled to many places this year, including Yosemite Valley, Napa Valley, Point Reyes, Tiburon, Marin County, Lake Tahoe, Monterey, Santa Cruz, Carmel, 17 Mile Drive, San Diego, Los Angeles, Santa Monica, Venice, Las Vegas, and Grand Canyon. And I did all this traveling while only taking one week off, while making use of my extended weekends.

In addition, I am still working on learning Korean and increasing my knowledge as a Front-End Dev, which is always productive for me.


Overall, this year went quite well for me, but lacked the characteristic ambition that I had in 2011. I hope I’m not getting too comfortable – I need that sense of drive for me to succeed and move even farther in life. Like Steve Jobs said, I have to stay hungry, stay foolish.


Status of my goals and end of undergrad

Last year, I outlined a list of several goals that I had set for myself this year to achieve.

Let’s check back on the status of these goals now.

1) Graduate on time
I just finished writing my last exam today, and am confident of passing all my courses. As for my GPA, hopefully it will be improved.
Edit: Finished with a 2.75 GPA, achieving my goal of having my GPA >= 2.7!!

Status: Done

2)  Eliminate three quarters of my debt
If you take a look at my spending levels compared to last year:

Spending May 2009 - Sept 2010
Spending May 2009 - Sept 2010
Spending Sept 2010 - present
Spending Sept 2010 - present

Comparing the two, it’s easy to see that without a car or eating out everyday, I saved a lot of money. The increased tuition and fees in this period is because of full time school plus cost of attending conferences and events this year. I’m happy to say that I took a lot of money out of my stock account this year and paid down $14,400 of my debt, that’s 77%. So yes, I achieved this goal.
Status: Done

3) Secure a job by graduation time
After many interviews, I managed to get the job offer from the company I was interviewing with in San Francisco. What a relief for me! I’d like to thank everyone who supported me, including those who comment on my blog, my family, friends, my professor for my CSC490 CS Education course, my AIESEC VP of Communications and my  former manager from Environment Canada for serving as my references. I worked hard and I will continue that way.
Status: Done

So all of that is done and it feels rather surreal to me. Seems that college went by rather fast, a lot of all nighters, and maybe not enough socializing. Still, I think it helped me evolve as a person. Even this year, I am quite different than a year ago. I don’t have a car anymore, no steady source of income yet, no $20k in stocks, and no girlfriend once again. Yet I feel more mature somehow. Maybe cause I have tangible achievements now. Anyways, I thank the University of Toronto for causing me to become a stronger person, and feel quite relieved to end off my 17 years of education (since kindergarten). I still don’t know about grad school yet (GPA too low), but I am ready to move on to the real world now.


Life is stubborn, and so am I

First off, happy Chinese New Years everyone, hope this year of the rabbit can bring some good food and spirits for those that are celebrating.
For me however, I had an interview with Amazon, and a good amount of snow and coldness (-10 C) here in Toronto; no celebrating since I live alone.

This would be my second interview with Amazon, it was at my campus instead of a phone interview this time. Unlike the first time, I prepared well, reviewed all my data structures (Trees, Graphs, Linked lists, Arrays, hash tables, stacks, queues, heaps) and algorithms (mergesort, quicksort, breadth first, depth first, in order, design patterns, singleton, factory, recursion, divide and conquer, dynamic programming), as well as large systems design (distributed systems, scalability and load balancing). The interviewer, instead of giving me several small questions, just threw a big technical question at me: code the placePiece method in a game of Reversi. The thing is not that I wasn’t able to do it – it just took a long time. The algorithm is to place the piece with given x and y coordinates in the matrix, check all 8 directions for a piece with a different color: if there is a piece with different color, pass in the direction and the piece, loop through it pushing all the nodes onto a stack/queue, and then if the same color piece is reached, pop all the nodes and color them the same color. O(n) complexity.
Thing is, I had to code this in about 30 minutes and wasn’t able to finish on time. He asked me to code using Java instead of pseudo code (which would have been faster). I don’t think it was fair; why give me one long algorithm question when he could ask me several smaller questions and learn more about my object oriented and programming skills. All this shows is how much I’m able to code in a period of time.

Anyways, I’m a bit annoyed because I prepared so much for this interview and only got one question asked of me. I know a lot of people wished me good luck this time – I personally believe luck is a combination of preparation and opportunity. The really sad thing is, I did prepare and I did make use of all my opportunities. I should have done well, except I wasn’t expecting him to ask one big question. And I don’t think I could have improved on my time unless I specifically knew what question he was going to ask. I don’t know what I did wrong besides running out of time. I was about 75% done the code, I kept asking him for clarity, I gave him feedback on my thoughts as I coded, I explained how my background working with distributed systems at the government was a good fit for Amazon, I asked the recruiter good questions, I even wore an Amazon T-shirt to the interview! And I couldn’t advance past the first round.

Some part of me thinks that life purposely makes things hard for me. Looking back, there’s very few situations in which things actually went the way I wanted to. I had three goals this year: to do well in school and graduate, pay off my debt, and find an IT job in the U.S, and it’s almost as if life is telling me that the third and hardest goal shouldn’t be achieved early. It’s making me work really hard for it. Even my second goal has issues. To pay off my debt, I need to get my money out of the stock market, and get my scammed money back from my Mastercard. The Dow is over 12,000. My stocks went the opposite direction; so much for that one. As for the second one, here’s the story. I wanted to build a web application back in June 2010, and this merchant from a forum I visited asked to do it for $2200. I foolishly trusted him and gave him my money. Couple months later, he said he would do it in one week, and it still hasn’t been done so I asked for my money back. He didn’t give it back. I initiated a charge back through my credit card company. Then the merchant tells me that the chargeback has been done and shows me some Paypal screenshots to let me know the money was out of his account and would be in mine a couple days, then told me he needed an extra $1100 from me because I had charge backed some services he did provide, like hosting my site. I believed him and gave him another $1100. My Mastercard company later told me the merchant had fought back and provided documents as a rebuttal to my charge back. Since I basically lost all my money at this point, I fought back again with proof I sent him the payments for things he did provide me. Mastercard tells me it would be months before they could make a decision. Great, basically that $2200 is gone, at least its in limbo for a couple months.

Nevertheless, despite these setbacks, I will keep trying. I’m the kind of person who doesn’t give up easily, as I realize things often do not go my way. I still believe that if I keep trying, then maybe somewhere things will start to bend my direction. Who knows, I believe its always better to weigh the decision of trying and not trying. If you try and the worst case scenario is that you get rejected, then it’s the same as if you didn’t try; thus its always better to try. And I’ve always wanted to aim high rather than low; if you compare yourself to low people or think of the alternative to not achieving high, then the consequences I think are too scary for me. So life is difficult; that’s fine. I welcome that. With each failure, it only serves to strengthen my determination. I’ve never lowered my standards before, I’ve always wanted to aim near the top (but not the absolute top; 中庸之道) , and if I can’t get it, then I will keep trying until I do.