Always the sucker
posted by chip on 2005-08-18 21:25:38
If you sit down at a poker game and don't see a sucker, get up. You're
the sucker.
Last night I played poker with the guys. And by "the guys," I mean, "Me, Yan, and the girls." Apparently the only thing to do right now is play poker. I'm not a big fan of poker. Partly because I'm no good, and partly because of the too-frequent use of the word "chip." Every time I play poker, the night can be summed up in three words: "Played poker. Lost."
The night before, I finally got to see Shaolin Soccer with subtitles, and in the original Chinese theatrical form. It's a little more bizarre than the version you saw in theaters. Earlier that night, Yan, Kan, Greg, Jen, Darek, and some other people went over to Marty's for some food and some ITG. Apparently, They're giving away a set of refurbished pads to the first so many people to get at least 8 people in a picture playing ITG, so we're getting some pads for the club.
ITG is a pretty cool game. The engine is based on StepMania, and has all of the wacky mods you've come to love. Some have said that the songs aren't that good, but I'm pretty sure they mean "not DDR." For a DDR fan to think a song isn't good, it has to be a really crappy song. Heck, I got rave reviews for Drop the Jager Bomb, and it was awful. Plus, it's got Machinae Supremacy in it, which is a group I'd actually heard of before from monotonik. They're self-described as "SiD metal," which is a combination of the usual metal guitars and drums with early videogame-style bleep music. It sounds bad, but it's not. I highly recommend getting some of their stuff, at the very least their song from ITG, Hybrid. Especially the first 5 seconds. :)
Lately, I've had an idea for a set of small stories about the two weeks inbetween summer session II and fall semester. I've decided that it'll be fiction, but largely based on real events. It'll also be written in non-chronological order, and filled in later. Finally, a writing style that fits me: random access. :) I'm working on the software for it right now. (Hold on a bit... software? Yes, so I can type it into any web-enabled device. Creativity strikes at inopportune moments, y'know.) It'll be called "Two Weeks." You can see some of it here, in my new notepad app.
0 comments reply permalink
M0\/3D!
posted by chip on 2005-08-15 14:10:00
Aaah. I'm finally moved into my new place. And by "moved," I really mean "moved all my boxes to the floor of my room." I did cook my first meal, so by my standards, it's home, now. :)
The last four days have been exhausting, but not hectic like they usually are. After moving your stuff to and from places for five years, you get used to the routine. To our credit, Mike and I turned in our keys at exactly 9:00 AM, the exact time our lease ended. We then went to the McDonalds off the interstate over by Kohls. McDonalds' breakfast is actually pretty tolerable, but my stomach was still pretty confused to the idea of getting food at a quarter past nine. We said our farewells, for at least the next week. Chrissy's flying in next Sunday, so we'll all be hanging out together then. I'd also like to explain to you the legend of our family Chevy Astro, but I think that'll have to wait for another entry.
I need some furniture, so I'm probably going to go dumpster diving later today, and try to find a temporary desk that hasn't been soaked by the weekend's heavy rains. Once I get my stuff together, I'd like to make a desk out of PVC and plexiglass. "PVC is the ultimate bodger's material," James said. I've also got a plan for an octagonal shelf system that'll house all my computers. Also PVC.
Last night, Yan and Octavian came over to watch a movie. They got Ditto, which is apparently like a sappy Korean version of Frequency. it wasn't bad, but like all Korean movies (except perhaps, Attack the Gas Station), it seemed like it was three hours long. Also, I forgot to return the last movie we watched, so it was overdue like four days. In total, my last two rentals were late by a week, so I don't think I'm going to rent any more movies.
I still haven't met my other roommate, Dani. She's supposed to be back, but I haven't seen her. Maybe she doesn't exist. Maybe I've signed a lease with a crazy person, and clinically crazy, not like the people I've been living with for the past five years. :)
Speaking of crazy, I found the greatest little graphic novel lying on the coffee table. It's called How Loathsome, and it explores San Francisco's queer and transgendered subculture. In between this, are a couple of little alternate stories involving victorian horror stories and ancient Japanese codes of honor (but not what you're thinking). The whole thing was beautiful, not in the art, but in the way it told a story about "forbidden" lifestyles without being preachy, hyperactive, or overly artsy. It struck me in the same sort of way The Matrix did, back before before they screwed it up with two dissapointing sequels. Go read the first few pages on Amazon. It's good stuff.
0 comments reply permalink
Hacks, Hubris, and Sexy Software
posted by chip on 2005-08-10 01:53:53
So in preparation for the upcoming October DDR tournament,
Marty made a random song selector for DDR. It was cobbled together from some scripts he found online, and considering the fact that he's a music major with (I'm guessing) no programming training whatsoever, he did a pretty good job. Of course, since I'm a perl programmer, I've got an enormous amount of
hubris, and I had to redo it properly. :) After several hours of hacking, I came up with
DDRng. Marty said, "sweet merciful crap that RNG ddr song generator is SEXY." I couldn't have said it better myself. :)
Also:
Marty: dude, i really hope that didn't take too long because you totally didn't have to do that for me.
Me: Hah. I didn't do it for you. I did it to see if I could. :)
Now, I know that makes me sound like kind of an asshole, but I didn't say that to be mean. If he'd asked, I would have gladly done it even if I didn't care for the idea, because Marty's a good friend of mine. But still, that's the truth. I didn't do it for him. Every so often, and I think everyone does this, you ask yourself, "Can I push myself beyond what I know I'm capable of?" It's these times that I put aside eating, showering, and the company of friends (a stretch, I know) to sit down and craft a masterful hack. Ok, maybe not eating. Maybe that's not entirely accurate. I was pretty sure I could make a random song selector. Watch out for the next version that'll really stretch my skills.
Sexy Software... I like that idea. In my mind, sexy software is software that involves the user in such a way that the user feels good about the experience. It's software that's easy to appreciate because it feels and works in a natural way. Apple makes sexy software. Google makes sexy web software. IBM makes software that's sexy on the inside. Microsoft would make sexy software if it didn't routinely vomit all over itself. (Drunken frat-girl software?) You can make open source software sexy for you, but your friend would probably make it sexy in a different way. The good news is both of you can have your way. :)
I think I'll try to make sexier software. :)
1 comment reply permalink
I'm no longer homeless...
posted by chip on 2005-08-08 20:27:15
... but I'm still a bum. :)
Since I wasn't sure what I was going to be doing in six months, I didn't get an apartment back in October like everyone else. I didn't even get one a month ago like Yan and Ed. I waited 'till the very last minute, knowing that there is never a shortage of roommate vacancies near the beginning of the semester. I went to see a place I found on cmi.classifieds, and just got word today that I got the place. I'm not saying I cut it close or anything, but my current lease ends in exactly one week. Now, not just anyone could pull this off. Of course, anyone can wait to the last minute, but it requires skill, finesse, and a keen eye to find the right moment to act. Kids, don't try this at home.
I am a professional procrastinator.
The place is pretty nice. Spacious, wood floors, basement, backyard, parking space, DSL, gas stove. I'm especially excited about the last one. Free of the tedium of burners that are slow to heat and slow to cool. If you do any cooking at all, gas is the way to go. The kitchen is nice and spacious, too. It's the perfect place for my long-procrastinated "How to Burn Food Without Really Trying."
The one roommate that I got to meet, Lauren, is pretty cool, too. I didn't get to meet the other roommate, she was at a conference at UC Berkeley. Oh, yeah, they're both grad students. In Entomology. That's the study of bugs. "So you'll only find bugs in the freezer sometimes," she says.
Also, the place is unfurnished, so I get to be creative with my living space (Read "all furniture made of computers and egg crates"). I'm thinking I'll forego the bed and get a Japanese-style futon. Or maybe I'll just put a matress on the floor.
In any case, it will be interesting. :)
2 comments reply permalink
SHF mode
posted by chip on 2005-08-07 22:39:39
So I just spent the last 5 minutes perusing
this before realizing it was written by
Eric S. Raymond. For those who don't know, ESR (as his name is often abbreviated) is one of the most well known hackers out there. And, no offense to anyone who thinks he's sexy, he's the last person I'd like to think about when trying to talk to a girl. Although knowing this, his mention of "simple-horny-fuck mode" makes a lot more sense now. I wonder if there's a .el for it in
Emacs...
Oh, god, there's a whole directory of ESR's Sex Tips... *shudder*.
0 comments reply permalink
Further hilarity of the semicolon joke
posted by chip on 2005-08-06 01:16:22
Ok, I explained the semicolon joke to Chrissy, and she understood it. Unfortunately, she still needs some practice. At the end of the conversation, this happened:
Chrissy: bye!@
Me: bye
Chrissy: hug ():
Me: Semicolon.
Chrissy: dammit
Ah. It's the joke that keeps on giving. Chrissy, please understand that I'm not laughing at you. The semicolon joke is like the pie-in-the-face gag of programming jokes. Overused, cheap, and always funny. Speaking of cheap gags, the Collegetown USA footage of the DDR tourney from waaaay back in February has been put online, thanks to my mad ripping skills. Enjoy.
0 comments reply permalink
Linux Software RAID vs LVM
posted by chip on 2005-08-06 00:07:49
So I'm adding the shiny new 250GB disk I just got to my storage system, and I'm pondering my options. Right now I've got my major storage in a LVM volume group spread across a 2.5GB partition and a 40GB disk. I could:
- Add the space to my existing LVM, adding 250GB. This is by far the easiest option. Add new PV, extend the volume group, resize_reiserfs, and done. Unfortunately, this means that if either of the three disks now housing this filesystem die, the whole storage unit is kaput. This is bad.
- Move the entire volume group to the new drive, and figure out something else to do with the 42.5GB that's leftover. This is the safest choice, since it leaves me with three distinct filesystems that won't destroy each other. Unfortunately, this leaves the burden of organization on me. And I'm a lazy hacker.
- Just use the 250GB as a separate drive. This is simple, too, but leaves the same organization problem as the second idea.
- Allocate 40GB on the 250GB disk, and do some RAID fun with the two 40GB spaces. The remaining 210GB becomes the main storage array.
Well, to save you all the suspense, I'm trying the last one. Namely, 10GB of that space is going to a striping volume, and the other 30GB is getting mirrored. Yes, this leaves me with three different areas, but I can justify it because each area has a different purpose. Now, both Linux Software RAID and LVM can do striping, and the question weighing on my mind is, of course, which is faster? My money's on SW RAID, but just to be fair, I'm going to try them both.
For the record, my two drives aren't quite equal. The 40GB drive is a WD400BB, and the 250GB drive is a WD2500JB. For those not familiar with WD's nomenclature, the BB means a 2MB cache P-ATA drive, and the JB means an 8MB cache P-ATA drive. The 250GB drive is some 13MB/sec faster than the 40GB, but I'm not really worried about this, since it's not under my control. The good news is that since both drives are recently manufactured by Western Digital, they have identical geometry except for the number of cylinders (255 heads, 63 sec/track). Read: No wasted space.
I'm using bonnie to test the filesystem performance, and reiserfs v3 for the filesystem. Here's bonnie for each individual disk:
/dev/hde:
Version 1.93a ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
yomiko 1G 96 99 35698 89 22316 35 598 99 48216 34 149.6 3
Latency 89332us 241ms 359ms 51873us 31759us 2187ms
Version 1.93a ------Sequential Create------ --------Random Create--------
yomiko -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 4393 94 4215 100 4400 97 3849 97
Latency 129ms 252us 3592us 8224us 38us 77153us
/dev/hdg:
Version 1.93a ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
yomiko 1G 96 99 35706 89 27330 43 575 97 60909 44 171.0 1
Latency 168ms 252ms 296ms 111ms 85123us 1818ms
Version 1.93a ------Sequential Create------ --------Random Create--------
yomiko -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 4566 98 4022 95 4431 98 3845 97
Latency 3710us 276us 105ms 21126us 41us 113ms
You can see that the 250GB is faster on reading, but not significantly faster at block writing. Both are writing around 35MB/sec.
Here's LVM in action:
Version 1.93a ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
yomiko 1G 97 99 36551 91 25812 39 594 98 50473 32 137.4 2
Latency 86314us 8271us 198ms 49072us 24209us 1479ms
Version 1.93a ------Sequential Create------ --------Random Create--------
yomiko -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 4532 98 4134 98 4430 97 3959 100
Latency 10976us 268us 26395us 37157us 39us 2872us
Not significantly faster. Block writes are less than a meg per second faster, and block reads seem to have taken the greater of two evils, and are going only slighly faster than /dev/hde.
Here's SW-RAID:
Version 1.93a ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
yomiko 1G 97 99 35409 89 32516 54 618 99 76858 65 135.1 2
Latency 90193us 286ms 330ms 43347us 23039us 1497ms
Version 1.93a ------Sequential Create------ --------Random Create--------
yomiko -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 4591 97 4227 99 4452 97 3967 99
Latency 30652us 268us 15176us 46875us 48us 3739us
Block writes are back down to around 35MB/sec. This is dissapointing, but look at the block reads. Close to 77MB/sec, greater than either drive individually.
So the winner is SW-RAID, but not by a lot. I really expected some better performance here, but I guess I'll have to deal with what I've got. For those interested, the lightly edited log of my endeavors is here.
Some things to note:
- Each drive was hooked up to its own channel, and was the only drive on each channel.
- Both of these drives are hooked up to a CMD649-based PCI IDE controller. My guess is that this isn't a spectacular chip, and it's probably fouling my efforts.
- In any case, the CPU usage was around 89-91% for writing. Some hdparm tweaking might help this.
- I used a stripe size of 4K for each run. Perhaps a different stripe size will yield better results.
And, of course, YMMV. :)
0 comments reply permalink
Datamonster Diving
posted by chip on 2005-08-05 16:59:36
A long time ago, I was frustrated by the lack of file transfer functionality in any AIM client I used (this was back when gaim didn't have it). So I made the
DATAMONSTER. It's a file upload CGI with a twist. Some simple heuristic analysis is done on the upload to determine a score of how much the datamonster "likes" the file. Things like compressibility, file type according to 'file', and size are used, the idea being that media files like JPEG and MPEG have low compressibility (since they almost always use some sort of compression internal to the codec) and will thus score highly. Score high enough, and you are rewarded with a link to a random file inside the datamonster. The idea is to encourage uploading by rewarding good uploads. I don't usually check it, since it's on a machine I don't use directly, and all the files are stored in an odd place. I just went through it, though, and I'd like to share with you some of the better stuff I've received.
- chibi sesshy.jpg
This was just cute. Also, I don't really have any idea who put these up, but for this one, I've got a pretty good guess. :)
- fluffy.jpg
Normally I hate pictures of pets with cute taglines, but I'm a sucker for the juxtaposition of "fluffy" with "destroyer of worlds".
- Whoops.gif
Hah. Don't you just love those crazy auto-ejecting floppy drives?
- Picture 101.jpg
This is one in a series of beach babe pictures that I can only assume these are from Wang, on account of his penchant for blondes. Thumbs up, Wang. :)
- Yuri.jpg
I laughed out loud at this one. Does that make me a bad person? (For those who don't know, "yuri" basically means "lesbian porn" in Japanese.)
And that's just a few of the images. Also, whoever keeps sending me pictures of this girl, please stop. One is plenty. Thank you.
1 comment reply permalink
Hair
posted by chip on 2005-08-05 01:36:33
Ok, so I think the last time I got a haircut was close to my birthday. For those who don't know, my birthday is February 1st. My hair is getting quite... long. Between dying it black, letting it get so long, and that curious smirk I love to use, I'm starting to look like
Steve Jobs circa 1984/pix/steve_jobs.jpg

(minus the bowtie). Here,
see for yourself/pix/chip_as_young_Steve_Jobs.jpg

.
I'll get a haircut eventually. In the meantime, it's not that bad. I'd like to think that the longer hair enhances my Antonio Banderas-ness, but that's just a Selma Hayek-filled fantasy that will never happen. :) What it does is make me look like a dirty, unkempt hippie/math major. Just ask Tyler. *rimshot*.
I've tweaked the techblue.css style a bit. The link borders should stomp all over each other a little less, now.
Anyway, sleepy-time. I've got a final tomorrow, then I'm done with Summer Session II (Revenge of Summer Session)!
2 comments reply permalink
Leap Seconds
posted by chip on 2005-08-04 18:55:07
ATTENTION! All of you programmers who failed to account for leap seconds in your program, and are now one of the supporting reasons for
removing leap seconds,
this is for you. At least several
freely available implementations of libc support 61 seconds per minute. Behold, from the
strftime(3) manual:
%S The second as a decimal number (range 00 to 61).
Really, people. It's not that freaking hard. Time isn't stored internally as a set of values for minutes, hours, etc. It's a single value that counts the number of seconds since Jan 1, 1970 (also known as the UNIX epoch). Unless you're re-inventing the wheel, there shouldn't be a problem. Now go and rewrite your programs correctly.
Politicians: Stop trying to fix problems that you know nothing about. I know that this will leave you sitting and twiddling your thumbs most of the time, but please, let the experts sort these things out.
Today's new theme, chaoticdesolator.css, comes to you from my buddy Marcin's blog. I always liked the design for its simplicity and subtlety, and for the fact that it's one of the cleanest xanga sites I've ever seen. Not that that's saying much. I mean, really. Look at this typical Xanga blog. Makes you motion sick, doesn't it? No, I'm not going to do a style-a-day. Mainly because I just ran out of cool sites to clone. :)
2 comments reply permalink