After a month of annotating books, a week of outlining, and two solid days of writing, I am finally free of the Babbage paper. I proudly laid it on the front desk before my history class this afternoon and breathed my first breath as a free man.
I have temporarily posted it here. I took it down.
I found plucking the hundreds of sticky tabs like chicken feathers strangely therapeutic. Mel suggested that I leave them in for whomever gets the books next. It would have been nice if someone had done that for me.
You may think I have had my fill of Babbage, but working on that paper has left me with a burning desire to see the working Difference Engines at London Science Museum.
I have found that my papers are usually about two and a half times as long as the outline that I used to write them. I finished the Babbage outline this afternoon. It is 15 pages long. I do not know how I will manage to limit the paper itself to 16-20 pages.
While I ponder that, please enjoy this latest list o' links:
Why is e^(i * pi) = -1? – This is perhaps the third most famous equation in mathematics, behind the Pythagorean Theorem and circumference = pi * diameter. It is definitely the most interesting in that it links three of the most important mathematical constants in one simple equation. Marc used to wear a tshirt with the equation printed on the back.
A Coder in Courierland – Back before I came to Purdue, I joked about skipping college to become a canoe guide. The guy in the article was not joking about quitting his programming job to become a bicycle courier.
Or: How I Learned to Stop Worrying and Love the Research Project
The "dead" in "dead week" is commonly thought to refer to the university-mandated lack of tests during the week before finals. I think it refers to the state of the students during that week.
I have spent most of my time on the Big Projects O' the Semester: the history term paper and the research project. I have diligently continued reading, annotating, and writing my outline for the former. It is slow going. I can program for an entire afternoon and evening, but my writing suffers after only about two hours. I need to finish the outline tomorrow and type the paper on Wednesday and Thursday. The hardest part will be compressing my 11 or 12 page outline into a 16 page paper.
My time on the research project ended at 6:00 this afternoon. Chris, Lee, and I gave our final presentation to a "panel" consisting of a counselor, two professors, our sponsor, and few other students. The talk went wonderfully, but we had a bumpy road leading up to it.
I wrote the parser for our language right around spring break and made some modifications over the next week or two. I then wrote a long paper on the motivation behind the language, its syntax, and the research questions prompted by the design. The following is the paper abstract:
We present the design and implementation of a new language for creating two-dimensional vector graphics on the computer. The language consists of control structures reminiscent of a high-level general-purpose language as well as numerous simple features for easily creating, transforming, and drawing graphics. It implements a very simple method for constraint-based drawing using named fields.
I left it to Chris and Lee to add the logic needed to turn the parser into an interpreter while I was writing. That did not happen quite as fast as I had hoped. Really, it did not happen at all, and on that Wednesday I panicked. Our language did not do anything and we had a week and a half left in the semester.
We met on Thursday to figure out what we needed to do to get the language running. It was not as bad as I had feared the day before: Chris had most of the execution tree classes made and had also set up a CVS repository to allow all three of us to work concurrently. Ironically, the undergraduate research administrator had dropped a bomb on us a few hours earlier by announcing we had to give a presentation on Monday (today). That moved our "delivery date" back by four days. Because I had written the paper, I agreed to make the presentation while Chris and Lee once again took over the programming.
I finished the presentation that night and made some programming contributions on Friday and Saturday between bouts of outlining for the history paper. Chris and Lee made some progress as well, but we still did not have anything working on Sunday. We had agreed to get together that evening go over the presentation. After we did that we drove over to one of the CS computer labs intent on banging out an interpreter.
The lab was filled with freshmen building an IRC client for the introductory C/C++ class. It brought back strong memories of my freshman year. At one point one of the students asked us if we were "upper-level CS students". I had to think before I proudly replied, "yup." I had not thought of myself as an upperclassman until that point. The student then asked us if he could hire us to program his client. We declined the offer.
The three of us took over the back row and started programming. Chris made an interesting visitor pattern visitor that I used to build the interpreter while Lee put together the drawing engine. We made a lot of progress after several hours of work, but we finally had to admit it was a lost cause. There was no way that we could have a quality demo by 5:40 the next day and live to present it.
It might have been a lost cause, but it did not matter in the end. I removed the demo section from the presentation and replaced it with language samples and mocked-up pictures. To my surprise, Chris worked all day today and got quite a bit of the interpreter finished. When the panel asked about a demo, we were able to point to the working parser, our expression trees, and a "crashy" interpreter. They were looking for tangible progress over the course of the semester and we certainly delivered that.
Our presentation went off without a hook. Lee talked about the overall thinking behind the language, I went through the language samples, and Chris talked about the research questions and future work. We were sure to note that Chris and Lee both plan to continue working on the language next semester. It will not take much for them to finish the interpreter and start working on some of the more research-ey aspects of the project.
I arrived early enough to see the two presentations that preceded ours. I had wanted to see Marc's presentation, but I missed it by five minutes. The first student I did see had done some networking programming for a distance education setup. His part of the project worked, but he got torn apart because he focused too much on the unfinished graphical interface that he had no control over. The next student was working on detecting phishing scams. His presentation exhaustively defined phishing and the previous work done to combat it. On his last slide, he sheepishly admitted that his project failed completely and he had nothing to show for his work. He had not even written a paper. I admire him for being able to give a presentation over a failed project, but he definitely should have had something to show for a semester of work.
Comedians love following acts that bomb, and I cannot help thinking that those two presentations helped ours.
Our project sponsor seemed impressed after we finished. The panelists seemed... indifferent, but I think that is because they had to sit through three hours of undergraduate research presentations. I would not wish that on anyone.
Finishing the research project removed one monkey from my back, leaving the history paper, a small math assignment, and finals clinging on.
You can find a short description of each of the undergraduate research projects and their presentations here.
I met my daily reading quotas since switching topics on the history term paper. I finished reading and annotating my primary source yesterday.
That is about 225 sticky tabs marking important passages in that 276-page book. I wrote a little note on each of them explaining what is important about that particular sentence or paragraph.
I also got a fourth source from a hidden back shelf of the mathematics library: Babbage's own Passages from the Life of a Philosopher. It is a tattered old tome containing 36 chapters of humorous anecdotes and philosophy. All the other books quote from it, and so will I. The title page says it was published in 1864. It looks like someone put in a poor effort of rebinding it since then, but I would not be at all surprised if the pages are really that old. They are brittle, yellowed and falling out in places. It is an interesting feeling to hold a book from the same time period as the very person I am writing about.
I dunno if you've ever heard of a googlewhack. It's a pair of dictionary words that, when entered into the google search engine, produce one unique result instead of, say, 2 billion. Anyway, I had found one, with the glorious phrase "extrasolar shenanigan", and just as I'd started showing this off to my fellow sad people with too much time to kill in front of computers, your weblog has appeared. If you have used the word "extrasolar" or "shenanigan" in the past few days, congratulations; you just stole my googlewhack.
No hard feelings. Just thought I'd let you know.
Ironically, I am nowhere near the top in a search for my own name.
How do I feel about this different audience? I am especially pleased that people are finding my graph maker useful. That is why I released it to the public domain; I was hoping people would find it, and I wanted them to feel free to use it. It would have made no sense to post such a simple script and say, "This is mine! Hands off!" I like thinking that perhaps I made the internet a tiny bit more useful for someone. I feel the same way about the Facebook and Illustrator posts. I hope to write more how-to and informative posts in the future.
This is a placeholder for the post I plan to write about the events surrounding Charlie's show last night.
It was the best evening I have had in a long time.
But for now, I need to read for my term paper. Check back here in the next day or two. Until then, enjoy the pictures.
The café where Charlie chose to play had great ambiance but a terrible location. It squatted in a nondescript strip mall between a furniture store and a tanning parlor. The inside was filled with dark wood furniture and pink armchairs with a few tables scattered about. A shelf on the far wall was stacked high with antiques. A magazine rack containing WWII-era National Geographics leaned against the side wall.
I invited Jennifer to the show. We joined two of her friends for dinner beforehand. Because we were in the neighborhood and had a little time to spare after eating, I made a quick stop at the sporting goods store to buy some new lifting gloves. We arrived at the coffeehouse just as Charlie began his second song.
The audience was slightly less top-heavy with old high school acquaintances than the previoustwo shows Charlie played. Jennifer, Joe, a girl named Andrea who Michael brought, and some sorority girls who floated around made the group a little more diverse. I was pleased that Jennifer even knew a handful of people from her biology classes.
Charlie played a good mix of staples and new songs, originals and covers. It was a good show. Jennifer and I sat at a table near the back of the audience. I told her some stories about Charlie's old Jeep named Gunther and the guitar cabal I orbited in high school. At one point a euchregame broke out in front of us. Jennifer joined while I watched. I have learned how to play at least three times, but for some reason I have not retained the knowledge between games.
The manager, a nice Armenian fellow, urged Charlie to continue playing despite reaching the end of his time. He belted out a few more songs, and by the time the second card game finished, Charlie was strumming his last few chords. Those of us who remained hung out and chatted while Charlie packed up and ate a quick sandwich. While everyone talked, I was flipping through an old Scientific American from 1983. I came across an ad for a TRS-80 Model 4, a classic early personal computer. I asked the manager if I could take the ad with me. He carefully took the magazine and inspected both sides of the page. Satisfied, he went behind the counter and retrieved a curved wallpaper knife and a lined cutting board. With a surgeon's care, he sliced along the binding and handed me the ad.
The group migrated to the Hookah Bar after the show. Jennifer, sadly, could not join us because she had a paper to write. I had a phenomenally good second dinner of lamb flank and rice while the rest of the group shared the hookahs. Because I am 21, I can write about the unique drink I ordered with my dinner: sake and orange juice. Good stuff.
The third and final stop that evening was Michael and Stuart's apartment. Charlie's guitar rotated among those of us who could play. Much undifferentiated hilarity occurred, and Stu played with fire. I went home around 4, which sounds late but is really only two hours past when I have normally been going to bed.
The next day I awoke to my cell phone ringing. It was Charlie inviting me to join the rest of the previous night's group for breakfast. Pancakes and eggs... every morning should have such good food. After eating, the four of us who go to Purdue gave Charlie and Patrick— another former classmate who came up with Charlie to see the show— a tour of the campus. We walked under the clocktower; through both malls; around the union; down into the buried undergraduate library (for some odd reason); and finally up to the circular conference room at the top of Beering (it was unlocked, to our amazement). We enjoyed the view for a while then returned to the cars and said goodbye to Charlie until the next show.
2003 was a busy year. I put this poster together after reading my quota in the new history sources. It took a bit longer than 2002's because I had more pictures and events. I also had to mess around with the different resolutions from four different cameras: my old Kodak, my Olympus, my Dad's camera, and couple from Eric's camera that he sent me.
The events on this one are easier to figure out, so I am not giving out extra credit.
I was lying in bed just now, couch cushion on my stomach supporting the book I have been diligently reading for the history term paper, when I had an epiphany. It was not a good epiphany. No lightbulb over my head or angelic choir descending from the heavens; just the realization that I had been reading this book for a week and understanding less and less with each passing chapter. Early on it was interesting, but lately I have been hitting phrases like, "...[T]he stepped vee pulleys between the bearings are used as a feed drive for the cross slide. This was effected by a lead screw rotated by worm and wheel from the pulley-driven layshaft."
Vee pulleys? Cross slide? Layshaft?
The epiphany was this: I realized that reading further would not make the book any more clear. How could I expect to write a coherent term paper on a subject I have no experience with using a source I do not understand? I could research all the technical jargon peppered throughout the book, but that is hardly the point of a history paper.
And so I am switching subjects, returning to the womb of computer science by writing a paper on Charles Babbage. It fits the time frame of the class, it is closer to my area of expertise, and I still have three weeks to do it. That is a week longer than I had for Kepler, which means it will be only slightly less painful. I will exchange the machine tool books for biographies tomorrow.
Several people have noted that I have printed very few— less than a dozen— of the literally thousands of pictures I have taken in my more than four years of owning a digital camera. I wanted to rectify that problem in a unique way with something other than a stack of four by six prints. I wanted posters. Three of them, one for each of the folders in which I have kept pictures from 2002, 2003, and 2004. I made the 2002 poster tonight. It contains pictures from the latter half of my senior year of high school and my first semester here at Purdue.
The full-resolution picture is 16 by 30 inches at 300 DPI. I plan to print it on the vinyl I use for my drawing posters.
If I have known you for that long, chances are you are on it somewhere. Extra credit if you can name more than ten events.
After a winter that seemed to last five years, the weather is finally getting nicer. The recent string of sunny, 70-plus degree days has allowed me to leave the dorm in short sleeves. Every time I open the door into the bright outdoors, I unthinkingly reach for my sunglasses in the inside pocket of the coat that I am not wearing. I have had to return to the room for my glasses every. single. time I go to class.
My bike lock broke about two weeks before spring break. It was a nice cylindrical combination lock with easy-to-turn rings that allowed me to unlock it while wearing gloves. The shaft that went into the locking mechanism snapped off during what I would imagine was an especially forceful drop onto the bike rack. I bought a replacement over spring break— on the first of those 70-plus days— planning to bring it back with me at the end of the week. I put at my place so I would remember it. I forgot. I have continued using the old lock to make it look like my bike is locked up. No one has stolen it yet.
I must have dropped one of my lifting gloves while riding my bike to the gym last Friday. I tried to put them on, but found only one in my pocket. I ignored Michael and Jason when they joked about my callous-free "girly hands". I bought some cheap gloves from the gym before lifting with them this evening. The flimsy leather and uncomfortable stitching did not compare to my well-used padded and contoured pair. I wore the new gloves for only a few exercises and returned them right after we finished. The bored blonde girl at the front desk, whom I had bought the gloves from not an hour earlier, looked at me funny and went to the back room to get her manager. They squinted at the receipt and a tattered blue binder for a while. They talked in hushed tones, then with a sigh the manager said, "Well... go ahead and give him his money back."
Before this skydiver, it had been a while since I posted a notebook doodle. It is not for lack of material. The following is the backlog of drawings that I want to retrace or post here sometime in the future: a Roman emperor (to go with the centurion, I guess); a four-armed, knife-wielding demon; a puritan preacher complete with a long black coat, Bible, and a buckle on his hat; and a bodybuilder named Bob (who does not have lifting gloves either). My muse is certainly a strange one.
The dorm's laundry room is infested with short-stealing gnomes. I lost my shiny blue pajama shorts while washing my clothes over the weekend. I have worn another pair of shorts to bed since then, but its waist has lost its elasticity and the string used to tighten the waist has fallen out. I am afraid I will wake up in my normal morning daze and fall flat on my face because the shorts have fallen around my ankles overnight.
I really struggled with what to do with it. I felt it is a decent drawing, but I was not pleased with its numerous inaccuracies. He is wearing a bike helmet; the parachute bag looks too much like a normal backpack; he lacks the straps and cords that a normal skydiver would have; and he's wearing jeans, for goodness sake.
I am sure no one reading this cares about any of that, so here is the drawing without any further apologies:
John Bankley got a degree in CS from the University of Illinois and an MBA from Purdue in 2000. He recently founded Polyphorm Games, Indiana's first and only video game company. Granted, Indiana is an odd place to develop video games, but like me, John is a midwestern guy. The company has several million in venture capital, a few dozen empoloyees, and recently announced a distribution partnership with EA Games. They are developing several strong titles for the as-yet-unannounced PlayStation 3 and XBox 360. Indianapolis Business Journal recently published a story entitled, "Polyphorm Poised to Explode".
I first met John when he personally came to Purdue's Computer Roundtable job fair last semester. He wanted to hire an intern to work for the summer at his new company. I waited in line behind maybe four or five other students who had also heard through the grapevine about the small game company. When my turn came, I handed John my resumé and we talked for a while about my desire for a summer internship. That short conversation led to an on-site interview at the Polyphorm offices overlooking the White River downtown. I signed the employment contract over spring break. I start work on the Wednesday after finals.
Yes, it is an April Fool's joke, but there is a kernel of truth in that story. I did recently accept a summer job with a software development firm and I do start on the Wednesday after finals. The company does not make games (which is a good thing), but it made for a good story. Instead, it does contract software development and consulting, exactly what I want to do when I finally decide join The Real World. It is older, bigger, and closer to home than Polyphorm as I described it. I am really looking forward to finishing this crazy semester and starting work again.