Archive for the 'Life' Category

The Ham Sandwich Theorem

While in class today, my prof mentioned hyperplanes. Not really remembering what those things were and having Internet available, I made use of Wikipedia and looked up hyperplanes.

After running through the page somewhat, something caught my eye in the “See also” section: a link to an article named the ham sandwich theorem.

“Surely this must be a prank.”, I said. It turns out I was mistakened and the ham sandwich theorem, also known as the Stone-Tukey theorem, is a legitimate theorem that talks about dividing n objects in n-dimensional space in half with a (n-1)-dimensional hyperplane. The ham sandwich theorem is for the specific case where n = 3. If n = 2, it would be known as the pancake theorem.

Where do these people come up with these names? Mathematicians must have been quite hungry back then or something, akin to the modern poor starving student.

First Impressions – Summer 2008

For this semester, I am only taking one class. However, in an attempt to restructure my life and its priorities, some things have changed to move towards the goal of better academic performance.

I started to get restless over my mediocre grades sometime between the break, considering how most of the people I know get fairly decent grades. By decent, I mean that their GPA is at least above 2.4. I am pretty sure it’s not because I am a poor academic by any means. At this point in time, however, after reflecting on just what I have been doing in the past few years in university, I have concluded it might just have been my lack of focus on school and too many other things to do, which contributes to stress levels that get me burnt out to do well.

So what I am trying out this semester is a strong focus on school with ample amounts of time to destress to prevent the burn out. Unfortunately for other commitments, this just means less time for those. After all, personal/professional development tops my list at this time, given my desire to get some unique experiences in before graduating, like international co-op opportunities like Coop Japan or various co-op experiences in government and public service in places like CSE. Places outside of Vancouver and outside my comfort zone. Places that challenge me in various ways and give me opportunities to be truly independent, fending for myself and such.

I don’t exactly want to continue being in the CS academic probation either. Despite our academic advisors being awesome people, I don’t want to have to talk to them every semester just to register in upper division CMPT courses because it means there is a chance (although admittedly a very low one) of not being able to register for the courses I want. But yet, having mediocre grades (C range) keeps me nowhere near getting out of CS-based AP. Hopefully my greater focus on academics would help with getting myself out of this and towards a better GPA.

As for the one course, this of course is CMPT 419, Special Topics in Artificial Intelligence, with the topic being machine learning. It’s been quite interesting thus far and I hope to be able to maintain my enthusiasm for the course throughout the semester so I can accomplish my goals as stated above. Greg Mori stated quite clearly that this is a math heavy course, which would be something to focus on, since my math marks have not been stellar in any case.

Luckily, there are opportunities to review with a math review session tomorrow and a bunch of free time brought about by the single class.

Now, people might now go “Dom! You have so much free time now! Go do X for Y!” I am going to be clear right now and say “No.”. I need my free time to do various things that fit in with my goals for better academic performance and professional development, so see me either studying or working on some projects that either have been hanging back or learning new skills that would be useful to achieve my career goals. Some examples of such projects include:

  • Get more practice in writing C
  • Learn how to reverse engineer things through crackmes
  • Finish my Scout group’s website
  • Create a badge administration web information system for Scouts
  • Online game

Of course, life will need to be kept in balance, so efforts will also need to be made to go out and have fun with friends more, which is also something I have not really done much of, but absolutely necessary to keep me sane, as I have discovered as of late.

Brain Dump

Co-op finished last Friday. The week included a farewell lunch at Himalayan Peak, the Indian restaurant on campus, as well as four classroom visits in one day, which was quite exhausting to do. No matter how hard I tried, it was a struggle to get work done during that last week.

Outside of work during that week was Anto’s going away dinner because he’s going off to Waterloo to work at RIM for four months. After dinner, our group of people headed over to CHQ to play around in the arcade, which included playing some vertical shooter (never caught the name) with Anto, Initial D with Amy, Time Crisis 4, Taiko: Drum Master with Amy, some other rhythm game involving three buttons with several people, House of the Dead 4 with Anto, and Ghost Squad with Tadashi. Turns out I’m really bad with rhythm games. I also tried out that tank driving game based on World War II. I ended up calling an air strike on myself because I’m such a noob >_<, but it was fun nonetheless.

Once I got home on Friday, I found a Steam message from Dan telling me that Civilization IV was 33% off on Steam. And so, I bought the Civilization IV Complete Pack for USD $39.95.

However, I could not really get any rest for that weekend. That is because on Sunday, we had the 12th Annual General Meeting and Anniversary Dinner for the 99th Saint Francis Xavier Scout Group. Being the project coordinator for this meant that I was pretty much running all over the place on both Saturday (to rehearse and prepare) and Sunday (to oversee everything to ensure that the event ran smoothly and assist if something did explode in our faces). Surprisingly enough, the event ran quite smoothly, despite the last-minute nature of many things in the planning and preparation process. I did not really start the planning process until a month or so before the actual event, things got delayed and pushed back (mainly due to poor management from yours truly), and various other things.

Mom left for her pilgrimage on Monday, so I basically did the driving for the day. Woke up early, drove out to Richmond, had breakfast, saw her off at the airport, then dropped off dad for work and went home. Pretty much, the day was a maintenance day. Fixed up my bike so I could actually use it, then I started to try to fix that computer that was mentioned in the to-do list post. That in itself was a challenge because it’s got Chinese Windows XP installed, and I don’t really read Chinese all that well, even though I am Chinese. Basically, the problems with the computer mainly revolve around errors popping up when the system boots up (and from the looks of it, these are the application encountered an error and crashed type messages). Usage history from the users states that the errors started when they tried to install the TELUS eProtect software. I think I am going to toss it out and install AVG instead. Might as well go with what you know works for things like security. They are also using Spybot Search & Destroy for their anti-spyware needs, which I will keep around because it works. Haven’t done that yet because I wanted to actually spend the week enjoying life and taking a break from things.

Started getting lazy on Tuesday and lounged around for a quite a bit. Had a meeting at night though for more program planning for the next two months of Scouts. Not going to post details here because I know some of them read this blog. You’ll find out tomorrow what to expect!

There was a SFU Open House meeting on Wednesday that I went to because I am coordinating stuff there for Computing Science. Since my bike is ready to be used, I took the bike out for a spin. Good weather out too, but I just am not in good enough shape to bike much, which kind of sucks considering how I could actually do the distance from school to home (a 45 minute commute by bus/foot) back in high school by bike. As a result, I cheated quite a bit, and only biked the distance from home to Commercial Skytrain Station and from SFU to Sperling/Burnaby Lake Skytrain Station. Turns out it’s really beautiful at Burnaby Mountain Park. I should head over to that field more often – it doesn’t take long to get to from campus.

Went out to Havana for dinner with a few people from the co-op job on Thursday, which was pretty good. We then went all the way across town to Sweet Obsession for dessert. Very, very yummy cake (I had the White Chocolate Raspberry Mousse). They also have an interesting tea blend called the Sweet Obsession tea blend, which is basically an Earl Gray with jasmine.

After I got home, I finally started to play my recently purchased Civilization 4 with expansions. My God is that game addicting. I ended up playing from 9-10 PM until 4 in the morning because I did not look at the clock. >_>

Not really looking forward to going back to school so soon, but the time is coming. At least I’m only there for two days a week. I should get some golfing into the week at the nearby pitch & putt course at Kensington Park..

I just wish I had a longer break.

FAS Formal

Yesterday was FAS Formal.

Originally, I was not planning to go. Reasons from things like “I don’t have a date to go with.” to “I’m at camp on the weekend, so it would be crazy for me to go there after.” to “I have time constraints.”. But in the end, I still went.

The reasons were all still there. I went dateless, but tagged along with a bunch of friends. I still went to my camp beforehand and got my Woodbadge II for Troop in the process. I still managed to get all the things done within the small amount of time I had between after the training camp and the formal, which includes going home, cleaning up, getting dressed for the night, and going to Mass. Did I regret my decision to go to FAS Formal? Not one bit.

It was unexpectedly fun! It gave me an opportunity to unwind, which was something that I realized now was badly needed. My focus has just been work, work, and more work with no breathing room to go out and have fun with friends. I really need to make time for more fun social events.

Still too self-conscious and too reserved though. I didn’t ask anyone to dance, but peer pressure kinda got me out there on the dance floor and ended up dancing briefly with two female friends. All the other times, we just stood around in a circle and just moved about. I’m pretty sure I “danced” (if you can call it that anyway) like a fool, but whatever. It was fun.

Also, Curtis Lassam: I still can’t believe you rickrolled the formal, but kudos to you my friend.

After the formal, our table of 7 decided to head out for drinks, namely bubble tea at the Bubble World by Metrotown. We talked about stuff, joked about, and generally had some fun.

Finally got home at 2 AM or so. Sure, I have work today, but I still woke up (and earlier than normal, which is mind-boggling) and wrote some good amount of documentation for my work project. I am working unconventionally though; my co-worker Santi is attending a talk about international studies, but we have a visit in North Vancouver as well. I spent a good amount of time working at a coffee shop by remote desktop and enjoyed a somewhat endless amount of tea.

A To-Do List

Throwing this here just so I remember to do these things. Quite a few things that really need to be done, and then there’s the things that I’ve just been itching to do, but haven’t done yet.

In no particular order, categorized by when it needs to be done, by weeks relative to now:

By April 20:

  • Pack bag for Wood Badge II second weekend trip, happening this weekend (April 18-20) – done hours before going
  • Do writeup for Wood Badge II homework – done April 17
  • Get a meeting date decided for Troop planning and misc. issues for the coming months (May till June/July) – delegated to another Scouter (the one in charge of the months)
  • Send out this week’s announcements for the troop – done early April 18
  • Get number of confirmed participants for Nite Hike – found a sad number, but done nonetheless April 17
  • Get people in on the stage crew team for the AGM on the 27th – got two people on board for this April 22
  • Make sure all teams are on schedule for the AGM planning stuff – kinda done..
  • Check on AGM booklet team on their status – technically should be almost done at this point if we are to meet the print deadline – done April 16 by another leader
  • Get Nancy to fill in the Supervisor Evaluation for co-op – done April 15
  • Hand in work report – done April 15
  • See if I can get off work earlier on Friday so I can get down to Langley for Wood Badge II training – done April 15
  • Determine Scout of the Year – done April 16

By April 27:

  • Clean up my desk at work – done April 25
  • Do documentation for my self-initiated project at work
  • Fix issues with said project as we find them
  • Get student volunteers to help out with the CS booths during SFU Open House
  • See if I need to contact all my teacher contacts made during my work term to let them know who to contact now that my co-op term has ended – work approved idea on April 22
  • Send said email – done April 25
  • AGM – make sure all planning is done, all bases covered, etc., etc. – done April 27

By May 4:

  • Meeting for Troop program and misc. management issues – done April 22
  • Fix a Scout’s computer – I’ve had it for a while now, but I told her I should have time starting on the 28th because work is done by then
  • Clean up my desk at home
  • Clean up my room
  • Throw out the random junk I don’t need that I find while cleaning up my room
  • Review scary math in preparation for CMPT 419 so that I will not “run from the room screaming if [Greg Mori] say[s] “eigenvector” or “covariance matrix”" (email from Greg Mori forwarded through csadvise back in December 2007)
  • Buy textbook for said class – done April 16
  • Pay tuition for summer

And other, no specific due date items that have, unfortunately, just hung around. Also unfortunately is that this is all the fun and/or important stuff:

  • Work on my online game project
  • Work on a Scouts-inspired project related to badgework management – idea from fellow Scouter in my group from his discussion with his group during Wood Badge II because:
    1. Existing solutions are reportedly bad and hard to use
    2. I would benefit from such software
    3. I can make it a web application, which makes it fairly easy to get to and use
  • Finish work on my Scout group’s website (a run-away project of epic proportions.. really. If we did earned value analysis on this project, the SPI would be very, very, low, perhaps somewhere < 0.01)
  • Create my website, so that the main page doesn’t suck
  • Related to the above: since I will be creating something on my own, chances are I will only use WordPress for blogging and nothing else, which means I need to make a template for my website, then port said template to become a theme for my blog
  • Review my commitments on things and see if I really need to start cutting back on various things. Currently, all signs point to yes.

And hopefully there’s nothing else. There’s already a huge stack here already and more would just.. well, let’s not go there. I want to go to sleep tonight right after this without nightmares of things that I have not yet done, or forgotten to do.

SFU vs the CFS

A fairly long rant about this issue. For the curious, I want out. More after the jump.

Read the rest of this entry »

Time to take a jump off the deep end

Today was my course registration day.

The original plan was to go and do a distance ed course because I am heading out east for a week and a bit in June. If I carried on with that plan, I would have probably taken either CMNS 130 or CRIM 131, thanks to recent developments that have encouraged me to do more than just a Computing Science degree.

For the curious, the option that was on my mind for the longest time was a minor in Communications due to my primary interest area in Internet communications through websites. I figured that understanding how communications have evolved and developed and where it can go all thanks to technology would be a good thing to pair up with a computing degree.

But after hearing during a career fair last week (and I was one of the people running the booth where I heard it from) that there is discussion going on about a joint major in Computing Science and Criminology on computer forensics, I pretty much got hooked on that idea.

However, a desire to get a U-Pass for the summer (apparently, I am not eligible for a U-Pass if I take only distance ed courses) has encouraged me to go and take a course. And that lucky course does not fall into any of the two aforementioned courses, but CMPT 419.

The topic? Machine learning. The prof? Greg Mori, who also happened to teach my CMPT 310 course.

Two things make me worried about the course though. First off, it is quite math-intensive and requires a good knowledge of calculus and linear algebra, pre-requisites in the lower-level CMPT stuff. I did not do so well on those. Second is that the course is cross-listed with a grad course.

However, the course material does sound interesting and my interest in the material will be my main driving force in keeping me going. After all, my desire to do MACM 442 has already forced me to take MATH 342. For the curious, it was not as bad as it looked.

First Impressions – Spring 2008

And so begins another semester. This one is a bit different because I am actually doing a co-op work term while taking classes.

Yay co-op and making monies!

As far as I know, I am only allowed to take one course while doing co-op. Since I am working at SFU, I can get to my class without much trouble; I just need to make up the time for it (two hours a week that go into my work time).

What course am I taking in addition to CMPT 427? Why JAPN 200 of course!

To be honest, after my first class in JAPN 200, I feel like I am going to get my ass kicked unless I study hard and review all the stuff from JAPN 100/101. At the present time, since there was a semester-long break between JAPN 101 and this class and I did not exactly find time to review content for this class despite having the resources (I have the textbooks and the CDs already), I feel under-prepared and everyone else seems like they are coasting.

Theoretically, I should have enough time, but there are lots of commitments outside of work, like more work (in unpaid forms).

One very interesting thing so far was when people were sharing study tips, one student said that he recently started blogging in Japanese. Maybe I should start doing something similar..

As well, I heard over the holidays from quite a few people that I know that they are taking CMPT 475. It’s an evening class (starting at 5:30 on Tuesdays going for three hours) and from what I hear, the instructor is a person in the industry and will be quite interesting. I am thinking of checking the lecture out next week, since there was no lecture during the first week. Although if I do end up finding the course interesting enough, I will be stuck in a pretty tough spot, unless I somehow manage to squeeze in two classes, along with a full-time co-op job and volunteer work (Scouts).

I’m pretty sure some form of intervention is going to take place should I ever make that decision, so I best find out what I want to do for this semester soon. Of course, I will need to wait untl Tuesday before I get sufficient information to make this decision.

Holiday Technology Acquisitions

This season in technology was quite interesting, to say the least.

Initially, I was not thinking of getting anything at all. I just got a new laptop and the only things I could really improve on the computer front was the fact that my desktop had only 1 GB of RAM (which I could double-up to 2 GB, but would cost more because it was 184-pin stuff, not the current 240-pin stuff) and a single-core AMD Athlon 64 CPU (which would also be expensive because it was Socket 939, not the current AM2).

Then I did some looking around.. mainly at NCIX….

Like always, there was not any awesome stuff on outdated technology that my desktop runs on. No dual core Socket 939 CPUs. Surprisingly enough, there was 184-pin RAM on sale, but it wasn’t that great of a deal when you compare that with the sales for 240-pin RAM ($58 for 2×512 MB Corsair Value Select PC-3200 compared to $30 for 2×1 GB OCZ Value Series PC2-5400). However, if you take a look at tech pricing trends as proposed by of the tech staff at work, you will notice that prices start off expensive, dip down to quite low prices when they are mainstream, then go up again when it is past their time. To avoid getting shafted any more on RAM that would work for my desktop (it’s only a year or two old), I got the Corsair RAM.

However, when it was time to install it, the upgrade failed. After some trouble shooting, which involved borrowing stuff from people (thanks Benton for the PSU tester!) and Googling, it turned out that my PSU, although in working order, lacked the power to run the stuff, or something. What was strange about the situation was that even after removing the RAM, the motherboard still refused the power supply.

Replacing the power supply for my case, an Aspire (now Apevia) X-QPack, is a complete pain because the depth for the unit is 11.5cm. Your standard ATX power supplies are 14cm to 16cm deep (or long). After some measuring and experimentation, a 14cm depth PSU would fit, given some work, so I looked around for suitable power supplies.

Things somehow worked in my favour because my distant cousin who is studying down in the US came by to visit and my dad was going to drive her back down to Seattle (and also visit her sister because she could not come up due to unsigned papers; they are international students). Doing some research, Fry’s Electronics has a sale for the 550W Antec TruePower Trio for $60 USD (50% off) and since there is a Fry’s in Renton, I got myself that and made myself a happy camper.

Some further checks on my laptop, due to the 1 GB laptop RAM sales going on at NCIX, revealed that my spiffy new laptop has two slots for RAM and only one slot is used to get my 1 GB of RAM. NCIX has the RAM inside the computer available, but not on sale, so despite the fact it was not on sale, I ordered a stick for $26.28, which is a fairly decent price for a RAM upgrade for an already pretty cheap laptop.

On the audio-front, I was using my dad’s 1 GB MP3 player and a pair of gimped-up headphones (only one side works). The NCIX web-only Boxing Day sale had Sennheiser earbuds going for $18, so that’s been ordered (along with the previously mentioned laptop RAM). Haven’t got them yet, but should be awesome stuff. It just so happened that for the in-store NCIX sale on Boxing Day, they had 2 GB Creative MuVo T100s on sale for $0.99, so I managed to snag one of those as well. Of course, that meant an early morning for Boxing Day, but meh.

Boxing Day also saw a new game in my library – World in Conflict. If you are into the whole tactical strategy stuff, it is a game for you!

So a little bit of spending from me for the Boxing Day sales, although now that I have cleaned up a good portion of my room, it appears that I can actually go dual-monitor..

And I still have yet to procure a Nintendo DS.

Oh well, maybe some other time.

Hooray Laptop!

So after two long months of waiting, my laptop finally came in on Friday last week. However, since it was shipped via UPS and no one was home, I did not end up getting it till Monday.

So far, it has been pretty awesome. The X61 is an ultraportable, being somewhere around 3 lb. On the best settings (ie. wireless off, screen at lowest brightness, etc.) the laptop can last for somewhere in the range of 8-10 hours. Otherwise, I see the laptop work on battery for around 6-7 hours. This is pretty awesome. However, that’s only for Windows.

I also managed to install xubuntu, shortly after tweaking around the settings, repartitioning things, and even doing a system restore because my attempts to do a clean install failed and no OEM CDs exist anymore. It works well for the most part, save several issues:

  • I can not get the brightness keys working.
  • General laptop power management tools do not exist on the machine at the time of writing. I just do not know what to use or what is out there, but it will be something to look for over the weekend.
  • Most of the Fn keys are not working.
  • compiz-fusion runs quite slowly – maybe it is the X3100..
  • I get these weird lines on the screen from time to time and have general unexpected display behaviour, such as parts of the screen not dimmed out when the password prompt appears when one runs a program which requires root access, like Synaptic.

Sure, there are some issues, but quite minor and will not make things difficult to work with in Linux, which is good since that will be my primary work environment in terms of Web development.