Greg’s Journal Archives
Page 7

Feb. 13, 2005 to March 1, 2005


< Previous ARCHIVES: Index Next >


ENTRIES ARE ARRANGED CHRONOLOGICALLY. BEGIN READING AT THE TOP.

A Live Journal mirror of this site can be found here, so now you can leave me your comments!


Sunday, Feb. 13, 2005
10:54 a.m.

When I said last time that this past week hadn't really been interesting, I should have made an exception for Friday: I finally had to do my two-minute story in front of the class in ASL. It shouldn't have been that bad. I could do it without looking at the paper, which is more than could be said for some of the other people in the class, but somehow I got so nervous about it that I was visibly shaking as I signed. At the end, Shirley said that she liked it, but I had no basis for comparison since I didn't understand most of the other stories going on.

Friday also marked my return to the weekly racquetball sessions. Vicki, Paul, Ben, and I played six games of doubles — so we each played on a team with everyone else twice — and I was on the losing side in all six. I figured I wouldn't be to great since I haven't played regularly in a year, but this was Ultimate Suckage far beyond any degradation I could have imagined. But afterwards we had vegetarian sushi in Erin's suite and talked for a while, so it was a pretty cool evening overall.

Yesterday Jeremy offered me an extra ticket he and Susannah had to see "The Real Thing" down at the Cleveland Play House. (They actually had two extra tickets, so we picked up Dan on the way and had a nice party of four.) It was an excellent show, although Dan was right in saying that sometimes it moved too quickly to think about it. The main character, Henry, had one long speech about his view of commitment in a relationship that both Dan and I agreed with, and then another one about working with words (he was a writer) that was perfect for a copy editor. The problem — since no one in a play can be without conflict — was that Henry was kind of annoying to talk to and he assumed that everyone else had the same view of commitment that he did. (Which got me wondering if everyone thinks I'm as annoying in real life as he was ie the play.) Definitely worth looking up the script for a second read or possible permanent purchase.

After the show, we dropped Dan off at the House and went to Eldred to see the end of the improv, which had its moments but still wasn't as good as they were last year. There was a song parody of the Catholic church — full of references to the sex abuse scandals — that everyone else thought was 600% hilarious but that I couldn't quite enjoy. Came home feeling like I needed to go to mass this morning.

Which, incidentally, is something I'm trying to do for Lent. Instead of giving up something physical, like chocolate or ice cream, I want to give up some of my time to certain other pursuits that need it. The two main ones are going to church every week and keeping up with my Nerds of Plexiglass traning. (I don't know if I mentioned that before: Vicki, Erin, Ben, and I are going to do a sprint triathlon in June. Nerds of Plexiglass is what we call our training process because we're not strong enough to be steel yet. Around the middle of March we're thinking about an upgrade to Nerds of Polyvinyl Chloride if we've made enough progress.) I was supposed to start the church thing today, but I woke up late enough to make the 11:00 mass impossible. I think there's one at 8 p.m. that I could still go to.

Wednesday, Feb. 16, 2005
11:26 p.m.

I didn't realize it had been so long since I posted anything, but since I got back from The Observer nice and early this week I might was well write something now.

This has been, in a word, a really weird week. Monday was warm, rainy, and windy. Tuesday was warm (50°) and sunny. Today it was cold and snowy. For the most part, I've been keeping up with my homework, at least; I turned in a completely complete AI assignment Tuesday for the first time in like three weeks.

Yesterday I took a last-minute story for The Observer and went to hear a Canadian journalist talk about how the rest of the world thinks about America. It was really interesting to hear what she said, even though a lot of it was the usual stuff about us being so powerful and acting unilaterally and not really caring about other countries. Which is essentially true. I made a tape of the whole lecture, plus as much Q-and-A that would fit on the tape. A few minutes after that I had to get up and leave anyway because it was time for AI.

I had gotten to the room a bit before the lecture started, and as I was wandering around waiting to see how the seating would work, someone came up to me and said hi. I didn't recognize who it was, so I just said "hi" back kind of abstractedly and kept wandering. Only later on, when she was sitting next to me and asked the speaker a question, did I recognize her as a potential new writer who was really interested in working for The Observer. Good way to get people interested in the news department: act like you don't know them.

In today's news, we had our first ASL quiz this morning. Nine little paragraphs signed by our professor and transcribed, with varying degrees of success, by us. I completely mutilated the first four (she showed us the answers at the end of class), but got the remaining five with reasonable accuracy. There seems to be a lot of vocab that I don't remember learning, or at least a lot of words that I don't recall the signs for.

Tomorrow looks like it's going to be massive amounts of French and AI reading, those two classes, and then it's off to Playhouse Square to see "Movin' Out," a musical based on Billy Joel songs. I stood in line a few weeks ago at one of the UPB ticket sales and got myself one before they sold out. Having not made any real plans, and not having a default person (i.e. girlfriend) to go with, I only bought one and probably screwed up the rest of the sales so that some unfortunate couple in line behind me had to pick between buying an odd ticket or not going at all. It's over!

Random Stuff #5
Thursday, Feb. 17, 2005, 1:55 a.m.

Being unfortunately still awake and unable to fall asleep, I somehow feel compelled to relate this story concering my run on a treadmill at Veale on Tuesday. For lack of a better title after about 15 seconds of thought, I'm going to call it

How Many K Could A Nerd Kid Count if a Nerd Kid Could Count K?

Like I said, I was running on the treadmill and being infinitely distracted by the little display that tells you how far you've gone, how far you've left to go, and how many calories and such you've expended in getting there. At one point, I remarked to myself that I had only "a K and a half" left to go — the "K" of course meaning "kilometer." It then occurred to me that this was a weird thing to say because usually, in computer science, "K" means "kilobyte."

Logical question: what if I took the K on the treadmill to mean kilobytes? Could I calculate my transfer speed (whatever that might mean in this situation) in bits per second? Well, I did as I was running, and here's how.

The treadmill told me I was running at a rate of 5 minutes and 33 seconds per kilometer, which I translated into 333 seconds per kilobyte. Reducing by 10 gives about 33 seconds per 100 bytes, which is 10/3 bytes per second, or 3.333.... Since there are eight bits in a byte, we now have (3 · 8) + (8 / 3) = 24 + 2.67 = 26.67 bits per second. Done.

Any CS major with his head on the right way notices that this is a pretty awful transfer rate, but any mathematician notices that I've made two estimations in my calculation that give an inexact final result. (The physicist also notices this, but calls the answer close enough anyway.) Namely, I assumed that one kilobyte was 1000 bytes when it's actually 1024, and then I decided that 333 was the same as 330. So I'm really having to transfer a lot more data in not much more time: my calculator gives a more exact rate of 24.60 bps.

Thursday, Feb. 17, 2005
4:52 p.m.

To make up for the excessive nerdiness of the previous Random Stuff entry — especially for those of you who run away screaming when someone says "program" — I'll counter with a humorous tale involving the liberal arts.

This morning I was trying to catch up on my French homework by reading Victor Hugo's "Notre Dame de Paris." I emphasize "trying" because the chapter was one I'd read before in a different class and because it contains absolutely nothing that relates to the story line. I was reading along — quelques exemples capitaux... creusés en ogive... grandeur de l'ensemble... puissante et féconde... — when it occured to me that I hadn't come across a period in some time. So I went back to the beginning of the paragraph and started counting words, and got to (I am not making this up) a count of 212 before the first full stop appeared! The so-called sentence was more than half a page long!

Hugo kind of cheated a bit, though, by linking several complete thoughts together by commas and linking those by semicolons, so a good copy editor could easily hack the thing up into six or eight regular sentences. For fun, here's the best translation I can give quickly of what he wrote. It's describing the features of the facade of the Notre Dame cathedral in Paris; all punctuation below is in the original location.

And first, to only cite a few captial examples, there are, certainly, few more beautiful arhitectural examples than this facade where, successively and simultaneously, the three ogive-shaped chiseled portals, the embroidered and jagged string of 28 royal niches, the immense central rose window flanked by its two side windows like a priest by the deacon and the subdeacon, the high and frail gallery of flower-like arcades that carries a heavy platform on its fine columns, finally the two black and massive towers with their slate canopies, are harmonious parts of a magnificent whole, superposed in five gigantic levels, developing in front of your eye, en masse and without trouble, with their innumerable details in statues, sculpture, and stonework, powerfully joined to the ensemble's quiet grandeur; vast symphony in stone, to put it thus; collosal work of a man and of a people, all one and complex like the Iliad and the Romanceros of which it is a sister; prodigious product of the contribution of all the forces of an epoque, where the fantasy of the worker disciplined by the genius of the artist can be seen projecting on each stone in a hundred ways; a sort of human creation, in a word, powerful and fecund like the divine creation of which it seems to have revealed the double character: variety, eternity.

This should give you an idea of why I went into class today with less than half of my reading done.

Friday, Feb. 18, 2005
7:01 p.m.

A pretty good day today — the last 24 hours have been, in fact, rather nice and work-free. As mentioned previously, I went to see "Movin' Out," a Billy Joel dance/musical, at Playhouse Square last night. I came back from dinner at Fribley around 6:30 and left for the bus stop around 7:00, figuring that I could get the 7:14 and make it to the theatre about 20 minutes before the 8:00 show. The flaw in this excellent flow of logic, of course, is that the show was actually at 7:30! I discovered this about mid-way down the elephant stairs when I wanted to make sure I had my ticket with me. A quick run from Fribley to Euclid got me to the bus stop rather quickly, but not in time to get anything earlier than the 7:14; I made it to my seat just as the lights were going down and the show was starting.

When I got back here, around 10:30, I couldn't force myself to do anything productive... not even research the company for my job interview today. I ended up going "to bed" at 11:30, but I spent almost an hour reading "Cryptonomicon" before I actually turned off the light.

And now I get to tell the job interview story! Tuesday night I got an e-mail from the career center saying that National Instruments found my (last year's) resume through their office and was asking me to interview with them on Friday. And please sign up no later than Wednesday noon. (Recall that this was already on Tuesday night.) The software engineering job they were advertising was full time (i.e. non-internship) and was located in Austin, Texas, so I estimated my chances of taking it and moving out there at approximately one in Avogadro's number. But I signed up anyway without thinking.

And it didn't actually go too badly. Jeremy said it was because I wasn't nervous about getting the job or not, and that's probably true. The only part that didn't go smoothly was when I had to write some C++ code on the spot, but even that I handled better than I did HP's coding question at that interview two years ago. NI is supposed to let me know within about four weeks whether or not they want to fly me out to Austin for All-Day Scary Round 2 of Interviews of Death (!), so hopefully I'll get into a grad school or two by then and not have to.

Sunday, Feb. 20, 2005
1:05 p.m.

By popular demand, I have joined up with one of the less evil of the Evil Content-Manager Empires and have gotten myself a Live Journal site. I don't have any intention of abandoning this page; a few of my friends have Live Journals that are "friends-only," so I really joined in order to read their stuff because they're cool people. It's also been correctly pointed out to me that people can leave comments on Live Journal, a functionality that's probably going to be lacking here until the end of time because I will never write the code to do it. So I'm going to keep posting here like normal, but I'm also going to be echoing the posts to the Live Journal site — go there if you want to leave a comment.

Yesterday was not a productive day, but it was so much fun that I don't really care. I did do a little bit of work on my web server for networks, but the overall progress made was rather negligible when compared to the size of the whole assignment. (For example, it doesn't actually serve requests yet, it just prints out that it got one and then quits.) Around 2:30 Jessica and I went down to Tower City to join Nicole and Mark for lunch at Panera's, and then I ran over to the public library and got a few books.

Vicki came up around 7:00 for dinner (thanks!) and some "Whose Line" episodes, and then we joined the rest of the crew out in the common room for the end of "The Green Mile," Pit, and then Saturday Night Live. Vicki left when that was over, but Nicole, Mark, and I spent like an hour on the couch laughing and mimicing some other SNL skit. Apparently there was one at some point with a parrot singing "Strangers in the night, dancing" on someone's shoulder, and Nicole usually doesn't let a week go by that she doesn't do that to Mark. I, of course, had to counter with "People who know each other in the day, sleeping."

I eventually went to bed at about 2:45, after having laughed almost non-stop from about 8:00 on. Most enjoyable!

Today gets to be Homework Catch-Up Day, which will not be so enjoyable. I did manage to wake up in time for 11:00 mass, so we're at least getting started on the right track. On the minus side, I managed to forget about the weekly AI homework (due Tuesday) until Jessica mentioned something about it around 2:30 last night. We'll see what I can get through by bedtime tonight.

Tuesday, Feb. 22, 2005
12:45 a.m.

Why does AI homework have to take so long, especially when I have so many other things I need/want to do? I have almost four out of eight regular questions left to do, plus the programming part that's always ridiculously time-consuming. Due date? Tomorrow at 1:15.

What I really want to know is why I always manage to save this crap for the last minute. Aren't these weekly assignments, implying that I theoretically get seven days to do them? This semester is so much easier workload-wise than last, but I don't feel like I have any additional free time over last fall....

Tuesday, Feb. 22, 2005
11:02 p.m.

'Tis official: the next two weeks are going to be nightmarishly mind-numbing and antagonizingly busy in every way possible, as I have just assembled a rough to-do list and found it entirely too long.

Part of this, I should say, is my fault: I've known since the end of November that I have to write a complete packet of questions for trivia club by March 1, but I just got around starting it today. The assignment is to write 30 toss-up and 30 bonus questions (we always abbreviate this as "30/30" and read it "30 and 30," by the way) within a certain distribution of subjects; I put about 100 minutes into it this evening and ended up doing 2/3. At this rate (20 minutes per part) I can look forward to a total of 1200 minutes = 20 hours of question writing by the end of the month. We are not amused.

I had just written out a description of everything else I have to do before spring break, but it sounded a lot like maniacal ranting crossed with please-pity-me whining. So I think I'll discretely sum everything up in a very professional table form instead.

Task Due Date Completion Time
in Hours
Extra AI homework (unusual) Thursday 2
French reading (normal) Thursday 2
ASL quiz (midterms) Friday 1
Networks homework (unusual) Friday 4
Web server (unusual) next Monday >15
AI exam (midterms) next Tuesday 4
French reading (normal) next Tuesday 2
Trivia packet (unusual) next Tuesday 20
Tau Beta Pi meeting (unusual) next Tuesday 2
Cryptology midterm (midterm) next Wednesday 4
French take-home test (midterms) next Thursday 5?
Cryptology take-home (midterms) next Friday 1
Observer work (normal) various 28

There are probably things I'm missing from here, but the total as marked already comes to 90 hours. Add 24 for class (8 days) and 63 for sleeping (7 hours a night), and we arrive at 177 hours of time already spoken for in the next 10 days = 240 hours. Numbers aren't supposed to scare me because I'm an engineer, but I wither at the thought of having 74% of the next two weeks already blocked out with scheduled activities.

All right — the table turned into please-pity-me whining as well, so feel free to ignore it if you want to. I know you Case people probably are facing similar and possibly worse situations. Good luck, everyone, and we'll see how we're all doing on March 4!

Thursday, Feb. 24, 2005
10:06 a.m.

One of the Suitemates hath usurped the shower, so instead of getting on with my routine of the day I'm going to take a quick break and write a post intead. Not that I've done a whole lot to be taking a break from, unless you count yesterday, but the shower will hopefully be vacant before I waste too much time.

Yesterday, after two or three weeks of trying to get up on time, I finally managed to wake up at 6:30 to get to Veale by 7:30 to go swimming with Veale. It wasn't as hard as I'd expected: I ended up swimming with my head out of the water (for previously-described reasons since I didn't have goggles), but I somehow managed to cover what Vicki said was 1000 meters in less than 40 minutes. (The clock I was using for time turned out to be broken, but the big minute-timing clocks at the side of the pool showed me I was making about 25 meters per 50 to 55 seconds.) The swim for the triathlon in June is 750 meters, so at least I know I physically can do it — now it's just a matter of seeing if I can do it faster.

Class, class, and more class brought us to the Observer office at 12:30, which occupied me in the usual manner (news editor and copy editor stuff) for just over 12 hours. I finally found the name, artist, and lyrics I was looking for in my entry of Oct. 29, 2004 (about two-thirds of the way down Page 1)! The song was playing again at the office, and Laura and either Rick or Bill were talking about the group that played it, so I was naturally able to ask the name. Some quick searching when I got home confirms that the song was "You Get What You Give" by the New Radicals. What held me up in October was that I was searching for the line "I've got the music in me" when it's actually "You've got the music in you." I don't know a thing else about the group or their other songs, but this seems to be a pretty nice site about them if you're interested.

I don't hear the shower going any more, so I think I'll try to make a mad dash for the bathroom now. After that, we've got a nice long programme of class, homework, studying, and trivia writing for the rest of the day!

Sunday, Feb. 27, 2005
10:40 p.m.

More catching up to do! The wretched web server project is still invading my life, so I may not get to everything just now, but I'll see what I can do.

Major highlights of the week seem to be good news and bad news coming in pairs. I got an e-mail saying I was rejected for that National Instruments job in Austin, Texas, but then I got an e-mail from Carnegie Mellon saying that I got into their grad school for a master's in language technologies in the CS school. They don't offer any financial aid, and the program's at least as expensive as Case is, but at least I have a possibility of life after graduation now.

Second pair. Bad news: my analysis of this week that I did on Tuesday forgot to take into account a networks midterm on Wednesday and the fact that I had to go home yesterday to do my taxes. Good news: the web server is chugging along more or less in a state of progress, it doesn't have to be in until midnight tomorrow, and the French exam doesn't have to be in until Friday. (And they say schedule slip is a bad thing!)

Being home for a bit yesterday was also quite nice. It was actually the first time I'd been home all semester (that's been seven weeks so far), so my mom was really excited to see me. She made my favorite dinner ever: chicken parmesan with French bread, and she even threw in a bottle of wine and some petits choux for dessert! On the tax angle, it works out that the IRS and the State of Ohio owe me a good chunk of refund money this year.

But the news of the moment is still the partial non-functioning of my web server. I can serve text just fine, but it somehow screws up the tranfering of even the smallest images. The reason for this continues to elude me, even after both Eric and Jessica fed me some useful pointers — they at least helped clean up the code, but the image problem remains. In a last-minute attempt to turn in a complete assignment, I offer the relevant code fragment to the general journal-reading public:

	for(int j=0; j <= ((fininfo.st_size + 1) / 1024); j++)
	{
		char* packet;
		if(j == (fininfo.st_size / 1024))
		{
			packet = new char[(fininfo.st_size % 1024) + 1];
			read(fin, (void*)packet, fininfo.st_size % 1024);
			packet[fininfo.st_size % 1024] = '\0';
		}
		else
		{
			packet = new char[1024];
			read(fin, (void*)packet, 1024);
		}			
		write(socket, packet, strlen(packet));
		delete packet;
	}

Here's what's going on. The code is working with file descriptor fin, which points to the content (HTML or image file or whatever) being served. It breaks the file up into full blocks of 1024 bytes (sent out by the code in the else part), and then whatever's left over (i.e. the last packet) gets sent out by the code in the if block. If you can spot anything wrong or shady with this, send me some e-mail or leave me a Live Journal comment.

Monday, Feb. 28, 2005
2:14 a.m.

Jessica is the queen of coding!

As you'll note by the time, it is quite late at night... especially for someone who wants to get up at 6:30 the next morning. I was still awake in bed after trying to fall asleep for a few hours, and when I ran out of things to do I got up and went over to my computer to have another go at the recalcitrant web server of death. Jessica noticed I was awake (un-idle on Instant Messenger, actually, which equates to the same thing) and volunteered her superior coding knowledge.

Within two minutes we had the thing fixed.

	for(int j=0; j <= ((fininfo.st_size) / 1024); j++)
	{
		char* packet;
		if(j == (fininfo.st_size / 1024))
		{
			writesize = (fininfo.st_size % 1024); 
			packet = new char[(fininfo.st_size % 1024)];
			read(fin, (void*)packet, fininfo.st_size % 1024);
		}
		else
		{
			writesize = 1024;
			packet = new char[1024];
			read(fin, (void*)packet, 1024);
		}			
		write(socket, packet, writesize);
		delete packet;
	}

The key is that the strlen function I was using previously will, naturally, return the number of bytes it encounters in its argument string before it hits a null terminator. An image file, not being a real string, may have null terminators scattered pell-mell (this is a French word, incidentally) all over it. So if I want to transfer a 1-KB of image "text," and the equivalent of a null terminator shows up at byte 37, my previous bit of code was telling the system to only send the first 36 bytes to the socket.

And so now I can go to sleep like a good little kid, singing the praises of QS and her over-the-top C++ skills. Good night!

Tuesday, March 1, 2005
5:15 p.m.

Just getting to the scary part of the week now. It's kind of like a network router between a fast link and a slow one: assigments are being loaded into the queue faster than I can service them and send them away. My elementary knowledge of networks tells me that the queuing delay will increase to infinity if this goes on long enough, so it looks like my French paper or crypto take-home will be out of luck. The web server, at least, is finished off, tested, and sent in for grading.

I had my AI midterm this afternoon, which didn't go too badly. I got hung up on the stimulus-response behavior for a mechanical ant that was supposed to follow a pheromone trail off to infinity. The answer I put down was absolutely wrong, but Prof. Branicky was standing near me waiting to collect the exams, so I gave up and went to French class. By the time I had walked from Clapp to Euclid the correct answer was slapping me in the brain saying "Of course! How easy!" I skipped the Harlan Ellison lecture I really wanted to go to after French class in order to gain the extra time for studying and trivia writing, but I can't escape from a Tau Beta Pi meeting tonight that no one else is going to show up for and that's going to last somewhere between two and three decades. It needs to be Friday after 5 p.m. already!

This just in! I was about to save and close the text editor when the phone rang and I was informed that I got into the Reporting and Writing program at Northwestern! It's so strange that in a week when the academic side of things is spiralling out of control there would be so much other good news.

< Previous ARCHIVES: Index Next >