Foreign workers

July 7th, 2007, 11:41 pm PDT by Greg

Okay, so I was just watching the news. They were talking about Microsoft setting up shop in Vancouver.

One of their stated reasons was the ability to hire more foreign workers than the US will allow. So, we’re talking H1-B visas in the US, which come in limited numbers. Whenever this comes up, they invariably interview somebody who says the companies want to tap into cheaper foreign labour.

Okay… sending your call centre to India, that gets you cheaper labour. Having crap manufactured in China: cheaper labour. The common thread? The work is done over there.

Are companies really bringing in foreign workers and paying them less? “Sorry Arjun, I know the guy down the hall makes $80k, but we’re paying you in promotional swag.” “Queenie, you’re just going to have to sit on the floor and wear a headlamp: we can’t afford a chair or lights for your foreign ass.”

Am I missing something? Is it not more likely that they can’t hire enough US workers with solid technical skills? Why else bother?

Mouse WTF

June 18th, 2007, 12:48 am PDT by Greg

Okay, so I just bought a new mouse. My old one was giving me double-clicks on the middle button when clearly inappropriate, and the battery charger wasn’t working, forcing me to change batteries every couple of weeks.

Since I didn’t want to fight with batteries any more, and my mouse doesn’t really move out of its one square foot area, I decided to go with a corded mouse. Most mice are cordless. I was left with the cheap mice, and a few high-end corded “gamer” mice. I eventually decided on a $23 Logitech mouse.

While I was looking around, I saw this for $70 in London Drugs:

17-06-07_1636.jpg

Here are the claims made on the box. It’s like a case-study in marketing bullshit.

  • “6400+ frames per second”. Okay, mice don’t have “frames”. I’m willing to assume they meant “samples per second”. 6400 times per second, the mouse checks to see how much it has moved. They couldn’t have said “6400 updates” or something like that?
  • “5.8 megapixels per second”. WTF? Mice have megapixels? I can’t even imagine what that could mean. Are they using “pixel” to mean “position” or something?
  • “40 inches per second, high speed motion detection”. I can’t seem to move my $23 mouse fast enough that it misses out. Maybe 16 year olds have somehow managed to develop freakishly strong forearm muscles that lead to phenomenal mouse speeds?
  • “7 buttons, independently programmable”. I’m all for programmable buttons, but what would it mean for buttons to be “dependently programmable”?

SIMS Horrors

June 12th, 2007, 10:53 pm PDT by Greg

As I mentioned previously, I’m trying to get some student data for a side project. The data is housed in SIMS (Student Information Management System), which is pretty much the internal group that does goSFU.

This led me to spending a chunk of the day learning about SIMS, both the system and the group that manages it.

First, remember that we paid tens of millions for the whole SIMS/goSFU/Peoplesoft thing. That doesn’t count the productivity lost across the University to the horrible interface. Admittedly, a lot of what we paid for was a level of certainty that there would be no catastrophic failure. When we wake up tomorrow, there will still be a record that I work there, and the students in my courses will still be registered.

The SIMS team is apparently either swamped with necessary customizations or paralysed by the complexity of the task before them. I was told today about a two and a half year wait by a staff member to get a simple minor customization.

What tipped me over the edge tonight was a document I received titled “SIMS Reporting Database Tables–Field Descriptions”. The reporting database is most, but not all of the student-related data in the system. This document is a list of fields in each table (with a sentence or so about each one).

It is 154 pages long. One hundred and fifty-four.

And, it obviously wasn’t even included in the millions we paid Peoplesoft. It is information compiled by SFU staff. It contains useful snippets like:

  • “Not sure what field represents or if field is used. Most values are (blank) with a few exceptions”
  • “Some dollar figure, no idea???”
  • “A level between 1-5. Not sure which end of the range is the high end.”
  • “A flag . ‘Y’, ‘N’ — All ‘N’ so not used?”

I don’t want to knock the poor employee(s) that wrote those things: they did the best they could with what they had to work with. But, if you were selling a database-backed system that was customizable and cost millions of dollars, wouldn’t you throw in some documentation?

Facebook Plan

June 11th, 2007, 3:29 pm PDT by Greg

As I was looking into the new Facebook application interface, I found myself thinking “what could I do with this that would be cool?” I figure a good Facebook application should contain information that people want to share with their friends and would help them connect with others.

What I quickly realized: students want to know what courses their friends are in, and what friends are in their courses. Thus the “SFU Courses” application was born.

My plan (and it’s still a plan) is to get nightly data from goSFU and push it to Facebook so students (who have added the application and authorized the data release) can have something like this in their profile, automatically updated when they register/drop courses:

screen2.png

Step 2 would be to display a list of people (who have added the application) who are in a particular course. I want to get the basic course list working first.

I know Facebook has a “Courses” section in the profile already, but nobody bothers updating it because it must be done manually. This would eliminate all of the upkeep, and just automatically display the current and registration semesters.

I have started working with it, and I’m starting to understand the Facebook API. Publishing regularly-updating data is a bit of a hassle, but it will work out.

I’m still working on getting the goSFU data. I have permission from the Director of Records and Registration to do it. We’re now working on doing the technical part: actually getting the right data to me every night. That is being slowed by what I will call “interdepartmental politics”.

I’m hoping the whole thing will be working by mid-July for the fall course registration period.

Site Moved

May 9th, 2007, 11:34 pm PDT by Greg

So, I took the plunge and moved my hosting from my computer behind a cable modem to a Dreamhost account. At US$8/mo (if you pay for 2 years) it’s pretty damned cheap for a full-featured hosting account.

If any of you notice any problems with this blog or the gallery, let me know. Everything should be faster (unless you’re in my house, then it will be slower) too.

By the way, if you want a Dreamhost account and follow this link to Dreamhost (or enter the promo code GREGBAKER01), you’ll use my promo code and get $40 off any hosting package. (I get stuff too, so I’m not being totally altruistic here.)

New Computer

May 6th, 2007, 6:00 pm PDT by Greg

My new computer is up and running! Huzzah!

Hardware geekyness

Core 2 Duo E6600 (dual core 2.4GHz, 4MB L2), 2 × 400GB SATA2 drives, 2GB memory (Kingston low-latency DDR2). I went with an Intel D975XBX motherboard, after returning a faulty ASUS P5W DH Deluxe (and hearing that Jen returned two before the third one worked).

It’s really quiet, which was one of the goals. I’m a big fan of the Antec Sonata 2 case I got (already having owned an original Sonata). For example, the hard disks are mounted on little rubber spacers to damp vibration. The Antec case fans (one included, one I added) are huge and can be turned down so they run slow (and quiet).

The video card I got, the Asus EN7600GT met my three hard requirements: dual-DVI-out (if I get a second display), no fans (less noise), and an Nvidia chip (better Linux drivers). It’s not blazingly fast, but I don’t need a lot of 3D.

Software geekyness

Having been a long-time Debian user, I decided to try Ubuntu Linux this time around. I’ve got to say: it’s sliky-smooth and delicious. It’s got all the good parts of Debian, with a bunch more goodness rolled in. (Okay, the installation took a while, but that’s because I was trying to be clever and trick the installer into doing something it didn’t want to do. That was silly.)

I installed Beryl for some shiny desktop eye-candy. I’m sure I’ll get bored and turn off some parts eventually, but it’s pretty cool. If you’re interested, there are plenty of Beryl screencasts on Youtube (but none compelling enough that I wanted to link to that one).

So…

I’m using the new computer as my desktop now. The server stuff (this blog, my gallery, etc.) is still on the old computer. So, if the site is down for a bit over the next few days, it’s because I’m doing the switch over (inelegantly).

Hmmm… maybe this is the time to put the server stuff on a Dreamhost account. I have been meaning to do that. US$8 per month is pretty cheap, and the upstream on my cable modem isn’t all-that.

My new toy

March 13th, 2007, 10:57 am PDT by Greg

I recently acquired a KingPANO panoramic tripod head. For those who don’t know, a panoramic head is a jig that forces your camera to rotate around the len’s nodal point, so you can rotate your camera and get images that can be stitched together nicely.

Basically, panoramas of far-away things are easy, since an inch or two of movement isn’t a big deal, but close-up panoramas are impossible without such a device. Have a look at the panorama I did at UNC. The far-away buildings are just fine, but the flowerbeds closer to the camera have awkward seams because of camera movement.

My first project with the pano head was a full 360×180° panorama in my office.

Since a few people have asked, and I have the pictures around, I thought I’d show what happens. First, the camera goes on the tripod, exposure, focus, and white-balance are set to manual (so they stay the same for all images). Then, I take a bunch of pictures (about 60 in this case, but that’s probably more overlap than necessary) like this:

A1.jpg A2.jpg

Then, into a panorama-stitching program (Hugin for me). I usually scale everything 50% before hitting Hugin. I didn’t this time and my poor computer groaned under the stress.

Then comes the long (but somehow relaxing) process of identifying corresponding points in the pictures. That lets the program figure out each picture’s correct place in the panorama. Once that’s done, each picture is morphed into the right “shape” for the finished panorama:

B1.jpg B2.jpg

Now, the individual images just have to be piled on top of each other for the finished panorama:

office-sm.jpg

Finally, I get the finished panorama of my office (after some pain to remove the tripod and fill in the floor properly).

If I had kept the full resolution all the way though, the finished panorama would have been about 162 megapixels. The one you see on the link above is about 3.5% of that.

Stupid DSLR Tricks

January 1st, 2007, 8:51 pm PST by Greg

As many of you know, most of my pictures come from a Canon Digital Rebel XT. I’m very happy with the 18–50mm f2.8 lens from Sigma that I’m using with it.

As someone who (1) likes taking pictures and (2) is a geek, I’m always on the lookout for novel things to do with my camera. Over the last few days, I have been collecting links. I thought I should share them.

Pinhole cameras

Pinhole cameras are about as simple as you can get: film with a small hole allowing light in. But why limit yourself to little boxes and film when you have a perfectly good instant-gratification digital sensor lying around?

As it turns out, you can make a quite nice pinhole camera with a camera’s body cap. Throw in a toilet paper tube or two, and you can have a zoom pinhole as well.

Bellows

I’m sure most of you can picture olde-timey cameras with the lens on a set of bellows. Well, they make new ones too: they are view cameras and are just the thing if you want full-control over the image you’re taking, and want to record on a large chunk of film for high detail. This may be a good time to note that a set of bellows will do at least as much as tilt-shift lenses, including the fake miniatures fetured on Boing Boing.

Once again, why piss around with film if you don’t have to? I’m pretty sure my local London Drugs won’t process a 4×5″ negative anyway. You can buy a set of bellows for a regular SLR that does the same job. For US$2500. Then buy an expensive medium-format lens.

In the lower end of the scale, one can buy a Lensbaby for US$150 or $270 (depending on the model). Or, the right kind of person can make a set of bellows out of a toilet plunger.

Panoramas

I have experimented with making panoramic images before. The idea is to take a series of pictures from one location and stitch them together with software like Hugin to stitch them together. The results can be quite impressive.

Shooting panoramas of landscapes is easy, but when you get up-close, parallax becomes an issue: you have to hold the camera still (over just the right point) while you turn it. A special tripod head is required to do this right. Panoramic heads typically run US$400 and up and are probably worth it if you need to do that kind of thing professionally. A KingPANO can be had for US$150 and looks like it might be fun to play with.

Others

I have also run across AquaPacs for underwater photography. On the other side of panoramas are object panoramas. You can buy an object turntable or make one with Legos to assist with this.

I also ran across a couple of general camera-hack sites: DigiHack and DIYPhotography.

So…

I don’t own any of these things (nor have I made any). I have been thinking about getting a KingPANO for a while, so I might order one of those some time.

Another trend here is using the camera’s body cap to attach crazy stuff as a “lens”. I might stop by a camera shop and see if they have spare caps (from dead cameras or something).

Anybody else got cool stuff to add?

Geek Songs

November 14th, 2006, 10:59 am PST by Greg

Okay, this one’s pretty geeky, even for me. Hold on tight.

I have heard many times that there is a correlation between musical talent and mathematical/formal reasoning abilities. None of that rubbed off on me, but it’s a good theory. I have recently been collecting links to prove the point.

I had originally heard The Eternal Flame/God Wrote in LISP a long time ago and thought it was a novel song.

Now, some folks on the Internet put their faith in C++.
They swear that it’s so powerful, it’s what God used for us.
And maybe it lets mortals dredge their objects from the C.
But I think that explains why only God can make a tree.

Then, I recently stumbledupon a page of math love songs. A Finite Simple Group of Order Two is particularly funny

When we first met, we simply connected
My heart was open but too dense
Our system was already directed
To have a finite limit, in some sense

A link there led me to the U Washington CSE Band. I had to stop Theory Girl to let the laughing stop at this line: (to the tune of Uptown Girl)

She never touches keyboard, mouse, or screen
Because she uses an abstract machine
It’s nice and clean.

It’s probably the only thing I’ve ever heard that’s only really funny if you have taken an advanced, possibly grad level, CS theory course. Others might enjoy None: (to the tune of U2’s One)

My friends show my no forgiveness,
they’ve all taken me for dead.
While I sit here reading Sipser,
they go out for drinks instead.

Finally, I happened across a link to Les Horribles Cernettes, who have the distinction of being the subject of the first photograph ever on the WWW, by virtue of having an office down from TimBL, who was at CERN in the beginning. From Daddy’s Lab:

I only like those guys who live to study matter
I’m gonna find my sweet one
And teach him more…
Much more than daddy knows

There’s no conclusion to this. Just a dirty feeling that I might be nerdier than I usually let on.

Update 2006-11-27: Monzy the CS rapper and his single So Much Drama in the PhD.

Old Blinky here will find a way.

May 26th, 2006, 7:05 pm PDT by Greg

As many of you know, Kat doesn’t drive much. It’s a positive feedback thing: she drives less, get less accustomed to driving, navigating, etc, and then wants to drive even less. She’s going to have to drive, at least occasionally in NC, so something had to be done.

One of the problems can be solved with technology: navigation. We just got a Garmin StreetPilot c340 GPS navigation thing. I have to say, it’s pretty cool. Basically, you suction-cup it to the lower-center windshield, plug it into the cligarette lighter, and off you go.

So, you’re driving around and it says things like “In point-two miles, turn left onto Main St.” Very handy. it has been named “Blinky” after a damn fine Simpson’s episode. “Old Blinky here will find a way.”

It also has a big list of built in destinations: stores, attractions, etc. We realized it had already become very integrated into our lives today (day one of ownership). We knew we were somewhere in Raleigh, and were about to get to a Starbucks. We had no idea where we were, and would have been hard-pressed to find our way out, but there was the Starbucks.

Advice: Don’t get a built-in GPS in a car. The one we bought is easily small enough to pack if we’re going somewhere and getting a rental car (say, Oli and Tina’s wedding). I also read a review site somewhere that the built-in ones tend to have less features for more money.

  Next Entries »