Site cross-pollination – check out h2h

December 13th, 2005

I just wanted to mention that earlier today I finally got hand tracking working on my final project for my Motion Capture / Computer Vision class. You can now connect a webcam to your computer, load up my GTK+ program, and watch boxes with crosshairs follow your hands accurately as you move them across the screen.

Pretty awesome, no? Check out the project if you haven’t yet, its MoinMoin wiki is here. I might post up a video of it in action soon.

It uses a clever skintone detection algorithm across the RGB colorspace, along with clever segmentation of the regions of interest to determine the cardinal direction a hand is moving in and retargeting the box to the new area and running the algorithm again. I am quite happy with the results. It can only get better, but it’s already pretty fun to play with.

Two must-reads

December 13th, 2005

One, and this has been floating around the blogosphere I think, but it is essential:

Human Development Trends 2005 at GapMinder.com.

The second is Harold Pinter’s starkly anti-Amerkn Nobel Acceptance Speech, which you can read at the Guardian.

My Facebook Profile, and Everyone Else’s

December 11th, 2005

-“You need to change your Facebook profile.”
-“Why?”
-“My friends all think it’s weird.”
-“Why?”
-“Because you mention things like ‘corporate power’ on it.”
-“So?”
-“The Facebook is supposed to be fun, you’re supposed to not take it seriously.”

So here, let me propose my new Facebook profile so it can be more amenable to social pressures. I’ve decided that the Facebook has become just as insane as real life, and, unfortunately, just as predictable.

Here is my Facebook profile for the alternate reality in which I care about making Facebook friends:

Relationship: Married to someone of my own sex even though I’m obviously straight. Hah hah, I’m so ironic.

Political Views: Moderate, even though I’m obviously liberal or conservative, but I don’t want to offend anyone. It’s not cool to talk about politics!

Interests: in truth, none whatsoever, so let me just write cute unfunny stuff here, like “Drinking with roomie,” or “duh, The Facebook.”

Favorite Music: A mish-mash of hip-hop, indy rock, and classic rock, because then you’ll know my musical palate isn’t vulgar.

Favorite Movies: here’s my chance to wow everyone with how cultured I am, so I’ll have at least one Coen Brothers movie here, and one or both of Eternal Sunshine of the Spotless Mind or Waking Life.

Favorite Books: I don’t read on my own, because that’s not being social. So here are my choices: (1) my textbooks, because that’s ironic, and dodges the issue; (2) Catcher in the Rye or 1984, because I read that in high school and maybe no one will notice; or, (3) obviously bad books I’ve never read and no one will think I have, like “Treason” by Ann Coulter.

Favorite Quote: Something my roommate said while drunk. Isn’t it funny? Isn’t it? No, really, it’s funny… you had to be there. Or, if I take myself a bit more seriously that I can at least allow a quote, make sure it’s something about postmodernism or from a modern poem that makes minimal sense.

Now that you guys see I am capable of writing a Facebook profile exactly like all the others, perhaps you’ll stop asking me to. In the meanwhile, to make you all more comfortable being apathetic, I’ve censored political content from my interests. I’ve also deleted references to a comedian you’ve never heard of from my quotes section. If you’re lucky, I’ll promptly replace them with Jon Stewart quotes. (Politics is cool, apparently, only if it’s on TV.)

Can you tell it’s finals?

December 8th, 2005

I haven’t posted here in a week. Eek.

Starting Dec. 22, I swear to write again. Finals are just kicking my ass this semester.

Instilling Doubt

November 28th, 2005

A pretty insightful comment coming from an anonymous poster (in the comments section),

I always wonder about these Linux puff articles — what motivates the writers to pimp OSs that any experienced person knows will be nosebleeds for 90%+ of the novices trying to do a real, complete migration from XP?

Linux never has been, nor will it ever be, an effortless turn-key OS for all-purpose desktop (let alone laptop!). Ubuntu is an improvement, but it’s still Linux — which, if you consider the costs of replacing unsupported hardware and your time struggling with setup at about two cents an hour, is the most lavishly expensive OS ever devised.

I’ve been screwing around with Ubuntu 5.04 for about five months, all but living on the official support forum, which provides — at best! — solutions for only about a quarter of the hardware and software problems I’ve encountered, and there are tons of them.

When 5.10 was released, the forum exploded with bug reports from those who had upgraded from 5.04 and found they had major-to-fatal problems.

I’ve tried to install 5.10 on my new laptop, but the VIA video is not supported, nor is the RaLink wireless, nor WPA authentication…etc., etc., etc.

If you want to spend the rest of your life talking with geeks (and in the process learn that OS advocacy is best understood as a psychiatric symptom above all else) and trying out an infinite number of kludges, you can get a lot of these problems worked out (more or less), but what you normally wind up doing is succumbing to what I call “Linux disfunction drift,” eliminating tasks that you used to do in Windows because your Linux distro won’t do them, or support the hardware you needed to do them.

Disclosure: I have never read “Design Patterns”

November 27th, 2005

But I decided I will now. Gonna buy this introduction plus the original by the Gang of Four in the next couple of days. Shame on me for waiting this long.

Slashdot comes through for once: on the viability of open source “business”

November 21st, 2005

There’s also a larger problem with this approach – it sucks for small companies trying to become bigger.

If you are only able to profit off of service contracts, you can’t ‘write once, reach many’ like you can with COTS software. Moreover, companies like IBM and Novell which have large established sales and service teams will win all the larger contracts.

If you write a great peice of software, and then have to sell, educate the customer AND hire/train all the workforce, how much time are you going to have to devote to Rev. 2 of your world beating product?

Whenever folks talk about OSS in the context of markets, I think it should be with a jaundiced eye towards our “helpmates” at IBM, Novell, SAP/MySQL and Sun.

Ultimately, IBM et al are about making money for shareholders, if they didn’t see that as the likley outcome, they would not be out there pimping OSS.

I think a world where software is only ‘sold’ in the context of a service contract is bad for the next great idea. OSS is great in its place, but to preclude software for sale isn’t the answer.

The truth hurts for Free Software zealots, but it’s the truth.

Free Software isn’t about eliminating proprietary software, at least it shouldn’t be. It should be about developing a free system for development, learning, and sharing, because we can.

Comedy in Real Time

November 19th, 2005

I caught Bill Maher’s last show last night. It was quite good; I especially liked the give and take between Joe Scarborough and Bill–Joe was in a particularly right-wing propaganda mode, but then tried to gain back “journalistic integrity” by agreeing with Bill on the issue of accountability for the Plame leak.

But Scarborough’s views on Reagan, on Bush being unpopular just due to “historical precedent,” and his conviction that the middle east will benefit from our intrusion in Iraq is just par for the right-wing echo chamber course.

I also caught Comedians of Comedy, the comedy central show with Zach G. that shows four comedians on the road joking around with each other. The show opened awesomely–with Zach resolutely telling a female comedian that “men can have fake orgasms too” in a crowded diner, and then proceeding to actually fake one.

Someone in the crowd of the diner screamed out, “I’ll have whatever he’s eating!” at the end.

The MDI Plague and Window Management Woes

November 19th, 2005

There is a nice article on Wikipedia that discusses the multiple document interface, a horrible hack that took hold in the Windows world to deal with the fact that Microsoft’s default window manager was inadequate to handle multiple windows existing under the same application.

I think Mac OS/OS X handles the MDI plague best by simply grouping all application windows under a single application class, with a single menubar. But usability experts have debated whether that makes the most sense, since the menubar can change, for example, depending on what window is in focus. I think users get used to that, and it also allows the menubar to be as long as necessary while the window can remain as small as necessary. That’s a nice win.

However, given our current model on *nix/Windows of menubars for every reasonably complex window, and given the lack of the MDI hack in GTK+, we do have a mess for applications that need more than one window to operate properly, i.e. Glade and The Gimp.

What I’ve been doing is giving these programs their own workspace as a workaround. That seems quite greedy of them, and indeed it is. What’s more, however, is that it’s unusable. Even when I switch to my Glade workspace, I see 4 windows in my taskbar, each with the same icon and with the following names: “Glade: h2h”, “Properties: image95”, “Widget Tree”, “h2h”. The first three are actually part of the Glade window class, and if I enable Metacity’s taskbar grouping, I see them as part of the same group. The last one, however, is just my actual window, and so is separate.

This is good–but I only get some form of usability when I actually enable window grouping. The thing is, in Metacity you can’t enable window grouping on a per-application basis. It’s all, sometimes, or nothing. Sometimes means metacity only groups windows when I’m running out of space. Otherwise it’s either on or off.

The thing is, grouping isn’t just about space saving. It’s about being able to perform window manager operations on a group of windows, i.e minimize all and maximize all.

This doesn’t even solve all problems: alt+tab still shows me all 4 glade windows, which can be quite confusing since only one comes into focus at a time. But that’s a separate issue, separate debate.

Wouldn’t it be nice if instead of Metacity just “figuring out” when to group my windows together, it let me just press a hotkey “Group all X windows on this workspace”, where X is the application I’m currently in?

I’ve decided this feature is so valuable, I may just hack metacity to add it. It will at least provide a path for solving the MDI nonsense.

Update: check out these screenies of a “different” approach to MDI written in GTK. It’s called GTK ADI.

Refreshing: A World Where Labor Rights Trump Property Rights

November 16th, 2005

Check out this excerpt from Majorie Kelley’s “Divine Right of Capital” (was a recommended read in my last outsourcing talk):

When stockholders might try to improve their negotiating position by organizing into mutual funds, corporations would threaten to cut off payments altogether. The companies would threaten to replace stockholder money with funds from overseas, willing to accept lower returns.

Of course overseas stockholders would have less power. For while free trade agreements would provide intricate protections for labor and environmental rights, they would offer capital no protections. “What does capital have to do with trade?” pundits might ask. “Trade is about goods and services and the people who create them, it’s not about capital.”

If stockholders staged protests at the World Labor Organization to suggest changes in this economic order, they would be accused of “tampering with the free market.”

That’s what we’re told today. But we don’t have to buy it. For we can begin to see how the sleight-of-hand of the “free market” serves as an apology for institutional arrangements. The truth is, free market ideology contains two separate assertions, worth unpacking.

First is the assertion that natural processes are self-regulating. Which is valid. We see it in nature, where the renewal of life in spring comes on its own. Where we mate for our own pleasure-and thus help in the rebirth of the world. In like manner, we serve the economic polity best by serving ourselves. The drive to make money gets us out of bed in the morning, and brings us to do our part in holding the world together. Our economic drives are part of the natural order and are trustworthy. We can take comfort in this assertion.

But free market ideology carries a second assertion: that corporate and trade governance structures embody the natural order. And this does not follow logically from the first. For it glosses over institutions of power. To call the stockholder-centered corporate structure “natural” is reminiscent of the ancient claim that the monarchy was the only “natural” way to structure government.

A truly natural free market would free all groups to compete equally, to pursue their own self-interest. Real free markets are not about enshrining the self-interest of one group alone in law. Privilege like that has no place in a market economy. Even an imaginary one.