Blog

  • A sinus infection has left me completely incapacitated. I had to skip class yesterday, and I may do the same today. I woke up this morning feeling like I had the worst hangover of my life. My stomach hurt, my head was throbbing and my muscles were sore. Yesterday, my nose was leaking like a burst water main. It was quite odd, minding my own business, playing on the computer, then feeling a hot river of snot pour from my nose with undying fury. The taste, that was what got to me the most. Today, my combination of ibuprofen, asprin, claritin, generic over-the-counter decongestant and antihistamine and mulit-vitamins might keep this sickness in check

  • I finally got my MDE project:

    We run some large image processing tasks that run over many processors. We’ve developed our own code to distribute computations over several Unix systems, but it’s really out of date. In particular, we need to take advantage of the compute power in Linux clusters. We have our own small cluster and we would liek to exploit the capabilities of the large cluster in the Center for Parallel Computing. One of my students provided the following request. I think this would make a great senior design project with real applicability in the commercial world….

    How about a tool set for running background C code or MatLab jobs. Kind of like the launch program, but for use on our local Athlons. A script would detect what machines are idle and launch jobs in a joblist serially. Alternatively, and even better, they could get an account at the Center for Parallel Computing for the Athlon clusters. These clusters use SMP parallel computing additions to the C language. For independent C processes like our tracking, it would not be that hard to write scripts that modify the C code so it can run on these Athlon clusters, and maybe even automatically launch it and give feedback in the process. So users can run independent C code on these systems without having to learn the SMP additions or details about the parallel cluster. Automatic transfer of files without interactive authentication and big/little endian compensation may pose some challenges.

    This is a seriously under-developed project description. We are going to have a meeting with the professor that suggested this project to get some solid details. The cool part about this professor is that he works in the biomedical engineering department. My bio degree will make it easier to get in his head.

  • I have another project to add to my list. Hopefully I will finish one of these this semester.

    For the sake of argument, I will define the “lifespan” of an operating system to be from the day it is released to the public (either for purchase or for download) to the time *two* new versions of the operating system have come out. An example would be OpenBSD 2.9. It was released on June 1st of 2001. Since OpenBSD 3.1 (the second version past 2.9) came out on May 19th of 2002, the lifespan of OpenBSD 2.9 was 06/01/2001 to 05/19/2002.

    Over the lifespan of OpenBSD 2.9, there were 27 different patches. That might not seem like much, but that is over two patches a month. For a company that has many servers, that could be a lot of patching. Likewise, the current version of OpenBSD (3.1) has 14 patches already. That version had only been available for under three months when the last patch was issued.

    Now that I have that cleared up, time for the actual project: An OpenBSD version of Windows Update. Since no self-respecting BSD admin would go to a website for their patches, BSDUpdate would be a command-line tool. It would check the current state of your system, verify which patches were needed, and download them. The tool can then install the patches and restart services as/if necessary. The tool could also be put in “automatic mode” and placed into a cron job for completely seamless updating.

    This is actually a very easy project (but also time consuming). Nevertheless, I will be damned if I ever finish it.

  • School started this week, which is the main reason why my post frequency has dropped to near-zero. My classes for this term include Operating Systems, Molecular Biology and the Major Design Experience.

    Operating Systems is not as cool as I thought it would be. Instead of getting an overview of the 1.9 million topics involved with operating systems, we are only learning threads and file systems. So disappointing. Molecular has been good so far, which is surprising. By now, I thought I would be horrifically sick of anything biology related. I talked to someone new in class for the first time in practically three years, so that might help. And finally, the Major Design Experience (MDE): 8 credits for a single project. We were given something like 30 projects to choose from. We got to pick our top three, then the professors will put us into groups. My choices were:

    1. Writing a set of UNIX/Linux tools to ease administration of a network that includes UNIX, Linux, Windows and Mac workstations.
    2. Add an extension to the university LDAP server so that email groups can have their list archived or sent as a digest version.
    3. Rebuild the EECS website, both the design and the database backend.

    I don’t care which one I get, they should all be fairly easy. Time consuming, but easy.

    Once I get into the swing of things, I am sure I will be back to posting (almost) everyday. I don’t even have a desk in my room yet, so it might be awhile.

  • I don’t have time to properly comment, but just read this short story. It is extremely geek-heavy, I warn you.

  • Even though I just posted about the Hot Snakes last week, I am already the 13th listing on google for the keywords Hot Snakes show. Put that in quotes and I am #2. Woohoo. I am in the top 100 for just Hot Snakes.

  • Cannot … spin … pen … So frustrating!

  • Sweet. An entire cup of cream of broccoli soup from Mr. Pita with a total of six (6) appreciable pieces of broccoli. Yes, I did count.

  • Bad news: My good-email-to-spam ratio is now below 1. For the past week, it is currently hovering at .8106.
    Good news: SpamAssassin lets me calmly ignore all of said spam.

  • D’oh, I forgot to tell you *why* all of my projects have been aborted. I am resodding my parent’s front lawn. It’s a fireball of fun, I assure you. Here is a little list I whipped up of the steps I need to take to properly resod (reseed, actually) the lawn:

    1. Remove all old turf.
    2. Test the composition of the soil.
    3. Add soil amendments to correct soil composition.
    4. Add fertilizer and till 6 inches of the soil.
    5. Level soil to a 1-2 degree grade.
    6. Water for 2 weeks to allow weed seeds to germinate.
    7. Remove weeds with Round Up.
    8. Lightly rake top of soil.
    9. Spread seed equally in two passes, the second at 90 degrees to the first.
    10. Lightly rake the fresh seed.
    11. Lightly roll the fresh seed.
    12. Apply a light layer of mulch.
    13. Water lightly (5-10 minutes) twice daily until lawn height is ½ inch.
    14. Water deeper (15-20 minutes) once daily until lawn height is 3 inches.
    15. Mow lawn to 2 inches with a sharp-bladed bagging mower.