failing like never before

8Jun/110

We Return for Finals

Finals week; that wonderful time of the season characterized by late nights, early mornings, hours of unbridled fun in the library, and most of all, incredible amounts of procrastination. I recently decided that every time I get too restless to study, I should get up and run a few miles. Monday turned out to be a particularly restless day, as I ended up running ten miles in the afternoon (two full perimeter runs (four miles each), and a truncated north-campus loop (two miles)). The end result was that I got very little work done and utterly failed at curing my restlessness, as each successive trek through the outside world only served to fuel my desire to be away from my studies. Obviously, I have since abandoned that failure of a studying technique.

But onto other more exciting news. My roommate started the process of moving out yesterday and so today I learned that he owned all the knives in our apartment. Which is why I made lunch today using nothing but a pair of chopsticks, and an ancient pocket knife. Presumably, for the next few days I will be eating a lot of instant noodles. Which is fine, because that was essentially my plan anyway.

I was wandering through the deluge of old data that I've accumulated on my disks and discovered a high school recording of me playing Gershwin's "I Got Rhythm" piano concerto, accompanied by the community orchestra (which was, to put it nicely, not a very good orchestra). I was initially mildly impressed by the solid skill and slight bravado with which I performed, but then immediately became extremely depressed when I realized how much my piano skills have atrophied over the last four years.

I bought a new phone recently (Nexus One) and have been discovering the joys afforded by the marvels of modern technology. Perhaps the most shocking of its features (when compared to my previous phone), is that it doesn't lock up every time the screen is touched. The Nexus One, being a rather older model, superceded by various other phones including the Nexus S, was relatively quite cheap (only $260 unlocked and without contract), compared to the ~$600 it might cost to buy a current, unlocked, contract-free, top-of-the-line model. Nevertheless, $260 is still $20 more then what I paid for the stolid and trustworthy IBM x60s that I'm currently typing away at. There's been a lot of complaints on the tubes (i.e. from guys like ESR) about how American cellular providers are racking up exorbitant profits by locking consumers into unfair contracts that span several years. But the fact of the matter is, modern smart phones are prohibitively expensive and the only way most Americans are even going to consider buying them, is if they don't have to realize the full price of the product up front. Thus contracts that appear to partially subsidize the cost of the phone, but in reality simply act as a payment plan. Its the American way; buy crap you don't really need with money you don't have right now.

But I digress. Yesterday night, we realized that the window in our room opens. This idea, which has apparently been gestating in our minds for the past year, only to hatch a few days before we move out, was still quite welcome as it served to ventilate our every-so stuffy room.

I'll be doing undie-run tonight, despite the looming presence of two more finals in the very near future. But I figure it'll be worth it since I've never gone and this will be my last chance. Amusingly enough, they have yet to change the picture for the undie-run Facebook group in several years. It remains a picture someone took my first quarter here, containing a streaming mass of humanity with my then-roommate in the middle, wearing nothing but his underwear and for some inexplicable reason, a tie.

And with that, I return to other acts of procrastination.

Filed under: Daily Log, School No Comments
15Jan/110

Fedora 14 64-bit Flash Problems

Its rather old news, but rather new to me. There is a known bug with the 64-bit Flash plugin when used in Fedora 14. When playing back certain Flash videos, the bug produces regular high-pitched beeping noises, as though there is some odd clipping issue. The culprit of the bug is a recent upgrade in glibc's memcpy(). I'm seeing a few hacks and patches being thrown around in the bug report, but for now, I'll probably just stick to running 32-bit Flash in a wrapper.

And again, here's the bug report.

Tagged as: , , , No Comments
7Jan/112

Mirror, Mirror, Who’s the Oldest of Them All?

I'll admit, that my Arch updates haven't exactly been occuring with religous regularity, but I never allowed more then a month at most to pass between full system updates on my Arch machines". But today, when I decided to do a full update I was surprised to find that all my packages were already update. Especially since I remember seeing the same message on the last update. Some digging through my log files revealed that the last time one of my system updates actually updated something, was in August of last year. Which means that four months have passed without my system actually being updated. Oh sure, I issued a system update command pretty regularly every few weeks, but no packages were ever updated.

This is Not Good.

Some more digging was required, and it was revealed that the mirror I've been using, mirror.cs.vt.edu/pub/ArchLinux, hasn't been synced to the Arch repository in a very (very) long time. This is also Not Good. But perhaps even more worrying then Virgina Tech's laxness, is my laxness and unawareness. How could I have not notice that various programs on my laptop were several versions old, or that my system upgrades were never doing anything!

So I am doing a massively huge upgrade right now, and I fully expect it to wreck serious hell on my system. But at least that's better then walking around completely oblivious to the various known security holes on my laptop.

Tagged as: , , , , 2 Comments
20Dec/100

Cheating on Slow-Start

I just saw this, Ben Strong's observation of how some websites are playing with TCP slow-start's initial window size to get better page load times. Its good to see that some people are pushing to get the protocol changed to allow for bigger initial window sizes. An initial window size of 3 is a little small given the amount of bandwidth now avaliable and the stronger reliability that you see in the tubes these days.

20Dec/100

Classess, and Stuff

Its been a distressingly long time since I last blogged, but thats OK because I'm the only one that cares. My numerous lamentations now aired out, we move onto the good stuff (or bad stuff, depending on your point of view...)

So this last quarter, I found my digital design course consuming an inordinate amount of time, and with each passing week the amount of time I spent in lab per day increased at a logarithmic rate (logarthmic, because there are only so many hours a person can spend in lab before there simply ceases to be hours in the day). The premise of the class was quite simple: spend the first few weeks going through cookie-cutter labs whilst learning the ins-and-outs of the tools and VHDL, and then spend the rest of the quarter builidng your own personal project on a FPGA. My group of three proposed to create a system where a user could drive an iRobot Create by mimicking driving motions in front of a camera, an idea perhaps less ambitious then other groups in the class but nonetheless quite daunting. Unlike Microsoft's super-amazing-funtastic-galactic-awesome Kinect, our system made no use of fancy infrared projectors. Instead, we simply required the user to wear blue gloves or grip a stick tipped in blue, and place their foot over a piece of green cloth. Take a look at our demo:

You'll notice also, that on the disply we drew solid bounding boxes over the blue and green objects in the frame.

This was done almost entirely on the FPGA and was written in VHDL, with only  communication over serial port handled by the PPC405 CPU. So yeah, it took a really long time.

22Oct/100

Me and Tex

Someone once told me that all the "cool kids" use Latex to write up all their technical documents. Due to my desperate desire to be part of the cool crowd, I immediately began reading through Latex tutorials. At the time, the only formal document I was working on was my resume, so I rewrote my resume in Latex, and because I wanted to have lots of fancy formatting, it took me a surprisingly long time to write it up. The end result was a resume that looked pretty decent, and one very annoyed college student who decided that Latex was far too aggravating to be used on a regular basis for such trivial things like lab reports or resumes. So for the longest time, my resume was the only document I used Latex for.

Now lets put the way-back machine in reverse and jump forward one year, to last week, when I was typing up my linguistics homework in VIM. We were working with sentence trees (think back to your automata/algorithms class, where you used a formal grammar to show that a string is an element of a language) and unfortunately, there is no good way to draw graphs, or much less trees, in plain ASCII text. Lucky me, Google-fu revealed that there are numerous Latex packages that will allow a writer to knock together some pretty spiffy graphs. Long story short, it took me a really (really (really (really))) long time to write up my linguistics homework using Tex. I was up till 4 AM, and most of that time was spent making sentence trees. Granted, I spent a pretty good chunk of time relearning Latex, learning how to use some crazy packages I found out in the Internet, and going "Ooooo! Look what I can do!"

sentence tree, from ling homework

Ooooh! Pretty tree!

The end results: the loveliest homework assignment I've ever turned in, and one tired college student.

Funny story, the next day, I wrote up my algorithms homework in Latex. This week, I wrote part of my circuits lab report and my new linguistics homework in Latex.

I run Linux almost exclusively and its often quite difficult for me to create nice looking documents with fancy charts, tables, and nicely notated equations, because quite frankly, Open Office just doesn't cut it when I need to make stuff look nice. Not only that, but I still haven't bothered to install Open Office on my laptop. The end result is that I write most of my lab reports in Microsoft Office on the school computers. Now I'll admit, I do bash on Microsoft on occasion, but I actually enjoy using Microsoft Office 2010. Office's new equation editor is simple to use and it creates really pretty looking equations, and the graphs now have nice aesthetically pleasing colors and shadows (unlike the old-school graphs). So really, there hasn't yet been a reason for me to seek out an alternative to MS Office. Until now of course.

Latex allows me to create epically awesome, professional grade documents in about the same amount of time as it takes in MS Office. Some tasks are actually faster because I don't have to fight the editor program, which usually thinks it knows better then me. I can now also work on my documents from the comfort of my own desk, or on my laptop while I'm chilling in the hallway between classes. Plus, documents marked up in Latex just look better in general then your typical MS Word doc, due partially to more consistent formatting rules and a more structured layout.

So join the rest of us cool kids! Jump on the Latex bandwagon! After all, how could something created by Donald Knuth possibly be bad?

20Sep/100

Project Backlogs

I'm a little disappointed in myself for having so many little half-baked projects floating around. But I do however have a particular project thats been mostly finished (and then forgotten) for a while now; its a python audio converter program that tries to maintain similar file size and quality to the original file, when performing a conversion. It should be hitting the tubes in a few weeks when I finally have some time away from marching band, and administrative tasks that I really don't want to bother with.

Also still currently in the works, is my  Google App Engine project. But we'll just have to wait and see how that one turns out...

Filed under: Programming No Comments
6Sep/100

The World’s Most Interesting Intern

And just like that, we return from an incredibly long four month hiatus, something this blog has never seen before...

Guess I'm a little late to the party, but I figure that its still worth talking about. Throughout the summer, Cisco Systems intern Greg Justice has been releasing a bunch of videos where he claims to be the world's most interesting intern, and surprisingly, he's managed to gain a remarkable amount of popularity and even inspired numerous video responses.  I don't know Greg personally, but like him, I too am a Cisco summer intern at the San Jose campus (along with a few hundred others). Here's a few of his videos:

Quite frankly, I'm amazed that he's managed to garner so much attention, since his videos aren't exactly gut-busting hilarious, but rather, just simply amusing. But of course, lamer things have somehow managed to gain more popularity on the inter-webs (I'm looking at you double-rainbow-man). I'm not going to make a case that I'm the world's most interesting intern (I know I'm not) but as my internship at Cisco draws to a close, I figure it might be worthwhile to at least mention some of my experiences this summer.

The work has been intellectually interesting, which is more then I can say for some of my previous internship experiences, and I'm happy to say that I was not relegated to the post of code monkey, although I did pump out a fair bit of code. Whether or not I made a positive contribution to the company as a whole, I cannot truly say, since  some of the aspects of the product I'm working on are not set in stone and if product specs change again my make may have to be discarded. Overall the work environment is fairly nice, the other engineers highly intelligent and helpful, and the management friendly and unobtrusive, so I cannot complain about this summer. My greatest fear, as a software engineer, is to be left in an uninspiring occupation, banging out unoriginal code for rarely used and uninteresting programs. I fear that I may become an out-source-able code monkey. It is often felt that large companies, like Cisco, that have literally buildings filled with engineers, are often prone to relegate their engineers to excruciatingly boring and tedious code-monkey-like tasks, and treating them like cheap, interchangeable workers in a factory. But I'm happy to say that this was not the case for me. So high-fives all around...

Also, might I just say, that the laptops they gave us interns (not to keep of course), are insanely powerful. Which is a little odd considering that we do almost all our development work on the servers, which are even more powerful.

Tagged as: , , No Comments