Trash Troubles


This past week has turned into a wrestling match with the trash company. Every once in a while, our home owners' association distributes a pamphlet with updates on the community. In the latest one, there was a blurb that mentioned if you were using Republic Waste Services and were paying over $34.50 each quarter, to give them a call and ask for the HOA rate. Our rate had risen from a nice $32.50 at the beginning of 2004, to the latest bill which rang in at over $40. So I gave them a call. It turns out, our HOA never negotiated a rate with Republic. The operator on the phone said that several people had called, and they were going to meet on it later in the week to decide what to do. In the meantime, I had a talk with my buddy Anthony, who also used Republic's service. I was paying a rate equivalent to $13.00 per month, plus fuel surchages. Anthony was paying $17.00 per month! He was getting the same service, and lived only a couple houses down the street, yet his bill was over $10 higher than ours.


Today, I got a call back from Stacey at Republic. She let said that they had decided to offer me a rate of $12.00 / month plus a $0.46 fuel surchage per month if I would sign a 3-year contract. I asked about the terms of the contract, and they would only guarantee my rate for the first year. That sounded awful risky to me, especially with the history of Republic raising their rates over the last year. I also discovered that Republic was doing the commercial trash pick-up for office, and had jerked us around quite a bit with missed pick-ups and overcharges. All of these added up and prompted me to start calling around to see what else I could get.


I found four service providers that performed residential trash pick-up service in my area, with a Friday pick-up day (required by the HOA). Here is the breakdown of rates:







CompanyNormal RateFuel SurchargeTote RentalNotes
Best Way$13.25N/aN/a2 totes included in normal price.
Rays$12.00$0.12$3.00 
Republic$12.00$0.46N/a3-year contract required
Republic$17.00$0.46N/aRate without Contract
Waste Managment$16.40$0.30-$1.00$2.00Fuel surcharge based on average cost of diesel
All rates are monthly



As you can see, there were quite a few options out there. Rays had the best offer, although we would need to either rent a tote, buy one, or go without. Best Way was offering something slightly better than what my current arrangement is with Republic. Republic's contractual offer really spooks me, and I don't trust them, so we'll likely make the switch to someone else. How Waste Management came to their pricing confuses me, as it isn't really competitive with the other folks (unless you consider the "standard" rate from Republic at $17.00). Why do all utility services have to turn into a haggling hassle like this?

Another Game Down

I finally beat Neverwinter Nights! I've had this game for well over a year, and I finally finished it up. It's a fun game, and I can see how it is really appealing to Role Playing Game (RPG) fans. You can customize the character you play in just about any way you can imagine. In fact, there are so many possibilities that it is almost a drawback to the game. There were so many options and choices at every turn of the game that I always felt like I might not be making the best choice. Towards the end I decided to forget about playing for the perfect character and just try to hack and slash through the rest of the game. This turned out to be a pretty good strategy, as I probably would have wasted a bunch of time worrying about increasing my saving throws when all I really needed was a tank as a NPC henchmen to soak up all the damage while I mopped up the stragglers. Yes, I realize I'm just talking jibberish now. In any case, once I adopted the hack and slash strategy, the last chapter of the game went by pretty quickly. I doubt I'll get any of the expansion packs for the game, but I definitely got a lot of play value out of this game. I'm sure I put more than a reasonable number of hours into completing this game. Now its on to the next one! Hmm... should it be Zelda 2: A Link to the Past, Myst [I, II, or III], Fire Emblem, or Final Fantasy Tactics? How can I go wrong? :-P

Free Lunch Friday


Today has bee THE day for free treats at work. My financial advisor, Jeff Hodges of American Express Financial Advisors, dropped into the office to deliver a free lunch buffet from TGI Friday's. He had sesame chicken, beef and chicken fajitas, caesar salad, subs, and cheesecake. It was great!

Another Class?!?!?


Usually, Wednesday nights are a night that Jenn and I get to cuddle on the couch and read books together. It's not terribly exciting, but I really look forward to it each week. It is a quiet, comfortable time when we get to be together. So what did I do this Wednesday? I was in class! Again!!! Only this time, it was work related.


I'm currently working on a project to evaluate a Laboratory Information Management System (LIMS) for introduction at one of our customers. I'm developing a list of requirements that their labs have for features the LIMS must provide. I really don't have an extensive background in LIMS, but it is similar enough to Manufacturing Execution Systems (MES), which I am familiar with, that I am able to get the concepts and develop the list of requirements. We found out about a class at the IUPUI school fo Informatics that was focused on LIMS, and LabView (a major LIMS vendor) had sent one of their folks to speak at the class. We got permission from the professor, and I proctored that class for the evening. It ran from 5:45-8:45, and hour shorter than my Monday night class, but it still made for a long day. It was worth the trip though, as the speaker gave me his slides and also a copy of a sample requirements list that he had put together for when he went on sales calls.


I was really sad that I didn't get to spend the evening with Jenn like I had hoped, but I tried to make up for it by coming home early before the class to spend some time with her and Corbin. We got a chance to play and have some dinner before I had to leave. Still, Jenn was pretty burned out on Thursday, so it was a good thing that I didn't have another class scheduled that night.

New Class, New Instructor


This week is the start of my new course for my MBA program: Organizational Development. Economics is over, and I'm pretty certain that I got my A. I'll only know for sure when the grade card arrives, but based on all of my scores, I was pretty securely in the A range. The instructor for Org Dev is certainly unique character. He has a level of enthusiasm for teaching that I haven't seen before. It's borderline between being overly enthusiastic and highly entertaining. At some point during our first night of class he laughed, cried, shouted, whispered, glared, and smiled. He was all over the emotional map. He definitely keeps my attention throughout class. He claims that he will be a tough grader, which I have had yet to see consistently throughout this program. We'll see how this guy follows through on his promise.

Free Massage Day


Woohoo, free massage! Chiro-Spa of Fishers sent a masseuse to give free, 10 minute massages in our office. It was a nice break in the middle of the morning. The masseuse said she couldn't find any stress points, so I guess that means I'm pretty relaxed. This is the first time I've had a "professional" massage (Jenn gives me great massages from time to time, though), and it was pretty nice. I really expected the masseuse to go digging into my back muscles, but it was a lot more gentle than that. Each year I get Jenn a spa treatment at The Escape Day Spa for her birthday or Christmas. Maybe next time I get her one, I'll have to treat myself as well ;-)

Camera Memory

We have a 2-Megapixel digital camera that we like to use for all of our picture taking needs. Back when we got it, 2-Megapixel was a very nice camera, and it still is. In the high resolution mode, we can print out an 8x10 picture and it looks great. Unfortunately, memory for the camera was really expensive at the time, and we stuck with the original 8MB card. We can only fit 10 pictures on it in high-res mode. We've turned into real shutterbugs with Corbin, and 10 pictures is really limiting. Jenn asked me to check out a bigger card for the camera. I was very happy to see that prices have come way down. I just ordered a 128MB card from Computer-Memory-Store for $20. They carry a lot of flash, magnetic, and other memory devices. Now we'll be able to take 150 pictures at a time. I doubt we'll ever take that many in one outing, but it is nice to not worry about memory limits anymore.

Another One Down...


I promised myself that I wouldn't buy any new video games until I had gone through and completed all of the ones I already have. There are a handful of games down here in the basement that I've played up to a point, and then either got distracted, frustrated, or lost interest in for one reason or another. Tonight I put one of those games to bed. Metroid Prime 2 is one I received for Christmas, so it really hasn't had much time to collect dust. I received MP:2, and Paper Mario this holiday, and Paper Mario won out for my play time first. Once that was done, I switched over to MP:2. The game plays identically to the first Metroid Prime game, and so it was very easy to jump right in. For some reason, this one just didn't grab my attention like the first one did though. With the first one, I was amazed at what Nintendo had done wth the GameCube both in terms of graphics and gameplay. First person shooter type games are incredibly difficult to pull off without a mouse, but Metroid Prime did a great job with its targeting system. Metroid Prime 2 was just as good, but it wasn't better at anything over the first one. I suppose I sort of expected progress. Not that I was disappointed with the game, I loved playing it and really enjoyed it from start to finish.


I still have some others to finish up. I'm taking a business trip to St. Louis later this month, so I figure I can finish up Final Fantasy Tactics and Fire Emblem on the GameBoy during that trip. Until then, I'm pretty close to finishing Neverwinter Nights. I've had this one for a little over a year now. It is a really engrossing game. I would sit down to play for an hour and end up spending four or five. I think that is why I quit playing for a while, it was just too much of a commitment to sit down and play. I had to rebuild my laptop (re-install the OS, all software, etc.) over the weekend, so while some of the installs were running on the laptop I played NWN on our home PC. I really started to get into it again. I think I'm on the final chapter, so I'll make that my next game to complete.


Speaking of finishing things up, my MBA is getting close to the finish line. Last week was the final class for Advanced Mangerial Economics. I really got a lot out of that class. It was an eleven weeks course, one of the longer ones in the curriculum, and it provided a lot of good information on pricing, competition, and... well, economics. Today I'll be starting on Organizational Development. I had an Organizational Behavior course as part of my management minor at Purdue, and it was the biggest blow-off class I ever took. I'll be going into class with low expectations, so hopefully I'll get a pleasant surprise and learn something. This one is only six weeks, and then another six weeks for International Business. Once that one is over, my classwork is done and I begin work on my final paper. The final paper is sort of the equivalent of a thesis for the program, since a thesis is not required. I'm not really sure what they are looking for yet, but hopefully I'll learn more by the time classes finish up.


I'm also reading several books. I have three books for class and two for work. I'm about half-way through reading "A Stake in the Outcome" by Jack Stack for work. I really don't care for Jack, but the information in the book isn't all bad. The author has a really attitude about formal education. In short, he thinks it is worthless. He advocates getting a bunch of moderately educated folks in a room and using group think to guess at the correct course of action over formal education on the subject at hand. I take real issue with that approach. He also talks about the ideas of employee ownership programs, business mini-games, and tips for anyone running a business. Not all of it is bad, and some of the tips can be useful. However, I think that anyone who reads this as the gospel on how to run their business will be "entrepreneurially dangerous". At work, we have a term for folks we meet at manufacturing sites who have a base knowledge of computer systems but consider themselves experts. We call them "technically dangerous", because they have just enough technical knowledge to get themselves way in over their heads. I think Jack Stack's book would create a cadre of business folks that are equally entrepreneurially dangerous. One example that really got to me was when he spoke about a sales organization he formed. He spent page after page talking about how perfect his plan was for this sales organization. His plan was so perfect in fact, that they couldn't fail. The sales organization failed mightily though, and rather than look inward at the structure he created (which was the ultimate cause of failure) he instead blames the people he hired to fill the roles. That, and my previously mentioned comment about his stance on formally educated business people, really turn me off to his book. The conference I'm going to in St. Louis is put on by his organization, so hopefully some of the other folks he is associated with will improve my opinion of him and his work.


Aside from that book, I'm also reading "21 Irrefutible Laws of Leadership" by John C Maxwell. Maxwell worked as a minister here in Indiana for a time, and was in Indianapolis last year for a conference. The book isn't breaking any new ground in the leadership world, but it is always good to reinforce your knowledge on the subject. That one is for class, along with a text book and a set of example articles. Another book I'm half-way through is also for work: "Collaborative Manufacturing" by Michael McClellan. This one is fairly interesting, and it reminds me a lot of my marketing class. It deals with tightening up the supply chain by allowing more freedom of information. Suppliers, vendors, manufacturers, warehousers, and retailers all working together in a highly trusting collaborative environment. It is a nice idea, if a bit utopic, and presents a good case for unified standards in supply chain management systems.


Wow, this turned into a much longer post than I had expected. I sat down to toot my horn about beating Metroid Prime 2. Hope I didn't bore you too much!


Poker Party

Our friends Anthony and Karla threw a poker party this weekend. It was a blast! We got to meet some of their other friends whom we had only known through stories and blogsites so far. It was a really fun night. We thought we might have to leave early, as poor Corbin has had a stomach bug this week, and he wasn't feeling comfortable falling asleep in a new place. Fortunately, we were able to coax him to sleep a little after 8 and have some fun. At first, we thought we might play different games throughout the night, but we just played Texas Hold 'Em the entire time. I was fine with that, as I love playing Texas Hold 'Em. At the end of the night, it came down to Anthony and I with all of the chips between us. Anthony went all-in on a straight draw, and I called with a pair. He didn't make his straight, and I won the pot! Woohoo! That will certainly help pay for the Pedialyte that Corbin is drinking as he is on the road to recovery. No sooner had the game ended than Corbin woke up a little bit. The rest of the folks stuck around to play other games, and Jenn and I headed home with Corbin for the night. We had a great time, and now were are looking forward to the next time we can all get together. Maybe next month we can host the party.

A Geek Triumphant

Not content to simply redo the arcade, I installed a bunch of software on our home PC this week as well. I've been wanting to try a piece of software called Bugzilla, which is a open-source tool for tracking bugs in software. I thought that it might be a nice tool that we could use at work to help in tracking bugs in our projects. I wanted to try an install at home first before I ran it on a box at work, so I setup our home machine to run apache web server, MySQL database, ActivePerl, and CVSNT. I followed instructions on the Bugzilla site for installing on Windows (it works better under Linux, but I'm not going to mess with our home PC just yet). I had it up in one night, and I installed it on a PC at work today.


Once I was finished working on our home PC, I realized that I had a working web server, which meant that I could now serve web content from our home computer. So tonight I setup a free service to allow me to serve the webcam from our house. I'll be a little bit better about turning on my webcam at work now that the picture will actually update. I think serving web pages from my home machine might not fall in line with the terms of service for my ISP, but I won't be serving a lot of content. Anyway, I'm just excited that I got this to work!

Overdue Update

What a slacker I've been with this blog. I've gotta learn to post more often. A lot has been going on over the last week. I've been named project manager for a new project at work, which is exciting and stressful at the same time. I'm sure I can handle it, but my guts are churning a little bit anyway. To add flames to the fire, I have a final exam tomorrow night in Econ, as well as a final group paper and group presentation to do. The paper is ready, and our group met today to put the final touches on our presentation. Just before the meeting Jenn and I dropped into H.H. Gregg to get a new dishwasher. We found a fairly inexpensive Maytag model that was in stock and will be installed tomorrow. We're leaving all of the dishes on the counter to make a big test for the new washer :-)


Probably the most exciting part of the week was Corbin's birthday party. We had a bunch of our family in for a day to celebrate Corbin being a one-year-old. Time has really flown by, I can't believe our little boy is already one! He is so amazing. He can walk, babble, figure out things, and he is a pro at copy-catting anything I do. If I turn on the TV, he practices hitting that button to turn the TV on and off. If I use the remote or the keyboard, he is right there too. If I dunk a cookie in milk, he tries to push his food through the lid of the sippy cup. It is really fascinating the way he watches what we do, and then immediately tries to mimic it. His birthday party was a lot of fun, and we got to see a bunch of our family that we haven't had a chance to see over the last year. Corbin was on very good behavior, even without a nap! He did a great job of scarfing up some of his cake, and he tore through his presents. He got some pretty cool stuff too! A moose sleeping bag, a Weebles firetruck, a cool growth chart with his name on it, and a lot more. Thanks to everyone who came and celebrated with us!


I've also been playing throughout the week with reworking the PC that runs the arcade. As I mentioned in previous posts, I was dabbling with Suse Linux for a while in a virtual machine session. I decided to go ahead and take the plunge and reformatted the hard drive on the Arcade PC. I reinstalled the CD-ROM drive, installed the second video card, and installed the USB card. I also moved the case out of the cabinet so I could work with it more easily, as well as to hook it up to the KVM and new network router. The first time I loaded a new OS on the machine, I tried Mandrake Linux. It is currently the most popular distribution of Linux for its ease of use and nice features. It worked really well, but the Arcade PC is so old and crusty that it just couldn't handle all of the nice extra features of that distribution. So I started digging some more. I was going to load Beatrix Linux on there, but the PC BIOS does not support booting from the CD-ROM, and getting a boot floppy ready for Beatrix was going to be a real pain. Then I found Damn Small Linux. This version of linux is intended for business card CDs, which are really tiny CDs that look like business cards and can hold about 100MB of data. The whole distribution is less than 50MB, which means you can load it on most USB drives and boot from that. Not only is it small, but it doesn't need much memory or CPU speed either. That was perfect for the arcade PC, which is going on 10 years of age now. Over the years I had upgraded it to 96MB of memory, a 400MHz AMD-K6 CPU, and 4GB of hard drive space. Still, the front side bus on the PC is incredibly slow, and the whole thing just barely cranks along. Damn Small Linux was perfect for running such an tired old machine.


Even though Damn Small Linux (DSL) is intended to run from a bootable CD, the website described how to boot and install from a floppy disk as well. I got the install done (very quickly to my surprise) and was rolling within an hour. After getting DSL installed to the hard drive, I used the software install tool to find a version of MAME (the software used to run the Arcade games) and ZSNES (the super nintendo emulator). Now the arcade is back up and running and better than ever. I still need to tweak it so MAME can run full screen, but the ZSNES emulator works very well, and full screen too. An added bonus is the XMMS music system, which allows me to play streaming music from web radio stations. I'm sure I could have done that with the old Windows 98 install that the Arcade PC ran before, but XMMS came preinstalled on the DSL distribution.


So it's been a pretty busy week. Tomorrow we will get our new dishwasher and enjoy the wonders of modern technology again. I think my twiddling with the arcade PC is done for a while, except maybe to get MAME to run full-screen. I think that all that I can do now for that machine is to simply chuck it and get a faster PC to run the arcade. That will have to wait though, as there are other, higher priority items on our budget list right now. So I apologize for the long wait on this update. For now, I will retire to my La-Z-boy recliner with my bottle of Sam Adams Light in hand to play some Metroid Prime 2. Have a good night!

Dishwasher Troubles


Water intake valve

Fried Switch

Our Dishwasher went kablooey this weekend. We noticed it part way through the week. Dishes just weren't getting clean. It was barely noticeable at first, but by Friday it was obvious that something was wrong. When the cycle was finished we would open the door to find that the detergent had just spilled out of the cup instead of getting washed around during the cycle. We would start the cycle, and a couple of minutes later open the door to find the inside dry as a bone. No water was getting into the thing at all.


Jenn's dad is a pro at fixing things, so when he was here on Saturday we started taking it apart to find the problem. Jenn and I had noticed that the Heated Dry button wasn't working anymore. When we got behind the button, we found that the whole switch had arced and created a mess of melted plastic. We hoped that replacing the switch might fix the problem. We headed to Lowe's and got a replacement part. The switch worked now, but the water still wasn't coming in. We decided to let it go for the night and start work again the next day.


Sunday we took off the kick-plate and started poking around in the water works. Jenn's dad saw that the circuit had continuity all the way to the solenoid for the water intake valve. At that point, the circuit was dead. We popped the valve out to take a look, and there was no obvious damage. The screen looked clean, and the valve moved without a problem, so we had to assume that the switch wasn't working. I found a site to order a replacement, and it should be here by Wednesday. Hopefully that will do the trick and we will get away with $35 worth of repaired components rather than the $350 - $1000 expense of replacing the unit.

In with the New, Out with the Old

Our collection of computer equipment continues to slowly grow here at the house. About a week ago I was looking at the top of my desk at our networking equipment, and I started thinking. We had a cable modem, a Cable Modem Router, and a Wireless Access Point. I was thinking, "Surely I can somehow combine this equipment." And I did! I hopped on eBay and found a Netgear wireless router and 4-port switch that would do the job of the seperate router and access point I currently have. The price was right, and the new toy, I mean, piece of computing equipment vital to our network, arrived today.


Now that I have this handy little device, I don't really have any use for the other equipment. It is still in fine shape, and should work for anyone who needs it, so I decided to sell it on eBay. If you think you are in the market for something like this, just check out the listings:


If you win the auction, we might be able to work out some way for you to pick it up and avoid the shipping costs.



Taxes Suck!

I just finished filing our federal, state, and local income taxes for 2004. The process is such a pain. We got a pretty heft refund (Corbin was a huge benefit!), but it was still incredibly confusing to get filed. We had a lot of circumstances that muddied the water too. Jenn worked part of the year as a full-time employee, and part of the year as an independent contractor. As an independent contractor, we had to file the self employment forms. I have a health savings account through work, and evidently the IRS still isn't sure what forms they want you to file when you have one of those. It won't affect my return, as all of the contributions were from my employer and all of the disbursements were for qualified medical expenses, but it is still frustratingly difficult to understand how to fill out the various schedules and forms.


Starting this year, it is free to e-file your federal return. I chose to do mine through TurboTax. TurboTax was pretty good about walking me through the majority of the issues for my return, and getting all of the schedules properly filed. The only thing it didn't get quite right was the Health Savings Account, but I was able to go back and find that form later. The federal return was free, but I payed $19.95 to file the Indiana return. I could have filed the indiana return for free on the indiana site, but I've been sitting here for close to three hours answering tax questions. It was worth $20 not to have to do that again.


So we will hopefully find a nice refund deposit in our checking account soon. We can use that to fund Corbin's college fund for the year, and cushion our savings a bit more. I'm definitely going to have my exemptions increased at work though. I would much rather have a refund closer to zero dollars and be able to use that money throughout the year.

More Linux....


Boy, this week sure has flown by. We did a really good job on our international presentation on Monday night. Our group presented on Cuba. It is an economics course, and I learned some interesting things about Cuba's economy. They have a GDP per capita (a measure of productivity, roughly by person) of $2,900. Compare that to Americans who have a GDP of $37,000. Cuba is a pretty poor nation economically speaking. Still, they have a fairly good health care and education system. The literacy rate is above 96%, and average life expectancy is over 76 years. That is on par with or better than the US. Still, I wouldn't want to live there.


Volleyball was a lot of fun on Tuesday. Wednesday nights, Jenn and I have gotten into the nice habit of curling up together on the couch to read books. Jenn is doing some fun reading, and I'm catching up on my reading for the leadership program at work. Thursday night we watched the new episodes of CSI and WIthout a Trace. We also watched The Amazing Race on Tuesday. We love those shows!


I have had several meetings with customers this week, so I've been traveling a bit. I was in Connersville, Greenfield, Shelbyville, and Lafayette this week. Hopefully all of these visits will turn into purchase orders.


I've also continued to dabble in some experimenting with Linux. I read a review of a live disc called Beatrix linux. It was rated as the easiest to use of all of the live disc versions. A live disc is a cd that you stick in your computer and it boots directly to the linux operating system. I have to admit, I was pretty impressed with this little CD. Little in a physical sense too, as I was able to burn it on a 250MB mini-disc. It booted up without any problems and I could browse the web, check e-mail, write a document, and chat using MSN and Yahoo right away. Pretty impressive. I still haven't had a chance to try out Mono or any of the development tools ( I took a break and played Metroid Prime 2 for an hour last night) but maybe I'll get a chance at that some late night this weekend. Anyway, this week has just flown by and I thought I would catch you all up.

My Adventure with Linux


I've always been a fan of open source software. Not so much because I like to tinker with the code, but because I can get some really great software for free. When I was in college I ran RedHat Linux as my operating system. We used Sun Solaris machines for all of our engineering homework, so it made sense to use a UNIX compatible machine at home. When Jenn and I moved to Maryland, I tried using Linux for a while, but Windows was much easier for Jenn to work with, so we switched over to that. Our new PC came with Windows XP Home already installed, and we've been using that ever since.


Lately, I've been wanting to do a little bit more with our home machine as a server. I'd like to be able to host images, video, and other stuff for the blog sites. I've also been interested in trying out some of the open source technologies for work. So over the past week I attempted to get Linux installed on a Virtual Machine instance. I am using Microsoft Virtual PC 2004 as the VM. I had so many problems trying to get this stuff installed. I first started with the Suse 9.2 professional mini-installer. This installer contacts an FTP server and attempts to download all of the components during the installation process. After several tries I was having no luck. I was following the instructions that said to go to the manual install option. The installer asked me to select my network card type, and I had no idea what the virtual PC was emulating the network connection as. After much frustration with guessing the card type, and failing to find anything on Google, I decided to switch distros.


So that night I downloaded Mandrake Linux and started that install. I gave up waiting for it to complete at 1am. When I woke up, it had a couple of errors but had finished installing from discs. I brought it into work and found that the X windows server failed to install properly, and I had a bear of a time getting it repaired. The one bright spot was that Mandrake successfully recognized the type of network card the Virtual PC was emulating: a DEC 21140 (Tulip) card. Armed with that information, I went back to the Suse installer.


Success.... oh, wait. Suse began installing, and loaded up the RAM disk from the FTP site I had selected (ftp://chuck.ucs.indiana.edu/linux/suse/suse). However, after going through the hardware detection phase, it was unable to pull down the package list from the ftp site. I searched Google some more and only found a couple of items about whether the preceding '/' in the ftp path was necessary, but it didn't help. I tried several other servers, but it still didn't work. While I was playing around, I did notice that if I modified the install type from the main bootup screen of the installer to FTP, the installer successfully identified my network card. Why this doesn't happen when you do a manual install I'm not sure.


In any case, I was done wasting time on that at work. I figured I would play around with it more when I got home that night. After Jenn and Corbin went to bed, I fired up the VM instance again to try installing SuSE. There must be some undocumented network port needed to download packages, because from home the same FTP servers downloaded the package contents and the install worked flawlessly. I'm back at work now, and when I try to review the package list, it still fails, so there must be some additional outgoing port necessary for the download to occur. Does it use SSH? I don't know, but in any case, SuSE 9.2 is now installed on a virtual machine for me to play with.


All of that effort cost me about 12 hours. I have a short list of things I'd like to try now: developing in Mono, using Bugzilla, and playing with other open source development tools. I have to give it to Microsoft that they have done a great job of creating an installer for their OS. Still, now that it is installed, SuSE has been fairly easy to use. The YaST install tool is intuitive, and I've been able to find RPM packages for the software that I would normally use most often on Windows (Thunderbird and Firefox). Jenn can't quite understand why I think this is fun, but maybe I can find an example of something that only works in Linux that will wow her. Or, alternatively, I'll just prove to her what a big geek I am.

New Feature: WebCam

Hey folks, I'm working on a new feature for my blog site. Last year I bought a couple of webcams so that I could peek in on Jenn and Corbin throughout the day. We've used them to do video conferencing through MSN messenger, but that's about it so far. Lately, I've been trying to figure out how I could setup my work webcam to show what I'm currently doing. I'm pretty close... I've updated the template to show the current shot over there on the right. Click on it to get a bigger version that shows the date and time when the pic was taken. What I need to do is make it so that the webcam software automatically updates the image on the blog. Right now, I have to update it by hand, which isn't very convenient. Once I get the upload thing taken care of, this should show what I'm doing while I'm at work. When I leave, it will shut off. There are a couple of other cool tricks you can do with it, but I'll just have to play with the camera before I get those up here too.

Firefox Web Browser

width="178" height="60" border="0" alt="Get Firefox">

I'd like to encourage all of you web browsers out there to stop using Internet Explorer (also known as IE, Explorer, Intercrap Exploder, Trojan Horse, POS, etc.). Instead, switch to using the Firefox web browser. It is very easy to switch, and you should have no problem adjusting to it. On install, it will import all of your bookmarks from IE so you can start browsing right away. In addition, it includes a very well done pop-up blocker so you don't get those aggravating pop-up ads all the time. It also does not support a lot of the ActiveX plug-ins that IE is weak to that allow spyware and other bad stuff to get on your PC.


I can't promise that Firefox will solve all of your ills, but I have been using it for several months now and I feel that I can whole-heartedly endorse it over Internet Explorer. Why? I had been using IE at work all of the time for searching the web, developing my applications for work, and doing general web browsing. It worked okay, but every month there were new security patches out to block some hole found by a hacker, or to stop the virus of the month. I was tired of the pop-ups, the spam, and all of the other crap that spammers out there were doing. Firefox isn't immune to these attacks, but because so few people use it, spammers don't target it as much. This means that it is relatively less likely to get attacked by some spyware app. Plus, the Mozilla team (the folks who write the code) are constantly doing things to try to improve the browser. You can have live bookmarks that show you the latest stories on your favorite sites, an integrated Google search bar, customizable themes (skins), and just about anything else you might want to hook into your browser.


Of all of the questions that I get about computer problems, the most common one is a slow computer with too many pop-ups. This is the first and easiest step you can take to help alleviate that problem.

A Couple of Movies

Aside from the great fun of surprising Jenn with a visit from her college buddies, we also took in a couple of videos.

Harold and Kumar go to White Castle is a stoner movie. It is by the same folks who did "Dude, Where's My Car", and it really shows. Jenn and I like Dude Where's My Car a lot, and we were hoping that this one would be good too. It certainly had it's funny moments, but it was just too over the top. That, and it came off a little too thick with the "paid advertisement for White Castle" feel. I mean, nobody talks about White Castle burgers as the perfect burger. Sure, they hit the spot when you crave em, but I've never referred to them as the ultimate burger. I currently hold the record for most slyders in a single sitting at work (17), so I think this makes me somewhat of an authority on the matter.


We did laugh at some of the antics in this movie, but it just doesn't have any staying power. Some comedies are funny even when you've seen them several times. This movie doesn't have that kind of appeal. We groaned at some of the gags, too, as they were just so over the top that they went from funny to just plain stupid. I suppose if we were blazed we might have thought it was funny too.





That was on Friday night. Sunday night we watched The Village. This is another suspense film by M. Night Shyamalan. As a writer, producer, director, Shyamalan hit it big with The Sixth Sense. Everyone was wowed by this suspensful movie with a surprise twist at the end. He then took the same formula and cranked out Unbreakable, Signs, and now, The Village. The Village is set in a creepy pioneer america town where everything appears nearly utopic. Families enjoy a simple life together, operate without any currency, and give thankful priase for their time. The only dark part of life in the town is the fear of "those we do not speak of" who live in the woods. Watchman keep guard over the border between the woods and valley to be sure no one passes into the woods, and to give warning if a creature comes into the valley. The plot line follows Ivy, a young woman who was struck blind at a young age, and her courting of Luscious, a quiet boy who has always shown affection for her.



Unfortunately, this movie is all too predictable, a sad trend in Shyamalan's latest movies. Within the first few minutes of the film I told Jenn what I predicted for the end, and sure enough, it all played out. Predictability didn't ruin the film, but it certainly detracted from the suspense. In all, The Village is not a bad film, but don't expect the same "I've gotta see that again" sensation you had from The Sixth Sense.


Long Overdue Update

I have been busy at work, and in the evenings I'm spending time with Jenn and Corbin or playing video games, so I've been a slow to update this site. Here is a quick catch up on:


Movies we've seen


  • I, Robot - we both liked it. Good sci-fi/action flick. Get a bowl of popcorn and enjoy.
  • Spider-Man 2 - Didn't really thrill us. Just seemed to plod along and really go nowhere.
  • Chronicles of Riddick - I liked this one pretty well. The special effects are pretty cool. Riddick gets endowed with some superhuman powers, which was kind of weak, but otherwise a good action / sci-fi film.
  • Anchorman - We both thought this would be a lot funnier than it was, based on reviews. It had it's moments, but it was just more of Will Ferrell doing his schtick.
  • Bad Santa (Badder Santa: Unrated actually) - Jenn and I laughed way too hard throughout this film. It was soooo funny.... but soooooo raunchy. Definitely not a family film, but very funny.
  • Napoleon Dynamite - I already reviewed this one, see below
  • Shaun of the Dead - This one is a riot. Given, it is british humor, so a bit dry at times, and the language is very, shall we say, coarse. But moments in this film stick in my head and make me giggle everytime I think about them. Very funny film.
  • Once Upon a Time in Mexico - This is the follow-up to Desperado where Antonio Banderas plays a gun-toting mariachi with an attitude. It was on one of our premium channels and we watched it almost by accident. It had some clever moments, but otherwise completely forgettable.
  • Starship Troopers 2 - I loved the first Starship Troopers movie. It was just the right amount of tongue-in-cheek, over the top action / sci-fi film that makes me laugh and watch over again and again. I thought I might like ST2 for the same reasons. I was oooooh, so wrong. This movie really stunk up the place. No wonder it went straight to DVD.

Beers
Now that I have a fridge in the basement, I have stocked it with a variety of beers to try.

  • Sam Adams Light - This is my go-to beer now. I used to be a Coors Lite man, but I just can't take the stuff anymore. Sam Light is the way to go.
  • Indiana Amber - A fairly nice beer with a little more umph to it. This one has a nice flavor.
  • Pete's Wicked Ale : Wanderlust - I picked this up on the recommendation of a work buddy. It's a creme ale. I can't really tell that it has a unique flavor, but the texture of it is definitely smooth.
  • Barley Island : Brass Knuckles Oatmeal Stout - There is a variety of oatmeal stout that I love. Unfortunately, it is really expensive, so I rarely have it. Barley Island is a local brewery here in Noblesville, and Jenn spied their version of oatmeal stout in the store on her last trip for groceries. She has wanted to have dinner there for a while, and was hoping that if I liked the beer, it might hasten the trip. Unfortunately, the Brass Knuckles is, well, like getting punched with brass knuckles. I haven't had my head snap back from a quaff of beer in a long time, but I was feeling some whiplash after my first taste of this stuff. I downed the bottle, and I'll finish the six pack (eventually), but this will not go on my "buy again" list. The after taste has the nice oatmeal stout flavor that I like, but the drink itself has something to it that just doesn't go over with me. Thanks for the thought, Jenn, but I'll be skipping this one. We can still go to Barley Island though.

Video Games
There are several video games that I have on my to-do list to finish. Some I've had for quite a while, and some I received recently.

  • Paper Mario 2 : The Thousand Year Door - this was a fun role playing game that had the cast and crew of the super mario series. It wasn't all that difficult, at least not until the last chapter. Still, the Mario series of games always seem to have some intangible fun quality to them that make them really enjoyable.
  • Metroid Prime 2 : Echoes - Now that I'm through with Paper Mario, this is my late night addiction. The first Metroid Prime was awesome, and this one stuck to the same formula.
  • Final Fantasy Tactics Advance - I've been playing this one for a couple of months, and I've put plenty of hours into it, but I have yet to finish it. The game itself is pretty simple: play through a set of chess matches where each piece has special moves and defensive powers. It is kind of relaxing to play as it doesn't require any expert timing or anything, just some though into the strategy you will use to win each match.
  • Fire Emblem - Almost identical to Final Fantasy, this one is on the list to finish as well.
  • Neverwinter Nights - I got this for my birthday in 2003, and I still haven't finished it. The time investment necessary just to get back up to speed and play through the next quest in this role playing game is pretty intense, and I just haven't put the time into it yet. Still, this game is a lot of fun, and the graphics are pretty amazing. I'm sure I'll get around to finishing it eventually.

So what else is new? Well, I just finished up my Advanced Managerial Econ mid-term. Work is slowing down a bit as projects get finished up, but I'm sure that I'll be on to other things soon. Jenn's birthday is on Friday, and we are looking forward to a nice night on the town. Karla volunteered to babysit for us so we could have a little date. Corbin is toddling around, and we are having a blast helping him to learn to walk.

Who's Line is it Anyway?

I don't watch the show often, but this bit is hilarious.

Movie Review : Napoleon Dynamite


What can I say about this movie? I had seen some of the previews for it a while back when it was in theaters, but I never really knew what to expect out of it. I had no idea what the plot was, other than it centered around a kid named Napoleon Dynamite. Jenn and I watched it over the break, and the more I think about it, the more I really liked it.


Now, before you run out and rent it, let me temper that comment. This movie is not for everyone. It is not your typical hollywood fare with big action, special effects, laugh out loud comedy, or any of the usual stuff. This movie is slow and dry. It kind of struck a chord with me though. Napoleon is a total outcast at his school. He is a bit of a rube, but he has a mild level of self-confidence that allows him to persevere. That, and a wildly overactive imagination that leads him to believe in things like Ligers (a cross between a lion and a tiger) and his own expertise with a bow staff. All of the dialogue in the film is delivered in a very monotonic fashion. The language is clean (no swear words). When you sit and think about what some of the characters said, the comedy just gets better and better though.


The story of the film, if there is one, is one of geeky triumph. Napoleon and his friend Pedro team up to get Pedro elected as class president. Pedro is running against one of the popular girls at school: Summer. Pedro had made an unsuccessful attempt at wooing Summer early in the film, but it doesn't really factor into his reason for running.


I think I like this film because I can identify with parts of it, and because it reminds me of some of the kids I went to school with. I wasn't a total freak, but I wasn't running with the most popular clique either. Some of the kids who rode my bus were deep into their Dungeons and Dragons fantasy. Scenes from the movie reminded me of those people and those times. I think that's why I liked it. That, and I like goofy stuff from time to time.

Book Review : Gung Ho!


Gung Ho!

"Turn on the People in Any Organization"

by Ken Blanchard and Sheldon Bowles

When this book was first recommended to me, I thought of the 80's movie with Michael Keaton. It turns out, several books and movies have used the title Gung Ho! In this case, this book is not the story of the movie, but instead the story of a woman who is placed in a doomed management position. The book is told in story form, relating the tale of how the supervisor befriends an outcast at the plant, and learns how this man who is an outsider to the rest of the plant has turned his particular production center into the most profitable, most efficient area not only within the plant, but within the entire company.


There are three central tenets to the book. Unfortunately, to simply tell you what those are would probably turn you off from the book. To be honest, when I read the back cover and read through these tenets, I thought the book was going to be a joke. Just another pile of crap that some authors churned out for the deep pockets of the management and leadership market. I was pleasantly surprised to find that the central ideas of the book aren't just a bunch of marketing hokum, but when placed in the context of the book have surprising effect.


I can't give this book enough praise. Whether you are interested in becoming a leader or not, this book is an excellent read and provides a great perspective on how the right team attitude can lead to great things. It is an exceptionally easy book to read as well due to the storytelling form that the message is presented in. Paul and I have both read it, and we easily finished it in a single sitting of less than three hours. I hope that you will enjoy it as much as I did.


Back to the Grind

Man, what a great vacation. I took the last two weeks of the year off from work, and it was awesome. I didn't have to worry about deadlines, meetings, tasks, or anything else. I got to spend a lot of great quality time with Jenn and Corbin. I got to play video games all day. I was able to veg out on the couch and watch a bunch of movies. It was sooooo relaxing.


And now, it is back to the grind. I really wish that I could be at home right now, chasing Corbin around the house or plunked down in front of a video game. I got pretty spoiled on my break. So what else did I do? I read a bunch of books, I watched a bunch of movies, and I played a couple of video games. Hmm... maybe I should do a bunch of reviews....

It's Alive!!!

It's alive!!! The old Mac has had some life breathed back into it. The new power supply arrived today, and the old dog has been running ever since I installed it. I was a little disappointed to find that my old game (Warlords) had been deleted and replaced with Sim City 2000, but I was awash in nostalgia as I tinkered around with it. I played through all of the old Mac sounds. I thought it was really cool to find a sound that I made back in high school (a belch, how eloquent). I also discovered that my cousins (Jake and Kaitlyin, I know where you live), had added some sounds of their own, along with some "clever" jokes. The Mac still runs fantastic. It has system 7.1 loaded, along with Microsoft Word, Excel, Canvas, and the usual Mac fare. It also has some additional software for the HP printer (which I have) and the Teleport Modem (which I don't have). I'm debating if it would be worthwhile to spend another $30 to get a NuBus card and an ethernet adapter. If I did, I could put the Mac on our home network. I'm not really sure it would be worth the effort though, as I can currently sneaker net files over to it if I need to. I'm going to scrounge around the web for a while tonight to see if I can find a free download for the Warlords game. I'm sure that all of the original disks are long gone. It made me feel like a kid all over again to be playing on the old Mac!



It's alive!

The offending power supply

A Bigger Burrito


Jenn and I love QDoba. More generally, we love Mexican food, but QDoba has some awesome food. We are signed up for their e-mail coupons, and every other month we seem to get a buy one, get one free burrito offer. So today Jenn took advantage of another of those coupons for our dinner. Sometimes I just want a veggie burrito so I can enjoy all of the cilantro, rice, and beans. The steak and chicken burritos are both really good too, but the rice and beans are so good on their own that sometimes that is all you need.


Over the course of time, we've noticed that the veggie burritos are larger than the regular burritos. Not just a little bit large, but MUCH larger. Today, when Jenn got home, my veggie burrito was a good 50% bigger than Jenn's chicken burrito. I think the servers at QDoba must feel bad, like they are ripping me off or something, if they don't put any meat in my burrito. So to make up for it, they double up the rice and beans. Today's burrito was so big that it split through the tortilla. I couldn't finish the thing. It was just too much. Koby thought that was just fine, as he got to enjoy the rest of it. So if you are really hungry, go into a QDoba and ask for a veggie burrito with black beans, hot sauce, sour cream, cheese, and lettuce. You will be lucky to finish your meal.

Winter Break


Woohoo! It is vacation time! I have been feeling pretty stressed out lately with the deadlines and workload at the office. It was really getting to me over these last few weeks. Fortunately, I managed to get all of my assignments completed by the time my vacation started. I had scheduled to take off the final two weeks of the year, and now I can do exactly that without feeling an ounce of guilt. These last two days have been awesome. I've had no problem falling asleep. I've been more pleasant to be around. I've spent some quality time with Jenn and Corbin. It has been awesome.


Yesterday, I finished reading one book and made it all the way through another. I finished Patton on Leadership, a book about applying the war general's maxims to the business world. It was neat book to read. I wasn't all that familiar with Patton's exploits, and I've never seen the movie with George C. Scott. The book was broken down into several single page elaborations of quotes from General Patton. It discusses (in a very macho kind of way) how the same principals that guided Patton during the war can be applied in business. When to step in, when to get out of the way, making decisions, leading.... it's all covered. It is easy to pick the book up and flip to any page. There is no reason that it has to be read front to back. Being written this way, it is a little difficult to sit down and read in one sitting though, and there is quite a bit of redundancy as the same concept is repeated again and again.


The second book I read was Gung Ho! This is another book off of the list of reading for our leadership program at Flexware. It was another quick and easy read, and much easier to finish in one sitting. Gung Ho! covers the story of a manager who was setup to fail at a plant that was had poor production results. She had pointed out to her managers how one plant was going to fail, and was rewarded with the sink or swim job of making it profitable. Her boss had hoped it would be a convenient way of getting rid of a nuissance employee who just made him look bad. The book covers how the victim of this arrangement discovered some very effective methods through an unsuspecting source to motivate her plant to the top. I won't cover the main points of the book, as to discuss them out of context would make them sound, well, stupid. But in the context of the book and the story, the concepts are great ideas found in several texts on how to motivate your people to do their best work, and to raise the morale of any place of business.


As for other plans for the break, I hope to spend a lot of time with Jenn and Corbin. I've been working so many hours lately that I hardly see Corbin, and when I do he is really cranky and ready for bed. Jenn has been bearing the brunt of the child raising duties, and I really love her for all of the support she has been giving me, but I need to jump in there and help out. I also want to pass my next Microsoft exam. I've been putting it off for some time, but the projects I have been working on recently cover the topic that the exam focuses on (distributed computing architectures in .NET). I think with a little studying, I can be ready for it in a week or so. I need to get some Christmas shopping done too, but otherwise, I hope to just relax and enjoy my time off.


I hope everyone enjoys the holidays. If I don't get a chance to tell you in person, Merry Christmas and Happy New Year!


Late Night


Some nights, I don't mind staying up past three in the morning. That is, if it is the weekend and I'm playing games into the wee hours of the morning. Tonight is a different story. At work, we've been fortunate enough to get a boat-load of work at the end of the year. Unfortunately, everyone is completely tapped out on time. I've been falling further and further behind on stuff that I'd like to have done, and my deadlines just keep creeping closer. So tonight I bit the bullet and pulled an all-nighter at work. I had a list of bugs to work out of one project, some analysis to do another, and initial development to do on a third. Right now I'm taking a little ciesta to stay sane, and to fix up a computer that my brother-in-law passed along from a friend. It looks like they reformatted it and reinstalled windows, but got stuck there trying to get drivers installed. So far, I've got the rest of the drivers installed, and I'm working through all of the windows patches that need to be applied. I've done my bug fixing and analysis work. After I'm done with this PC upgrade, I'll move on to my development. I've had two cups of coffee, and that has helped me to stay alert, but the effect is starting to fade. I remember all too well from my college days the effect of a third cup of coffee at this time of night. My stomach would start cramping, I'd get all jittery, and have no chance of getting anything else done. So I'm going to stay away from the cup of coffee and munch on these tasty caffeinated mints :-).


One thing I am kind of looking forward to is that Jenn said that she would come in with Corbin whenever he wakes up to have breakfast with me. I love breakfast food, and I'm looking forward to heading out to IHOP, Dennys, Papas, or wherever we go. Mmmm... breakfast.....


Vortigaunt and I, roasting a head crab on an open fire.

Sad Mac

We did some shopping today, and I picked up a 3.6V 1/2AA battery at Radio Shack. Although I'm sure it was needed, it didn't solve the greater problem of getting the thing to boot. After some more testing, I think I've determined that the root of the problem is a dead power supply. I cracked it open and watched it in operation. There is some type of electro-mechanical contact switch that is getting thrown, and immediately lost. I can see the switch move, but it never stays. Occassionally, it will stick down for a second and I'll hear the happy mac chime. So I'm pretty sure that the motherboard, hard drive, floppy, and everything else are okay. I checked out eBay, and it looks like I can get a complete Mac IIsi minus a hard drive for $6 (plus $8 shipping). I'll probably get it and use it for spare parts. I'm still not entirely sure what I'm going to do with it once it runs (other than play Warlords). Any suggestions?

Return of the Mac



Ye Olde Mac IIsi returned to me this weekend. This was our family computer while I was in high school. The Mac is now getting close to 15 years old, and might still be functional. My grandmother had been using it for the past couple of years for web access, e-mail, and solitaire. A couple of months ago she started complaining the it wouldn't boot up anymore. My dad searched on the web and got a great deal on a Dell as a replacement. She has since been setup with a DSL account, and should be back on her way. I asked my dad if I could get the old Mac, mostly out of nostalgia for it, and to see if I could get it running again.


I got it all pieced back together and turned it on. It fired up on the first try to the smiley Mac. The first thing I noticed was the smell of smoke and air fresheners. My dad told me that the Mac had been connected to an outlet that was controlled by a light switch. At first, I thought it was a simple matter of the light switch being off that caused the beast not to boot. I was playing around a bit, and noticed that it was set in Black & White mode. I knew from the years of using it that it supported color, so I opened the control panel, and switched it to color mode. Bad move. The IIsi immediately shut down. I hit the power key on the keyboard, and the power light blinked for a second, but it was right back out. This must be what my grandmother had been talking about. As the PC was very old, I wasn't sure if this could be a dust issue (dust in a PC can create shorts), a blown motherboard, or something else. It had always been connected to a very nice surge suppressor, but that didn't totally count out a massive surge causing problems. Also, smoke and spray air fresheners can eventually coat the electronics and cause a short.


I opened the case and started poking around. The first thing I noticed was how cleanly the old Mac was assembled. If you open a new Dell, you'll find that everything is neatly wire tied away, but you still end up with cables criss-crossing the case and a general look of confusion inside the case. The Mac was very clean and tidy. The connectors on the motherboard for the floppy and hard drives were located right next to the mounting position of the drives within the case. This made for a very short cable run (a couple of inches, if that). No tools were needed to dismantle it, everything had locking tabs that made it easy to remove and reinstall the parts. The power supply even snapped into position. In fact, the only power cable run in the entire case was from the motherboard to the hard drive. Kudos to Apple for a great design. After some looking around, I noticed a Lithium battery in the center of the board. This set off a flag in my mind. Most PCs have a battery that supplies power to a segment of memory on the mainboard. This can be used to store settings, keep the system clock running, or any of several other options. In the Macs case, the battery supplies power to the segment of memory that retain settings. I realized that it was when I changed settings (black and white to color) that the Mac powered down. I grabbed an LED and checked for any voltage on the battery. It was totally dead. So I'm suspecting that this is the root cause for the Mac not to boot. I can order a new batter online for $6, or pick one up at Radio Shack for $15. Of course, I could just go on eBay and buy a complete Mac IIsi for $25, but that wouldn't be nearly as fun as reviving this old dog.


My mission now is to locate a 3.6V 1/2AA size Lithium battery and attempt to revive the Mac. Once I do, I'll be happily playing Warlords again!




More of the Same

I know, it seems like all I post about is Half-Life 2, but there was another surprise this week. The multiplayer death-match version of the game was released! That was something that was sorely missing when I first installed the game. I'm glad to see that it has been added. I played for a little bit. The gravity gun is included in the game. It makes for some interesting fights. For instance, you can pull the toilet out of the stall and kill someone with it. They even have an icon for it. Killed by toilet. Talk about your embarassing ways to die.


I'm playing through Half-Life 2 for the second time now. I had a blast playing through the first time, but I think I missed a bunch of details. So this time through, I'm really taking my time and taking notice of the details. For instance, in Dr. Kleiner's lab, I noticed a sticky that mentioned finding more watermelon for Lamaar (his pet head crab). It got me to wondering. Do head crabs like watermelon? If I bring a watermelon to Dr. Kleiner, do I get a fun easter egg? I'll have to find out!


I love this game.

Game Over: Half-Life 2

I beat Half-Life 2 the other night. It took me just over a week. It was a great game, and even though it had some quirks (mostly in the licensing department), I'm very satisfied with the game. Now I've moved on to playing Counter-Strike : Source. This is the only way (currently) to play multiplayer using the Source engine from Valve. In Counter-Strike : Source (CSS), you and a squad of fellow players are teamed up against another, similar squad of players online. One group plays as the terrorist team, and has the objective of bombing a target, taking hostages, or simply killing the other team. The other team plays as the counter-terrorists. This group is tasked with diffusing the bomb, rescueing hostages, or killing the other team. Each group has a unique set of weapons and equipment available that can be purchased. Rounds last about three minutes each, and money is awarded after each round. Surviving a round earns you the right to keep everything you bought in the previous one. Once out, you can chat with the other players and watch as the action continues to roll. With a three minute maximum round time, it doesn't take long to be back in the thick of things.


I've learned a couple of things in my first few nights of playing CSS. First, I suck at it! You get to choose the name other players know you as, and I chose EasyTarget. It seems to fit. Most rounds I take headshot with in the first minute. Occassionally I get lucky and get a kill or two in a round, but I'm usually heavier in the death column. Luckily, it is a team effort, so my team can win even if I die in the first minute. The second thing I learned is that I can't play this game for three hours and expect to be able to fall asleep immediately. I stopped playing last night around 3am, and I tried to dive right into bed. Big mistake. I was still all twitchy and amped up from playing. As you play, your eyes dart around the fielf of view, looking for targets and trying to find the vantage point that the sniper is going to ace you from. Your heart rate rises a couple of notches. That lingered for a good while after the game. I'm not sure when I finally fell asleep, but it certainly wasn't right away.


If you are an avid Counter-Strike player, and you have some notes for me, please leave a comment. Or, if you just want to kill an EasyTarget, jump online and start looking for me. I'll be the dead guy three steps from the starting spot.

Good Feeling

It is such a good feeling when you finally solve a problem that has been bugging you for a while. That's how I feel right now. I've been trying to get my remoting components moved over to another machine that will act as our dedicated testing / development environment. I kept running into strange errors and it never worked properly. Tonight, I finally found the solution! I won't go into the details, but it boiled down to uninstalling everything, and reinstalling from scratch. Now it is working like I expect! Now I get to go take a nap and get ready for our mini-game / quiz in the morning.

Serial Ports

Serial Ports are a common tool we use to communicate with devices at work. Usually, if a device has a serial interface, you can breath a sigh of relief that you are going to have success with communicating with it. There are still some things to watch out for though. Getting the baud rate, parity, data bits, and stop bits configured properly is critical. I helped a colleague at work today with just such a problem. He was trying to receive data in his .NET client from a bar code scanner that we had configured in the Descarte OmniServer OPC server. He would get the initial data change event when the OPC item was created, but nothing after that. I wrote the prototype he was basing it on, and I knew that it worked, as I had used the same barcode scanner in testing it. So we started poking around. First, we brought up HyperTerm and looked to see if we were getting any data. Sure enough, data was coming across. Then we went back to the OmniServer configuration to be sure that our topic was configured to use COM1, and that the device was using the right protocol, in this case an Intermek protocol. It was, but still, no data. So then I got to thinking, "I wonder if HyperTerm is using a different configuration". That was it! In HyperTerm, we were setup for 9600 baud 7-e-1 configuration. In OmniServer, we were looking at 9600 baud 8-n-1. Big difference! The barcode scanner was sending 7 data bits, but our OPC server was looking for 8 data bits. That's why it never sent a data change event. We got it reconfigured and it worked beautifully from there.

Game of the Moment: Half-Life 2

That's right, it finally shipped! Half-Life 2 is now sitting on store shelves, just begging to go home with you. I've been looking forward to this game for a loooong time. It was originally scheduled to be released in September of 2003. That's right, 2003. Well over a year late, I had a Simon gift card I had been sitting on waiting for the release of the game. I got the card last Christmas, so I guess I can consider this a very belated Christmas gift.


So how is it? AWESOME! It is totally engrossing. I sat down at 7pm last night and didn't stop playing until 2am. That means I'm a bit of a sleepy boy today, but it was time well spent in my mind. I'm not going to give a full review of the game, as the game media have tons of coverage already. However, there were a couple of things that struck me right off the get go.


First, lets talk about Steam. Valve developed Steam as a platform for distributing their games, hosting on-line games, and communicating news and updates to players. Steam is an application that runs in your system tray, and you can use it to launch your games, start a multiplayer game, chat with friends, or buy new Vavle games. When you buy a game on Steam, it is downloaded to your computer. If you login to Steam from someone else's computer, your games are automatically downloaded. So you can play anywhere that has a web connection. This is great if you play at a lot of computer labs, cyber cafes, or libraries, as you don't have to carry your media (CD / DVD) around with you everywhere you go. There is a drawback to this though: you must be online to play. Once you've signed in, you can check a box for offline play, but you still may need to get online from time to time. This means that you are at the mercy of your ISP and the Valve content servers when you want to play. We have a pretty fast computer at home, and the load times were still really long between chapters due to the latency from authenticating with the Valve content server. This really took away from the emersiveness of the game. It isn't any fun to be in the middle of a heated chase, and then have a two minute pause while the game gets permission to load the next level.


I decided to purchase the game from a brick and mortar store rather than from Steam. I wanted to have the physical media so I wouldn't have to wait all day to download it. I had also hoped that it would allow me to play the game without connecting to steam. No such luck there. Even though I was able to run through the entire install without connecting, I had to login to Steam before I could play the game. When you login to steam, you give your CD-Key and it gets associated with your Steam account. Then you get a set of keys for unlocking the game files. The entire install process took a full hour. Installing the files took about 20 minutes, and getting the keys and unlocking the content, and then downloading new video drivers took the rest of the time. The installer is pretty vanilla too, nothing to keep your interest for that hour. Be content with starting the install, and then finding something else to do for a while.


Which brings me to another point: purchasing the game. Like I said, I wanted the physical media for install, and I got that. I bought the Collector's Edition of the game, which included a DVD containing Half-Life 2, Half-Life : Source, and Counter-Strike : Source, as well as a t-shirt and Prima game book. The price ran $87. To get the regular edition at the store is $55. On steam, the regular (Bronze) edition is $49.99, the silver edition (which includes Half-Life : Source) is $59.99, and the gold edition is $89.99. The gold edition will get you some posters, a hat, a t-shirt, a sound track, and various other stuff sent in the mail. I wanted to the Collector's Edition so I could get Half-Life : Source, which is the original game upgraded to use the new game engine. Now that I've been through the process, I think I would have been better off buying the game on-line on steam. I was interested in the game, but not so much in the extra swag. I could have saved $25 by going on Steam and getting the Silver edition, and I still would have had everything I wanted. Plus, with our cable internet connection, I could have just started the download at night and play the next day. Oh well, live and learn. So if you are considering purchasing Half-Life 2, and you have a fairly speedy web connection, I would definitely recommend purchasing from Steam. If you have a slow web connection, go ahead and get the store copy. Be warned that the $55 version in the store has five CDs rather than a DVD though.


Graphically, the game is pretty amazing. I don't have the worlds most incredible graphics card at home, I have the base Dell configuration (NVidia GeForce 4 440). It works well for everything we need, but doesn't support all of the fancy rendering stuff that the $500 cards out on the market now do. That means I can't take advantage of all of the special effects in the game, but the game itself plays very smoothly. There is a little chop right after a level loads, and when the action gets fast and frantic, but overall it plays very well on my machine. And some effects are still pretty stunning, even on my older graphics card. The water rippling effect in the game is mesmerizing. And the facial animations of the characters lends a lot to their performance in the game. They aren't the stiff manequins with a hinged jaw anymore. They now smile, frown, raise eyebrows, blink, and do everything you might expect a real person to do.


At the very beginning of the game, I was reminded of Schindler's List. You enter City 17, a no name chunk of city that appears to be in a police state. Civil Patrol is constantly monitoring your actions, and doling out scheduled beatings to the citizens. Propaganda is blared from video screens mounted throughout the city, coercing everyone to give up their sense of instinct, and just give in to the Combine. The Combine is an alien force that has somehow overtaken the planet. A puppet human government is in place, headed by the Administrator, Dr. Breene. Dr. Breene coordinated the surrender of earth to the combine, and as reward they have appointed him the head cheese of the puppet human government. All of the people not in Civil Patrol uniforms are wearing blue denims, much like a prison uniform. As you arrive on the train into town, you see that the people are stripped of their luggage, and shuffled into a line for questioning. Out on the streets, conversations are forbidden in the open, so people huddle together in whatever shelter they can find. All of the doors on the apartments have been ripped off to allow for easier surveilance, and raids are a routine of life. You learn from some of the inhabitants of City 17 that the Combine forces have been working to limit the number of births, and that drugs have been added to the water supply to cause amnesia. Many people can't remember how long they have been in the city, if they have a family, or even who they are. It's a very bleak outlook for mankind.


And this is where the game picks up. You learn of an underground railroad of sorts that shuttles people out of the city. From there, a resistance is forming to combat the Combine. The resistance is headed by your old group of pals from the Black Mesa facility, and when they learn of your arrival, they are thrilled to learn that their messiah has returned. It seems that your story from the first game has taken on a somewhat mythical proportion.


I won't spoil the rest of the game for you, but there are some moments that are just amazing. I'm totally hooked, and I think anyone could enjoy this game.

Poker Night




Poker night with the boys was a lot of fun. We had five players tonight. I was hoping for more, but it turned out to be a great time. Anthony, Dave, Jason, Tim, and I all got together around the table for a couple of games. The first game had money on it. The pot was a whopping $25. Not much, but enough to make it interesting. The first game ran from a little after 8pm to a little after 10. Jason was the big winner, Anthony second, I took third, then Tim, and Dave took the boobie prize (a Canadian penny). We played a second game just for fun, with almost the same result. It was a great time, and I hope that we get to do it again soon. This was my first opportunity to use my birthday gift, which was a poker table topper. Dave brought by his poker chip set, which is a nice set of real casino style chips (not the dishwasher safe interlocking plastic pieces, but real composite chips with metal inserts). It was a great time among friends, and I hope we do it again soon.

Fast Week

Has it really been a week since i posted anything? Wow, time has been flying by lately. I spent three days this week off-site at a couple of different customer locations. I'm still working on the same stuff: upgrading a mainframe application, porting a VB / COM+ / InTouch application to .NET, and various other tasks. I've also started a leadership initiative at work that will hopefully see me take on slightly different responsibilities, and lead me in new and interesting directions. This weekend I'm going to host a poker night. One of my birthday gifts was a poker table topper, and I'm anxious to try it out. We play poker (Texas Hold 'Em) every day at lunch, and I really enjoy it. We don't play for money, but it is still fun to try to figure out what other people are playing with, and trying to win all the chips. Poker has become quite popular again with all of the World Poker Tour and Celebrity Poker shows on TV now. It is a fun game, and it requires equal parts math, people skills, and luck. I'll post an update after the poker night with an update of how it went!

It Works!

I've won my fight with .NET Remoting! Thank goodness for Ingo Rammer and Google, as those two resources provided the answers to all of the "gotchas" that bit me on this. My final solution involves a shared base class assembly, which defines the abstract base class for each of the objects exposed by my web service. Next, there is the server implementation, which is composed of a server activated class factory serving up the client activated remoted objects. And finally, there is the client piece, which first gets an instance of the class factory, and uses that reference to get instances of the client activated objects.


First, let's talk about the shared assembly. This is the easiest one. I needed to create, at a minimum, two abstract classes in my shared assembly. The first abstract class describes my class factory.

public abstract class ClassFactoryBase : MarshalByRefObject
{
   public abstract GetCAO();
}

So far so good. Now comes the first gotcha I experienced. My client activated object is exposing the functionality of an existing COM object on the server. So my first idea was to simply implement interface exposed by this COM object. This was a bad idea, and caused remoting to barf big time. So instead, my base class for the client activated implements the interface, but doesn't put it in the declaration.

public abstract class CAOBase : MarshalByRefObject
{
   public abstract bool COMObjectMethod();
}

All of this code went into a file I named Shared.cs, and I compiled it to an assembly, Shared.dll.
Next, I needed to implement the factory and the client activated object.

public class ClassFactory : ClassFactoryBase
{
   // Generic constructor required for Remoting
   public ClassFactory()
   {
   }

   public override GetCAO()
   {
      return new CAO();
   }
}

public class CAO : CAOBase
{
   internal Interop.ComObject comroot;

   // Generic constructor required for Remoting
   public CAO()
   {
      comroot = new Interop.ComObject();
   }

   public override COMObjectMethod()
   {
      return comroot.COMObjectMethod()
   }
}

Here, the ClassFactory creates a new instance of the CAO object on demand and passes it back. The CAO object creates an instance of the COM object to be exposed. The methods of the CAO object then pass through the COM object layer. These classes I put in a file called server.cs and compiled to an assembly named Server.dll

I wanted to use IIS as the host for my remote classes, so I needed to do a couple of things to enable this. First, I created a virtual directory in the IIS admin. In that virtual directory, I created a bin directory. I copied my Shared.dll and Server.dll into the bin directory, along with the interop.ComObject.dll. Finally, I created a web.config file and placed this in the root of the virtual directory. The web.config looked like this:

<configuration>
   <system.runtime.remoting>
      <application>
         <service>
            <wellknown
               mode="SingleCall"
               type="ClassFactory,Server"
               objectUri="ClassFactoryURI.soap" />
            </service>
         </application>
      </system.runtime.remoting>
   <system.web>
</configuration>

This was another stumbling block for me. Originally, I had excluded the ".soap" extension from my objectURI. I had read something that indicated that it was unnecessary when hosting your object in IIS. This was dead wrong. Unless your object URI ends with ".soap" or ".rem", IIS will not pass the method calls on to the remoted object. This took me a while to figure out, so don't make the same mistake. Fortunately, everything else was cake from this point, as IIS takes care of all of the nastiness of load balancing, connection pooling, and security for connecting to your remote object.

Finally, it's time to implement the client. Here is my quick and dirty client code:

public class Client
{
   public static void Main( string[] args )
   {
      ClassFactoryBase factory =
         (ClassFactoryBase)Activator.GetObject(
            typeof(ClassFactoryBase),
            "http://remotinghostserver/VirtualDirectory/ClassFactoryURI.soap" );
      CAOBase cao = factory.GetCAO();
      if ( cao.COMObjectMethod() )
      {
         MessageBox.Show( "Success!" )
      }
   }
}

This code goes in Client.cs, compiles to Client.exe, and is deployed with only the Client.exe and Shared.dll. I didn't even need a config file! This is because I'm using the Activator.GetObject method to create an instance of my object. Why am I doing this? Well, another option would be to use soapsuds.exe to generate the metadata for my remoted object and reference this when compiling my client. When done this way, the client can simply use the new keyword when appropriate remoting configuration information is in the app.config file. Very convenient for the code. Unfortunately, soapsuds.exe is broken. For some reason, when you host your remoting classes in IIS, soapsuds makes mistakes when attempting to generate the metadata. The result is that you will successfully expose your class factory, but will get a type case exception when attempting to get an instance of your CAO. This is seriously bad news for the solution I needed to make. Another option would be to use share interfaces (as opposed to share base abstract classes). When using share interfaces, you can again configure the app.config file to allow for the new keyword to be used. However, there is another gotcha here. When using shared interfaces, the CAOs instances can not be passed as arguments to other methods on other remote objects. For our solution, several of the CAOs need to interact with each other. Using abstract base classes allows us to pass these references as arguments to our other remote objects. The only drawback here is that we are forced to use the Activator.GetObject() call to instantiate our remote object rather than the new keyword. It's a small price to pay I think.


So what do I do from here? The next thing I need to do is verify that the object lifetime is being managed properly. I don't want to strand a bunch of instances of my remote objects on the server. So my next effort will be to investigate CAO object lifetime leases. Once I get there and interesting information to pass on, I'll be sure to post it here.

Game Room

Today, we piled the family in the Bravada and went on a little adventure. Our first stop was to the Lowes where we needed to return fireplace doors. Jenn had ordered a nice set of fireplace doors from the Lowes website. They were special ordered, and we waiting anxiously for almost a month for them to arrive. To our major disappointment, the website failed to notify us that these doors were for installation on a MASONRY FIREPLACE ONLY! Crap! We have a prefab fireplace, and there was no way it was going to work. So today was our day to trudge into Lowes to return the doors. We were afraid it was going to be a big hassle, as they were special order. Lowes impressed us again with their customer service. They took it back and gave us a credit on our credit card, no questions asked. We so prefer going to Lowes over Home Depot for their service. The local Home Depot has terrible service. We went there one time to price carpet, and it was as if we were asking the guy to give blood or something. No one wanted to help.


I'm rambling. Back to the adventure. Our next stop was to eat some lunch (Burger King), and then over to Watson's. Jenn had read that Watsons was at one time a vendor for fireplace doors for our particular model fireplace. Turns out, they stopped selling them a couple of years ago, but we still had fun wandering around the show room. Then, we got into trouble. We saw a display room, a game room, that had everything we wanted for the basement. There was a pool table, a card table, a bar, an electric fireplace, a wall table, bar stools, chairs, and gaming equipment. It had the works. And it was only $7,500! We were sooooo tempted to break with our budget and buy it all, but reason got the better of us. It is getting close to Christmas, and we had already set our Christmas budget, which was nowhere near the cost of the room. We're still paying on the car, and we are overpaying on the house payment so we can get rid of our PMI. Our budget is really tight right now, and to get the game room would have been fun, but it would have been murder on our money situation. Still, we drove home trying to think of ways we could round up that kind of money in a hurry. There was another room there that was priced $1,000 lower, missing just the fireplace and wall table. That would have been just as good. We mulled over getting extra jobs, asking for extra hours, garage sale.... how could we do it.


By the time we got home we realized that there were other things on our agenda that we needed to look after first. Sure, it would a TON of fun to get a fully equipped game room. However, I've needed a new office suite since we moved back from Maryland. We also want to get a sunroom / deck for our backyard. That is something that we budgeted for when we talked with our financial advisor. I just got a nice table topper for my birthday too. That will be great as a card table when we want to have folks over to play. We'd still love to do it, but I think we're going to have to put it off for at least another couple of years.

Movie Review: The Incredibles

Tonight I got a special birthday treat. My mom came down to watch Corbin so Jenn and I could go out on a date! We went to see the movie "The Incredibles", which is the latest Disney / Pixar film. It was great! It is really amazing to see how far animation has come. Jenn remarked to me how she was watching an old Bugs Bunny cartoon with Corbin a couple of days ago, and the difference from Bugs Bunny to the Incredibles was...well, incredible! A movie is more than just pretty pictures though, and this one had a pretty good story. The plot surrounds a family of super heros trying to get by as average citizens in the world. A series of lawsuits against the supers has led to them all entering a sort of protection program where they must live out their lives without displaying their powers. Mr. Incredible and ElastiGirl got married and had a family. Mr. Incredible, aka Bob Parr, is going through something of a mid-life crisis. He longs for the excitement of doing what he was meant to do: saving those in need. He and one of his super buddies sneak off once a week to listen to the police scanner, and occassionally sneak in a little action. Meanwhile, Elastigirl, aka Helen Parr, is trying to keep up with the demands of raising the three children. I won't ruin the movie for you by spelling out all of the plot points, but the film does a great job in finding the humor in day to day family life. Each of the children have powers that are an allegory to the typical behavior for kids. It was neat to see super heros that had human traits and problems. The movie had plenty of action, humor, and all around fun. If you have the opportunity, I would recommend that this be the next movie you see.

 
Jade Mason