The Telecom Delemma

May 4, 2008 on 5:18 pm | In Personal | By QBasicer | 3 Comments

Currently, my cellphone provider is Bell, a national CDMA telecom business. Bell’s influence even reaches my corner of Canada, although under a different name. In Atlantic Canada, the big telecom business is Aliant, which is is pretty much Bell under a different name. You’d think that by essentially being the same company, that it’d be easy to switch between the two. This is not the case.

Last time I switched to Bell from Aliant, the customer representatives had no idea what was going on, and it took many hops between the two carriers to get my contact onto Bell. Normally that would be fine, but every 4 months I switch in and out of Aliant and Bells areas. In the fall, I just kept my bell number back in Ottawa, a mere 1,000km away, because I really don’t use my cellphone when I have a land line.

In an effort to try and stay with the same company, I wanted to try Telus, which is consistently available all through Canada, plus has the advantage of already being CDMA, which one would think would be easy to switch my Bell/Aliant phone to Telus. Once again, I am easily foiled, as today, they inform me that I have to get a new phone with them, as the two systems are incompatible. The hitch is that I wanted to go with Pay as you Go, as I really don’t use my phone that much, so lots of my minutes get wasted. This means that I would need to buy a $400 phone outright, which obviously, if you’re trying to save money, is no good.

Why not just switch between Aliant and Bell on Pay as you go? Because there’s the pesky $35 activation fee, and probably a cancellation fee. But wait, you say, what about GSM?

The only GSM provider in Canada, Rogers, is probably one of the worst companies to deal with. I completely flat out refuse to get a cellphone through them. I’ve heard bad stores about them, and even I have had issues dealing with them (about their internet).

I may end up just canceling my cellphone for the time being, and just using a land line until I get back in Ottawa, and then going with Pay as you Go for those 4 months, rinse and repeat.

Playing With Water

May 1, 2008 on 8:31 am | In Personal | By QBasicer | No Comments

I’m moved back into Fredericton for school now, however, after being in Ottawa for their almost record breaking snowfall, it looks like I could be in Fredericton for their worst flood on record:

If you have me on facebook, you can see some of the pictures of the flooding. I’m going down to help out with the Emergency Measures Organization later on today, as there’s lots to do. They’ve turned off some of the power to downtown, and people are evacuating. Provided the power stays on, this webcam is a live image:
Webcam Live Feed

Last night University Avenue started to back up via the storm sewars, and the walking bridge underpass at University was dry, now both are closed today.
GNB Riverwatch
Fredericton Riverwatch
Road/Street Closures

Fibbing Around

April 24, 2008 on 10:45 pm | In Personal, Programming | By QBasicer | No Comments

My officemate Alexei and I were wondering a bit on how fast Fibonacci in assembly would be, so I wrote a quick little linear fib application in Linux.

08048074 <_start>:
 8048074:       31 c0                   xor    %eax,%eax
 8048076:       bb 01 00 00 00          mov    $0x1,%ebx
 804807b:       ba 01 00 00 00          mov    $0x1,%edx

08048080 <_calc>:
 8048080:       31 c9                   xor    %ecx,%ecx
 8048082:       01 c1                   add    %eax,%ecx
 8048084:       01 d9                   add    %ebx,%ecx
 8048086:       89 d8                   mov    %ebx,%eax
 8048088:       89 cb                   mov    %ecx,%ebx
 804808a:       42                      inc    %edx
 804808b:       83 fa 2e                cmp    $0x2e,%edx
 804808e:       75 f0                   jne    8048080 <_calc>
 8048090:       89 cb                   mov    %ecx,%ebx
 8048092:       b8 01 00 00 00          mov    $0x1,%eax
 8048097:       cd 80                   int    $0x80

Runs pretty quick, but I’m not sure how good it would be, as it’s only using 32 bits, so it can only calculate fib(46) and lower, and doesn’t even output (that’s a bit trickier).

Smallest Hello World

April 23, 2008 on 10:04 am | In Personal, Programming | By QBasicer | No Comments

In what turned out to be an assembly vs Java comparison of hello world, I’ve managed to get a hello world app down to a lean 380 bytes. objdump -d:


hello.bin:     file format elf32-i386

Disassembly of section .text:

08048094 <.text>:
 8048094:       ba 0c 00 00 00          mov    $0xc,%edx
 8048099:       b9 b8 90 04 08          mov    $0x80490b8,%ecx
 804809e:       bb 01 00 00 00          mov    $0x1,%ebx
 80480a3:       b8 04 00 00 00          mov    $0x4,%eax
 80480a8:       cd 80                   int    $0x80
 80480aa:       bb 00 00 00 00          mov    $0x0,%ebx
 80480af:       b8 01 00 00 00          mov    $0x1,%eax
 80480b4:       cd 80                   int    $0x80

Can you do better? This hello world does not link to any outside libs like stdlib, and only uses kernel system calls. We were able to get a java 6 compiled class to 517 bytes, but I’m not sure if I could make it smaller (Java bytecode maybe?)

Edit: I found a page on creating really small ELF executables for linux. They don’t say hello world, but it could be easily modified if you knew how to translate AT&T to Intel. I really can’t remember, or have the ambition to do so, so I’ll just link

Daft Punk’d

April 21, 2008 on 3:02 pm | In Music, Personal | By QBasicer | No Comments

I’m pretty sure I’m a Daft Punk addict. Last.fm says so. That’s alright, I guess. There’s much worse things to be an addict of.

I now offically own all but one of the Daft Punk Albums:

  • Homework
  • Discovery
  • Human After All
  • Daft Club
  • Human After All - Remixes
  • Musique Vol. 1
  • Alive 2007

The one album I need to pick up to complete the collection is Alive 1997, which I’ve found on Amazon for $85. I’m thinking I might just find a copy this summer to complete my collection. I’m especially proud of my Human After All - Remixes, that I picked up for about $40. It’s a rare Japanese only album. It’s one of 3,000 every made. Unfortunately the CD has a lot of DRM, so it wasn’t quite easy to import into iTunes, but linux got the wave files last night, so I just gotta encode them and slap them on. It’s actually pretty nice, I’m glad I picked it up. I got the actual CD off eBay through a seller in Australia, and it came really quickly.

I’ve started toying around with Last.fm a bit more, the radio feature is quite nice, and I’ve found a few songs I’ve liked already. Mmmm, instrumental jazz….

Dump the GC

March 27, 2008 on 10:39 am | In Personal, Programming | By QBasicer | 4 Comments

Ironically, what some say that the Java Garbage Collector is one of the best features of the language. For some people, yes, but as a C/C++ programmer, I’m more accustomed to managing my own memory. In fact, I think it’s almost insulting to have to rely on the virtual machine’s ability to guess when I’m done with an object. I’d personally really like to see the ability to switch the gc into manual mode, where there is no automatic collection of garbage, and you must specifically call a delete command.

And don’t give me any nonsense on nulling objects. Really. I currently am using a library that when I null the only pointer to it, it persists in memory. There’s nothing I can do about the 700 megs of memory it takes up while loaded. I can see that in an attempt to be smart, it’s stupid. Save me the clock cycles, and just let me do it myself. Please.

High Quality Youtube

March 18, 2008 on 8:09 am | In Personal | By QBasicer | No Comments

Youtube has recently started providing High(er) quality videos on their site. While not all videos are high quality (the old trick was to trick the encoder not to re-encode your videos). On the good videos, the quality is dramatic. Here’s an example:
All About Halifax (LQ)
All About Halifax (HQ)

I’ve also found a blog entry which outlines some of the more technical side. I’ve also noticed that the higher quality actually loads faster. I think my ISP does some kind of youtube throttling, but I’m not sure.

Here’s some screenies:
Low Quality Halifax
High Quality Halifax

EDIT It’s good also to mention that they amped up the sound quality to higher levels, and went to stereo. It’s now at 128kbps and not 96kbps mono. Yay! Also, sorry for the odd artifacts on the photos, I used a tool that apparently draws crap to the window while I resize the box to take a screenshot. Bad KSnapshot, bad!

Location Makes a Big Difference

February 13, 2008 on 12:56 pm | In Ottawa Adventures, Personal | By QBasicer | 3 Comments

Back home, they’re having a pretty big snowstorm. In contrast, we’re having a light snow. It seems every second day here we have about 2cm of snow. It all adds up in the end, and there’s quite a bit of snow lying around just chillin’. I’m starting to wonder if central Canada in general just gets most of their snow in small snow falls like we’ve been having, or large storms like back home? I miss the old Nor’ Easters that usually blow through. Today, my university is closed because it’s snowing really hard.

Back Home Right Now:
Fredericton Snow Storm

Downtown Ottawa Right Now:
Ottawa War Memorial

EDIT:Live From Home:
Officer

Edit2:Live from here
Parliament Hill

Psssh Yeah Right

January 25, 2008 on 11:14 pm | In Ottawa Adventures, Personal | By QBasicer | No Comments

I read this post on slashdot the other day. He raises some interesting points, but I think he’s misguided:

Let me start by saying that I am a very strong Republican conservative, and I normally hate labor unions, especially since most of them don’t do much but collect money from workers and use it to buy politicians. That said, in this instance I absolutely think those workers should immediately unionize and walk off the job. IT workers are already treated as slaves just about everywhere, and it’s about time they got paid for their overtime AND STILL recieved a salary commensurate with the difficulty of their jobs and the level of their education.

Furthermore, this move by IBM is complete garbage. Google spends a heck of a lot more money on its employees than this, and it doesn’t have any trouble with the “competitive pressures” cited by IBM. The reason it doesn’t have any trouble is twofold:

  1. By treating its employees fairly, it attracts much of the best IT talent around, and this talent in turn is very productive. Their employees probably produce more per hour than the employees most anywhere else through raw skill alone.
  2. The really big reason Google doesn’t have these competitive pressures forcing them to pay their workers nothing is because Google has good management and actually produces worthwhile, marketable products. When is the last time IBM produced something good that people wanted to buy? PCs? Gone… IBM completely lost out in that market. Operating Systems? OS/2 is dead. Lotus Notes/other office software? Horribly ugly, clunky, and not even close to as good as Microsoft products. IDEs? They have some, but they are horribly overpriced things like Rational Apex (an ADA IDE) that cost 30,000 dollars a license and are vastly inferior to Microsoft’s Visual Studio. And while IBM helped birth Eclipse and still funds it to some degree, that is an OSS IDE, and a lot of it (plus a lot of the add-ons) were built by volunteers.
    Honestly, the only things they seem to produce anymore are a few supercomputers (and the market for those is clearly limited), some mainframes (again, limited and shrinking market), and some stupid “software development processes” like the Rational Unified Process (RUP). (News Flash for IBM: a process isn’t a product. I can go out and make my own process that suits my work (which is what most people do), or use one of many free and well known process like Agile or UP). IBM also produces a lot of marketing speak and vague references to “services” that they can offer to companies (not sure what those actually are or why I would want them), they produce a lot of commercials about servers spiraling out of control, and they spend a lot of time on clearly stupid strategies like building a corporate office in Second Life and having a director of Internet and Virtual Worlds.
    With all that sort of vaporware and garbage products, it’s no wonder that they are facing big competitive price pressures. They deserve the problems they are having. But the regular employees shouldn’t be the ones penalized. The problems (and pay cuts) should be directly placed in the laps of their management, especially their top executives. IBM has repeatedly had the chance to conquer the world, and they blow it on stupid ideas every time.

I think IBM’s participation in the Open Source market is commendable. They put an entire team into it, and lots of funding (in terms out man-hours). Plus it’s the base for lots of things, like Jazz, which is a really exciting product (having used it for a week or two so far). But more about Jazz later.

Do You Believe in Magic?

December 25, 2007 on 10:36 pm | In Personal, Programming | By QBasicer | No Comments

I’ve long said that I needed to sort my music. After many years of collecting music on different operating systems, and never bothering to sort it. Upon learning about libmagic, I decided I finally have the opportunity to sort it all. I wrote a little program that takes a source and destination directory. It starts recursively reading a directory, and attempts to recognize each file in it by it’s mime type. For example, my MP3s come out as audo/mpeg. I take this information and store it in the destination directory. All my images and videos get sorted, programs, etc. It’s pretty quick, and did over 14 gigs of stuff in about half an hour. I’m going to be releasing the source soon, as I think it’s a pretty handy tool. I’ve only tested it under linux, as I’m not sure about libmagic on any other platforms.

« Previous PageNext Page »

Powered by WordPress with Pool theme design by Borja Fernandez. I rewrote the CSS because I'm cool like that.
Entries and comments feeds. Valid XHTML and CSS. ^Top^