Lindsey Kuper (lindseykuper) wrote,
Lindsey Kuper
lindseykuper

swapcontext(&bloomington, &ithaca);

Three weeks ago, I did a potentially insane thing. I moved to an apartment I'd rented sight unseen in a town where I'd never been and where the closest person I knew was a four-hour drive away. Then I immediately started a demanding new job, and at the same time began taking an accelerated, semester's-worth-of-material-packed-into-six-weeks course that I didn't feel particularly prepared to take. Alex oniugnip feared for my sanity, and I did, too. I'm tough, but I'm not indestructible, and this particular combination of actions had every right to lead to disaster.

It hasn't. In fact, it's been great. It's been kicking my ass, but in a good way; I can't believe how much I'm learning. Yesterday I turned in the second assignment for the course, which was to implement a user-level cooperative thread library using the POSIX context functions. I'm not going to say my implementation is particularly good, but it seems to work! And I made it myself!

Before this, the last time I took an OS course or wrote C was eight years ago as a terrified and clueless undergrad. Back then, I didn't ask questions much, because I was afraid of being found out as an impostor who didn't know anything. For some reason, it didn't occur to me that it was fine to not know anything because, after all, I was there to learn, not to prove my knowledge. So I didn't ask questions and, as one might expect, didn't really learn a goddamn thing. I barely knew what my own code did.

Alex and I often talk about how if only we could go back and do our undergrad degrees again, we would totally destroy them. That was a large part of my motivation in wanting to take an undergrad OS course this summer and paying no small amount for it out of pocket. I wanted to see if that was really true. Well, I wouldn't say I'm wreaking total destruction! on CS 4410, but I'm more than keeping up. If I don't understand something, I actively address my lack of understanding by asking a buttload of questions, and I never, ever, ever, ever, ever write a line of code I don't understand. I can't believe I ever thought that was acceptable.

Tags: cs4410, programming
Subscribe

  • The Rust object system struggles to its feet (plus, a little brainteaser)

    When I last wrote about my work on Rust a month ago, I had just finished implementing some very basic support for extending Rust objects with new…

  • Redexing

    For the last two weeks at work, my little PLT Redex model of Rust has been taking shape. It's been a lot of fun. I started with lambda calculus,…

  • My first month at Mozilla

    As it turns out, I picked an interesting month to start working at Mozilla. On Tuesday of my second week, Firefox 4 launched, followed by the…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 8 comments