Sunday, December 28, 2008

Unintentionally Funny Code

So, a couple of weeks ago I was at work, digging through the codebase, trying to root out hard-coded client-specific logic.

Here's what I found (genericized to avoid non-disclosure problems):

public class Class1
{
public virtual bool IsClientOne()
{
return Class2.CanUseOptionA();
}
}


And then...

public class Class2
{
public virtual bool CanUseOptionA()
{
switch(Class3.Id)
{
case (int) Class3IdValue.ClientOne:
return true;
default:
return false;
}
}
}

Thursday, December 04, 2008

When centralization fails...

I was reading an article the other day that said that 1 in 10 jobs in the US are dependent on the big three US automakers (Ford, GM and Chrysler), or their supply chain. And that, therefore, is the reason they must be bailed out of their current financial troubles. (EDIT: and before someone corrects me, I don't care what the actual numbers are; the important points are: 1. that their size is the justification for their immunity to failure and 2. they probably do pose a significant danger to the US economic situation because of their size.)

I'm not a big fan of bailouts. Leaving aside any market-based arguments (though, if you're going to pretend to have a free market economy, you ought to either stick to it or stop being surprised when bad things happen), I think that people and groups should be allowed to fail when they screw up, and they should be held to the consequences of their actions (especially on the 'bailout' scale).

But, it seems to me, that the real problem here (or at least a symptom that's closer to the root problem) isn't the fact that the big three are in financial straits. The problem is that the economy is so dependent on just three companies, especially companies that are similar.

My suggestion, then, if taxpayers must be forced to pay for the mistakes of a greedy, myopic few: instead of bailing out the Big Three, use an equivalent amount to fund a number of different automobile start-ups, preferably some with lots of experienced auto-industry people, some with fewer (but none of the current management, though it's unlikely they would join anyway); some in Detroit and some elsewhere; companies that are willing to take sensible, forward-thinking risks, even though they may fail; and then, as those that are successful grow larger and more powerful, take the repayment and invest in other startups, wherever a cartel is found, posing a danger to the economy.

Or, here's another thought if the big three must get the money: invest an equal amount in the startup idea, and negotiate in the bankruptcy hearings to make assets (factories, equipment, etc) that would otherwise be abandoned (but still remain the property of the three!) available for a reasonable price to the startups.

Anyway, enough of that. Bailouts make me so mad I want to spit.

Tuesday, December 02, 2008

YouTube Symphony Orchestra, how cool is this?

I must share this.

YouTube and the London Symphony Orchestra are teaming up to create the YouTube Symphony Orchestra, consisting of, first, a collaborative piece, written by Tan Dun, and played by you and me, on YouTube. That's right, you download a part and record yourself playing it in time with Tan Dun's recorded conducting and then upload the video to youtube! And, second, a live performance of (some of) those who participate at Carnegie Hall.

I almost want to go buy a video camera right now.

Sunday, November 30, 2008

Oh give me a home, where the GNU/Linuxen roam...

I'm running Linux at home again.

And I'm so very happy. (Seriously)

I am playing with programming again (currently trying to make my way through the Python Challenge; I'm on level 7), for one.

But I really like the relief and freedom I feel. Even alongside the occasional frustration. :-)

Other news (unrelated; likely to be expounded on later): my paternal grandfather is dead, and Steve and I have a new kitten named 'Rory' that we got last Monday.

Sunday, November 23, 2008

Eastern Standard Tribe

Cory Doctorow

When I finally found Eastern Standard Tribe (official site, with downloads) in the bookstore (Barnes & Noble; that'll teach me to go to Borders all the time), I was quite excited. I'd recently read Doctorow's I, Rowboat in "The Year's Best Science Fiction: 24th Annual Collection" (originally from OverClocked), and I was looking forward to more Doctorow goodness.

Unfortunately, Eastern Standard Tribe didn't speak to me. It's the story of Art, a user-interface designer who gets thrown in a mental asylum for extreme, violent paranoia, and his world of subterfuge and sabotage in the name of his "Tribe", the titular Eastern Standard Tribe.

I think my disappointment stems largely from my preconceptions about what the book would be like. I had, I think, envisioned a story less about subterfuge and more about a society organized around personal timezones, even if it were distributed around the globe, might function.

Overall, not a bad story (and some of the user-interface stuff is interesting), but not one that really interested me.

Down and Out in the Magic Kingdom

Cory Doctorow

Down and Out in the Magic Kingdom (official website, with downloads) is the second Cory Doctorow novel I've read, but the first that I really enjoyed (see my review of Eastern Standard Tribe). It's the first-person account of Jules, a member of the Bitchun Society.

(The Bitchun Society is a post-scarcity ad-hocracy made possible by free, unlimited energy; free, fast cloning; and free, ubiquitous neural-implant network connectivity (whew!) whose primary currency is Whuffie, or reputation.)

Jules, with the help of his girlfriend, Lil, attempts to help his friend Dan—formerly a missionary for the Bitchun Society to the technophobic remnants of the world—regain his reputation so Dan can go out in a blaze of glory, while defending Disney World's Liberty Square, including the famous Haunted Mansion, from an opposing ad-hoc that wants to turn its attractions into simulated rides. All is going well, until Jules is murdered in the Tiki Room, which ticks him off a little.

I think part of the reason I liked this book so much is that, thanks to Steve, I'm fairly familiar with the setting (or, at least, I'm familiar with Disneyland, which is close enough that I get the picture). But the other part is the cool tech: the cloning, the implanted computer and HUD and connectivity that would put today's Japan to shame.

But, ever since reading Down and Out in the Magic Kingdom, I've been wrestling with the concept of personality and identity in a world where everything you are can be backed up and restored in a couple days' time. What does it mean to be Geoff? If I were to make a backup today, "die" tomorrow and be restored, what of that time in-between when I existed and acted but is now irrevocably lost to me? And how do I feel about this? If I were offered, today, the one-time-only opportunity to become a part of the Bitchun society; to have my personality and memories able to be permanently backed up and recorded; granted essential immortality; a clone of myself ready to step in and take my place should anything untoward happen to me; would I take the opportunity? I can honestly say I don't know. There is so much that's amazing about the idea; so much that it would offer, but potentially so much to lose. (Even setting aside questions about security of the system that runs my brain, the sufficiency of the backups created, the issue of impersonation or duplication and, of course, privacy.) And what of the route to get there?

I suppose, in the end, it would be a simple matter of survival: whether I die and am reborn as a clone of myself, or just die, this me will still be dead, but only with the Bitchun Society will some part of me continue on.

Saturday, October 18, 2008

Annoyed

I don't buy a lot of games.

Mostly, I don't play very many games, although I've been playing Culdcept and Dead Space lately.

But I really wanted to play Portal, because I've heard it's so amazing.

And now, I'm about twenty minutes in to installing it, and it's nowhere near done, as far as I can tell.

First it installed Steam. I don't want Steam; I've never wanted Steam, it's a waste of time and memory and bandwidth.

Then I had to create a Steam account to even install Portal. This despite my having plunked down my money at a counter to purchase the stupid game. It tells me I can't access the games that I've already paid for without my Steam account. Which I didn't want anyway.

Fuck you, Valve. You're lucky I'm so lazy that I'm willing to put up with this shit this time. I won't be buying any more of your games in the future, though.

EDIT: I think the thing that annoys me most of all is that I wanted to just sit down and play portal for a bit. Instead, I'm still waiting. Console gaming is looking more appealing all the time...

Tuesday, September 16, 2008

Promotions!

But not raises.

On Saturday, BrightonMusic had their board meeting, and they decided to change my title from "Assistant Music Director" to "Music Director", alongside Kat (actually, Kat suggested it).

So, yay!

Saturday, August 30, 2008

Musopen begins Music Theory Textbook Project

Musopen has begun a Music Theory Textbook Project (as announced on the Musopen blog) to create and release to the public domain a music theory textbook suitable for use in college courses. They're looking for volunteers right now, and although I doubt I can contribute much to the actual theory portion of the book, I've volunteered to proof-read. Give it a look!

Thursday, August 21, 2008

Inventory as Waste

My coworker Paul was telling me today about some of the presentations he attended at the Agile conference earlier this month, and one of the things he mentioned was the idea that inventory is a kind of waste.

It took me a little while to grasp this concept, but I think of it this way:

Imagine a mechanic's shop. There is a team of mechanics, and they all work together to fix cars (or whatever). They have an inventory of wrenches, and each wrench has a certain cost associated with it, based on the initial cost of the wrench, the cost of storing it, degradation of the wrench over time, etc. The wrench's purpose is to be used to fix cars. When used for its purpose, the wrench is not wasted; it is contributing to the goals of the team. Whenever the wrench is in storage instead of being used for its purpose, it is wasted; it costs the team to store it, track it, put it away, etc. So, ideally, every wrench should be used (appropriately; misuse of a tool is another topic!) as much as possible.

Now, of course, some waste might be necessary. Perhaps certain tasks require the use of multiple wrenches, or when the team is at capacity all the wrenches are in use (but this doesn't happen all the time, nice as that would be). So you have to find the appropriate balance of waste vs efficiency.

The City Born Great - How Long 'Til Black Future Month?

The second story in N. K. Jemisin's anthology How Long 'Til Black Future Month? , "The City Born Great," is an exciting ta...