Monthly Archives: April 2007

Procrastination: A Successful Strategy to Term Projects

It’s 2:48 am. I’ve just recently reached the comforts of my apartment after a lengthy work session in the computer lab with Ryan. I try to avoid posting at this hour of the morning, because I tend to be less than coherent, but I think the jubilation of this moment calls for an exception.

We have a semester project in ECE 551: Digital System Design & Synthesis (aka “Verilog”). The project was assigned in the vicinity of a week or two before Spring Break. That is, we have had in the neighborhood of a month or more to work on it. Of course, we didn’t complete any work at all until we were required to implement one subcomponent for a homework assignment a week ago. So we completed that 2 hours before the deadline, and handed it in. No big deal.

Now tomorrow the initial draft of our project report is due. Initial “draft”, as in: feature-complete implementation of all components, including explanations of how they work, timing and space analysis, and testing to demonstrate their correctness. As of 2:15pm today, Ryan and I had completed exactly 1 major subcomponent, for the aforementioned homework assignment. Less than 12 hours later, including a break for Subway, we were done. There will certainly be things that we need to tune up and optimize for the final report, but every major component of our processor is complete, in place, working perfectly, and passing every test case.  All in less than 12 hours, less than a day before it is due.

Who ever said procrastinators never make it anywhere in this world?

…And now I need some sleep. Badly.

Why Water Didn't Come Out the Tower

A Bit of a Leak.jpg

The angle is a little sub-par, but: this is the base of a 30-foot tower full of water. The water is supposed to come out the top. The base has a tap for a garden hose. That tap is pictured here. That tap is closed. Water is coming out anyway. Fast. :-(.

Update: Yeah, actually, no… turns out the spigot was open, and that is why water was coming out. Oops. [/Update]

Awry

There’s something awry in the world.

My RSS sidebar widget reports:
183 killed in 4 Baghdad blasts
College gunman disturbed teachers, classmates

It feels like we see the former every day. 183 killed in 4 Baghdad blasts. Did you even react to reading that? Or dismiss it, inconsequential? One hundred eighty-three people. In one day. I don’t know if repeating it in any other form can any further impress the number. People with plans, people with friends, people with families.

But my how much more exciting to talk about these other people with plans, friends, and families. How much more interesting the TV says that their lives are. How much more garish that they were slain while in college. :Gasp: I’m in college… it could have been me! </sarcasm>

What a pointless argument. I don’t mean to play a numbers game, or in any way downplay the events in Virginia, but seriously. The people killed daily in Iraq and other places of violence, unrest, and war around the world are often perfectly innocent people just living their lives. Why, they don’t even have to be in college! They could be sitting in their homes, walking to work, or any number of things that every person on the planet does daily. Why is it so much more shocking to hear of 32 slain by a suicidal gunman than 183 slain by bombs? Why isn’t it more disturbing that we are not shocked to hear of 183 slain by bombs?

Did you even remember the 183 from the start of this post? Or have you already forgotten them, too?

WordPress Moblogging with "Postie"

As you may have noticed, a couple of posts showed up over night, the last few in the rather wee hours of the morning. This was the byproduct of my discovering another new WordPress plugin a couple hours ago, called Postie.

Postie is a plugin designed to make it easier to post entries by email, which can potentially (such as in my case) come from a cell phone with images attached. It has a lot of cool features like letting you specify the tags for new posts (something I can’t do when posting through Flickr), as well as automatic thumbnail creation, the ability to rotate the picture by requesting it from the phone, and a bunch of other nice touches.

For the short term, I’m going to be giving Postie a try for moblogging, instead of using Flickr like I have in the past. The only noticeable change to you, the reader, is that the template is slightly different, and there is not (for the time being) a gallery of all the past moblog photos in one place. (Previously you could visit my photostream on Flickr)

Not to worry. You can already view the most recent posts by using the Categories feature of WordPress, located on the right side of the page. Head on over to Moblog (or click on “Moblog” at the header of this post) to see all recent mobile posts. These categories are automatically updated when new posts are made.

Of course, you know me… I’m not having fun until I’m sifting through the code to figure out what makes it tick, and adding my own little tweaks and modifications. So over the past couple hours I made a few little changes that other WordPress users might be interested in. For most other ordinary people, consider this your forewarning that this post is about to degenerate into code samples 🙂

One thing I really wanted from Postie was the ability to automatically add the necessary HTML code to activate SmartBox on the images I post from my phone. This also led me to getting rid of the JavaScript call for popping up a new window when clicking on a thumbnail. I ended up solving these features by making both of them optional, and adding appropriate configuration options to config_form.php. You can add these features by making the following changes:

In postie-functions.php, around line 396, replace the original

if ($thumbImage) {
. . .
}

block with the following code:

if ($thumbImage) {
    $marime=DetermineImageSize($file);
    $marimex=$marime[0]+20;
    $marimey=$marime[1]+20;
    //Edit: Removed $mimeTag, as I don't really need that cluttering up
    // my posts unless something goes wrong.
    $newAttachment = '' . "n";
    $attachments["html"][] .= $newAttachment;
    if ($cid) {
        $attachments["cids"][$cid] = array($config["URLPHOTOSDIR"]
            . $fullImage,count($attachments["html"]) - 1);
    }
}

Then, around line 1785, add these two lines, to set defaults for the new config options:

    if (!isset($config["USE_POPUP"])) { $config["USE_POPUP"] = true; }
    if (!isset($config["USE_LIGHTBOX"])) { $config["USE_LIGHTBOX"] = false; }

Finally, in config_form.php, you need to add these two entries. I like them around line 233.


					

Monona Terrace

Jared at Monona Terr.jpg

Jared, who was pretty impressed by seeing the beautiful side of Madison for the first time. (As compared to our much more concrete-heavy campus) I hadn’t been here in years, myself. I think since a scholarship banquet senior year of highschool. What a shame to live so close to a place like this and not go see it more often!

Irony


Irony

First round of racquetball with my new racquet today (birthday present from my parents). I wish I could say that it made me an amazing player overnight, but the reality is that the 1 game of 3 that I won today was the one where I let Jared try the new racquet out…

It’s really nice though- a lot of fun to play with!

Using the Microsoft Fingerprint Reader on Windows Vista with Firefox 2.0

Back Story

This past summer at my internship I picked up a Microsoft Fingerprint Reader MS Fingerprint Readeron a whim. I had been reading about efforts to write an open source driver for it, and thought it might interesting to give it a shot. I haven’t actually run Linux on my desktop since then, but I finally got around to opening the fingerprint reader up a couple weeks ago and playing with it on Windows Vista.

While I wouldn’t speak to the total security and accuracy of the device, especially since it sends a photo of your finger to the OS unencrypted over USB, it is rather handy and has a nice nerdiness factor of the glowing reader on my desk as well. 🙂

The one absolute show-stopper, though, was that it didn’t work with Firefox. Game over. All browser wars aside, at the end of the day I use Firefox for most of my web browsing, and if the fingerprint reader didn’t work with it, it wasn’t of much use to me beyond logging in to Windows Vista automatically.

FingerFox 2.0 logoEnter Fingerfox (SE) v2, released just this weekend with compatibility for Windows Vista and Digital Persona Password Manager 2.0 (the software included with the fingerprint reader). I had been waiting & hoping for this plugin for weeks, as the previous versions of Fingerfox didn’t work at all for me. I’m happy to say that today everything works!

How to Set it Up

  1. Buy a Microsoft Fingerprint Reader (or other compatible Digital Persona device)
  2. Install the device as indicated in the instructions, or by downloading the newest driver from Microsoft. This process will walk you through registering your fingerprints.
  3. Install Firefox!
  4. Install the Fingerfox (SE) v2 plugin by downloading it, and then opening the XPI file (In Firefox, go to File->”Open File…” and locate the XPI file you just downloaded.)
  5. Restart Firefox to complete the installation, if you haven’t.
  6. Right-click on the new Fingerfox icon in your status bar: FingerFox 2.0 statusbar icon
  7. Enable “Global automatic popup”, to allow Fingerfox to open automatically on websites that you can log in to:FingerFox 2.0 context menu
  8. Go to a website where you want to login. Example: http://www.facebook.com
  9. Fingerfox will pop up a small window containing the same input boxes as the login page. Do not fill them in. These are here because the Digital Persona software, which cannot detect the login page under Firefox, can detect this mini login window.
    fingerfox_popup.jpg
  10. Now, put your fingerprint on the reader to open the Digital Persona password manager creation screen, and fill out the form with your account information, as in this example. Notice how Digital Persona highlights the corresponding fields in the Fingerfox (SE) window. This is showing you which boxes you are filling out, just in case there is any question:
    fingerfox_digital_persona_create.jpg
  11. Click OK to close the password manager creation window, and the Fingerfox popup will change like this, since Digital Persona now knows how to fill this window out for you:
    fingerfox_digital_persona_login.jpg
  12. Now, press your finger on the reader to login, and you should be at your Facebook homepage!
    FingerFox 2.0 Success!
  13. That’s it! To login to Facebook in the future, just go to the page, and repeat from step 12!
  14. Some extra things to be aware of:
    • For some websites (like Facebook) you will need to set up more than one login. This is because when you go to www.facebook.com, you are logging in to a different site (as far as Fingerfox is concerned) than when Facebook asks you to log in to, e.g., wisc.facebook.com. Since these appear to be different sites, you will have to store your login information twice. After that, however, it will be all set.
    • For some websites like Meebo, which have multiple login forms, you will need to select the appropriate one from a small drop-down box:
      FingerFox 2.0 Multiple Login Forms