Showing posts with label computer science. Show all posts
Showing posts with label computer science. Show all posts

Tuesday, June 12, 2007

Agenda

Taken from "Affectionate Technology" by Philip Agre

On a humorous, but nevertheless significant note: A friend of mine created a computer "character" that you could converse with in written English. One of the things he found that was crucial to making it seem human was that it not listen to you very carefully. It had its own agenda and invariably it would bring the conversation around to, say, its sick grandmother living in Arkansas. No matter what you talked about, eventually the grandmother that lived in Arkansas came up. It is rare that computer scientists have not-listening as a design goal--but it is a human characteristic.

Monday, June 04, 2007

Letting Go

I went on a little adventure to a nearby city last weekend, taking the opportunity to listen to the old cassettes that haunt my glove box. The pick of the drive was Tina Turner's 1983 release, "Private Dancer" which won the Album of the Year award in 1985.

I noticed the cassette cover art was essentially a thumbnail of the vinyl album artwork pasted into the top two-thirds of the cassette. Despite the cassette being rectangular in shape, the graphic artist could not let go of the square form factor of the original album. Even today, with iTunes cover art, one sees the same artificial form factor. There is nothing particularly "square" about an mp3, and yet that is how iTunes cover art is displayed:



Stepping away from that artificial form factor proved fruitful for Stefan Sagmeister who won a grammy for the design of the Talking Heads Once in a Lifetime Boxed Set.

In fact, stepping away from the artificial structures is how a lot of effective research can be done in many subfields of computer science. Because software isn't bound by the rules of physics, or materials science, or practical cost--because one can do "anything" in software--computer scientists have to create their own artificial structures in order to make sense of things. There's no real reason that there are seven layers in the networking stack, somebody just made that up.

These are my approaches to research: to examine those artificial structures with a skeptical eye, to redesign them in the context of a specific domain, or to throw them out completely. I believe I'm good at this because I've always been good at letting go of material goods. I bought a new car. Hated it. Sold it. Bought a sensible used one in its place. I bought a house. I was accepted into graduate school in another state. Sold it. No big deal.

I was at the nursery on Friday looking for some perennials for my shade garden. I considered buying some annuals, but I caught myself thinking, "I'll get them next year when I sell the house." Already pushing myself to get out of here. Already getting reading to let go of the material goods that have accumulated in my stay in GradShitTownVille...

...and I still haven't prelim'ed yet.

Fuckers.

Thursday, November 09, 2006

Overloaded terms

In case I haven't mentioned it here on this blog, I am learning Japanese. Why? I guess I figure I'll only be a student for a couple more years, and I wanted to take advantage of that by learning something I probably couldn't learn on my own. Why Japanese? I love learning languages, and there's a remote chance I could move there someday, so I might as well learn it. I also have a huge set of Chinese brushes at home, and it'd be nice to actually understand some of the characters that I script.

Yesterday was our first day of Kanji. Until now, we've been communicating in written form using only the two phonetic alphabets of Japanese, Hiragana and Katakana. Kanji is a pictograph-based alphabet, and it's one reason why Japanese is so hard to learn. Japanese newspapers restrict themselves to using "only" 2000 kanji, but there are many, many more.

The word for Sunday is "Ni-Chi-Yo-U-Bi." The Kanji for "Ni-Chi" and "Bi" is the same, but pronounced differently based on context. This freaked out many of the kids in the class.

I say "kids" because they are all undergrads, and I'm actually older than everyone, including the teacher. It's very humbling, since I'm also one of the dumbest kids in the class. I do fine on the exams, but I can barely talk, and I sound something like Benjy in Faulkner's The Sound and the Fury.

And yet, finally! I was so happy to learn that something from computer science could be reused in my Japanese class. Consider the following snippet of code in VBA:

if (a = b) then
a = b
end if

That's right, the same symbol is used for testing equality and for variable assignment. The term is "overloaded operator" and it's particular use can only be determined based on context. So yesterday's Japanese class seemed obvious to me (for once) thanks to science.

Friday, July 22, 2005

A conversation about inter-arrival time, or reason #3,781 why I hate ns-2

This is a rephrase of an e-mail conversation over two days with the very smart post-doc that used to work with my research group.

Me: I am having some trouble with ns-2.

Pd: What's that?

Me: Well, I'm noticing a difference between utilization at 99% load and 130% load.

Pd: Why are you measuring at 130% load?

Me: Originally, it was out of curiousity. Now, it's because I'm seeing this disparity.

Pd: How are you defining load? Input rate over link capacity?

Me: Yeah, I'm calculating the packet inter-arrival rate for the desired load, and setting the constant bit rate traffic generator accordingly.

Pd: Oh, you should measure it. You can't trust that just because you set the inter-arrival rate on the CBR in ns-2, it will be reflected correctly.

Me: Oh. Hm. Oh.

Two hours later, a month-long problem is solved. Just six more things on my "to-do" list before I have my final journal paper submission draft. This weekend will be busy.

Tuesday, May 03, 2005

Ownership, art, and domain models

My department is located in a "Smart Building" out here on the plains of the midwest. In addition to a lot of technology that is usually broken, the building has a very open floorplan in which one entire outer wall is comprised entirely of glass. Many of the labs are enclosed on one or two sides in glass, giving the interior a sort of fishbowl feel as you walk past the small groups of geeks laboring in these glass enclosures. A couple of comedians have put up signs saying, "Do not feed the animals." Still, it's rather unnerving to work in a room where anyone walking by can see what you are doing. I do as little work in our lab as possible, keeping to the "privacy" of my cubicle.

Because it's one of the weirdest buildings on campus, it's strongly tied to a Seedbed Initiative to explore the human experience through art and technology. It's one of the ten cross-campus inititiatives which encompass a wide range of interests and involve faculty, students, schools, and the community. It's a good idea, but as far as my Smart Building and I are concerned, it's not working very well.

A number of art installations have leaked into our building since its opening, but they've all been fairly small-scale. A number of plasma displays show animations, and for a while there was the "Sniffer" in the lobby which translated radio transmissions into ambient noise. But last week, there was a new installation in one of the glass-enclosed labs. Basically, it's a female mannequin, dressed in Avant Garde fashion (compared to the Old Navy uniforms worn by my CS peers), standing as if she's engaged in conversation with a nearby cluster of machines. I noticed it immediately because it was dressed as a woman, and for a moment I thought our female population had been increased by 10%. For a week, the mannequin just stood there, without explanation. I figured it was art, but it wasn't widely accepted by the rest of my peers. Mostly people were just asking, "What the hell is that?" "Why is it there?" "Why is it so creepy?" A week later, a small placard explaining the work was placed on a nearby wall.

I'm still reading "Domain-Driven Design" by Eric Evans. It's a tedious book, albeit well-written, so I can only digest about twenty pages a day. In my last reading, I took note of the following:
If the people who write the code do not feel responsible for the model, or don't understand how to make the model work for an application, then the model has nothing to do with the software."
He's speaking of ownership. If software developers don't feel that they own the domain model, then they won't use it. The same need for ownership applies to the installations in my "Smart Building." I don't think that anyone here really likes the creepy mannequin mostly because of the manner in which it was installed. It was almost snuck into the building, and without any guide, we geeks do not how to process it. Moreover, it's rather intrusive to the faculty whose offices are nearby, as passersby are constantly asking them, "What the hell is that creepy mannequin doing in there?" Basically, geeks aren't trained to recognize and appreciate art, especially art which is snuck into the building and results in lower productivity.

I can easily see the counter-argument. Site installations, such as the creepy mannequin, are created for the site in which they are installed. They are created by the artist to interact with the site and effect the public space in which its installed. For Benson, the creator of the creepy mannequin, she "blurs already faint distinctions between reality and representation in works that are both absurd and eerily beautiful." That's a wonderful goal, but it's hard to accept in a place where people are trying to do thoughtful work.

I feel what the folks behind the Seedbed Initiative have failed to do is consider their audience. In this building are approximately 1000 people who, for the most part, use only the technical portions of their brains. We need guidance and explanation to understand the installations in our building. We need to be informed of the installations so that we can avoid being infiltrated and attacked by creepy mannequins. We need not to be annoyed by the installations. For example, the "Sniffer," essentially a buzzing-sound generator, was placed in an area where people are trying to concentrate and do work. I'm not saying that the art should be changed or designed so that geeks will get it, but rather it should be installed in a way that will bring the geeks to a better understanding of it, rather than just shoving it down our throats.