Wednesday, December 22, 2004

Okay, Okay, I Give Up

Yes, I'm updating. I can't stand to see my visitor stats dropping so drastically. Although this blog now has over 3,000 hits. Crazy, eh? Who ever would have thought that the semi-coherent ramblings of a maladjusted university student would attract such attention. Granted, a rate of 1,000 hits a month isn't anything to write home about, but it's something. Now if you people would just start clicking on the ads once in a while, before I starve to death.

Oh, and Merry Christmas. I can't see myself updating again anytime before then...

Thursday, December 16, 2004

Merry Christmas

Yes, I am leaving tomorrow for home, and I highly doubt that I will be updating until I get back here in January. So, for all you folks reading this, Merry Christmas and a Happy New Year (also happy Hannukah, Festivus, Chinese New Year, Martin Luther King Day, or whatever).

On that happy note, I'll leave you with something to do over the break. Think of it as a present (not really). In any case, it's the calculus exam that I just wrote. It's the very antithesis of the spectacularily easy physics exam. If I passed, I'll be happy.

Page 1
Page 2

Tuesday, December 14, 2004

Bored? Why Not Try...

the EASIEST first year physics exam EVER. It was a 2 1/2 hour exam, and I had it finished within 1 1/2 hours. In fact, as I'm writing this, it's not officially over (it won't be technically over until 4:26)

So go ahead, take the test.

Page 1
Page 2

In other news, I got my internet back (it's been down since yesterday morning), and I need a new pen.

Friday, December 10, 2004

Three Down, Two To Go

Well, my second and third exams are now complete. That leaves Physics on Tuesday, and Calculus on Thursday. Wait, why am I writing this? Does anyone care? Perhaps I should do my introspection elsewhere; somewhere where the entire planet cannot access it. In any case, it's irrelevant. I suppose the reason I am writing this is simply sheer boredom. I leave for home in a week, and I doubt if I will be able to update until I return (January 3rd).

Ah yes, I remembered something that might be of interest. Last night I went to a bar for the first time in my life. I didn't drink anything though, which I suppose makes it something of a non-event.

Man, my computer is dusty. A couple of weeks ago, when I bought my new graphics card, I had to open it up for the installation. And I nearly suffocated due to the dust that billowed out of the case. It's almost come time for a complete cleaning, perhaps before I go home I can do this.

With all apologies to any of you that actually read this, I am wracking my brain for ideas to write here. Maybe I should post my theories for the workings of a real-life stargate (as they were not too well accepted over at halfbakery.com). Alright, here goes:

Okay, we've all seen the show "Stargate SG-1" at least once (and if not, go watch it. Now.), and therefore we've all thought to ourselves: "Wouldn't it be cool if the stargate was real?"

Of course it would.

Basically, what you need to create a stargate is a wormhole. Creating that is easier than it looks. Since our universe is embedded in higher-dimensional space, there's no reason that forces like gravity and magnetism wouldn't penetrate into the fourth (or higher) dimension. So what we need are magnets that are so powerful that they pull each other together through the fourth dimension but not the third. Think of a two-dimensional analogue: a piece of paper that represent the universe, with two magnets glued on it. If these magnets are strong enough, they will attract through the third dimension and fold up the paper! Of course this doesn't solve the problem of actually creating the wormhole, but it gets the regions of space REALLY CLOSE to one another. Then you need something to actually rip the two "sides" and join them together. Presumably a large concentration of energy could do it (perhaps by launching a black hole at the middle of the ring?).

But it gets better. This proposed method can only work between two gates, because with more gates it would pick whichever one is closest. So obviously we need a method of "dialing" which gate we want to attach to. So instead of the gate being one giant magnet, have it be composed of several electromagnets, so that if you were looking at the gate from the front, it would look like

http://tinypic.com/olrhj

where the "O's" represent electromagnets. Now, by switching the polarity of these magnets to match the polarity of another gate, you can choose which gate to attach to! (Mathematical note: On the show, the stargate uses a seven-symbol combination drawn from a bank of 39 symbols. This is equal to 39^7 or 137231006979 possible combinations. Turns out that this is very close to 2^37, so 37 electromagnets would be needed for every possible combination.)

There are, admittedly, some flaws in this plan:

1. It would take an extraordinary amount of energy to run a system like this. 2. It assumes that the stargates are already present on other planets. 3. I have no idea how magnetic fields propogate through four-dimensional space.

But other than that, you gotta admit it would be pretty cool.

Tuesday, December 07, 2004

Again, I feel compelled to write something.

Yet, again, I have no idea what to write about.

Perhaps I could think of something funny, but my mind is elsewhere. No, I'm not concentrating on exams, as I should (I went through hell with my linear algebra exam; I'm not doing that again). No, my thoughts center around two things. Watching more Stargate, and playing this lovely new video game that I discovered, called "Far Cry". The graphics are at least equal to those in Half-Life 2. It's a pretty cool game, actually.

At the risk of making these short posts seem like a trend, I must end here. For I am being called away by the siren song of video games and stargate episodes.

Monday, December 06, 2004

It's Over

Thank. God.

I completed my linear algebra exam. Hopefully successfully. My relief is almost tangible. Well, it's tangible to the point where I'm going to allow myself to dine out at Pizza Hut, and perhaps watch a bunch more Stargate Episodes (I'm into season 3 now).

Wow... Snow...

Yep, I woke up this morning to find the world blanketed with that white stuff; usually associated with Christmas and winter in general. Of course it was freezing in my room, as we had left the window open last night. Hopefully this is a good omen for today's linear algebra exam.

Sunday, December 05, 2004

Tales from Linear Algebra

Before I begin, I must say that I apologize for the unsatisfying nature of my previous post. I realize it would leave readers wondering many things. Does Kyle get his computer science assignment done? Does he manage to prepare for linear algebra, at least enough to pass the exam? Will he get his HL2 fix?

Alas, dear readers, these were questions that I myself was grappling with on that fateful night. I hope I will be able to resolve at least a couple of these pressing issues here.

First off, let me say that I did indeed complete my final computer science assignment. Sort of. I ended up handing in two version of the program. The first version worked, but the second version was all commented out and broken up into files with all the proper data hiding and stuff done. It was the data hiding that got me. Try as I might, I absolutely could not make it call a function from a class that was addressed by a pointer. I tried every combination of symbols possible. I tried:

class->function
class::function
&class::function
&class->function
class.function
&class.function
*class.function
*class->function
*class::function

Then, I started doubling up:

&class->.function
&class->&function
*class::*function
class::.function
(*)&class->::function
((&)(&class))::->.function
etc...

Nothing worked. So hopefully, they will see that it is mostly done properly, and it is all commented out, not to mention the fact that I did include a working version, and give me a relatively good mark.

Now on to the second part of the story. I mentioned in my last part that I was "woefully unprepared" for the linear algebra exam. Now, not two days later, I believe that statement to be incorrect. During the past two days, I went through all my lecture notes, the entire course supplement (all 156 pages of it), the handout on "diagonalization" (which admittedly I still don't quite understand, and quite a bit of the textbook. In doing this, I generated 16 new pages of notes; most of which are solutions to problems in the supplement. It's true, what my old mathematics mentor used to say: "Mathematics is not a spectator sport". Indeed, blithely copying what the prof writes on the chalkboard does not teach you math (as seen in the 14.5/40 I got on my last term test). But now, I have done problems (hopefully correctly; I haven't managed to find any solution sets anywhere), and I feel that I almost fully understand what has been taught in the course. Regrettably, I am still unable to visualize higher-dimensional space, which is a skill that would come in enormously handy for some concepts in linear algebra. Three dimensions is sometimes just not enough.

It is somewhat interesting, though: I always have considered myself somewhat of a mathematician. I distinctly remember being the only person in any of my high school math classes that actually "liked" math. Not only that, but I always wrote all the math contests, and for most of my high school career I would sacrifice my entire Tuesday night in order to go to London to take a special math class (taught by the aforementioned math mentor). The peak of my mathematical career was when I wrote the Fermat contest in grade 11, recieving a score of 134/150. Only 26 people in all of Canada got a higher score than that.

But I digress. The point I was attempting to make was this: although I consider myself a mathematician, I prefer mathematics that is grounded in the real world, and not things that are logically sound but are merely abstract creations that have nothing to do with the physical world. However, the only part of linear algebra I understand is the physically grounded "diagonalization". All the abstract stuff about "bases", "rank", "vector spaces", etc., I understand perfectly (okay, not perfectly, but close enough). I suppose this situation will have to be rectified. Not tonight though; I'll do it tomorrow. The last thing I want to do during the exam season is to fuck up my sleep cycle.

As for Half-Life 2, it turns out that I was very close to finishing it, and in fact beat it in about 15 minutes yesterday. So that fulfilled my desire to play it, at least for a while. Most of the time I allocate for breaks is spent on watching Stargate SG-1. I honestly don't know why I never watched this show until now. It is, by far, the best show ever created.

To come full circle, I guess this post is a bit unsatisfying as well. It leaves you wondering. Will Kyle pass his exam? Will he have time enough to study for the other exams that he does well on them? Will he get to the end of season 2 of Stargate before tomorrow?

But rest assured, my friends. These questions, and more, will be answered in time.

Friday, December 03, 2004

I Can't Believe It...

Well, it's not so much one thing, as a combination of several things. Here are the things that I am currently having difficulty believing:

1. That tomorrow (or rather, make that today) is the last day of this semester.
2. That my linear algebra exam is in three days, and I am hopelessly unprepared. (okay, I understand this one. It has a lot to do with the copious quantities of video games, porn, and Stargate episodes [every single one!] residing on my hard drive)
3. That my program just compiled. And I must add, I am quite thankful seeing as it is due tomorrow (today).
4. How damned good Half-Life 2 looks on a DX9 video card.

I'll go through these one at a time.

1. Yes, it is here. The last day of the semester. It came all too quickly, and if it wasn't for those pesky exams I would have four weeks of Christmas break. But, alas, I have five exams spread over two weeks. The next two weeks are going to be... weird... You see, I won't be going to class, but I can't be expected to study 22 hours a day (24 hours when I don't have an exam). So what will I do? Also, my roommate leaves on Wednesday, leaving me alone for the next nine days. Well, I'll have my computer to keep me company, I guess.

2. Linear algebra. I believe I have covered this topic in previous postings, but let me reiterate. Linear algebra is the work of satan. Why, oh why, must I learn to do things that computers were built for. Not that the knowledge gained in this course could actually have any practical application. Sure, I may know how to invert a matrix, and maybe even how to diagonalize it and find its eigenvectors, but what use is that? The prof kept alluding to Google during the last few lectures, but never actually explained what a search engine had to do with matrices. I did a bit of Googling myself, and I came up with this page, which is, curiously enough, hosted by the University of Toronto (even though it was written by someone from the University of Pennsylvania). But in reality, the only "practical application" I care about is how to pass the exam. It's worth 60% of the mark, and the other 40% isn't looking too good right now.

3. Ah yes; again the joys of CSC 181. Known formally as "Introduction to C Programming", it could easily be referred to as "Obfuscation 101". Or, perhaps, "An Introduction to Comments Where One Learns Nothing About Computer Science". Because that's the essence of this course. It assumes that you already know how to program, forces the syntax of a new language down our throats, and then it's 30 lectures of how to break up code into "functions", "classes", "structures", and ".h files", and then how to write excessive numbers of comments describing each piece. In all seriousness, and this is taken directly from the marking scheme, only 30% of the mark is based on if your program actually works. What is the other 70%? Let's see:
30% - Correctness (i.e. does the program work)
30% - Class, code design (i.e. how you broke the program apart and commented it)
30% - Design by contract principles (i.e. proper commenting)
10% - Style (i.e. whatever they want; basically commenting)

So, as you can see, 70% of the mark is based on your ability to follow instructions and write comments where they are supposed to go, and 30% is based on your ability to actually program. I can't wait until next semester's CSC 191, which is called "Algorithms and Data Structures". As such, hopefully it will actually have something to do with algorithms and data structures. Not 30% algorithms and data structures and 70% commenting.

4. Ah, yes, I saved the best for last. Half-Life 2 on my brand-new GeForce 6800 GT video card... it's practically orgasmic. The water in this game looks real. Let me say that again. THE WATER LOOKS REAL. The designers of the source engine have really outdone themselves this time. I personally have no idea how they model the reflection, refraction, waves, etc. in realtime without resorting to a supercomputer to raytrace it. All I know is that it is beautiful. I replayed the airboat sequence three times just so I could stare at the water. Oh yah, and the sky looks real too. Not to mention nearly everything else in the game. The AI is actually smart enough that if you have a squad following you around, they won't trap you in a room with a grenade that just got tossed in by blocking the door. Hell, they even know how to find good cover, watch your back while you reload, lay down suppressing fire... it's amazing. The city combat sections feel like something from Fallujah or whatever Iraqi city is the stronghold for the rebels now. And then you get to the Citadel.... oh man, if I had only had the high-powered grav gun earlier...

Well, writing this has left me feeling like I want to play more HL2. But I must be strong and finish my computer science assignment... but HL2 is so pretty.... but the assignment is worth marks that could be the difference between passing and failing... but HL2 is so much fun... yah, screw it. Half-Life 2, here I come.
Who Links Here