tenlittlebullets: (party like it's 1789)
Ten Little Chances to be Free ([personal profile] tenlittlebullets) wrote2010-05-24 03:13 am

DONE

Only in the computer science department can you get away with turning in a whole project in English (well, the parts of it that aren't in Java) with the excuse "well, it was either translate it or debug it, if you prefer buggy and in French I can bring a translation of the Friday-night version to the soutenance so you can have a good laugh."

I'm not sure I am going to get away with it, but I figure as long as the code works, right?

And it does. Sort of. It's full of weird little glitches where my attempts at multi-threaded programming go "SPLORT," but this is a course on network programming and not on concurrency, and if the profs at the jury/soutenance are sane they will take into account the fact that everyone else in the course has learned that stuff officially and I had never touched Java threads until this course. And the program does what it's supposed to do, weird glitches aside. It's supposed to be a peer-to-peer client for a simple protocol that the prof wrote, so the only way to test it is to fire it up and add his office computer as a peer and connect to whoever else is testing theirs, and let me tell you. Mine may be buggy, but at 10:52 this evening I still saw people who were connected to themselves twice over or who kept suddenly disappearing without sending a "close" message and logging back on thirty seconds later.

Also, the five-page single-spaced report I wrote on it just got more and more informal and sarcastic as I went on. It started out as a beautiful model of bland formal bullshit, and by the end it was like "There's really not much to say about this section without uselessly regurgitating what was written in the assignment, so here are the main points: first of all, I put the blocking and non-blocking functions in the same while loop with a timeout on the socket, instead of in different threads, because I did not want to waste system resources and beat my head against the concurrency problems..." Only in stilted "non-native speaker with too much work and not enough sleep" French.

But yeah. It's done. The final version is much less of a clusterfuck than the final version of my database project. And now I'm freeeeeeee to enjoy... the two soutenances and the final exam and the translation of a medieval-French text that await me this week.

I kvetch, but really, I'm freeeeeeeeeeeee. Three out of these four things involve showing up, answering questions, and being done less than two hours later. I can so totally deal with that.

Edit: And, uh, now I think I'm going to bed, and hopefully this will be the last night in a while where I stay up until 4am.