<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-14311740</id><updated>2009-07-19T04:20:12.616-07:00</updated><title type='text'>Alan's Place</title><subtitle type='html'>A safe haven on Al Gore's internet</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default?start-index=26&amp;max-results=25'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>110</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-14311740.post-6743966475593551316</id><published>2009-06-09T11:33:00.000-07:00</published><updated>2009-06-09T11:42:45.851-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><title type='text'>Baseball Season Wrap-Up</title><content type='html'>The little league baseball season was wrapped up for my team (AAA division, mostly 9-10 year olds) this Saturday, when closing day ceremonies took place. After the ceremony, I found myself placed in a dunk tank, with my players eagerly lining up to dunk me with a gleam in their eyes.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Our regular season record was 10 wins and 8 losses, good for second place in the &lt;a href="http://www.vistaamericanll.org/"&gt;league&lt;/a&gt;. I had initially hoped for better at the start of the season, but no plan survives contact very long. We played the #1 team very hard on all but a few occassions, so my players can hold their head high and be proud of the progress made this year.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In the Vista City Tournament, we won our first two games convincingly, and then lost two games to finish tied for 5th place. Our first loss was against the eventual 1st place team, and we &lt;i&gt;should&lt;/i&gt; have won that game except for the wheels falling off of our defense in one inning. And so it goes...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So now I will have to find something to do with all of the time with which I now find myself. I figured out that during the season, I spent well over 200 hours on meetings, practices, and games. This does not take into account time spent going to/from locations, nor the time spent at work planning lineups and position charts. Yes, I was kept very busy, and yes I will miss it!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Next year, my son will move up to the Major division, and I look forward to the challenges that it will bring, as well as the improved quality of game play. It is so very rewarding to see kids I have coached since tee-ball turn into smart and skillful baseball players!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-6743966475593551316?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/6743966475593551316/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=6743966475593551316' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/6743966475593551316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/6743966475593551316'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2009/06/baseball-season-wrap-up.html' title='Baseball Season Wrap-Up'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-3174186626545364865</id><published>2009-04-24T09:18:00.000-07:00</published><updated>2009-04-24T09:46:41.337-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='injury'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><title type='text'>It's Quiet Around Here... Too Quiet</title><content type='html'>What can I say other than, "Life is very busy". I'll try to provide a few updates here, however.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Little League Baseball&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The season is well into the second half, and it looks as if our team will finish 2nd place. We only play the #1 team twice in the second half, and have already lost both of those games. Thus, barring some kind of divine intervention, the Angels will have to be happy with a 2nd place finish. However, once the regular season is complete, we get to look forward to the city tournament! So the team is still practicing hard and trying to refine our game with that tournament in our sights.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Soccer&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My soccer team is currently undefeated, with 1 win and 5 ties! It seems that all 4 teams in our men's 35+ division are fairly evenly matched, which is good. My ankle injury has still not yet healed completely, which I find irritating. I am guessing that it will not be 100% good for a few more months, but it is good enough to play on now, so I do what I can.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Family&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The rest of the family is doing just fine. We camped at &lt;a href="http://www.parks.ca.gov/?page_id=662"&gt;San Elijo state beach&lt;/a&gt; for 4 nights during the kids' spring break, and the weather cooperated with us fairly well for a majority of the time there. In July we are looking forward to a vacation in the Central Coast as well.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-3174186626545364865?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/3174186626545364865/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=3174186626545364865' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3174186626545364865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3174186626545364865'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2009/04/its-quiet-around-here-too-quiet.html' title='It&apos;s Quiet Around Here... Too Quiet'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-2102906552636264932</id><published>2009-02-23T07:53:00.001-08:00</published><updated>2009-02-23T08:36:00.876-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='injury'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><category scheme='http://www.blogger.com/atom/ns#' term='ankle'/><title type='text'>What's Been Happening in My World</title><content type='html'>It has been well over a month since I last wrote anything here, and as you may guess, I have been very busy. I'll try to catch up a bit with this post.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Ankle Injury Update&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My &lt;a href="http://c600g.blogspot.com/2009/01/late-christmas-gift-not-broken.html"&gt;ankle&lt;/a&gt; has healed up fairly well, and is probably back up to 80% of it's original strength after 6 weeks. I've played a bit of soccer over the last two Sunday afternoons, and it just isn't quite right yet. I have also had a large blister form both days on my right instep. I'm not sure if I am doing something awkward to compensate for the weakened ankle, or if it is th new shoes. Next week, I'll be playing back in my old pair of &lt;a href="http://en.wikipedia.org/wiki/Adidas_Copa_Mundial"&gt;Copa Mundials&lt;/a&gt; and see if the situation improves a bit.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Our first soccer game of the new season is on Friday, March 6th. I'd like to be somewhere in the vicinity of "being in good shape" by then.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://1.bp.blogspot.com/_h6vxr1Bf3cw/SaLNzEN023I/AAAAAAAAA7M/maBLWmAlWfQ/s320/angels_A_logo_04.jpg" style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 119px; height: 160px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5306029588184619890" /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;Little League Baseball&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A new &lt;a href="http://www.eteamz.com/VistaLL/index.cfm?"&gt;baseball season&lt;/a&gt; is underway, and I am back at the helm managing my son's AAA baseball team, the Angels. The rain has interfered with practices a bit, so we've done the best we can. Opening day in on Saturday, March 7th, so we have 2 more weeks of practices to get some of the rust off of the ole baseball gears. I'm hoping for a good season - it always seems to come down to the pitching!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;New Technology&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;I picked up a new Toshiba laptop on Saturday from Fry's. At $399, it was too good of a deal to pass up, and our old &lt;a href="http://reviews.cnet.com/laptops/dell-inspiron-700m/4505-3121_7-30975241.html"&gt;Dell 700m&lt;/a&gt; has been showing signs of aging for quite some time. The new laptop sports an &lt;a href="http://processorfinder.intel.com/details.aspx?sSpec=SLB3P"&gt;Intel Core Two Duo T3400&lt;/a&gt; CPU (2.16 GHz, 667 MHz FSB), 2 gigabytes of RAM, a decently size 160GB hard drive, and a nice 15.4" wide screen display (1280 x 800).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I've gone through and stripped out most of the crap that came bundled with the notebook (Norton begone!), and installed &lt;a href="http://www.mozilla.com/en-US/firefox/"&gt;Firefox&lt;/a&gt;, &lt;a href="http://www.openoffice.org/"&gt;OpenOffice&lt;/a&gt;, &lt;a href="http://notepad-plus.sourceforge.net/uk/site.htm"&gt;Notepad++&lt;/a&gt;, etc. &lt;a href="http://www.microsoft.com/windows/windows-vista/default.aspx"&gt;Windows Vista&lt;/a&gt; Home Premium seems to work well on the PC (response is snappy, display is crisp), and it is my first experience with the OS. I actually installed the &lt;a href="http://www.microsoft.com/windows/windows-7/"&gt;Windows 7&lt;/a&gt; beta in a &lt;a href="http://www.virtualbox.org/"&gt;Virtualbox&lt;/a&gt; VM &lt;span class="Apple-style-span" style="font-style: italic;"&gt;before&lt;/span&gt; ever seeing Windows Vista, and I can't say I see much of an improvement or difference between the two versions.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Windows Vista *is* a bit chatty with the UAC stuff, though, isn't it? Dialog boxes come flying at you during installation of new apps, but I don't mind it too much. I do believe that Windows 7 has improved in that regard. However, I don't see much that would compel anyone to upgrade from Vista to 7.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-2102906552636264932?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/2102906552636264932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=2102906552636264932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/2102906552636264932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/2102906552636264932'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2009/02/whats-been-happening-in-my-world.html' title='What&apos;s Been Happening in My World'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_h6vxr1Bf3cw/SaLNzEN023I/AAAAAAAAA7M/maBLWmAlWfQ/s72-c/angels_A_logo_04.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-2096200385392779910</id><published>2009-01-16T07:39:00.000-08:00</published><updated>2009-01-16T07:48:58.618-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='injury'/><category scheme='http://www.blogger.com/atom/ns#' term='ankle'/><title type='text'>A Late Christmas Gift - Not Broken!</title><content type='html'>Woo-hoo! I received some great news yesterday during my appointment with the orthopedic surgeon. It turns out that the protrusion of bone on my lower fibula is, in the doctor's opinion, from a previous ankle sprain. My ankle is *not* broken - the x-rays were simply misinterpreted by the Urgent Care doctor, which can (and will) happen if they are not experts in the skelto-musculature realm of medicine.&lt;br /&gt;&lt;br /&gt;So, the doc said that I should try putting weight on my ankle as I could, first with both crutches, then with a single crutch on the good side, and then with no crutches. When I got back home, I tested out my ankle and was able to put weight on it with two, then one crutch. Later that evening, I discarded the single crutch and was able to hobble around fairly well, even helping out with the preparation for dinner.&lt;br /&gt;&lt;br /&gt;To cap off the night, I was able to ascend our stairs to the second story and actually tuck in my kids and sleep in my own bed for the first time in four days.&lt;br /&gt;&lt;br /&gt;As far as further recovery is concerned, the doctor said that wearing a brace might be a good idea for the next few weeks, and to work on my range of motion in the ankle. Running is out of the question for about three weeks, but biking would be a good exercise when my ankle feels up to it. I am hoping to be back in soccer shape in fixe to six weeks - we'll see how things go.&lt;br /&gt;&lt;br /&gt;I can not express how happy I am to be rid of those crutches! The four days I had to deal with them has given me a small dose of insight into what it must be like to permanently live with a disability. Just being able to walk and use my hands at the same time seems like an amazing gift to me right now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-2096200385392779910?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/2096200385392779910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=2096200385392779910' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/2096200385392779910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/2096200385392779910'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2009/01/late-christmas-gift-not-broken.html' title='A Late Christmas Gift - Not Broken!'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-5160484920007776877</id><published>2009-01-15T12:24:00.000-08:00</published><updated>2009-01-15T12:49:33.754-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='injury'/><category scheme='http://www.blogger.com/atom/ns#' term='ankle'/><title type='text'>Epic Fail - My Broken Ankle</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h6vxr1Bf3cw/SW-hCe_iwqI/AAAAAAAAA5I/eXS4sV7plzI/s1600-h/ankle_bones_MMG.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 299px; height: 300px;" src="http://1.bp.blogspot.com/_h6vxr1Bf3cw/SW-hCe_iwqI/AAAAAAAAA5I/eXS4sV7plzI/s320/ankle_bones_MMG.jpg" alt="" id="BLOGGER_PHOTO_ID_5291625151235015330" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Ug. Maybe I should rename this blog to Alan's Place Where He Bitches About His Injuries...&lt;br /&gt;&lt;br /&gt;Yes, a new year has come, and a new injury along with it. Up until this time in my life, I have been fortunate enough to have never broken a bone in my body. I was pure, as far as my calcified frame is concerned. Sure, the paint on the outside has suffered a few abrasions, burns, and general wear and tear over the years, but the frame on which it all rides was still in decent shape.&lt;br /&gt;&lt;br /&gt;On Sunday, I play a pick-up game of soccer at a local park. After about 45 minutes of play, I was chasing down a ball and went up in the air for it. I landed with all of my weight on my right foot, which normally isn't a problem. However, when that right foot in turn lands on some kind of divot, problems can (and did) arise.&lt;br /&gt;&lt;br /&gt;My right ankle rolled outwards as all of my weight bore down, and a 'pop' was heard by me and the player closest to me. I went down like a house of cards, to my hands and knees. I managed to crawl on my hands and knees off the field, where one of the other guys gave me some ice in a ziplock bag to ice it down.&lt;br /&gt;&lt;br /&gt;After about 10 minutes of icing it down, I experimented with the joint a bit and found that I could move it around without much discomfort at all. I put on my flip-flops, and tested out putting some weight on it, and it seemed ok. Maybe it wasn't too bad after all?&lt;br /&gt;&lt;br /&gt;I decided to call it a day, and then walked to my truck without too much difficulty. Some of the guys there asked if I needed any help, and I thanked them but said that it looked like it might not be too bad. One of them urged me to have it x-rayed, lest I wake up in the middle of the night with an ankle the size of a cantaloupe.&lt;br /&gt;&lt;br /&gt;I almost dismissed the advice, except for the memory of the 'pop' sound. That was something new. So, I headed off to the local Urgent Care which was blessedly empty. After a few x-rays, the doc came in and said that it looks like there was a bone chip in my right ankle, and asked me if I had broken my ankle in the past? He said that he would consult with a radiologist the following day, and refer me to an orthopedic surgeon if it was a fracture.&lt;br /&gt;&lt;br /&gt;The nurse splinted up my foot and calf, handed me a pair of crutches, a prescription for vicodin, and then I was sent on my way home. My wife picked me up, as I can not exert any pressure on the joint, and hence can not drive. Oh boy, this is going to be fun.&lt;br /&gt;&lt;br /&gt;On Monday, I got an referral and appointment  to see an orthopedic surgeon, which I will go to in a few minutes. More information will be forthcoming as it arrives. I am praying that no surgery will be needed, and that the break is minor.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-5160484920007776877?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/5160484920007776877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=5160484920007776877' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/5160484920007776877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/5160484920007776877'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2009/01/epic-fail-my-broken-ankle.html' title='Epic Fail - My Broken Ankle'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_h6vxr1Bf3cw/SW-hCe_iwqI/AAAAAAAAA5I/eXS4sV7plzI/s72-c/ankle_bones_MMG.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-421923303775293633</id><published>2008-12-04T08:27:00.000-08:00</published><updated>2008-12-04T08:41:31.620-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Python Challenge</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blogs.reuters.com/wp-content/uploads/2006/06/python300.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 150px; height: 212px;" src="http://blogs.reuters.com/wp-content/uploads/2006/06/python300.jpg" alt="" border="0" /&gt;&lt;/a&gt;Of all the scripting languages out there, I would have to say that &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt; is my favorite. I don't use it a lot, but when I need to whip up some kind of task to do some heavy text processing, or pull email down from my gMail account, I know that python can do it.&lt;br /&gt;&lt;br /&gt;Yesterday, &lt;a href="http://arstechnica.com/"&gt;Ars Technica&lt;/a&gt; had a nice article on &lt;a href="http://arstechnica.com/news.ars/post/20081202-getting-a-grip-on-python-six-ways-to-learn-online.html"&gt;learning python via online resources&lt;/a&gt;. I was already aware of most of the references mentioned in the article, but in the comments to the article I found a gem - &lt;a href="http://www.pythonchallenge.com/"&gt;The Python Challenge&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The best way I can explain the Python Challenge is that it is like an adventure game with problems that can be solved using a few lines of python code. You start with problem number one, and when you have completed the problem, it will lead you to the URL for problem #2. Of course, what makes the challenge so challenging is that the problems are not always clearly spelled out on the web page. At times you'll need to view the source code and decipher clues to even find what the problem is. And then, of course, you'll need to solve the programming problem.&lt;br /&gt;&lt;br /&gt;Right now, I am stuck on #6. I solved the programming problem, and received the ending clue ("collect the comments"), but I am not sure what to do now. I'll let it simmer in the back of my head for a while before I resort to looking for hints.&lt;br /&gt;&lt;br /&gt;As a side note, these problems can also be solved with perl and even bash scripts. After you have completed a problem, a solution wiki page for that problem becomes available so you can see how other people solved the problem, which is always interesting and helpful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-421923303775293633?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/421923303775293633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=421923303775293633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/421923303775293633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/421923303775293633'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/12/python-challenge.html' title='Python Challenge'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-4436157733722093718</id><published>2008-11-20T14:27:00.000-08:00</published><updated>2008-11-20T14:49:06.748-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Unicode and Delphi 2009</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.piotrpix.com/files/images/Keyboard%20Enter%20Key_0.preview.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 267px; height: 200px;" src="http://www.piotrpix.com/files/images/Keyboard%20Enter%20Key_0.preview.JPG" alt="" border="0" /&gt;&lt;/a&gt;I must confess that when it comes to &lt;a href="http://en.wikipedia.org/wiki/Unicode"&gt;Unicode&lt;/a&gt;, I have buried my head in the sand and deliberately tried to ignore the whole transition mess from the English-centric ANSI based character set to the world-friendly Unicode standard.&lt;br /&gt;&lt;br /&gt;To get a brief background on Unicode and what it means to developers, please see &lt;a href="http://www.joelonsoftware.com/articles/Unicode.html"&gt;Joel's article&lt;/a&gt;. It is a good briefing on the problem that Unicode solves, and addresses the basics.&lt;br /&gt;&lt;br /&gt;As mentioned in other programming related posts, my company's primary products are developed using &lt;a href="http://www.codegear.com/products/delphi"&gt;Delphi&lt;/a&gt; 2007 for the Windows platform. One of the primary products is also supported on the Linux platform by using &lt;a href="http://www.freepascal.org/"&gt;Free Pascal&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Recently, CodeGear released a new version of Delphi - 2009. Doing some research on the product, it appears as if they have made a fairly significant change to the language. In previous versions, the &lt;span style="font-family:courier new;"&gt;string&lt;/span&gt; type was an &lt;span style="font-family:courier new;"&gt;AnsiString&lt;/span&gt;, which means that one characters takes up one byte of memory. In the 2009 version, the &lt;span style="font-family:courier new;"&gt;string&lt;/span&gt; type is now mapped to a &lt;span style="font-family:courier new;"&gt;UnicodeString&lt;/span&gt;. Since a Unicode string can have one of several types of encoding which map one character to one or more bytes, it is possible that this change may drastically affect any legacy Delphi application which processes strings, especially if it is a library which is used by other applications.&lt;br /&gt;&lt;br /&gt;Thankfully, CodeGear has provided developers with three articles {&lt;a href="http://dn.codegear.com/article/38437"&gt;part 1&lt;/a&gt;, &lt;a href="http://dn.codegear.com/article/38498"&gt;part 2&lt;/a&gt;, &lt;a href="http://dn.codegear.com/article/38693"&gt;part 3&lt;/a&gt;} detailing the changes made, and gotchas to look out for when porting legacy applications over to Delphi 2009. Please take a look at these articles to see what the potential obstacles are when moving your applications over, and consider the difficulties. Third party components will most likely also need to be tweaked to work with Delphi 2009, so keep that in mind as well. You can find PBear's HTML viewer updated for Delphi 2009 &lt;a href="http://www.songbeamer.com/delphi/"&gt;here&lt;/a&gt;, along with other free components.&lt;br /&gt;&lt;br /&gt;As far as Free Pascal is concerned, Unicode support and compatibility is something that they are currently hashing through. Until a Delphi 2009 Unicode compatibility mode can be implemented in Free Pascal, we will be forced to stick with Delphi 2007 for the time being.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-4436157733722093718?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/4436157733722093718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=4436157733722093718' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/4436157733722093718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/4436157733722093718'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/11/unicode-and-delphi-2009.html' title='Unicode and Delphi 2009'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-5038034281557534781</id><published>2008-11-11T14:14:00.000-08:00</published><updated>2008-11-11T14:15:27.319-08:00</updated><title type='text'>The Matrix Runs Windows</title><content type='html'>Check it out &lt;a href="http://www.todaysbigthing.com/2008/11/10"&gt;here&lt;/a&gt;. That is all!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-5038034281557534781?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/5038034281557534781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=5038034281557534781' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/5038034281557534781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/5038034281557534781'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/11/matrix-runs-windows.html' title='The Matrix Runs Windows'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-6287147156342134055</id><published>2008-08-20T14:56:00.001-07:00</published><updated>2009-01-15T12:50:11.455-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='calf'/><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='inury'/><title type='text'>Calf Muscle Rehabilitation and Soccer</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_h6vxr1Bf3cw/SKyVcbuUXPI/AAAAAAAAAo8/cGU3j37CcJ0/s1600-h/funny_soccer.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://4.bp.blogspot.com/_h6vxr1Bf3cw/SKyVcbuUXPI/AAAAAAAAAo8/cGU3j37CcJ0/s320/funny_soccer.jpg" alt="" id="BLOGGER_PHOTO_ID_5236724782435949810" border="0" /&gt;&lt;/a&gt;It has been just over one year since my &lt;a href="http://c600g.blogspot.com/2007/08/torn-calf-muscle-redux.html"&gt;last calf muscle injury&lt;/a&gt;. The blog post I made on the subject is the #1 post for my humble blog, as it pops up as a search result thanks to Google. As regular readers (I have at least 2) may know, I &lt;a href="http://c600g.blogspot.com/search/label/surf"&gt;surf&lt;/a&gt; quite a bit - working 5 minutes away from the beach lets me use my lunch hour to get some water time in.&lt;br /&gt;&lt;br /&gt;While I &lt;span style="font-style: italic;"&gt;love&lt;/span&gt; surfing, it doesn't do much to stretch out or strengthen my lower body (however, it is very good for the upper body). So, I decided to look around for an adult soccer league to join that would be good exercise for my legs. Luckily, I found a men's over-35 team in Carlsbad that needed a few players, so I signed up.&lt;br /&gt;&lt;br /&gt;About 2 weeks ago, I suited up in shin guards and cleats, and went down to a local field to try and get my feet on the ball a bit. I have coached youth soccer for the last 4 years, and look forward to actually playing again.&lt;br /&gt;&lt;br /&gt;You can probably guess what happened next... After a workout on Tuesday, my right lower calf muscle felt a little tweaked, but not too bad - just a bit uncomfortable. On Thursday, I laced up and went to jog across the field and back to warm up a bit before stretching, and on the return leg  the tweak cranked up a lot, and I had to stop and limp back.&lt;br /&gt;&lt;br /&gt;It didn't feel like my previous two incidents, so I think that I did not tear the muscle - maybe just strained it or something like that. I limped for about 24 hours, and then started looking at how to stretch out the calf muscles to try and prevent this in the future.&lt;br /&gt;&lt;br /&gt;I have stretched in the past, but I have never focused on the calf muscles. Instead, I'd work the quads, hammys, and groin. I realized that I had been neglecting my calves - pretty stupid of me (especially after two injuries).&lt;br /&gt;&lt;br /&gt;Maybe neglecting is the wrong word... I have never been shown how to stretch out the calf, in all the sports I have played and gym classes taken through school and even in college. So, with the theory of "knowing your enemy" in mind, I first did some &lt;a href="http://en.wikipedia.org/wiki/Calf_muscle"&gt;reading up on the calf muscle&lt;/a&gt;, which is actually a pair of muscles: the &lt;a href="http://en.wikipedia.org/wiki/Gastrocnemius_muscle" title="Gastrocnemius muscle"&gt;gastrocnemius&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Soleus_muscle" title="Soleus muscle"&gt;soleus&lt;/a&gt;. The article even mentions torn calf muscles, the 'pop' that so many of us feel, and the conditions that triggered it in my cases: sudden acceleration and changes in direction.&lt;br /&gt;&lt;br /&gt;Next, I did a search on stretches focusing on the pair of calf muscles, and found these: &lt;a href="http://www.youtube.com/watch?v=95A-pAKiOwg"&gt;gastrocnemius stretch&lt;/a&gt; and &lt;a href="http://www.youtube.com/watch?v=1i8QwoscojU&amp;amp;feature=related"&gt;soleus stretch&lt;/a&gt;. Since I found these videos, I've been doing both stretches for 90 seconds on each leg, and I do believe that my lower legs are feeling better. I'm not back to 100% yet, but I can make my way around the pitch if I take care to avoid sudden acceleration and changes in direction. I hope to be back up to 95% before the first game of our season, which starts on September 5th.&lt;br /&gt;&lt;br /&gt;If you have hurt your calf, please be careful to not stretch it out prematurely. A bad tear can take a long time to heal, so when you start trying to stretch, let common sense be your guide. Stretch slowly and gently, avoiding bouncing. Any pain should be a sign that you are doing too much too fast.&lt;br /&gt;&lt;br /&gt;To keep the rest of your lower body in shape, I found that biking was fairly low impact for my most recent injury, so long as I didn't stand up and pedal (pushing on the front portion of the foot as you do to begin a sprint).&lt;br /&gt;&lt;br /&gt;If you know of any other good stretches, or want to talk about your calf injury, please feel free to comment below!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-6287147156342134055?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/6287147156342134055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=6287147156342134055' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/6287147156342134055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/6287147156342134055'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/08/calf-muscle-rehabilitation-and-soccer.html' title='Calf Muscle Rehabilitation and Soccer'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_h6vxr1Bf3cw/SKyVcbuUXPI/AAAAAAAAAo8/cGU3j37CcJ0/s72-c/funny_soccer.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-3809537326413377409</id><published>2008-08-14T08:27:00.000-07:00</published><updated>2008-08-14T09:16:45.875-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='vacation'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Trip to Italy - Part 3</title><content type='html'>The final destination of our grand Italian vacation was the beautiful city of &lt;a href="http://en.wikipedia.org/wiki/Venice"&gt;Venice&lt;/a&gt;. They say that the farther you go North in Italy, the more expensive it gets. From our limited experience (from Naples in the southern portion of the country, to Rome in the middle, and then Venice in the North), I can indeed confirm this piece of folk wisdom.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5234395636700361298"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SKRPGTthMlI/AAAAAAAAAoc/VDLPi3FsBaI/s400/IMG_0505.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Venice's Grand Canal&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;Venice is a tourist destination for a large number of people from Europe and Asia. The city seemed much more ritzy-touristy than Rome, which had many historical sites. Venice, on the other hand, features a large number of ways to separate you from your money via high-end shops and restaurants.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5234395634331135682"&gt;&lt;img src="http://lh6.ggpht.com/alan.krause/SKRPGK4prsI/AAAAAAAAAoU/Hg7Me9D7bCk/s400/IMG_4509.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Dining &lt;a href="http://dictionary.reference.com/browse/alfresco"&gt;al Fresco&lt;/a&gt;&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;The municipal coat of arms for Venice features a winged lion, and you see this symbol throughout Venice. I can hardly think of a better mascot, short of &lt;a href="http://www.youtube.com/watch?v=7gz1DIIxmEE"&gt;Trogdor&lt;/a&gt; the &lt;a href="http://www.homestarrunner.com/trogdor.html"&gt;Burninator&lt;/a&gt;.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5234395602670703506"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SKRPEU8N05I/AAAAAAAAAn0/15hEqKtZ2CE/s400/IMG_4464.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;a href="http://europeforvisitors.com/venice/articles/winged_lion_of_st_mark.htm"&gt;&lt;small&gt;&lt;i&gt;Winged Lion of St. Mark&lt;/i&gt;&lt;/small&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;We walked through the open air market near the &lt;a href="http://en.wikipedia.org/wiki/Rialto_Bridge"&gt;Rialto Bridge&lt;/a&gt; one morning, and saw some of the local produce and seafood, which is boated in daily.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5234395622729801506"&gt;&lt;img src="http://lh5.ggpht.com/alan.krause/SKRPFfqrXyI/AAAAAAAAAoE/X1TSyIU0ako/s400/IMG_4502.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Local Produce&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5234395626995358978"&gt;&lt;img src="http://lh5.ggpht.com/alan.krause/SKRPFvjqnQI/AAAAAAAAAoM/hiazC8FKHf8/s400/IMG_4506.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Fresh Seafood&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;The architecture of Venice fascinated me the most. It is a city with almost no land unused. The alleyways twist and wind through the buildings, occasionally meeting in a small plaza or crossing a canal. The lesser traveled walkways (sometimes only 3 or 4 people wide) can be eerily quiet even in the middle of the day, and it is always interesting to see what shops are found on these lesser traveled routes.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5234395606855962674"&gt;&lt;img src="http://lh6.ggpht.com/alan.krause/SKRPEkiD0DI/AAAAAAAAAn8/Xv1yf_IXCPI/s400/IMG_4501.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Horse - the other red meat!&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;After three days in Venice and 10 days in Italy, we had to make our way back home. It was a great vacation with the family, and something I think we will all remember for the rest of our lives.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-3809537326413377409?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/3809537326413377409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=3809537326413377409' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3809537326413377409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3809537326413377409'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/08/trip-to-italy-part-3.html' title='Trip to Italy - Part 3'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/alan.krause/SKRPGTthMlI/AAAAAAAAAoc/VDLPi3FsBaI/s72-c/IMG_0505.JPG' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-3762572301466712366</id><published>2008-08-06T14:31:00.001-07:00</published><updated>2008-08-14T09:16:36.199-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='vacation'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Trip to Italy - Part 2</title><content type='html'>While we stayed in Rome for the week, we made two day trips during those 7 days. Our first day trip (by way of a very comfortable high speed train) was to &lt;a href="http://en.wikipedia.org/wiki/Florence"&gt;Florence&lt;/a&gt;. We had reservations to the Accademia dell'Arte del Disegno to see Michelangelo's David and several other works of art (sorry, no cameras allowed!).&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5231517358944394274"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SJoVUfgrnCI/AAAAAAAAAm8/YAmKB5qah34/s400/IMG_4377.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Fountain in Florence&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;We then walked about the city, taking in the sights and sounds. A bus tour sped us through the highlights of the locale, and we visited the Ponte Vecchio ("old bridge"). The Ponte Vecchio was first constructed by the Romans, and was the only bridge not destroyed by the German forces during their withdrawl from Italy in 1944, allegedly because of an express order by Hitler.&lt;br /&gt;&lt;br /&gt;Our second day trip took us South of Rome, to &lt;a href="http://en.wikipedia.org/wiki/Naples"&gt;Naples&lt;/a&gt;. From Naples we caught a local train to &lt;a href="http://en.wikipedia.org/wiki/Pompeii"&gt;Pompeii&lt;/a&gt;. What can I say about Pompeii, other than it was truly an amazing experience? It boggles my mind how complete a city it was, nearly 2000 years ago!&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5231519666945248514"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SJoXa1e9zQI/AAAAAAAAAnE/8DTFEDLR6dc/s400/IMG_4429.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Pompeii Baking Area&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;The city is so well preserved that some of the artwork (mostly frescos) is still visible, and quite beautiful.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5231519672276116162"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SJoXbJV8YsI/AAAAAAAAAnM/rRWKJrpSj1M/s400/IMG_4439.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Fresco on the wall of a Pompeii house&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;We spent a good 5 hours walking around Pompeii, and could have easily extended that to a full day if we had the time. &lt;a href="http://en.wikipedia.org/wiki/Herculaneum"&gt;Herculaneum&lt;/a&gt; is Pompeii's lesser known sister city, which faced a similar fate. That archeological site would have needed another day in and of itself as well.&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Italy/photo#5231519675543819698"&gt;&lt;img src="http://lh5.ggpht.com/alan.krause/SJoXbVhBlbI/AAAAAAAAAnU/5eeCXWrmP_Y/s400/IMG_4448.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Vesuvius and Family&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;We then made our way back to Naples, and had pizza Margherita at pizzeria “Da Michele” - supposedly the place which originated this style of pizza. I can't say too much positive about the city of Naples itself (other than the pizza), as it was still recovering from a trash workers strike. We had to be extra careful of pick-pockets and others, and that extra vigilance can take a toll on your ability to relax and enjoy the sights and sounds.&lt;br /&gt;&lt;br /&gt;My next post will cover our three days in Venice!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-3762572301466712366?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/3762572301466712366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=3762572301466712366' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3762572301466712366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3762572301466712366'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/08/trip-to-italy-part-2.html' title='Trip to Italy - Part 2'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/alan.krause/SJoVUfgrnCI/AAAAAAAAAm8/YAmKB5qah34/s72-c/IMG_4377.JPG' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-943331958359225001</id><published>2008-05-21T07:32:00.001-07:00</published><updated>2008-08-14T09:16:16.364-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='vacation'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Trip to Italy - Part 1</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;div style=""&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/thumb/0/03/Flag_of_Italy.svg/158px-Flag_of_Italy.svg.png" style="max-width: 800px; float: right;" /&gt;Well, things have been very busy for me and my family, but I have a few spare minutes and thought that I would update the blog on our biggest event this year so far - our trip to Italy. We went with our extended family, and everyone had a great time.&lt;br /&gt;&lt;br /&gt;Several months before leaving, I decided to try and pick up as much of the Italian language as possible. I purchased a few books, and even gave the  (very boring) Rosetta Stone program a try. However, the best tool I found for picking up conversational Italian is &lt;a href="http://www.pimsleurdirect.com/languages/italian-language-courses"&gt;Pimsleur's Speak and Read Italian&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There are three courses in the series, each consisting of 30 lessons. Each lesson is just under 30 minutes, which just so happens to perfectly coincide with my commute time. Thus, I would often listen to a lesson on the way to work, and then repeat it on the way home or advance to the next one. I made good progress through the lessons, and made it half way through the Italian II course before we headed off to Italy.&lt;br /&gt;&lt;br /&gt;We left for Italy on the Saturday before Easter, and actually arrived in &lt;a href="http://en.wikipedia.org/wiki/Rome"&gt;Rome&lt;/a&gt; Easter morning. We spent that day checking into our hotel, relaxing, and trying to get a feel for the new surroundings.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Roma/photo#5202592110300498322"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SDNR9bW2CZI/AAAAAAAAAkg/UQKko9dLll4/s400/IMG_4407.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;View from Our Room&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;There are a lot of sights to see in Rome, as one might expect of a city with  over 2,700 years of history. We took a bus tour around The Eternal City to get a feel for it, and stopped off at &lt;a href="http://en.wikipedia.org/wiki/Piazza_Navona"&gt;Piazza Navona&lt;/a&gt; to walk around a bit.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Roma/photo#5202591165407693106"&gt;&lt;img src="http://lh3.ggpht.com/alan.krause/SDNRGbW2CTI/AAAAAAAAAjs/WtI_goEqt2M/s400/IMG_4210.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Piazza Navona&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;A short walk from there, and you'll find yourself at the &lt;a href="http://en.wikipedia.org/wiki/Pantheon%2C_Rome"&gt;Pantheon&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Roma/photo#5202591173997627714"&gt;&lt;img src="http://lh5.ggpht.com/alan.krause/SDNRG7W2CUI/AAAAAAAAAj0/Ss7QAaSsriM/s400/IMG_4226.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;i&gt;&lt;small&gt;Pantheon&lt;/small&gt;&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;There are many fountains throughout Rome, built to bring water to the people. The water is fresh and we drank it often during our walks through Rome.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Roma/photo#5202591186882529618"&gt;&lt;img src="http://lh4.ggpht.com/alan.krause/SDNRHrW2CVI/AAAAAAAAAj8/MkYMjNsIsx8/s400/IMG_4247.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Trevi Fountain&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;My youngest son thought that the Colosseum was extremely impressive, and I would have to agree. Although parts of it were cannibalized for construction later on in Rome's history, a good portion of it still stands today. Perhaps most impressive were the storage areas underneath the main "floor", where the gladiators and animals they fought were kept. You can see today where elevators raised new and exciting beasts to the arena floor.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Roma/photo#5202591195472464226"&gt;&lt;img src="http://lh6.ggpht.com/alan.krause/SDNRILW2CWI/AAAAAAAAAkE/rM4jGCgLhq0/s400/IMG_4310.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Colosseum&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;Exploring the forum and the ruins around it are definitely worth your time. Don't miss out on hiking up Palatine Hill to get a breathtaking view of Rome, and stroll through the Emperor's palace.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://picasaweb.google.com/alan.krause/Roma/photo#5202591204062398834"&gt;&lt;img src="http://lh4.ggpht.com/alan.krause/SDNRIrW2CXI/AAAAAAAAAkM/VRAoV0t919I/s400/IMG_4340.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;small&gt;&lt;i&gt;Family&lt;/i&gt;&lt;/small&gt;&lt;/div&gt;&lt;br /&gt;My next post will cover two of our days trips from Rome...&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-943331958359225001?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/943331958359225001/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=943331958359225001' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/943331958359225001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/943331958359225001'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/05/trip-to-italy-part-1.html' title='Trip to Italy - Part 1'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/alan.krause/SDNR9bW2CZI/AAAAAAAAAkg/UQKko9dLll4/s72-c/IMG_4407.JPG' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-2873034082756109313</id><published>2008-04-09T11:05:00.000-07:00</published><updated>2008-12-09T21:30:58.883-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Rest In Peace, Ace</title><content type='html'>&lt;div style="margin: 0px auto 10px; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_h6vxr1Bf3cw/R_0FX4HlxJI/AAAAAAAAAhg/rvYgEdRHqe0/s1600-h/2.00001.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_" alt="" src="http://4.bp.blogspot.com/_h6vxr1Bf3cw/R_0FX4HlxJI/AAAAAAAAAhg/rvYgEdRHqe0/s400/2.00001.jpg" border="0" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;br /&gt;Ace, our dog of almost 13 years, was laid to rest on Friday March 21st, 2008. He leaves behind a family that misses him terribly.&lt;br /&gt;&lt;br /&gt;I've mentioned Ace in several of my posts, and if you have ever been to my house over the last 13 years, you have certainly met him. He was a large and friendly dog that my wife and I picked out from the local animal shelter approximately one year before our first child was born. It turns out that his other siblings were not able to be adopted, as all of them were sick. We were lucky that we picked him out of the litter before the vet had a chance to look at him.&lt;br /&gt;&lt;br /&gt;During the early years of his life, he provided my wife with both companionship and security as our children were born. She wasn't ever worried about being home alone while I was at work, so long as Ace was around. Later on, he was a friend and protector of our children.&lt;br /&gt;&lt;br /&gt;During his last year of life, we saw his health steadily decline. His hearing deteriorated quite a bit, and his bouts of nervousness increased. Near the end, he had an eye infection in his left eye that he just couldn't seem to shake off, despite medication. His appetite was a mere fraction of what it used to be. Finally, he lost his footing with his rear legs and hips, and went to the floor. After attempting to get him up and mobile that day, and after several trips to the vet over the previous two weeks, my wife and I decided that it was time to let Ace go.&lt;br /&gt;&lt;br /&gt;I have never owned a dog from puppyhood through death, so taking him to the vet on his last day was a new experience for me, and for my kids. The vet and techs were very understanding and helpful. It took four of them to get Ace out of the car and onto a stretcher, such was his lack of mobility. He never made a peep, and seemed content and ready.&lt;br /&gt;&lt;br /&gt;After we said our goodbyes to him, I held him as they injected him with the sedatives that would release him. I can only hope he understood how much all of us loved him.&lt;br /&gt;&lt;br /&gt;The old cliche goes, "you don't know what you've got until it's gone". I find myself "seeing" him out of the corner of my eye sometimes, only to realize upon further inspection that it was a blanket or shadow. I have to battle to not leave the back door open for him, and still expect to see him first when I come home from work in the afternoon (he was always the first to greet me). I miss his company in the mornings when only he and I were awake in the house as I prepared for work.&lt;br /&gt;&lt;br /&gt;Rest in peace, Ace. We love you, and you will never be forgotten.&lt;div style="clear: both; text-align: center;"&gt;&lt;a href="http://picasa.google.com/blogger/" target="ext"&gt;&lt;img src="http://photos1.blogger.com/pbp.gif" alt="Posted by Picasa" style="border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" align="middle" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-2873034082756109313?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/2873034082756109313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=2873034082756109313' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/2873034082756109313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/2873034082756109313'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/04/rest-in-peace-ace.html' title='Rest In Peace, Ace'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_h6vxr1Bf3cw/R_0FX4HlxJI/AAAAAAAAAhg/rvYgEdRHqe0/s72-c/2.00001.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-249888611112762672</id><published>2008-03-18T15:38:00.000-07:00</published><updated>2008-12-09T21:31:11.090-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='spam'/><title type='text'>Now Using Greylite</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R-BK3ZiiLxI/AAAAAAAAAhU/HThBWc6PJX0/s1600-h/spam.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R-BK3ZiiLxI/AAAAAAAAAhU/HThBWc6PJX0/s320/spam.jpg" alt="" id="BLOGGER_PHOTO_ID_5179221887085063954" border="0" /&gt;&lt;/a&gt;In &lt;a href="http://c600g.blogspot.com/2007/11/war-on-spam.html"&gt;this old post&lt;/a&gt;, I spilled the beans on my new and improved spam filtering triple play: &lt;a href="http://dspam.nuclearelephant.com/"&gt;dspam&lt;/a&gt;, &lt;a href="http://www.jonatkins.com/page/software/qgreylist"&gt;qgreylist&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/DNSBL"&gt;RBL&lt;/a&gt; checking. Overall, the system has worked well over the last four months, though I have noticed the increasing volume of spam showing up in my spam folder.&lt;br /&gt;&lt;br /&gt;I suspected that the very simple form of &lt;a href="http://en.wikipedia.org/wiki/Greylisting"&gt;greylisting&lt;/a&gt; implemented in qgreylist was the culprit, and after a bit of investigation, I found out that this indeed was the case. So, I set out to see if there was another greylisting implementation which could be used in my &lt;a href="http://qmail.org/top.html"&gt;qmail&lt;/a&gt; installation.&lt;br /&gt;&lt;br /&gt;Using my google-fu, I quickly zeroed in on &lt;a href="http://mij.oltrelinux.com/net/greylite/"&gt;Greylite&lt;/a&gt;. After reading up on it, I found that it held several advantages over qgreylist:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Written in C instead of perl, so it should perform a bit snappier and be less of a burden on the mail server.&lt;/li&gt;&lt;li&gt;Instead of only considering the IP address of the sender as qgreylist does, greylite considers the complete triplet of {IP address, from, to} before validating an IP address.&lt;/li&gt;&lt;li&gt;All data is stored in a single sqlite3 database, whereas qgreylist stored the verified IP addresses as files in a single directory, which clutters the filesystem and increases access time in that directory as more IPs are validated.&lt;/li&gt;&lt;li&gt;Greylite appears to have some enhanced functionality called `tuning suspicion' which allows you to customize how it behaves in certain circumstances.&lt;/li&gt;&lt;/ol&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h6vxr1Bf3cw/R-BJ_JiiLwI/AAAAAAAAAg0/UJc2x7mKMcM/s1600-h/flawless_victory.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_h6vxr1Bf3cw/R-BJ_JiiLwI/AAAAAAAAAg0/UJc2x7mKMcM/s400/flawless_victory.png" alt="" id="BLOGGER_PHOTO_ID_5179220920717422338" border="0" /&gt;&lt;/a&gt;To install it on my debian box, I first had to install sqlite3 (and the associated development libraries). Then, I downloaded the source code and followed the simple directions that came with it.&lt;br /&gt;&lt;br /&gt;Less than 5 mintues later, and the server was up and running with its new greylisting implementation up and working perfectly. Flawless victory!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-249888611112762672?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/249888611112762672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=249888611112762672' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/249888611112762672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/249888611112762672'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/03/now-using-greylite.html' title='Now Using Greylite'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_h6vxr1Bf3cw/R-BK3ZiiLxI/AAAAAAAAAhU/HThBWc6PJX0/s72-c/spam.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-4326172261440475934</id><published>2008-03-13T10:15:00.001-07:00</published><updated>2008-04-09T11:19:00.388-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><title type='text'>Baseball Season Update</title><content type='html'>So, here we are over two weeks into our little league baseball season - how is our team doing? Well, we have 0 wins and 4 losses, so one &lt;span style="font-style: italic;"&gt;could&lt;/span&gt; make the argument that we are not doing too well. I would have to agree.&lt;br /&gt;&lt;br /&gt;The kids seem to be having a good time, however. So long as they continue to enjoy the game and improve over the course of the season, I'll be content. Wish us luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-4326172261440475934?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/4326172261440475934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=4326172261440475934' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/4326172261440475934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/4326172261440475934'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/03/baseball-season-update.html' title='Baseball Season Update'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-8775269934995076520</id><published>2008-02-26T14:39:00.000-08:00</published><updated>2008-12-09T21:31:11.266-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='spam'/><title type='text'>By Request - My dspam Training Script</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_h6vxr1Bf3cw/R8SYYqr0LiI/AAAAAAAAAfk/LtC3mny9Izw/s1600-h/dspam-logo-eyes.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_h6vxr1Bf3cw/R8SYYqr0LiI/AAAAAAAAAfk/LtC3mny9Izw/s320/dspam-logo-eyes.gif" alt="" id="BLOGGER_PHOTO_ID_5171425821670518306" border="0" /&gt;&lt;/a&gt;In a &lt;a href="http://c600g.blogspot.com/2007/02/dspam-installed.html"&gt;post&lt;/a&gt; I made about one year ago, I mentioned a script which I created which trains &lt;a href="http://dspam.nuclearelephant.com/"&gt;dspam&lt;/a&gt; to recognize missed spam email, and corrects it when it falsely identifies a good ( or "ham") email as spam. Someone has requested that I post that script, so here it is. Please note that my &lt;a href="http://www.qmail.org/top.html"&gt;qmail&lt;/a&gt; installation uses the &lt;a href="http://en.wikipedia.org/wiki/Maildir"&gt;maildir&lt;/a&gt; format!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;--- start file: &lt;a href="http://www.shermanloan.com/%7Ealank/train-spam.sh"&gt;train-spam.sh&lt;/a&gt; ---&lt;/span&gt; &lt;span style="font-family:courier new;"&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;# train-spam.sh&lt;br /&gt;#&lt;br /&gt;# Description: Checks each user's /home/Maildir/.Spam.Missed&lt;br /&gt;# directories to see if the user placed any "missed" spam&lt;br /&gt;# messages which got through SpamAssassin to their INBOX.&lt;br /&gt;# If there are messages in this directory, then the script&lt;br /&gt;# invokes sa-learn to update the site-wide tokens to try&lt;br /&gt;# and improve the defenses for next time...&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;# learn_spam - Function which takes a directory and a user as&lt;br /&gt;#  arguments, and then feeds that directory to our anti-spam&lt;br /&gt;#  applications for further SPAM training.&lt;br /&gt;#&lt;br /&gt;# Arguments:&lt;br /&gt;#  $1 - Directory name containing SPAM emails. Required&lt;br /&gt;#  $2 - User name. If it is not provided, $USER will be used.&lt;br /&gt;#&lt;br /&gt;# Example:&lt;br /&gt;#  learn_spam /home/alank/Maildir/.Spam.Missed/cur alank&lt;br /&gt;#&lt;br /&gt;function learn_spam {&lt;br /&gt;&lt;br /&gt;    # loop through all emails in given directory&lt;br /&gt;    for email in $(ls $1); do&lt;br /&gt;&lt;br /&gt;        # process SPAM email using DSPAM&lt;br /&gt;        /usr/local/bin/dspam --mode=teft --source=error --class=spam --feature=chained,noise --user $2 &lt; $1/$email&lt;br /&gt;        echo -n "."&lt;br /&gt;&lt;br /&gt;        # delete SPAM email&lt;br /&gt;        rm $1/$email&lt;br /&gt;&lt;br /&gt;    done # end of email loop&lt;br /&gt;&lt;br /&gt;} # end function learn_spam&lt;br /&gt;&lt;br /&gt;# learn_ham - Function which takes a directory and a user as&lt;br /&gt;#  arguments, and then feeds that directory to our anti-spam&lt;br /&gt;#  applications for further HAM training.&lt;br /&gt;#&lt;br /&gt;# Arguments:&lt;br /&gt;#  $1 - Directory name containing HAM emails. Required&lt;br /&gt;#  $2 - User name. If it is not provided, $USER will be used.&lt;br /&gt;#&lt;br /&gt;# Example:&lt;br /&gt;#  learn_ham /home/alank/Maildir/.Spam.NotSpam/cur alank&lt;br /&gt;#&lt;br /&gt;function learn_ham {&lt;br /&gt;&lt;br /&gt;    # loop through all emails in given directory&lt;br /&gt;    for email in $(ls $1); do&lt;br /&gt;&lt;br /&gt;        # process HAM email using DSPAM&lt;br /&gt;        /usr/local/bin/dspam --mode=teft --source=error --class=innocent --feature=chained,noise --user $2 &lt; $1/$email&lt;br /&gt;        echo -n "."&lt;br /&gt;&lt;br /&gt;        # delete HAM&lt;br /&gt;        rm $1/$email&lt;br /&gt;&lt;br /&gt;    done # end of email loop&lt;br /&gt;&lt;br /&gt;} # end function learn_ham&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;# Script starts here!&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;# loop through all user home directories&lt;br /&gt;for file in $(ls /home); do&lt;br /&gt;&lt;br /&gt;    # if there is a Spam/Missed maildir&lt;br /&gt;    if [ -d /home/$file/Maildir/.Spam.Missed/cur ]; then&lt;br /&gt;   &lt;br /&gt;        # then process any missed SPAM&lt;br /&gt;        echo -n "missed spam for $file: "&lt;br /&gt;        learn_spam /home/$file/Maildir/.Spam.Missed/cur $file&lt;br /&gt;        learn_spam /home/$file/Maildir/.Spam.Missed/new $file&lt;br /&gt;        echo ""&lt;br /&gt;   &lt;br /&gt;    fi # end if&lt;br /&gt;&lt;br /&gt;    # if there is a Spam/NotSpam dir&lt;br /&gt;    if [ -d /home/$file/Maildir/.Spam.NotSpam/cur ]; then&lt;br /&gt;   &lt;br /&gt;        # then process any falsely identified spam, i.e. HAM&lt;br /&gt;        echo -n "false positives for $file: "&lt;br /&gt;        learn_ham /home/$file/Maildir/.Spam.NotSpam/cur $file&lt;br /&gt;        learn_ham /home/$file/Maildir/.Spam.NotSpam/new $file&lt;br /&gt;        echo ""&lt;br /&gt;&lt;br /&gt;    fi # end if&lt;br /&gt;&lt;br /&gt;done # end for loop&lt;br /&gt;&lt;br /&gt;echo "Done!"&lt;br /&gt;--- end file: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;a href="http://www.shermanloan.com/%7Ealank/train-spam.sh"&gt;train-spam.sh&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; ---&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;I place the above script in &lt;span style="font-family:courier new;"&gt;/root&lt;/span&gt; and create a &lt;a href="http://en.wikipedia.org/wiki/Crontab"&gt;cron&lt;/a&gt; job to run it every day in the early morning. You will need to edit some parts of the script if your missed spam and not spam directories are named differently. Good luck, and I hope it is helpful in your continuing battle against spam!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-8775269934995076520?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/8775269934995076520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=8775269934995076520' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/8775269934995076520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/8775269934995076520'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/02/by-request-my-dspam-training-script.html' title='By Request - My dspam Training Script'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_h6vxr1Bf3cw/R8SYYqr0LiI/AAAAAAAAAfk/LtC3mny9Izw/s72-c/dspam-logo-eyes.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-9075759939043071344</id><published>2008-02-26T14:08:00.000-08:00</published><updated>2008-12-09T21:31:11.753-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computer games'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><title type='text'>Yes, I Am Still Here</title><content type='html'>&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://img.dailymail.co.uk/i/pix/2007/04_03/mummyfilm_468x240.jpg" alt="A bit dusty, eh?" border="0" /&gt;&lt;br /&gt;Wow - it's a little dusty around here, isn't it? I haven't updated the ole' blog in &lt;span style="font-style: italic;"&gt;months&lt;/span&gt;, and every time I did think about updating it, I said to myself, "but it's been so long!" That is a nice self-perpetuating situation, so now it's time I break free from the shackles of stupidity and update the damn thing.&lt;br /&gt;&lt;br /&gt;I am very well aware that I still need to post pictures up from last summer's vacation, but those will have to wait for another day. Instead, I'll try to catch you up with what has happened over the last four months or so.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);font-size:130%;" &gt;&lt;span style="font-family:arial;"&gt;Little League&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R8STY6r0LhI/AAAAAAAAAfc/u2DPdtz4e8o/s1600-h/VALL+logo+small.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R8STY6r0LhI/AAAAAAAAAfc/u2DPdtz4e8o/s320/VALL+logo+small.gif" alt="" id="BLOGGER_PHOTO_ID_5171420328407346706" border="0" /&gt;&lt;/a&gt;As I may have mentioned previously, I am on the board of directors for &lt;a href="http://www.vistaamericanll.org/"&gt;our local little league&lt;/a&gt;.  Finding volunteers is &lt;span style="font-style: italic;"&gt;always&lt;/span&gt; a challenge, as many people are just too busy (or unable) to help out. I have managed my son's team for the last three years, and really enjoyed it and the kids and parents in the community that I have been lucky enough to meet and get to know. Since the league was in dire straits to find a new board, I volunteered as the information officer.&lt;br /&gt;&lt;br /&gt;It has been a lot of work, but overall, I think it is worth it. The people on the board are all good people, doing their best to make sure that the kids of our community have the opportunity to baseball in a safe and fun environment. I have spent late nights at monthly board meetings, weekends doing sign-ups and field prep work, and time during the day responding to board emails and the like.&lt;br /&gt;&lt;br /&gt;I am not managing this year, and am instead, merely coaching. It's sort of driving me nuts not being in control, but I'll get over it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);font-size:130%;" &gt;&lt;span style="font-family:arial;"&gt;Christmas&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I took my normal two weeks off after Christmas, and promptly got sicker than I was all year. During the coarse of 2008, I took two sick days off from work. While on vacation, I was bed ridden for nearly three days. That'll teach me...&lt;br /&gt;&lt;br /&gt;Other than that, we had a very nice Christmas and New Years. No Christmas cards were sent this year, due to the ebola plague that swept through the house. I like to think of it as a minor inconvenience to our friends, and a minor bonus for the tress.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(102, 0, 0);font-size:130%;" &gt;&lt;span style="font-family:arial;"&gt;Tech-talk&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The day after Thanksgiving, I braved Fry's and purchased parts for a new computer at prices almost too good to be true. Actually, they were too good to be true because of those damn rebates. Here it is, four months later, and I am still waiting on my final rebate to arrive from Abit.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R8STD6r0LgI/AAAAAAAAAfU/6e99Lsboquk/s1600-h/tf2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R8STD6r0LgI/AAAAAAAAAfU/6e99Lsboquk/s400/tf2.jpg" alt="" id="BLOGGER_PHOTO_ID_5171419967630093826" border="0" /&gt;&lt;/a&gt;The system is an Intel Core Duo 2.6 Ghz machine with 2 GB ram, and nice Nvidia video card, and a decent SATA hard drive. It plays Team Fortress 2 beautifully, and I haven't really bought any other recent games due to time limitations. It should last me for the next couple of years easily.&lt;br /&gt;&lt;br /&gt;So, that is a very brief update of what I've been doing over these last few months. I'll try to update the blog a bit more regularly as time and obligations permit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-9075759939043071344?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/9075759939043071344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=9075759939043071344' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/9075759939043071344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/9075759939043071344'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2008/02/yes-i-am-still-here.html' title='Yes, I Am Still Here'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_h6vxr1Bf3cw/R8STY6r0LhI/AAAAAAAAAfc/u2DPdtz4e8o/s72-c/VALL+logo+small.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-3233312631058674946</id><published>2007-11-20T14:46:00.000-08:00</published><updated>2008-12-09T21:31:12.701-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='spam'/><title type='text'>The War on Spam</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RdHmCFuDmNI/AAAAAAAAADY/7wROELMHwqo/s1600-h/dspam-logo-text.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RdHmCFuDmNI/AAAAAAAAADY/7wROELMHwqo/s400/dspam-logo-text.gif" alt="" id="BLOGGER_PHOTO_ID_5031055182319032530" border="0" /&gt;&lt;/a&gt;It was earlier this year that I last &lt;a href="http://c600g.blogspot.com/2007/02/dspam-installed.html"&gt;detailed some steps&lt;/a&gt; taken in an attempt to thwart the growing junk email (a.k.a. SPAM) epidemic. &lt;a href="http://dspam.nuclearelephant.com/"&gt;dspam&lt;/a&gt; has continued to work like a champ, with an accuracy rate currently standing at 99.13%.&lt;br /&gt;&lt;br /&gt;However, the volume of spam continued to increase, almost as inevitable as the rising tide. I didn't let it bother me too much, as I could simply delete the messages sent to my spam folder, although I had to admit that looking through all of those messages for false positives was getting a bit tiresome.&lt;br /&gt;&lt;br /&gt;And then &lt;span style="font-style: italic;"&gt;it&lt;/span&gt; happened... The event that moved me past the tipping point, and thrust me forcefully back tot he front lines of the war on spam. The event seemed innocent enough: I went to send an email, and our smtp server (&lt;a href="http://www.qmail.org/top.html"&gt;qmail&lt;/a&gt;) did not respond. wtf?&lt;br /&gt;&lt;br /&gt;I shut down qmail, restarted it, and it seemed to work for a while. However, after an hour or so, the same problem arose. wtf?&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_h6vxr1Bf3cw/R0NqXm2UdtI/AAAAAAAAAYs/15QCc7QKpvQ/s1600-h/qmail.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_h6vxr1Bf3cw/R0NqXm2UdtI/AAAAAAAAAYs/15QCc7QKpvQ/s400/qmail.jpg" alt="" id="BLOGGER_PHOTO_ID_5135064953930413778" border="0" /&gt;&lt;/a&gt;Looking at the process list, I noticed that there were 40 qmail-smtpd processes running. What were they trying to send? Time to get my hands dirty and learn a bit about qmail's queue. I read a bit on the queue, and installed a tool called &lt;a href="http://freshmeat.net/projects/qmqtool/"&gt;qmqtool&lt;/a&gt;. By using this new tool, I discovered that I had over 6,000 messages awaiting deliver in my mail queue!&lt;br /&gt;&lt;br /&gt;Why so many? Because for every spammer that sends an email to a bogus address, a mail server will craft a bounce message and attempt to send it back to the (usually faked) sender. Gah!&lt;br /&gt;&lt;br /&gt;As a first step, I decrease the queue lifetime to 24 hours. After 24 hours, any message still left undelivered in the queue would now be deleted. Then, I cleaned out the queue and restarted qmail. It worked!&lt;br /&gt;&lt;br /&gt;...for a while. Ok, so let's do some more furious reading on the subject of spam prevention in the qmail environment. First of all, I needed to increase the maximum number of qmail-smtpd processes which were allowed to run simultaneously by &lt;a href="http://cr.yp.to/ucspi-tcp/tcpserver.html"&gt;tcpserver&lt;/a&gt;. By adding a "-c 400" to the tcpserver command used to execute qmail-smtpd, I increased the maximum number of simultaneous connections from 40 to 400. That ought to be a good start.&lt;br /&gt;&lt;br /&gt;Now, how else can I decrease the volume of spam? I had heard of &lt;a href="http://projects.puremagic.com/greylisting/"&gt;greylisting&lt;/a&gt; before, and thought that it might be a good next step. Luckily, there is a simple greylist implementation for qmail called &lt;a href="http://www.jonatkins.com/page/software/qgreylist"&gt;qgreylist&lt;/a&gt;. It installs fairly quickly, and does a fairly good job. However, it is written in perl and with all of the spam emails flowing in, it can cause a bit of a performance hit.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R0NrLG2UduI/AAAAAAAAAY0/MvCSHFo5dLI/s1600-h/blackhole.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_h6vxr1Bf3cw/R0NrLG2UduI/AAAAAAAAAY0/MvCSHFo5dLI/s400/blackhole.jpg" alt="" id="BLOGGER_PHOTO_ID_5135065838693676770" border="0" /&gt;&lt;/a&gt;So, maybe there is something another check I could do before sending the incoming email to qgreylist? How about an &lt;a href="http://en.wikipedia.org/wiki/DNSBL"&gt;RBL&lt;/a&gt; check! When another computer attempts to deliver an email to our mail server, the RBL (Real-time Blackhole List) check sees if the sender's IP address in a list of know spam servers. If it is, then the connection is dropped and the email never even is seen by the greylist app.&lt;br /&gt;&lt;br /&gt;With the above changes made to our mail server, I am now receiving about 10% of the spam volume that I was before the changes were made. Furthermore, our remote queue sits at a fairly steady level of 400 messages.&lt;br /&gt;&lt;br /&gt;Only time will tell for how long this solutions will suffice! Wish me good luck and my email godspeed!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-3233312631058674946?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/3233312631058674946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=3233312631058674946' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3233312631058674946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3233312631058674946'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/11/war-on-spam.html' title='The War on Spam'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h6vxr1Bf3cw/RdHmCFuDmNI/AAAAAAAAADY/7wROELMHwqo/s72-c/dspam-logo-text.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-4788024454871636548</id><published>2007-11-11T09:36:00.000-08:00</published><updated>2008-12-09T21:31:12.884-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Upgrading to Ubuntu 7.10 - Gutsy Gibbon</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RzdFO9T6ZBI/AAAAAAAAAYM/B45awDu5bnU/s1600-h/gutsy+gibbon.jpeg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RzdFO9T6ZBI/AAAAAAAAAYM/B45awDu5bnU/s400/gutsy+gibbon.jpeg" alt="" id="BLOGGER_PHOTO_ID_5131646423690535954" border="0" /&gt;&lt;/a&gt;As mentioned in&lt;a href="http://c600g.blogspot.com/2007/01/yet-another-reason-to-not-upgrade-to.html"&gt; previous postings&lt;/a&gt;, I use &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt; as a desktop OS both at home and at work. At home, I have had Dapper Drake installed on an older &lt;a href="http://www.dell.com/"&gt;Dell&lt;/a&gt; Inspiron laptop with a &lt;a href="http://www.dlink.com/"&gt;D-Link&lt;/a&gt; DWL-650+ wireless PCMCI networking card, which functions perfectly. The kids will even hop on it to browse the web with &lt;a href="http://www.mozilla.com/en-US/firefox/"&gt;Firefox&lt;/a&gt; or write a paper using &lt;a href="http://www.openoffice.org/"&gt;OpenOffice&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;At work, I have a dual &lt;a href="http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_8825,00.html"&gt;Opteron&lt;/a&gt; Dapper Drake box on which I do any Linux and/or C based development. It has been rock solid for well over a year. I also recently installed the 64-bit version of Feisty Fawn (7.04) on a spare AMD64-3200+ system to test 64-bit development using &lt;a href="http://www.freepascal.org/"&gt;Free Pascal&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;When I heard Ubuntu 7.10 was released, I looked through the notes and thought that it might well be time to upgrade my Dapper boxes, as Firefox was getting rather long in the tooth (the Dapper version being stuck on the 1.5 branch), and I also wanted to investigate &lt;a href="http://www.mono-project.com/Main_Page"&gt;mono&lt;/a&gt; development (more on this in another post!). Since mono development is still rapidly evolving, I wanted to look at a recent distribution.&lt;br /&gt;&lt;br /&gt;The first box I went to upgrade was the AMD64 system. I had little to lose on the system, and so elected to do a clean install, nuking the previous distribution. Everything installed smoothly, so I played around with the distribution for a while to see what was new.&lt;br /&gt;&lt;br /&gt;The installer had detected the motherboard's integrated Nvidia video controller, and offered to install the restricted driver for me to increase performance. I accepted, then turned on some of the flashy desktop effects provided by &lt;a href="http://compiz.org/"&gt;compiz&lt;/a&gt;, and was pretty impressed with some of the flash and sizzle. To get finer tuned control over what compiz does and does not do, I installed the compizconfig-settings-manager using &lt;a href="http://en.wikipedia.org/wiki/Synaptic_Package_Manager"&gt;synaptic&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Next check - Firefox and the network. The integrated NIC was detected and automatically setup - no work necessary on my part (since I recently switched our work network to providing &lt;a href="http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol"&gt;DHCP&lt;/a&gt; addressing). Firefox seemed to work well, and when I visited a page that used &lt;a href="http://www.macromedia.com/software/flash/about/"&gt;Flash&lt;/a&gt;, it offered to install the 32-bit flash plugin with all of the necessary wrappers and libraries so it could be used in my 64-bit Firefox. Until Adobe can provide a 64-bit flash plugin, this is the next best thing and it worked flawlessly.&lt;br /&gt;&lt;br /&gt;Ok - the box looks and works well, so it was time to test the next system in my parade of installs. Hmm... Let's try the laptop at home. I burned a live cd of Gutsy and took it home. I booted up the laptop with the CD, and wireless networking was dead - frak! This has been a problem with this laptop for the last three ubuntu releases. I decided to come back to the laptop at a later time.&lt;br /&gt;&lt;br /&gt;Next stop - the dual opteron development workstation. What to do, what to do? I didn't want to do a clean install this time, being a somewhat lazy sob. I decided to back up my important files to another computer and do an inplace upgrade from Dapper to Edgy, then from Edgy to Fesity, and finally from Feisty to Gutsy. This seemed to me to be somewhat risky, but I wanted to see how Ubuntu fared when doing inplace upgrades. If it came through THREE upgrades, well that's a pretty damn strong endorsement.&lt;br /&gt;&lt;br /&gt;So I first upgraded from Dapper to Edgy by following the &lt;a href="http://ubuntuforums.org/showthread.php?t=227052"&gt;instructions here&lt;/a&gt;. It took a while, I had to confirm a couple of file overwrites, and about 3 hours later it said it was done. Reboot the machine, and all looked well. Did it again for Edgy to Feisty, and one more time for Feisty to Gutsy.&lt;br /&gt;&lt;br /&gt;Once the upgrade to Gutsy was done, I took a close look at the system. Compiz was not working, and I found tha I needed to install xserver-xgl for compiz support. Fonts were a bit tweaked, but I managed to get them workig with a couple of corrections to the FontPath section of the file /etc/X11/xorg.conf.&lt;br /&gt;&lt;br /&gt;Overall, I was *very* impressed with the three distribution upgrade. This gave me the confidence to try it with the laptop at home, and so I did. To make a long story short, I am now writing this post from the Dell Inspiron upgraded to Gutsy, with wireless networking and flashy desktop effects turned on. It's not super speedy, but once things are loaded into memory, everything runs swimmingly.&lt;br /&gt;&lt;br /&gt;I just checked fonts in emacs, and they are fairly screwed at this point in time. I may have to check out my font paths on this system, and if I recall correctly, I had to change the default fonts emacs uses to get non-horrid looking fonts on the dual opteron system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-4788024454871636548?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/4788024454871636548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=4788024454871636548' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/4788024454871636548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/4788024454871636548'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/11/upgrading-to-ubuntu-710-gutsy-gibbon.html' title='Upgrading to Ubuntu 7.10 - Gutsy Gibbon'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h6vxr1Bf3cw/RzdFO9T6ZBI/AAAAAAAAAYM/B45awDu5bnU/s72-c/gutsy+gibbon.jpeg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-8940681546412435445</id><published>2007-09-21T10:34:00.000-07:00</published><updated>2008-05-01T11:20:55.528-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='vacation'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Mammoth Lakes Vacation - Part 1</title><content type='html'>Wow, have I been slacking off on the blog lately, or what? I've been very busy at work and at home this last month, so please pardon the virtual dust gathering around here.&lt;br /&gt;&lt;br /&gt;For our family summer vacation this year, we decided to rent a trailer and go camping up in the &lt;a href="http://www.visitmammoth.com/"&gt;Mammoth Lakes&lt;/a&gt; area. There are many of &lt;a href="http://www.fs.fed.us/r5/inyo/recreation/campgrounds.shtml#mammoth"&gt;campgrounds&lt;/a&gt; in the area, and quite a few activities to keep us busy.&lt;br /&gt;&lt;br /&gt;Our trip up was fairly uneventful. We a made a quick stop in &lt;a href="http://www.lonepinechamber.org/"&gt;Lone Pine&lt;/a&gt; to stretch our legs, and take in the beautiful view of &lt;a href="http://en.wikipedia.org/wiki/Mount_Whitney"&gt;Mt. Whitney&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes/photo#5095575439273141778"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh5.google.com/alan.krause/Rrce3VAUphI/AAAAAAAAARA/yrOCTRXHrRg/s400/IMG_3497.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes/photo#5095575452158043682"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh4.google.com/alan.krause/Rrce4FAUpiI/AAAAAAAAARI/4ALFn6vQ51A/s400/IMG_3498.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;After that brief stop, we grabbed lunch in Bishop and then made our way to Mammoth Lakes and our remote campground. The wilderness up there is just pristine, with jaw-dropping views surprising you around each new bend in the road.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes/photo#5095575606776866530"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh4.google.com/alan.krause/RrcfBFAUpuI/AAAAAAAAASo/YULyK_KhrEo/s400/IMG_3512.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes/photo#5095575589596997330"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh4.google.com/alan.krause/RrcfAFAUptI/AAAAAAAAASg/srW8wT36Gh8/s400/IMG_3511.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;I took the kids fishing for the first time, but we were skunked. From what I understand, it is best to avoid the easy-access lakes, as they are fished heavily. Even though we didn't hook up anything,  the kids had a good time trying their hand at it.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes/photo#5095575465042945586"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh3.google.com/alan.krause/Rrce41AUpjI/AAAAAAAAARQ/o6I1lCr8_p8/s400/IMG_3499.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;It was odd seeing Mammoth Mountain without snow, as I had never been up in this area during the summer. It is a truly beautiful area, and I bet we make our way back up here sometime in the near future.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes/photo#5095575666906408738"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh6.google.com/alan.krause/RrcfElAUpyI/AAAAAAAAATI/50ah_i3fwCs/s400/IMG_3516.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;I'll have parts 2 and 3 coming up in the next week or so. To see more photos from this picture set, click &lt;a href="http://picasaweb.google.com/alan.krause/20070722MammothLakes"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-8940681546412435445?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/8940681546412435445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=8940681546412435445' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/8940681546412435445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/8940681546412435445'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/09/mammoth-lakes-vacation-part-1.html' title='Mammoth Lakes Vacation - Part 1'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-268901053038086084</id><published>2007-08-27T15:01:00.001-07:00</published><updated>2008-12-09T21:31:13.121-08:00</updated><title type='text'>Back in the Saddle Again Surf Report</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RtNQd83iJTI/AAAAAAAAAW0/J74x7P_5D_M/s1600-h/ambulance.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RtNQd83iJTI/AAAAAAAAAW0/J74x7P_5D_M/s400/ambulance.jpg" alt="" id="BLOGGER_PHOTO_ID_5103511278226384178" border="0" /&gt;&lt;/a&gt;Well, well, well. Three weeks have flown by since my last post on the trials and tribulations visited upon me by my calf muscle, and I have been lax in my blogging. Or perhaps more important things have pushed it down to the bottom the queue - you make the call.&lt;br /&gt;&lt;br /&gt;First of all, my leg is healing up nicely. It was relatively painful and inconvenient for two weeks, and then the pain and swelling subsided to almost nothing. My calf is still very tender if I rest it on the muscle, so I try to avoid doing that.&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;Patient - "Doctor, it hurts when I do this."&lt;br /&gt;Doctor - "Then don't do it!"&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;Thankful for the near super-human healing capacity of my body, I decided that today was &lt;span style="font-style: italic;"&gt;the&lt;/span&gt; day I would tempt fate and go surfing again. I rationalized that the calves don't get too much work while surfing, as it is mostly an upper-body type of activity.&lt;br /&gt;&lt;br /&gt;The water was extremely nice, and I surfed well for having been dry docked for the last three weeks. I didn't tweak my leg in the least bit, so I am officially not a lazy slob any more. Or so I claim.&lt;br /&gt;&lt;br /&gt;What else has been going on? Well, all three kids are in soccer, which results in six practices per week over four days (we get Fridays off for good behavior, I guess) and three games on Saturday. Yes, my wife and I are very busy. Yes, we enjoy watching the kids practice and play. Yes, it is all good.&lt;br /&gt;&lt;br /&gt;We also went on vacation several weeks ago, up to the Mammoth Lakes area. Once again, I know I am derelict in my duties, and will try and get some pictures up sometime in the next week or so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-268901053038086084?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/268901053038086084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=268901053038086084' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/268901053038086084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/268901053038086084'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/08/back-in-saddle-again-surf-report.html' title='Back in the Saddle Again Surf Report'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h6vxr1Bf3cw/RtNQd83iJTI/AAAAAAAAAW0/J74x7P_5D_M/s72-c/ambulance.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-7555939458749684717</id><published>2007-08-06T09:38:00.000-07:00</published><updated>2009-01-15T12:50:41.281-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='calf'/><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='injury'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Torn Calf Muscle Redux</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_h6vxr1Bf3cw/RrdSlFAUqLI/AAAAAAAAAWM/vkcplVtnb5Y/s1600-h/calf.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_h6vxr1Bf3cw/RrdSlFAUqLI/AAAAAAAAAWM/vkcplVtnb5Y/s320/calf.gif" alt="" id="BLOGGER_PHOTO_ID_5095632300345174194" border="0" /&gt;&lt;/a&gt;Could it only be just over a year ago when &lt;a href="http://c600g.blogspot.com/2006/07/torn-calf-muscle.html"&gt;I first tore my right calf muscle&lt;/a&gt;? What I find most interesting is that this article has generated the most search hits on my blog - over 35%. Also of interest is that this spring and early summer, I noticed the frequency of these search hits increasing.&lt;br /&gt;&lt;br /&gt;I guess this makes quite a bit of sense, as the weather improves and people get outside more frequently and over-do stuff. So, if you are one of those people who arrive here via a search for "torn calf muscle", welcome! Please leave a comment on how you injured yourself (accident, sporting, shark bite, etc.) and what your recuperation and recovery experience was. Especially helpful would be stretches to loosen up the ole' calf muscle to prevent this from happening a third time.&lt;br /&gt;&lt;br /&gt;"Did he say &lt;span style="font-style: italic;"&gt;third&lt;/span&gt; time?", I hear you mumble? Why, yes I did. However, this time it was the left calf muscle. Thus, it seems as if the universe has balanced out my damaged lower leg muscles once and (hopefully) for all.&lt;br /&gt;&lt;br /&gt;We were at opening day for the &lt;a href="http://www.vistasoccerclub.org/"&gt;Vista Soccer Club&lt;/a&gt;, and all three of our kids are playing this season. Besides team pictures, there are several booths there for the kids and/or adults who still think they are kids (that would be me).&lt;br /&gt;&lt;br /&gt;My son ran a timed sprint, and set the record for his age group at that early hour. He encouraged me to give it a try, and I did so, even though my left calf had been bitching at me for several weeks that something just wasn't right. I didn't stretch, warm up, or do anything to remotely warn my calves what I was about to ask of them.&lt;br /&gt;&lt;br /&gt;Two steps into the sprint, and I feel a &lt;a href="http://sportsmedicine.about.com/cs/leg_injuries/a/leg6.htm"&gt;&lt;span style="font-weight: bold;"&gt;pop&lt;/span&gt; in my left calf muscle&lt;/a&gt;, and immediately pull up and hop around like a wounded stork. Stupid, stupid, stupid! I applied ice immediately, went home, and applied &lt;span style="font-weight: bold;"&gt;R.I.C.E.&lt;/span&gt; therapy. &lt;span style="font-weight: bold;"&gt;R&lt;/span&gt;est, &lt;span style="font-weight: bold;"&gt;I&lt;/span&gt;ce, &lt;span style="font-weight: bold;"&gt;C&lt;/span&gt;ompression, and &lt;span style="font-weight: bold;"&gt;E&lt;/span&gt;levation.&lt;br /&gt;&lt;br /&gt;Comparing the initial discomfort to my previous injury, I knew that the new tear wasn't as bad as the old one. Instead of feeling as if someone hit the back of my leg with an aluminum baseball bat, the new injury felt as if something just popped loose.&lt;br /&gt;&lt;br /&gt;So, as of this Monday morning, I am limping around the office like a goon, but relatively pain free. I will be taking it extremely easy over the next 4 weeks, with a goal of returning to the water and surfing gently at some point after that. Wish me luck!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[ Update: Please see this &lt;/span&gt;&lt;a style="font-style: italic;" href="http://c600g.blogspot.com/2008/08/calf-muscle-rehabilitation-and-soccer.html"&gt;later post&lt;/a&gt;&lt;span style="font-style: italic;"&gt; about my calf muscle rehabilitation, and add comments there. ]&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-7555939458749684717?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/7555939458749684717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=7555939458749684717' title='243 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/7555939458749684717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/7555939458749684717'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/08/torn-calf-muscle-redux.html' title='Torn Calf Muscle Redux'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_h6vxr1Bf3cw/RrdSlFAUqLI/AAAAAAAAAWM/vkcplVtnb5Y/s72-c/calf.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>243</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-1555181962887341834</id><published>2007-07-17T13:53:00.000-07:00</published><updated>2007-07-17T14:01:23.671-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='surf'/><title type='text'>Tuesday Afternoon Surf Report</title><content type='html'>The previous week has seen waves more reminiscent of a lake than the mighty &lt;a href="http://en.wikipedia.org/wiki/Pacific_Ocean"&gt;Pacific Ocean&lt;/a&gt;, so I have taken several days off from surfing. After over a week in dry dock, I was &lt;span style="font-style: italic;"&gt;really&lt;/span&gt; feeling a &lt;a href="http://en.wikipedia.org/wiki/Seawater"&gt;salt-water&lt;/a&gt; deficiency, an so hit the water today on my lunch hoping for a few good waves.&lt;br /&gt;&lt;br /&gt;The water was clear and - even better yet - uncrowded. It seems that if all of the people who invaded my local break before the 4th of July have all packed up and found something else to do. &lt;a href="http://en.wikipedia.org/wiki/Mr._Burns"&gt;Exxxcellent!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The wave were fairly consistent, and I caught a handful of very fun chest-high rights. All in all, the waves were better than expected and the beach was less crowded than expected. Nice!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-1555181962887341834?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/1555181962887341834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=1555181962887341834' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/1555181962887341834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/1555181962887341834'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/07/tuesday-afternoon-surf-report.html' title='Tuesday Afternoon Surf Report'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-3626999208605410834</id><published>2007-07-10T14:57:00.000-07:00</published><updated>2008-05-01T11:20:55.529-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><title type='text'>Rocky Mountain National Park</title><content type='html'>A few weeks ago, I went on my annual business trip to an industry conference. The last few years, the conference has been located in areas without much to see or do. This year, however, the conference was located between Denver and Boulder, Colorado.&lt;br /&gt;&lt;br /&gt;While there, I maneuvered us to a few dining establishments I can heartily recommend. On the higher end, for good steak and a very nice selection of beers made on location, visit the &lt;a href="http://www.chophouse.com/RockBottomWeb/CH/Home.aspx"&gt;Chophouse&lt;/a&gt; in Denver or Boulder. Nearby is the &lt;a href="http://www.wynkoop.com/"&gt;Wynkoop Brewery&lt;/a&gt;, Denver's first brew pub (try Patti's chili beer, Railyard ale, and the stout)!&lt;br /&gt;&lt;br /&gt;Whereas the eating was good, the highlight of the trip was the extra day spent visiting &lt;a href="http://www.nps.gov/romo/"&gt;Rocky Mountain National Park&lt;/a&gt;. The main road which traverses the park from one side of the continental divide to the other is called the Trail Ridge Road, and is the highest continuously paved road in the US. At it's highest point, we were well over 12,000 feet and above the treeline in the tundra environment.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/200706Colorado/photo#5085333001460809170"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh6.google.com/alan.krause/RpK7a-ykfdI/AAAAAAAAAPw/YWBd3Qe_a4c/s400/IMG_0350.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;While there, we saw a bit of wildlife, including &lt;a href="http://en.wikipedia.org/wiki/Marmot"&gt;marmots&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Mule_deer"&gt;mule deer&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/Elk"&gt;elk&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/200706Colorado/photo#5085332971396038034"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh3.google.com/alan.krause/RpK7ZOykfZI/AAAAAAAAAPQ/xiC-Uu5svro/s400/IMG_0346.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/200706Colorado/photo#5085333057295384130"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh3.google.com/alan.krause/RpK7eOykfkI/AAAAAAAAAQo/4PGUaI4tT_E/s400/IMG_0357.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;We drove to the &lt;a href="http://en.wikipedia.org/wiki/Continental_divide"&gt;continental divide&lt;/a&gt;, and took the obligatory touristy picture, and then made our way back to the airport.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://picasaweb.google.com/alan.krause/200706Colorado/photo#5085332984280939954"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://lh6.google.com/alan.krause/RpK7Z-ykfbI/AAAAAAAAAPg/scDD2anTnwI/s400/IMG_0348.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;Upon arrival at the airport, we discovered that our plane was delayed. Once the plane finally arrived, another pilot had to be found, and we ended up arriving back home at around 3:30 AM. Good times! Peter's kindergarten graduation was that same day, so there was no rest for the wicked...&lt;br /&gt;&lt;br /&gt;Too see more pictures, please visit the &lt;a href="http://picasaweb.google.com/alan.krause/200706Colorado"&gt;album&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-3626999208605410834?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/3626999208605410834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=3626999208605410834' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3626999208605410834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/3626999208605410834'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/07/rocky-mountain-national-park.html' title='Rocky Mountain National Park'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14311740.post-6429289795280328941</id><published>2007-06-26T14:31:00.000-07:00</published><updated>2008-12-09T21:31:13.534-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>The Day from Hell</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RoGJbl9Rg5I/AAAAAAAAAK4/ZdBaRWYcA0A/s1600-h/linux-keys.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_h6vxr1Bf3cw/RoGJbl9Rg5I/AAAAAAAAAK4/ZdBaRWYcA0A/s200/linux-keys.jpg" alt="" id="BLOGGER_PHOTO_ID_5080492961789215634" border="0" /&gt;&lt;/a&gt;I know it is cliche, but Mondays can really be hell sometimes. On Sunday, I received an email from the mail/web server at work, notifying me that one of the hard drives in the &lt;a href="http://en.wikipedia.org/wiki/RAID"&gt;RAID-1&lt;/a&gt; array (mirrored) had failed. So, I readied myself for some server work on Monday.&lt;br /&gt;&lt;br /&gt;I pulled out the faulty HD, and replaced it with a backup drive. I then start up the server, and watch the handy messages go by, until the system freezes at the partition check. Oh... no... Try a few more ideas, and still no go. Both hard drives died at the same time? Come on!&lt;br /&gt;&lt;br /&gt;Time for the backup plan. I had prepared a &lt;a href="http://www.debian.org/"&gt;Debian Etch&lt;/a&gt; server just for this event, and it was time to press it into service. I got it up and running, accepting email and serving web pages. Unfortunately, the server was not serving its role as a gateway to the regular desktop systems behind it. &lt;a href="http://en.battlestarwiki.org/w/index.php?title=Frak"&gt;Frak&lt;/a&gt;! Something was (not) going on with the ip masquerading functionality. I installed the ipmasq package, but all packets were being dropped by the server, so no outgoing connections were possible. The server could access both subnets, but no joy for the desktops.&lt;br /&gt;&lt;br /&gt;Damn, damn, damn! Now what? 6 hours later, and I am now seriously screwed sideways and upside down. I am sweating profusely, and am almost ready to give up. I call a local "Debian" consultant, but it turns out he's not real familiar with &lt;a href="http://en.wikipedia.org/wiki/Netfilter"&gt;iptables/nat&lt;/a&gt;. What to do... what to do?&lt;br /&gt;&lt;br /&gt;I finally get the idea to try the hard drive from the additional server in another box, as I kept coming back to the fact that having two hard drives fail simultaneously seemed a bit suspect. I powered up the box, and voila! She booted, and everything looked good! I moved the NIC cards over from the old box, placed the spare hard drive in her, and fired it up. After partitioning the new drive and marking said partitions for linux raid auto-detect, I was able to add the new disk partitions to the existing raid array, and everything seems good so far.&lt;br /&gt;&lt;br /&gt;Needless to say, I learned a few lessons:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;My backups of the mail from the mail server worked well. However, there was additional information that should have been backed up but wasn't. This has been remedied.&lt;/li&gt;&lt;li&gt;Even if you go to the trouble of making a backup server, you need to test it in exactly the same kind of conditions in which you need it to function. I tested out the services and such, but not the iptables/nat requirement (thinking it would be a breeze - ha!)&lt;/li&gt;&lt;li&gt;I need to find a way to move my OS from one set of hardware to another. I'd rather avoid the reinstall and subsequent system build up if at all possible, but this might be too much to ask. If you have any ideas, lemme know!&lt;/li&gt;&lt;li&gt;I *really* need to buy some new server hardware.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;So, things are bck to normal now. I figure I lost at least a year of my life in those eight hours, and it wasn't until T+24 hours that I actually started feeling normal again. Maybe I should look into &lt;a href="http://www.google.com/a/"&gt;Google&lt;/a&gt; hosting our email...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14311740-6429289795280328941?l=c600g.blogspot.com'/&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://c600g.blogspot.com/feeds/6429289795280328941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=14311740&amp;postID=6429289795280328941' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/6429289795280328941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14311740/posts/default/6429289795280328941'/><link rel='alternate' type='text/html' href='http://c600g.blogspot.com/2007/06/day-from-hell.html' title='The Day from Hell'/><author><name>Alan</name><uri>http://www.blogger.com/profile/00999861302655014098</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09566082062766427839'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_h6vxr1Bf3cw/RoGJbl9Rg5I/AAAAAAAAAK4/ZdBaRWYcA0A/s72-c/linux-keys.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>4</thr:total></entry></feed>