James Cassell's Blog

Wednesday, January 30, 2008

Body Heat in a Large Room

So, I was in Chemistry class today, and it was warm enough that I didn't need my fleece (thanks to one of my friends for telling me what it's called). When the end of class came, of course, everyone left. About five minutes later, I noticed that the room was getting cold. (I have three classes in a row in this room, with a 40-minute break between chemistry and Discreet Structures.) Now, my chemistry class is very crowded, with most of the seats full. I could very well be wrong, but I'm going to attribute the temperature change to the people leaving the room.

P.S. I'm filing this under "random" because it really has no point.

Labels: , ,

Tuesday, January 29, 2008

File Server From Scratch

Back Story

Back in early December before Christmas break, my desktop computer, which had been serving as a server, was running very low on disk space. My immediate solution was to buy another hard drive. I ordered a 750-GB hard drive from NewEgg. As Murphy's Law would predict, my roommate's LCD TV, which I had been using when I needed a screen on my desktop, bit the dust (stopped working). I had no way to tell the BIOS that there was a new disk, and to keep booting from the old disk. I tried to reconfigure the BIOS from memory without any visual feedback, but only managed to make the system unbootable.


Fast forward a few weeks to the middle of vacation. I had, by this point, decided that I was going to build myself a storage server with RAID-5 redundancy. I had several decisions to make, the first and most important of which was whether I should go with Intel or AMD. This would dictate my selection of motherboards, as Intel motherboards and AMD motherboard are mutually exclusive. My second major decision was whether I would go with hardware RAID or software RAID. Obviously, hardware RAID is the better option if money is not a factor, but software RAID cost is very low. In reality, software RAID is not free as it appears to be, but rather, the cost is hidden in the fact that motherboards with many SATA ports are significantly more expensive. As far as the choice of processor manufacturer, there is always a battle going on between Intel and AMD. AMD had been winning until Intel released their Core 2 platform. Since then, AMD has come back with their Phenom processor, which is marginally better than the Core 2, but not enough so to justify the premium price.

While considering the previously mentioned choices, I decided to go ahead and order a case to put everything in. I was initially considering a traditional rack-mount server case, but found them to be prohibitively expensive. I ended up ordering a Cooler Master "Ammo 533" case that was on sale and has subsequently been discontinued. This arrived at my house about a week before I ordered any other parts on-line.

My best friend informed me of a computer show that was going to be taking place at the Dulles Expo Center in Chantilly, Virginia, so I decided that I would look there for computer parts, hopefully at greatly-discounted prices. He and I drove out there to have a look. For the most part, prices were not particularly competitive with on-line retailers. The prices were often within $5 or so, but I think that is worth being able to return an item in the case of failure or DOA. I actually ended up buying a power supply at the show (in addition to some canned air). Later, I found out that I had paid way too much for the power supply and that it was missing some parts that should have come in the box. My friend and I have subsequently decided to boycott the show as the only purpose it serves is to rip people off (or rather to trick them out of their money by offering them sub-par merchandise).


By this time, it was about a week before I had to go back to school, so the urgency of the project went up significantly as I would have little to no time to do it once school was back in session. I finally decided to build an Intel-based machine. I looked briefly on eBay for good prices on the processor as I had done when upgrading my Alienware notebook. No such luck -- it's very hard to compete with NewEgg. I decided to go with the Core 2 Duo: E6750 for the processor as it seemed to be the best balance of price and capability. I went with the Gigabyte GA-P35-DS3P Rev 2.0 motherboard as it had plenty of SATA ports and mostly good reviews. For the memory, I went with the G.Skill 4GB(2 x 2GB) DDR2 800 Dual Channel Kit. I went with the slower memory because the faster stuff was prohibitively expensive. All that was on one order, and I paid for rush processing. I must express my displeasure with rush processing -- it didn't speed up my order at all. They didn't reimburse me the rush-processing charge, on the notion that they shipped the same day I ordered, when in actuality they only got out the information to the carrier the same day (it was around 2300, 11:00 P.M.). The carrier didn't actually get the package until the next afternoon.

If you've ever built a computer, you may have noted that the pieces that I have bought to this point don't form a complete system. I decided to buy neither an optical drive, nor a video card. My reasoning was that a server doesn't really need these things as it is primarily accessed over the network. I also had two optical drives in my older desktop computer, one of which could be transferred to the server. For the time before I returned to school, I was just going to borrow an optical drive and the video card from my mom's (aging) desktop. The day after placing my initial order (the one for the processor, motherboard, and memory), I decided to order a 750-GB hard drive so that I could have an operating system up and running. I now had two of these drives (the second was back in my dorm), which were made by different companies to reduce the chance of simultaneous failure. I just needed a third to have a RAID-5 setup.


My two orders arrived on the same day, and I set out building my first home-built computer. I first put the power supply into the case, which was a no-brainer -- just screw it in. Next, according to the directions that came with the processor, I was supposed to install the processor and heat sink onto the motherboard. I was surprised that the processor didn't have any pins. It had flat contact points, which are called "lands" -- thus, why the socket type is called LGA: Land Grid Array. With this setup, the protruding contact is part of the motherboard. After I had inserted the processor, another decision came up. I had to decide whether to use the thermal interface material that was pre-applied to the stock heat sink, or to use my premium Arctic Silver 5 that I had left over from my when I upgraded my Alienware notebook's processor. After some brief Internet research, I decided to go with the Arctic Silver 5. I used some alcohol to get rid of the stock thermal compound, and applied the Arctic Silver 5. Next, I snapped the heat sink onto the motherboard. This was the most nerve-wracking part of the whole process -- when I pressed down on the clips, the entire motherboard bent terribly from the stress.

The next thing to do was to install the motherboard in the case. There were several stand-offs designed to screw into the case, and the motherboard into them. I came across a minor snag here (for which the internet gave me no solutions). Two of the stand-offs were slightly different from the others -- most of them had a flat top, but two had a pointy top. It turns out that the pointy-topped ones serve to help line up the rest of the stand-offs with the holes in the motherboard -- the pointy ones sink into the holes slightly such that having two of them provides rotational momentum for the whole motherboard. My recommedation for these pointy stand-offs is simply to make sure they are relatively far apart from one another. After getting the motherboard lined up, the task of screwing it in remained. This was rather simple (tightining screws can't get that complicated). After the motherboard was in, I installed the memory, which was as simple as pushing until it clicked. I proceded to connect all the connectors from my case -- such as power and audio among others -- to the motherboard.

Next, came time to connect the power supply to the motherboard. There were two points where I thought I had an unusable power supply; the first was when I realized my power supply had a 20-pin connector and the motherboard had a 24-pin connector. Thankfully, the 20-pin fits, leaving 4 pins without a connection. There was also a separate 4-pin connector that went to the motherboard. The second time I thought I had a bad power supply was when I plugged in the system, flipped the power switch, and nothing happened -- thankfully, it was a silly mistake on my part; I never pushed the regular power button on the front of the case. I installed my hard drive with ease due to the tool-less design of the case. I also temporarily installed the borrowed optical drive and video card, also with ease.


Now came the moment of truth (it was also around 0300 or 3:00 A.M. by this time). I inserted my 64-bit Fedora 8 live DVD, and watched the system boot. I was ecstatic! The system booted perfectly with no glitches, whatsoever! I may sound over-excited here, but with every one of my systems (all notebook computers, granted), it took some labor to get Fedora to work properly. Everything worked seamlessly. I immediately installed Fedora to the hard drive so that I would have a fast-booting system and downloaded the updates. The next thing I did was run SpinRite on the drive to make sure it was in decent shape. Since it takes many hours to do its thing, and because it was getting late, I went to bed at this point.


One thing I really like about my case is its tool-less design. After the initial install, all upgrades (excluding a motherboard upgrade) are tool-less. Expansion cards can be swapped out thanks to a clever latching mechanism, hard drives and optical drives can be swapped out by simply sliding them in until they click, and the case opens with thumb-screws. Of course I showed off my build to my family (including aunt, uncle, and cousins) in addition to my best friend. People seemed most impressed with the tool-less design of the case.

I still need to purchase the third 750-GB disk to complete the RAID-5 configuration, and will probably do so when there is a good deal on NewEgg for one made by a third manufacturer. The grand total for the build comes out to just under $1200.

I would say that building my own computer from scratch was a very good experience and would recommend for anyone to do it himself for his next computer. The exception is if one is looking strictly bottom-end. These are the only computers that are a better deal if you get them from some place such as Dell or Wal-Mart.

Labels: , , , ,

Monday, January 28, 2008

The Dvorak Keyboard Layout

In the final week of Christmas vacation while I was waiting for the pieces of my server (about which I shall soon write) to be shipped to me, I happened to come across the Dvorak keyboard. This was not the first time I had heard of it -- I had previously seen mention of it in some Wikipedia user pages, but dismissed it as irrelevant at the time.

At any rate, somehow, I came across the Wikipedia Dvorak article. I found it intriguing and decided to look further into it. I imagine that the reader will have never heard of the Dvorak layout, so I will give a brief description. The Dvorak keyboard layout is an alternative to qwerty. The keys are laid out so as to minimize hand movement -- the most commonly used keys, including all of the vowels, are on the home row. Dvorak was designed for efficiency. DV Zine is a comic-style introduction to Dvorak and its history, in addition to its use.

Now, theoretically, one can type faster an a Dvorak keyboard than on a qwerty, but I'm not too shabby at typing qwerty -- I can, when concentrating on 100% accuracy, type 62 words per minute. This switch was going to cost me some time, as well as serve to make each keystroke several times more expensive -- from instant messages to Google searches to blog posts (which, granted, I don't do very often). About an hour after I started the endeavour (before I had learned more than the home row), I decided to see how fast I could do on a typing test. I scored a blazing 6 words per minute. It was a couple of days before I had nearly memorized the new layout, by which time the pieces for my server came, and I was distracted from this endeavor.

It wasn't until I came back to school that I picked up the effort again. I have since been using Dvorak exclusively, and have been taking hand-written notes in class so as to be able to keep up, and to not fall back into using qwerty. About a week ago (the last time I booted into windows, to be exact), I re-tested my speed. This time I was up near 20 words per minute. I am certainly improving, and hopefully, I'll be up to my old typing speed so that I can declare this endeavor a success.

There have certainly been some struggles in learning Dvorak. Some of these follow in no particular order. First, now that I am programming again, I frequently press the wrong keys for curly braces, the equal sign, and other such keys. Second, I often use the command-line text editor, vi, which has the entire keyboard mapped to special commands. It is annoying, for example, when I mean to save and close the document, but mistakenly delete the current line. Third, for some reason when I tell Fedora to use Dvorak by default, the volume control buttons stop working on my ThinkPad. Finally comes just the expected pains of switching layouts -- making many typos trying to use the qwerty key locations instead of the Dvorak ones.

I cannot yet fully recommend the Dvorak layout, but I will say that it's definitely worth a look. Once I have fully mastered the layout, I may at that point fully endorse it, but not until that day.

The two sites I used in my initial training were dvorak.nl and ABCD: A Basic Course in Dvorak. (And, of course, I typed this entire post with the Dvorak keyboard.)

Labels: , , , , , ,

Sunday, January 27, 2008

Guess What I Did

So, I decide to finally get out my Alienware notebook computer to watch some Stargate Atlantis. I fire it up, and look in my bag for the power adapter. I don't find it and eventually realize that I left it at home.

Anyway, I called my mom and she confirmed. She's sending it to me.

I guess I left for the airport in such a hurry that I didn't take the time to double-check that I had everything.

Labels: , ,

Tuesday, January 08, 2008

The Story of My Adventure on the Way Home for Christmas

The Day I Was Supposed to Leave

I told this story of my adventure-of-a-trip-home several times to my family during the holiday, and apparently, people found it interesting. I am therefore, recounting it here.

I was initially going to come home on 13 December -- my flight was scheduled for that day. So it happened: I had all my stuff packed, and headed out the door. It was snowing heavily outside, so my wheeled suitcase was acting as a snow plow, and was therefore quite difficult to pull. As I approached the bus stop, my bus was just pulling away. I chased it for about half a block before it stopped to let me on.

At this point, it was snowing pretty hard, and all the buses were running late. About ten minutes after getting on the bus, I realized that I had left my wallet, which had my ID card in it, back in my dorm. The bus driver let me get off at the next bus stop. I waited an hour before a bus came that would take me back to RPI. In this time, I found out that my flight had been cancelled, and that the later flight was full. This turned out to be a good thing as I had forgotten my ID card, and probably would have missed my flight otherwise.

Eventually a bus came that stopped relatively close to RPI. After getting off the bus I made the trip back to my dorm, but in the process, lost the belt clip for my cell phone. After eating dinner with my friends, I then called the airline and arranged to take the first flight out the next day. It looked like I was going to have to take a cab, but my roommate kindly offered to drive me to the airport. I called my mom to work out the logistics. She couldn't pick me up since it was going to be a Friday morning, and she was going to be at work. We worked out that I would take public transportation from the airport to my grandparents house, and my grandmother would drive me the rest of the way home.

At this point, it was getting late, but I decided that since I was at RPI, I would do some of my laundry. I ended up getting less than an hour of sleep that night.

The Flight

The next morning, my roommate drove me to the airport. I got there with enough time to get my baggage checked as well as to get through security. Southwest Airlines works differently than others. Instead of choosing a seat when one books the ticket, he chooses when he boards the plane. Boarding order is determined by the order that passengers check in. Since my original flight had been cancelled, my check-in time for my new flight was much later than it otherwise would have been. I still got a window seat, though it was pretty far from the front of the plane. Flight time was almost exactly an hour from the wheels leaving the ground in Albany to touching the ground in Baltimore.

The Bus and Train

After landing and getting my luggage, I went outside the airport to try to catch the bus. I had no idea where the bus was going to stop, so I just kept my eyes peeled for any sign of it. It eventually came, but stopped several hundred feet from me. I had 4 things I was carrying, but ran toward the bus with all of it since the next one didn't come for another hour. I tried to pay the $3.00 fare with a $20 bill, but the driver wouldn't break it. I therefore had to use 3 $1 bills that I had been holding on to because of their crispness and the fact that their serial numbers were sequential and ended in 001, 002, and 003 respectively.

The bus ride was about 20 minutes to the train station. I got off the bus, and bought a fare card for the amount that the chart said that it would cost to get to the station close to my grandparents house. The route I had gotten off the Internet the previous night told me that I would switch trains one time. Upon entering the first train, I was looking at the route map and noticed that I could travel a shorter distance if I made 2 changeovers. I did so, but with the overhead of the changeover time, I arrived at the destination station the exact same time as if I had taken the original route.

When I arrived at the station, I tried to call my grandmother to pick me up, but by virtue of being underground, the train station didn't allow cell phone signals to penetrate its walls. When I got to the exit, the machine wouldn't let me through. It said that I didn't have enough money on my card. I initially purchased the card with my credit card, but the machines by the exit only accepted cash, but wouldn't take cash. I was $0.70 short on my card, but only had $0.60 in change. At this point, I thought I was stranded. My only apparent option was to go back to an earlier station and hope that I could find a machine that would take a credit card. I asked a security guard if he could break my $20 bill for the machine, and he couldn't. I then asked him if he could give me a dime, which he graciously did.

The Rest of the Trip

Once I was on ground level, I called my grandmother. About 15 minutes later, I saw her car approaching, but it wasn't slowing down. Thankfully, she had her window down, and heard me when I yelled "Grandma!" She stopped, and I loaded my stuff in her car. We had nice conversation (which, incidentally, included this very story) on the way to my mom's house.

When we got to my mom's house, I had a bit to eat, and I talked to my grandma for a while before she left. She left around 2 in the afternoon, and I crashed (fell asleep) on the couch. I woke up around 2 in the morning, and since I had just gotten a night's worth of sleep, I stayed up. So began my entire vacation with a badly skewed sleep schedule.

P.S. I sporadically wrote this post over 3 weeks using the Dvorak keyboard layout, which I am now using exclusively. Also, I hope you enjoyed this anecdote of mine, and am surprised you lasted through it.

Labels: , , ,