Vincent Cheung

Vincent Cheung's Blog

« Newer Posts Home

Tuesday, August 10, 2004

The ultimate equation editor

Making a presentation for the Information Processing Workshop tomorrow. Trying to get equations in Powerpoint.

I found the ultimate equation editor: LaTeX Equation Editor. The best part is that I can just copy and paste my LaTeX code for the equations I need from my NIPS paper and BAM! I got a pdf or tiff of the perfectly formatted equation! Piece of cake!

But, I hit a snag. Powerpoint doesn't deal with pdf transparency properly, so it leaves a white border around it....eww. Attempts to set a transparency colour results in an ugly equation. Powerpoint apparently converts the pdf into a bitmap. Fortunately, LaTeX Equation Editor can also export to TIFF, which supports transparent backgrounds. But when you import these into Powerpoint, they look like crap. I found that if you set the export font size to 72, then resize it, it looks great! There are other options like setting the equation colour, etc, but I don't need that. The best thing is that it's damn easy to use, fully supports LaTeX cuz it generates the equations using LaTeX, so no compatibility issues! Even does aligned equations! And, importing them into PowerPoint is a cinch cuz you can just drag and drop them right onto the slide!

Monday, August 02, 2004

Converting Java to C#

I've been converting some of my Java code to C# lately. Btw, I've been using SharpDevelop as my IDE. It's basically a GNU version of Visual Studio. It's pretty good and the price is right :). It lets you compile .NET right away (no need to download the IDE or anything) and lets you compile right from the IDE.

The syntax in C# is remarkably similar to that of Java.

In most cases, the majority of the conversion involves capitalizing methods (such as main() to Main(), Math.log to Math.Log, and x.length to x.Length). The other major part is that C#'s math class doesn't have random numbers built-in, so you have to use the Random class. The bad thing is that the Random class doesn't generate normally distributed random numbers. I had to write a class to convert uniform random numbers to Gaussian. I used the polar form of the Box-Muller transformation:

double x1, x2, w, y1, y2;

do {

x1 = 2.0 * rand.NextDouble() - 1.0;
x2 = 2.0 * rand.NextDouble() - 1.0;
w = x1 * x1 + x2 * x2;

} while(w >= 1.0);

w = Math.Sqrt(-2.0 * Math.Log(w) / w);

// two Gaussian random numbers are generated
y1 = x1 * w;
y2 = x2 * w;

I rand this a number of times and checked it out in Matlab. Mean and variance were about right and a qqplot was spot on, except for the ends which were a little off, but that's alright.

I first used this other technique whereby the central limit theorem is used to generate the numbers. The sum of uniformly distributed random numbers is normally distributed. So you can sum 10 of these numbers, then normalize it to mean 0 and standard deviation 1, since the mean of the sum is the #rand * 0.5 and standard deviation is sqrt(#rand / 12).

Plus, the constants for Double.MAX_VALUE in Java is now Double.MaxValue. "final" is "const".

The biggest problem is arrays. While C# supports jagged arrays, Java-style, you cannot instanciate their size all in one shot, i.e. you can't do this:
double[][] x = new double[3][5];

You have to do this:
double[][] x = new double[3][];
for(int i = 0; i < x.length; i++)
x[i] = new double[5];

Now this is a BIG problem for me, cuz I need to declare A LOT of matrices and this is a big pain in the ass. Especially when you have to declare say a 5 dimensional array!

C# also supports "true" multidimensional arrays:
double[,] x = new double[3, 5];

I read somewhere that they were slower, but Microsoft was gonna fix that. Well, this solves my problem, except that now all the matrix indexing in my Java code won't work in C#. That's not too bad, cuz I can do a find and replace (find "][", replace with ", ", then find ", ]" and replace with ",]"). The bigger problem is that since it's no longer an array of array objects per se, you can't just go x.Length (total number of elements in the array) and x[0].Length (not allowed), you have to go x.GetLength(0) and x.GetLength(1). So, more find and replaces - starting with the largest, find "[0][0][0].Length" and replace with ".GetLength(3)", then find "[0][0].Length" and replace with ".GetLength(2)", etc. The problem is that when you get to .Length, you don't really want to replace with .GetLength(0), cuz arrays can just use .Length, which imho is nicer cuz it's more Java-like. Eh, I think it still works.

This whole array stuff buggers up the fact that I wanted the C# code to be basically identical to the Java code....

Oh, another thing. I like the whole array of array idea, cuz when dealing with videos, if I have an array, I can have the first index represent time and the last three represent a single frame in the video, so it's easy to just take the reference to the last three dimensions and write that 3D matrix to an image file or use that to just represent an image, i.e. I changed my Epitome code so that images can be treated as videos transparently cuz it's easy to wrap in image into a 4D matrix and then just strip out the first "frame" of the resulting epitome as that is it's image epitome. But, with these multidimensional arrays, that's no longer possible, and it's too much effort and not nice to have to declare the jagged arrays using a for loop....

So, in order to do this wrapping, I'll have to explicitly make a copy of the last three dimensions to rip out a frame from the "video".

Also, in Java you can do this:
int[][] patchSize = new int[][] {{16, 16}, {8, 8}, {4, 4}, {2, 2}};

But you have to do one of the following in C#:
int[][] patchSize = new int[][] {new int[] {16, 16}, new int[] {8, 8}, new int[] {4, 4}, new int[] {2, 2}};
int[][] patchSize = {new int[] {16, 16}, new int[] {8, 8}, new int[] {4, 4}, new int[] {2, 2}};
int[,] patchSize = {{16, 16}, {8, 8}, {4, 4}, {2, 2}};

The instanciation of jagged arrays is just not as nice as in Java.

But overall, these differences are quite minor cuz all the for loops and declarations, etc. can all remain the same. I haven't done much of a comparison between Java and C#, but it seems faster than my previous results with Java. I'm guessing that it runs in 3/4 or 1/2 the time. Not bad for such as easy port. I might end up just coding in C# cuz it's so similar to Java. I tried porting to C++ last week sometime, but realized that multidimensional arrays in C++ was a pain in the ass. I believe that when passing arrays to functions, the array size had to be fixed! (at least for the dimensions other than the first one). I guess this could be remedied by having the array as a member of a class and the methods would just access that, but it's too much effort......C# is easier :p, but may be slower cuz of the whole CLI thing with .NET.

Monday, July 19, 2004

More Matlab Tricks

Neither Anitha nor Brendan knew about this (I was coding on the fly during our last meeting).

To kill a row in a matrix in Matlab do the following:
>> a = magic(3)

a =

8 1 6
3 5 7
4 9 2

>> a(2, :) = []

a =

8 1 6
4 9 2

Works just as well for columns. You can also remove individual elements, but if you do it in a matrix, you'll end up with a vector.

I titled this "More Matlab Tricks" cuz I had two tricks to record, but forgot the second one.....doh....


Btw, I did get a Powerbook (12" G4 1.33 GHz with Superdrive). The education price was about $2150. Brendan's gonna reimburse me for it.

Nice machine. Wireless works nicely and got MS Office 2004, FireFox, Thunderbird, Azureus, and LaTeX running. A lot of the software I'm using is the same as on Windows. Even have Microsoft Remote Desktop Client for Mac OS X to remotely access computers :)

The only thing I'm missing right now is Matlab. I'm waiting for Matlab 7 as it has just come out and I might as well put the newest on it. Plus, 6.5 doesn't support 10.3, you need 6.5.1 (sp1), which I don't have and I couldn't find it. I now have the Matlab 7 install files (on the network at school), but don't have a license yet...

Not sure if the Windows and Mac / Linux / Unix license are the same, otherwise, I could just use the one I use at home...

Indexing in a circularly wrapped matrix in Matlab

Neat trick in Matlab to index a matrix in a circularly wrapped manner (eg. with image / video epitomes). Also generally useful for indexing into matrices.

The key idea is to use vectors to index into the matrix. This is made easier with cells (especially when dealing with multidimensional arrays).

Take this example:

>> a = pascal(6)

a =

1 1 1 1 1 1
1 2 3 4 5 6
1 3 6 10 15 21
1 4 10 20 35 56
1 5 15 35 70 126
1 6 21 56 126 252

>> b = magic(4)

b =

16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1

>> subs = {mod(4:7, 6)+1, mod(4:7, 6)+1}; subs{:}

ans =

5 6 1 2

ans =

5 6 1 2

>> a(subs{:})

ans =

70 126 1 5
126 252 1 6
1 1 1 1
5 6 1 2

>> a(subs{:}) = b

a =

6 12 1 1 9 7
15 1 3 4 4 14
1 3 6 10 15 21
1 4 10 20 35 56
3 13 15 35 16 2
10 8 21 56 5 11

Executive summary: took a 4x4 circularly wrapped patch in "a" and replaced with "b" and the indexing was made cleaner with the use of a cell

You could also just simply do the following:
a([5 6 1 2], [5 6 1 2]) = b

but using the cell gives you more flexibility when using this in "real" situations where you probably have to do this a number of times.

Tuesday, June 08, 2004

MacOS X in WinXP! and Mac's

I'm running MacOS X 10.3.4 in WinXP!

PearPC emulates the G3 hardware like how VirtualPC / Wine / etc. emulates X86 hardware. The software's open source and at a really, really early stage, not to mention slow, but it works...

The installation is long and complicated, but luckily I found an image off BitTorrent that had MacOS X 10.3.4 installed for PearPC! The installation was a snap. Just a few modifications to the config file and off I went!

It doesn't currently have network capabilities under WinXP, and the installation was pretty barebones (no iTunes, and other stuff, well, maybe, I haven't looked around too much).

I want to get a laptop this summer and am thinking of getting a Powerbook or maybe an iBook. I used to have a PowerMac, but left it behind when I came to Toronto. I like Mac's. It's a nice change from all the Windows machines and nicer than Linux, but with a Unix backbone. Mac's have everything I need to do research (Java, Matlab, bioinformatics stuff (BLAST), Offic) and play (movie players, iTunes, games, misc apps (Azureus runs on Java :))). They run fast and smoothly with few problems. The laptops are quite nice. The Powerbook I'm looking at is a G4 1.5 GHz with built-in 802.11g (for my home network), Bluetooth (potentially useful, maybe use with my Bluetooth mouse and keyboard), USB 2, Firewire, 80G HD, 512MB RAM, TV-out (movies), VGA port (video projectors), 15" screen, kick-ass video card (not that I'm too into that though), DVD and CD burner (the Superdrive), but the battery life is only 4.5 hours (with Wi-Fi on, like 3 hours, DVD watching is like 2 hours...) plus about $3000. The iBook's a little worse off (slower, less memory and hard drive space, no DVD burning, no Bluetooth), but cheaper ($2000) and surprisingly, longer battery life, apparently 6 hours! But doesn't look as nice (white plastic casing as opposed to aluminum and a tad heavier) and the screen's only 14" instead of 15", with a lower resolution - 1024 x 768 instead of 1280 x 832 (not sure about the res of the 15", but something close - it's a wide screen). I don't plan on doing too much computationally on my laptop, but would end up running some stuff on there. Apparently, it runs BLAST quite a bit faster than with a DELL P4 3.2 GHz desktop (which is what I have at school :p).

I gotta figure out how the laptop stuff'll go soon since I'm going back to Winnipeg on the 17th (London (the real one) from 10th - 16th with my sisters). My prof said previously that all phd students get their own laptops, I'm gonna be transferring into PhD soon, but want laptop now. Not sure if I have to get one through him or if he can reimburse me (which would be preferred cuz then I get to choose my laptop). Not sure how much he would reimburse, cuz the Powerbooks is definitely one of the more expensive laptops, not that my desktop is cheap, c'mon, 2 GB of RAM!

Anyways, night time.

Monday, June 07, 2004

Mozilla has the Google Toolbar (well, close enough) and Thunderbird

I just found out that while Google's Toolbar doesn't work with Mozilla Firefox, there's an extension that does it! Goolgebar

That solves my problem that I can't get text highlighting and easy searching (as I was able to do with the Google toolbar in IE).

I've all but converted to Firefox and Thunderbird (the Mozilla e-mail client) now. Thunderbird can't check Hotmail accounts, but my Mailblocks account checks my Hotmail accounts for me and use a challenge-response system to eliminate all my spam! (I love my Mailblocks account). Thunderbird handles IMAP servers better than Outlook Express. Plus, it has junk mail filtering (not that I really need it, but it's nice to train), and a bunch of little things that Outlook Express doesn't have (OE hasn't been updated for a while now....).

I do have a few quirks with Thunderbird. One, you can't have it check all your e-mail accounts by pressing one button. It'll check all your accounts when you start it and every x minutes, but there's no button you can click to have it check it all. I got an extension that apparently does it, but I'm not sure if it actually does or not. Another thing is that I liked it when OE showed you which servers it was downloading from as it checked your mail (rather than just flashing it on the status bar). The newsreader is better than in OE, but still doesn't handle binary files split across multiple messages. I've been using NewsBin Pro for downloading off newsgroups, which I don't really do, except occasionally.... My last beef is that you can't password protect your inbox. That is, anyone can just open up Thunderbird and read all your e-mail. OE has a profile thing where you can password protect the entrance into your e-mail. Thunderbird has a profile thing, but doesn't let you password protect it and exiting a profile is kinda funky - sometimes when I go "file, close" it kicks me out and next time I load the program, it asks me which profile I want to load, and other times it doesn't.... It also seems to take up a lot of memory.... It also splits up your POP3 e-mail into different folders. You can't consolidate all POP3 e-mail into one giant inbox like with OE, but it's also kinda good that way - you know what e-mail came from where, but for me, I don't really use any of my POP3 accounts, and dumping them all in one place is fine for me..... oh well.

That's all for now. So, I've fully converted to Firefox and Thunderbird. I only use IE to access my INGDirect account and some pages on Supernova that don't seem to work with Firefox and I haven't opened OE for a while (either at home or at school).

Saturday, May 29, 2004

Excelsior Jet: Java -> Native Code Compiiler

Oh, I forgot to mention about the compiler that I use with my Java programs. Yes, Java is slower than C/C++/C#/Assembly/etc, but you can compile the bytecode to native code and the program magically runs faster!

I've been using Excelsior Jet since my undergrad thesis. It's free for personal and educational use. It works great. It works directly from the bytecode, so if you can compile your Java code, you can compile your Java code to native code.

I found that it tends to speed things up I think 2 - 4 times, which is nice when your program takes up to a couple hours to run.

Edit (June 7, 2004): Java JRE 1.4.2 has a HotSpot Compiler that does some native code compilation before running (esp. using "java -server"). I haven't done a speed test between the two, but it seems to narrow the gap between "regular" Java execution and with Excelsior Jet.

AND dammit, not OR!

Stupid && vs ||.....

It messed up my "inpainting" program, so I was ignoring vast amounts of the image / video in learning the epitome, rather than just ignoring a small patch.

I'm currently running code on 3 computers.....this is a PIV 3 GHz (my home computer), my computer at school's a PIV 3.2 GHz, and I'm also using a computer in the PSI lab room that's free and that's a PIV 2.4 GHz :p. My computer "only" has 512 MB of RAM, while my computer at school has 2 GB! and the extra computer in the lab room has 1 GB :).

I'm currently at home and I remotely access the other computers to run my program on them (I'm using Java, cuz it's faster than Matlab). I'm using Remote Administrator to do the remote accessing. I like the program. Plus, it's the only one that you can (easily) use at school to access computers remotely cuz they only open up that port. Actually, there's something weird with the extra computer in the lab cuz I can't get to it with radmin, so what I actually do is remotely access my computer at school, then use Window XP's built-in remote desktop software, which is pretty slick. It even converts resolution, so you don't get funky scrolling / shrunken windows. Too bad the clusters at school don't have Java on them, otherwise I'd make use of them.

I'm frantically trying to get some better results right now, cuz the NIPS deadline is in a week!

Friday, May 21, 2004

Batch Image Processing

I realized that I never finished the story behind batch image processing...

I found out that you can do this in Photoshop! You have to first record the action that you want, then you can run that action in a batch process. I haven't played with all the settings yet, but since you can record an action with the full power of Photoshop, it's much more powerful than the stand-alone applications, but has more of a learning curve for such a simple thing as resizing a bunch of images.

On a second note, I now have titles for my blog entries!

Wednesday, May 19, 2004

I'm all moved into my new apartment now (moved everything on the 7th), but just got DSL from Bell Sympatico on Monday (17th).

I was gettin' some crazy speeds! Downloading off BitTorrent at 275 kB/s! I downloaded Avril Lavigne's new album in just a few minutes, same with a few episodes that I missed, i.e. Angel, 24, last 5 min. of the series finale of Friends.

I'm quite impressed. Bell recently upgraded the DSL from 1Mbps to 3 :D. Back in Winnipeg, I never got over 150 kB/s. That was after it was upgraded. Prior to that I was getting no more than 80. Before that, I was on dial-up and got like 4-5 kB/s :p.

I was on dial-up between the 7th and 17th....used quite a number of hours, like close to 20 hours :p.

My phone was up on the 8th and same with cable, but Internet took a while. Plus, they delivered the package on a Friday evening and didn't even leave a message telling me they came. I got the tracking number from Bell and found that it was at Shopper's and picked it up on Monday...

Anyways, gotta go.
Ack....I got caught by the floating point vs integer division....

I was doing division, but forgot to typecast to double so that I didn't get truncation:
numTime = (int)Math.ceil((double)(x.length - patchSize[p][0]) / displacement[0]) + 1;

Sunday, May 02, 2004

Btw, I'm using eDonkey to get the key / keygen cuz I couldn't find a torrent file for it :p
Batch Image Resizing

Ever want to take your digital pictures and put them on the web or send them through e-mail? Well, you've probably wanted to resize them cuz they're just too big right from the camera. You want really good quality for permanent keeping of the pictures so you can print them out if you want, but you usually just want viewable quality when e-mailing or posting onto web pages. It's a pretty big pain in the ass to have to manually resize each picture. I've been looking for programs to do this for a while and previously have been using this PictureTray program which was pretty limited in its capabilities.

I just found this new program that's much more powerful. It's called ReaConverter. I tried it out a bit and it's pretty easy to use. In terms of resizing, you can resize by percentage or set maximum height / width in pixels. It has lots of options, even one that lets you keep the original file date of the changed image (I'm a big fan of date stamps). You can even save the scripts you make. It also supports a number of image formats. The only thing is that it's shareware.....I'm waiting for eMule to download a key / keygen :p.

Saturday, May 01, 2004

Firefox Tabs. (going to emphasize the titles from now on)

Finally figured it out! Holding ctrl while left-clicking a link in Firefox opens up the page in a new tab in the background, while holding ctrl-shift while left clicking opens up the page in a new active tab (i.e. shows you the page). Finally, holding shift while left clicking opens up in a new window.

I couldn't figure out how to open a new tab in the background for the last few days :p. The problem was that I was used to Opera's shortcut keys and was pressing too many buttons :p.
Cool! Firefox lets you have multiple home pages! So now when I open Firefox, it opens up Google news and Slashdot at the same time (multiple tabs)! The only weird thing is that sometimes you just want it blank and instead of getting the home page open, you get two :s. Also, when you press the "home" key, it pops open a second tab, even if you're at the homepages, eh....

Happy Six Month! (to me and, not marriage)

Friday, April 30, 2004

Matlab "for" loops.

The indices for Matlab "for" loops can be made quite cleverly, eg. for ii = round(xMin : (xMax-xMin+1)/10 : xMax). This gives 10 ii's, evenly spaced between xMin and xMax inclusive, and also rounds the ii's to the nearest integer.

On another note, it's not a good idea to use i or j as indices for "for" loops because i^2 = j^2 = -1 :D. I got caught on that before....why aren't my complex numbers complex!!!!
Stairs with rollerblades.

Going up is easy. If the stairs are wide, then just slightly angle your blades so it's not so easy to roll back down :p.

Going down is a little more difficult. Two techniques I've found useful are to crab walk down (go sideways and kinda shuffle down) and go backwards (same as going up, but backwards :p). In both cases, it's quite important to hold onto the handrail! If it's a few stairs, I usually find it faster to take the stairs rather than going all the way to the ramp...

Thursday, April 29, 2004

Ya, the Blogger submission page does weird things with Firefox, I think it's the scrolling thing in the text box. Just sometimes I can't see the Blogger "toolbar" area, which is important cuz that's where the "post & publish" button is.

Anyways, back to work....
What's with this "one space" vs "two space" after sentences? I was taught 2 spaces, but Helen says 1 space. So, I "obviously" used google to settle the argument :). Apparently I was wrong *shock*. Apparently, the "two space" was used because of typewriters cuz they didn't leave enough space, but with computers, "one space" is sufficient cuz the fonts handle the spacing. I was taught 2 spaces cuz that was the "historical" way of doing it (am I that old?)

I personally like the way 2 spaces looks, but maybe just cuz I'm accustomed to it....I just can't not do 2 spaces, cuz my thumbs automatically put in two spaces after the end of sentence (my thoughts go right from my brain to the keyboard, I don't think about typing or how many spaces I need, it just magically happens :p). Oh well, LaTeX automatically handles the whitespace for me :p. Again, the beauties of LaTeX. It makes documents look so nice :D.
On another note, Matlab ( rules! You'll hate it at first and it seems clunky and obese at best, but it has everything and does everything (mathematically at least). It has a pretty steep learning curve, but quite useful, but I guess you have to be in the right field, i.e. Engineering (me!, Computer specifically), Computer Science, Math, Sciences, and other "real" programs (i.e. not Arts, Management, etc.)

On a second note, LaTeX rules! Note latex, LaTeX ( It makes writing documents MUCH easier. Not for the faint of heart, and again, steep learning curve, and it's not for everyone, basically for researchers (me!) and students writing theses and technical documents (me!). You make documents by essentially "programming" them! The best part is that you never need to look at the format of the paper, it's done automagically!

I'll be making a number of posts about Matlab and LaTeX in the future...why? because I use them a lot :p
Oh, I forgot the best thing that Firefox has that IE doesn't......tabs! Tabs are cool, they keep you more organized and I always open craploads of windows when I surf, so tabs are nice things to have. I've been using them since Opera, but IE has yet to implement them.....just wait until the next release of IE....
This is my first Firefox Blog! (the text editor for blogger seemed to mess up a bit for a sec though)

Well, I've been using Firefox a bit and I'm beginning to like it. I just installed it on my computer at school (University of Toronto) and I think what I'll do is do the full conversion here, rather than at home because I depend less on bookmarks here.

A few things that bug me with Firefox.....while it has Google search built in, it doesn't have the highlighting functionality that the Google toolbar has, which is really nice cuz it lets you scan through web pages faster, nor does it have the handy word finder buttons. It doesn't have Google images, translate page, etc. buttons either.

I did find a solution to the lack of Blogger button though, I just made a bookmark to and put the bookmark on my quick link bar in Firefox (the "links" folder for IE bookmarks), so now I can make quick Blogger entries with Firefox :).

On another note, Google is awesome. It is a great search engine. Plus, it doubles as a dictionary, a spell checker, a translator, image searcher, product finder, and others. Potentially best of all, it's a calculator and conversion tool! It can do anything that Window's calculator can do and more! It's great for doing conversions, eg. google "1 m in ft" (with or without quotes) and it'll tell you that "1 meter = 3.2808399 feet"! It can do crap loads of conversions, weights, distances, time, volume, engery, etc! There's a guide at:, but unfortunately, I haven't found a page that lists all the supported units, in particular, I'd like to know the abbreviations used for some of the units. I also didn't find out how to convert say, xx seconds to hh:mm:ss format, which is nice to have. It has a bunch of constants as well, like G, e, pi, h, c, etc. It can handle Roman numerals, decimal, binary, octal, complex numbers, and more!

The greatest thing about Google's calculator is that you can use it anywhere you can surf the web!

Well, back to work.

Tuesday, April 27, 2004

Post #2: Mozilla

I never got into the whole Open Source or Linux thing. I've tried out Linux a few times, usually with VirtualPC, but never got hooked. I've never really gotten into any of the Open Source projects, like Open Office, etc., because I could just get the "real" thing.

I did just download Mozilla Firefox, it's newest browser. I had Mozilla's browser on my computer for a while, but hadn't had the newest one. I didn't use it all that much though. Tony uses it all the time. Same with Kives. It's not bad, but I've just been so hooked on IE since Netscape stopped updating it's browser. Now that Microsoft's not gonna release a new version of IE for a while, I guess I'm just getting bored of it....maybe it's time to switch browsers! But IE's come a long way, it rarely crashes (browsers used to crash ALL the time) and even when it does, you don't usually lose control over all your windows and it's not bad. The only thing seems to be its integration with Acrobat, as it tends to freeze/crash with pdf's sometimes, but I think it's more of Adobe's fault....

IE doesn't have a pop-up blocker (yet), and the default search in the toolbar sucks. But, with the Google toolbar, you get the pop-up blocker and you get Google search :). Funny thing. Microsoft released its new MSN toolbar and it looks identical to Google's :p. They tend to rip a lot of ideas off other companies...

Anyways, I'm gonna see how this Firefox works out for me. I know a few things annoyed me before.

1) I didn't have the Google toolbar, but it has a Google search thingie, but now I seem to be getting hooke don the Blogger button, which I need the Google toolbar, I love, and I like that button on the Google toolbar, too bad you can't modify it to be, which is now my new homepage

2) I can't type in say, "google" and press control-enter to have Firefox put in the "http://www." and ".com", actually it can now! (just tried it out).

I think there may be more things, but I can't think of them, but maybe they're fixed now. I think I should make the switch for a week and see what happens....
Alright, so this is my first "real" blog. I've recently gotten into BitTorrent, ever since Sharereactor went down, plus I've found that the eDonkey network is rather slow for getting stuff, i.e. music, movies, tv shows, but has really good stuff. BitTorrent seems to have quite good stuff, the only problem is finding stuff. I've known about it for a while, but never got too into it because I couldn't find the torrent files, but now I've found a couple of good sites, such as, which is kinda like Sharereactor. It updates A LOT (many times a day), but isn't as organized. It also has a search,, but for some reason, I can't find the link to that page off the

Anyways, I've been trying out a few BitTorrent clients. I don't like the "official" one cuz it doesn't allow multiple downloads in one window and has a very minimal interface. I tried XBT Client and it's alright, it works, but doesn't look that nice and doesn't give you too much control, plus there's all these columns that I don't know what they are, just random letters and numbers everywhere. Plus, it seems slower to get downloads than with the "official" client. Oh, the "official" client kept giving me all these weird error pop-up boxes too, which were annoying. Something that's weird with BitTorrent is this whole tracker thing, it seems that some trackers want you to log into their site before they tell you the other clients you can download off of....

I tried Shareaza, which hooks up to the Gnutella2 network in addition to BitTorrent, Gnutella, and eDonkey, it seems to have potential, but I haven't used it much. Again, with BitTorrent, it doesn't seem to have enough control, probably cuz it's concentrating mostly on the Gnutella2 side.

I've just downloaded Azureus, a Java based BitTorrent client. It looks quite nice and seems much more like your typical P2P client (minus the searching ability), like eMule (my choice for the eDonkey network), Kazaa (I don't use it much cuz there's a lot of crap on there and the quality of the stuff is not so great), etc.

I have been successful with BitTorrent in getting tv shows, like Tru Calling, and some apps. It definitely seems to have some potential.
Oh, by the way, it's my birthday today! Happy 23rd Birthday to me!
I'm not sure how often I'll blog, but I have the "Blogger" button on my Google toolbar, which makes it quite easy. I think one of the down sides is that I don't think I can archive it and save it on my computer very easily (I like to have it myself cuz it seems more permanent, rather than just having it "virtual).
I've decided to try out blogging my thoughts, ideas, tricks, and discoveries to see if they're
1) useful for me to look back upon
2) useful for other people

Sunday, April 25, 2004

Hey, this is my first Blog post!
« Newer Posts Home