I recently bought a Dell laptop, and in looking up some of the apps that came with it before uninstalling them, I came across The PC De-crapifier. Basically its a tool scripted to run through the uninstall process of most of the trial programs and such that come on new PCs these days.
Check it out.
There aren’t any words that I can add to this story. I wish these were the front page stories on CNN and not how Brittney burped on camera. It’s powerfully moving and as a father of three small boys I cried.
This was a story originally published in Sports Illustrated that I got recently through email (thank you)
Strongest Dad in the World
[From Sports Illustrated, By Rick Reilly]
I try to be a good father. Give my kids mulligans. Work nights to pay for their text messaging. Take them to swimsuit shoots. But compared with Dick Hoyt, I stink. Eighty-five times he’s pushed his disabled son, Rick, 26.2 miles in marathons. Eight times he’s not only pushed him 26.2 miles in a wheelchair but also towed him 2.4 miles in a dinghy while swimming and pedaled him 112 miles in a seat on the handlebars–all in the same day. Dick’s also pulled him cross-country skiing, taken him on his back mountain climbing and once hauled him across the U.S. on a bike.
Makes taking your son bowling look a little lame, right?
And what has Rick done for his father? Not much–except save his life.
This love story began in Winchester, Mass., 43 years ago, when Rick was strangled by the umbilical cord during birth, leaving him brain-damaged and unable to control his limbs. “He’ll be a vegetable the rest of his life; ”Dick says doctors told him and his wife, Judy, when Rick was nine months old. “Put him in an institution.”
But the Hoyts weren’t buying it. They noticed the way Rick’s eyes followed them around the room. When Rick was 11 they took him to the engineering department at Tufts University and asked if there was anything to help the boy communicate. “No way,” Dick says he was told. “There’s nothing going on in his brain.”
“Tell him a joke,” Dick countered. They did. Rick laughed. Turns out a lot was going on in his brain. Rigged up with a computer that allowed him to control the cursor by touching a switch with the side of his head, Rick was finally able to communicate. First words? “Go Bruins!” And after a high school classmate was paralyzed in an accident and the school organized a charity run for him, Rick pecked out, “Dad, I want to do that.”
Yeah, right. How was Dick, a self-described “porker” who never ran more than a mile at a time, going to push his son five miles? Still, he tried.
“Then it was me who was handicapped,” Dick says. “I was sore for two weeks.”
That day changed Rick’s life.
“Dad,” he typed, “when we were running, it felt like I wasn’t disabled anymore!”
And that sentence changed Dick’s life. He became obsessed with giving Rick that feeling as often as he could. He got into such hard-belly shape that he and Rick were ready to try the 1979 Boston Marathon. “No way,” Dick was told by a race official. The Hoyts weren’t quite a single runner, and they weren’t quite a wheelchair competitor. For a few years Dick and Rick just joined the massive field and ran anyway, then they found a way to get into the race officially: In 1983 they ran another marathon so fast they made the qualifying time for Boston the following year. Then somebody said, “Hey, Dick, why not a triathlon?”
How’s a guy who never learned to swim and hadn’t ridden a bike since he was six going to haul his 110-pound kid through a triathlon? Still, Dick tried.
Now they’ve done 212 triathlons, including four grueling 15-hour Ironmans in Hawaii. It must be a buzzkill to be a 25-year-old stud getting passed by an old guy towing a grown man in a dinghy, don’t you think?
Hey, Dick, why not see how you’d do on your own? “No way,” he says.Dick does it purely for “the awesome feeling” he gets seeing Rick with a cantaloupe smile as they run, swim and ride together.
This year, at ages 65 and 43, Dick and Rick finished their 24th Boston Marathon, in 5,083rd place out of more than 20,000 starters. Their best time? Two hours, 40 minutes in 1992–only 35 minutes off the world record, which, in case you don’t keep track of these things, happens to be held by a guy who was not pushing another man in a wheelchair at the time.
“No question about it,” Rick types. “My dad is the Father of the Century.”
And Dick got something else out of all this too. Two years ago he had a mild heart attack during a race. Doctors found that one of his arteries was 95% clogged. “If you hadn’t been in such great shape,” one doctor told him, “you probably would’ve died 15 years ago.”
So, in a way, Dick and Rick saved each other’s life. Rick, who has his own apartment (he gets home care) and works in Boston, and Dick, retired from the military and living in Holland, Mass., always find ways to be together. They give speeches around the country and compete in some backbreaking race every weekend, including this Father’s Day.
That night, Rick will buy his dad dinner, but the thing he really wants to give him is a gift he can never buy.
“The thing I’d most like,” Rick types, “is that my dad sit in the chair and I push him once.”
Last night, my daughter decided to lay down and watch a movie early, which meant I could get some extra time in to try to push my mage to 60. Just as I sit down, my wife calls from the other room, “Honey, I think someone is scamming me.”
We have had kind of a rough week. First off, someone exploited a hole in our outdated version of Zen-Cart, and sent a Paypal spoof e-mail to every single customer in the store. That tore up a good part of my weekend, trying to upgrade the store, and make sure everything was secure. Then, my mother in law went into the hospital. (She is out of surgery, and expected to come home today!)
So, my wife decided that with all the downtime in the store, and all that had been going on, that she would put a $5 coupon code for her store. $5 off your order, no matter how small. Of course the coupon is only usable once by each customer, but unlimited times otherwise. It turns out, someone decided to create 16 bogus accounts just to rip us off.
My wife had started to notice that she was getting some e-mail bounces, people creating accounts with bogus e-mail addresses. Then they started happening rapidly…. So, naturally, I look at the IP for one of the orders and then search for all orders from that IP. Hmm, 19 of them. But wait, the first 3 are starting in January, and all with the same account. Oddly, her first e-mail hadn’t bounced, so long ago.
It turns out she gave us her real name, e-mail address, physical address, etc. on her first couple of orders. The first thing I did was edit the PHP to block her IP and give her a “Go scam someone else” message. Then, I e-mailed her and told her she wasn’t welcome in our store until she was willing to pay for all of the things she had taken. Furthermore, I told her that I would be reporting to her ISP what happened (not that it will probably do any good). Here is her response.
I have no idea what you are talking about. I have paid for the kits from your shop.
Sure, except that you just e-mailed me from the exact same IP that you have been scamming us from, and now I have the last bit that I need to prove it. Sure enough, in the message headers, her IP proclaims her guilt.
As it turns out, you’re not anonymous, and I am still not level 60.
This session probably had the most relevance to my current project at work and it was pretty exciting to see in action just what ATLAS is going to be able to provide me in the future.
Rick was a great speaker and his demos really did a great job of quickly showing just what ATLAS could do for you. It was particularly nice to see just how easily you can convert an old ASP.NET web application to take advantage of AJAX with ATLAS. It basically consists of putting any controls you want to AJAX-ify into an update panel that you just drag and drop onto your webform. That’s nice. VERY nice.
Basically if you’re not familiar with AJAX, it’s a technology that allows you to do a partial post-back of content on a page so that an entire page doesn’t have to re-render in the browser. This is quite an advancement for UI development for web apps (although it’s not really a new technology, it’s just not been used much) and it takes web applications one step closer to although still not having “state”, at least simulating “state”.
ATLAS is a framework for .NET that makes developing your web applications to utilize AJAX a whole lot easier and watching it in action it looks like Microsoft has a great start on it. While I wouldn’t describe everything as easy, what I did see was a lot easier then trying to implement AJAX in your web pages yourself without the ATLAS framework.
This session, I was reacquainted with my favorite person of annoyance again, and they did indeed proceed to halt the session several times with some questions that just weren’t appropriate for the format. Rick (just like Lucas) showed amazing patience and was quite skillful at putting the session back on track again although it did end up going a bit long because of the side tracking questions. (Please people if you have idle curiosity about something, go home and play with it, don’t force the presenter to play with it during a free session with limited time. Those kind of questions just aren’t appropriate.)
Rick has been quite generous and has his demos and slides up on his site (get them soon, he’s not planning on keeping them there for long), so even if you couldn’t make it to Code Camp, take a look at his demos if you want to get a feel for what ATLAS can do for your ASP.NET web application.
Rory is just flat out one of my favorite technical speakers period. If you haven’t had a chance to hear him speak, well, make the effort. And when Rory is talking on a subject of some interest to you that you know little about, do whatever you can within the confines of the law (or maybe a little outside of the law) to make sure you don’t miss it.
WCF (Windows Communication Foundation) (formerly ‘Indigo’) is part of the .NET framework 3.0 (formerly ‘WinFX’, thanks for confusing the heck out of me Microsoft). Basically, it’s all those old APIs that dealt with communications gathered into one nice easily accessed and elegant API.
Watching Rory throw together a quick demo using 3 different communications methods (TCP, Named Pipe and HTTP) was pretty breathtaking. The first one you were like, ok, so you had to do that this and that and suddenly you can transfer text between two applications. Yeah, neat. But then, you saw him do it using the next communication method and guess what? YOU DO IT THE EXACT SAME WAY! That’s right. If you can setup a communication using HTTP, you can setup a communication using TCP. That just rocked.
I haven’t played with Indigo (I mean WCF) yet, but watching Rory’s sample application quickly come together was enough to make me think I need to start doing some playing.
All in all, some pretty exciting stuff for developers coming from Microsoft. If you’ve ever experienced the headache of remoting, be happy because your relief is coming very soon (just how soon is that Rory?)
Well, this session was the one I was most excited to attend and maybe because of those high expectations was the most disappointed with. First, I’d just like to apologize to anyone that attended this session. I became “that guy” and I’m sorry for that. I disagreed with so much of what was being said by David, that I had a hard time keeping my mouth shut. Especially when I felt it wasn’t even a disagreement of opinion, but just wrong information being given. So for not allowing the presentation to just go on and instead interjecting constantly to disagree I apologize and hope I didn’t ruin that session too much for others.
Coding standards and best practices is a passion of mine and I have some very strong opinions about it. All in all, I’m glad the session was held because I think it’s important, but the delivery for me just wasn’t what I wanted. For me, I think it’s wrong to say “here is the standard you should use, and it should be an underscore to identify class level variable”, but more explain why you need to have standard for something, like why is it important to have some identifier for class level variables. I also felt that the book pimping was a bit out of control, but I guess that’s his right and just to make up for me being such an annoying ass to him, I’ll help him pimp it. Here check it out.
Even though I didn’t agree with all of his content, the general message is one I stand behind wholeheartedly, everyone who is a developer needs to follow some kind of standard. You need to do this at work and in your hobby projects. If you are writing code, you should have a standard and follow it.
So, one of my most disappointing sessions, I couldn’t keep my mouth shut, but overall the message still rings true. Props to David for presenting such a controversial topic, it’s always hard telling developers they need to change how they write their code, maybe next year I’ll have the guts to do one like this myself.
The first session of the day and I was instantly blown away. Lucas Carlson presented an amazing introduction to developing with Ruby on Rails and I almost got physically sick in the classroom. What the Rails framework provides is the EXACT functionality I have been developing for a current project of mine for the LAST TWO YEARS!
Watching just how quickly a CRUD (create, read, update and delete) web page could be developed for a database table was just sickening to watch. I’m talking just a few lines of code in Ruby and you are done. The language itself is developed with “The Principle of Least Surprise” and after watching this session, it was easy to see how well that principle was achieved. At no point during the presentation was I “surprised” at how a function worked or where something was found in one of the libraries. It is just such an elegant language.
Lucas himself was a great speaker. Soft spoken and extremely intelligent. Watching his fingers fly as he would enter command line commands and switch back to the development environment to type a single line of code to make a web page was just phreaking impressive.
The only downside of the whole session came from the attenders themselves and it’s a problem I’ve been experiencing a lot lately when I attend presentations. People really seem to believe that saying “there are no stupid questions”. Stop it people, that’s a lie, so quit believing in it. I really find myself frustrated with people that halt a presentation with these questions that just aren’t appropriate. I don’t want to spend my whole time talking about this issue right now, I think since it bothers me so much I’m just going to have to do a post in the future about learning to ask the right questions at presentations.
So for now let’s just say there were a few individuals asking certain types of questions that made parts of this session particularly grating, hat’s off to Lucas though for his patience in dealing with the questions and moving the session along.
All in all, this was one of my favorite sessions of the day and had me so excited about Ruby on Rails that I got the environment setup on my computer to play with the next day (although one of the other 4Guys was even MORE excited than I was….). If you haven’t taken a look at Ruby on Rails and are involved in web development in any way, I would highly recommend you read up on it. It never hurts to be familiar with other web technologies and you’ll get over that sick feeling in your stomach when you realized you could have spent 3 months learning Ruby and 3 days making your entire project instead of 2 years eventually…or at least I hope you do.
This year I decided to try to catch some of the Ruby sessions, and see what all the hype was about. Apparently I have been missing a lot. Fortunately Lucas Carlson was around to show me the light.
As it turns out, Ruby (or Rails, really) is just awesome. Actually, I’m not sure awesome is quite enough to really describe my thoughts, but I can’t think of a better word…. (if only I had a way with words like Rory maybe I could come up with something. (But I’m not. (So I can’t. (But (Maybe (I ( Can (Get (More (Parentheses (Into (One (Sentence))))))))))))).
OK, so back to Rails. If you haven’t tried it, you should. I’m pretty sure you can re-create the internet in about 4 lines of code. Yeah, its that good.
I have found a really good bit of aggregated info about Rails on this site, so check it out.
Honestly, I had a terrible headache during the afternoon, so I don’t remember a lot of the afternoon sessions very well. I remember thinking “Atlas is cool” and “That guy isnt wearing any shoes”, but most of it is kind of a blur.
P.S. It was somewhat difficult to get setup on Windows, but its probably because I was falling asleep. I have it down pretty good now, so if you need help, leave a comment and I will e-mail you back and help you through it.
Portland Code Camp v2.0 was held this past Saturday (7/22) on the WSU campus in Vancouver and man, what an event! If you didn’t have room in your schedule to attend it this year, start writing “Portland Code Camp” in your day planner for every day of next year just to make sure you don’t make that stupid mistake again.
I just want to say to all the people involved in making it happen, awesome job guys. You really pulled it off and code camp was a total success in my opinion. The code camp was cut back to just one day this year (due to lack of presenters, not lack of attenders), but what a day it was. Coffee in the morning, an quick opening session, 2 awesome sessions, a great box lunch outside near the WSU fountain, followed by 3 more awesome sessions, a nice catered dinner with good conversations with fellow technology enthusiasts in the community, live music, Frisbee golf, geek karaoke and croquet on the lawn. Quite a day.
The sessions were varied and covered a wide range of topics from ASP.NET to Ruby to AJAX to Use Cases to.. well, let’s just say you could get a LOT of information about many technologies in just a single day.
While the sessions were awesome, the true power of the code camp is in meeting other members of the technology community. If you didn’t take the time to introduce yourself to at least one new person, you really missed out on some serious networking opportunities.
Well, that’s my little blurb about the Portland Code Camp v 2.0 in general, I’ll try and get some of my session specific observations up in just a little bit. Throughout the day it was possible to attend five sessions, but I only went to four of them. During the third session, I took a little Code Camp break and went home to give my wife a little break with the boys (we have 3 of them), but I’ll make sure to post my coverage of the sessions that I did attend.
So, I was laying in bed the other night, bugging wifey as I love to do (a guy has to have a hobby right!), when I got this delightful little phrase thrown in my general direction.
GET THAT WOOKIE OUT OF MY FACE!
Man, i thought she LIKED the wookie! I guess I’ll be nice and put that in context for you….

Nothing like putting the Wookie in your wife’s face….
So, I’m sitting in my den looking up Client Side Validation with ASP.NET 2.0, when I hear this buzzing sound. I have no idea what it is, so I go to investigate. That was a very bad idea. What I found was my 10 yr old shaving her arm pits with an electric shaver. Not bad in and of itself, but not exactly what I needed to see.
The following is what went through my head in the few seconds I had before I ran back to my den, in full panic mode.
OH $h*t. What is happening? This can’t be happening. How can this be? She’s only 10!!! NOOOOOO
For one thing, she still wears cartoon pajamas and plays with dolls. How can she be playing with dolls and shaving her body hair? I’m so not ready for puberty. The reality of it all is that she’s growing up. Growing up very fast.
I haven’t a clue how I’m going to deal with puberty and dating, but I’ll have to find a way because I can’t keep her from growing up, and I don’t have a time machine to go back to when she was a baby.
Bleh
If you didn’t get the pleasure of attending this fun networking and learning experience last year, do everything in your power to make sure you can make it to this year’s Portland Code Camp 2.0.
You can register for the event here. It really sounds like they are going all out this year including having evening activities and catered meals. If you do attend, make sure to look us up and say hi. It’s always fun to meet the other Portland/Vancouver area nerds.
Those of us from 4Guys who attended last year had a great time and really picked up a lot of new information and skills. The topics covered are varied and it looks like they are getting a ton of new speakers this year (there’s a slim chance some of us might work up the courage and motivation to be a presenter, but looking at past motivational history, the chances are slim…very slim), so I’m expecting a similar and most likely better experience than last year.
Hope to see you there!

It’s Friday. I was bored. What more can I say?
Well, recently the 4Guys (well, technically just the 2 of us) have entered a game contest sponsored by GeeksWithBlogs. It’s proving to be quite an entertaining time with all the trash talking, seeing the game concepts other contestants have come up with and watching their progress unfold [or lack of progress continue
]
Part of the requirement for the contest is that we have to blog about the game development and our use of Visual Studio Express (it’s FREE!) while we do our development using a GeeksWithBlogs account, so for those of you interested in how the contest is going, you can read about our progress here and here.
I don’t know what the chances of one of us winning actually is, but I know that I’m having a great time developing the game and getting to know some of the other contestants a little better.
After all the entries have been submitted all source code and projects are supposed to available to all for download and review, so for those interested in making a game themselves, be ready to have quite a few samples to browse.
I’m crossing my fingers that the other contestants drop out or lose focus because I know it will be at least another three years before the XBox360 drops down into my price range! Go slackers!!!
So, I have a couple of virtual servers at GoDaddy (this site is hosted on one of them), and my wife was complaining about how much spam she was getting. So, being the big spender that I am, I decided to add the Plesk Pack Deluxe, because it includes SpamAssassin (though an ancient version of it, like everything else on their servers). I could only manage to setup SpamAssassin globally, for the server, though you were supposed to be able to configure things for each user, so they could mark their mail as spam/not spam, and it would learn how to detect spam better using bayesian filtering. Without it, SpamAssassin is considerably less accurate.
Here is how the conversation went (I didn’t record it, or write it down word for word, so some parts are missing, but everything that is in here was said. ):
Basic Support: Hi, can I have your customer number, even though you just
punched it into the phone because we told you it would expedite your call?Me: ****** (come on, you didnt think I was going to tell you my customer
number did you)….(we will skip the rest of the verification process)
Basic Support: OK, how can we help you.
Me: I just added your Plesk Deluxe Package, and I am trying to get
SpamAssassin to be available at the user level. I have checked the boxes as
the server level that should allow it, but it is still disabled, so I can’t
turn it on.Basic Support: hmm. Let me check on that.
Basic Support: hmm, I am going to have to ask someone in advanced support
<hold>
Basic Support: OK, apparently you cant configure spamassassin at the user
level, but configuring it at the domain level should be fine.Me: No, you CAN configure it at the user level, there is an option in Plesk
to do it, its just disabled.Basic Support: OK, let me call Advanced Support back
<hold>
Basic Support: OK, I have talked to a couple of guys back there, and
apparently Plesk doesnt allow that. The icon is there, but you cant use it
because of our configuration.Me: It is basically useless to configure it only at the server level,
because Plesk forces you to train it at the user level, and they have to be
able to choose whether to delete their mail or tag it. Without being able
to train it, its going to be next to useless. Also, on the demo on the Plesk
website, it works just fine at the user level there, so its not a Plesk
issue.Basic Support: Well, hmm. Im trying to think…. hmm…. Let me walk over
and talk to them.
<hold>
Basic Support: Yeah, I guess its just because we have it on a virtual server
or something. They say its just not possible.Me: When you look at the information about the Plesk pack, it says “Your
Plesk control panel provides a configuration interface for spam rules,
server-wide or on a per-mailbox basis.” Look, they are feeding you full of
crap. They are just trying to get you off their back.Basic Support: Yeah, they are talking to me like I know all of the things
they do. This is just basic support.Me: Yeah, I can talk to them if you want, I probably DO know as much as they
do.Basic Support: Yeah, you should probably talk to them directly, let me see
if I can get someone on the line
<hold>Advanced Support: This is <some idiot>, how can I help you.
Me: Yeah, I am trying to get SpamAssassin to be enabled at the user level in
plesk.Advanced Support: Yeah, thats not really possible.
Me: Look, on the plesk demo site you can configure it at the user level, and
it works fine. Also, it says you can in your documentation, it just doesnt
say how. So, either you are lieing there, or lieing to me now.Advanced Support: Yeah, its not really possible due to our configuration.
Me: It is basically useless to configure it only at the server level,
because Plesk forces you to train it at the user level, and they have to be
able to choose whether to delete their mail or tag it. Without being able
to train it, its going to be next to useless.Advanced Support:<silence>
Me: OK, so even beyond that, its not even working at the server level.
Advanced Support: How do you know its not working?
Me: Well, SpamAssassin adds some header information to the e-mails it scans,
and there is nothing in the messages coming through the server.Advanced Support: (Skeptical Tone)Let me run a test.
<hold>
Advanced Support: I ran my test, and it looks like it wasnt running because
you have to turn on Spam filtering for each user.Me: I CANT! That is why I called in the first place! You told me its not possible.
Advanced Support: <walks me through how to turn it on for the user, which is
in a different place than every single other user level option>Me: <walks the support guy through configuring and training SpamAssassin for
each user>
Me: So, it appears that you CAN configure SpamAssassin for each user.Advanced Support: I apologise for not knowing about that particular feature
Me: I have to say, I am less than impressed by the support I’ve received.
Advanced Support: Well, I apologise about that, its not something that
usually comes up.<end support call>
In the end, I have to say, GoDaddy has some of the best server pricing in the market, but if I needed support on an even semi-regular basis, they just wouldnt cut it.
We realize that quite a few of our loyal readers the one reader who made it to this site by mistake twice may be getting freaked out by the changes we have made to the theme and banner of the blog. Well, we are here to assure you that 4GuysFromViewpoint takes the purpose of our blog very seriously. Sleep easy at night knowing you have no need to fear or worry. We, at 4GuysFromViewpoint, promise to continue to provide the same un-intense, haphazard writing and posting style that we started this blog with. We will continue to provide the sub-par, copy and paste, write something when we feel like it posts we have always not been striving to give to you on the same very inconsistent basis we have since the beginning.
We do hope you enjoy the new look and feel, but if you don’t, just let us know and we promise to not get right on changing it. Loser.
I don’t know about the rest of the world, but here at my house, we’ve been hit by wave after wave of colds. I’m not talking, slight sniffles with some light body aches, I mean delirium inducing fevers with body racking coughs and different types and consistencies of fluids running out of every orifice the body has to offer. To make that delightful image even better magnify it across a family of five. Oh yeah. It’s a pretty sight.
It’s been very draining with no apparent end in sight. Every time it seems like we’re on the mend and we can once again walkabout without having to shout “Unclean! Unclean!”, one family member or another starts back up again on a new variety of the flu that we haven’t been introduced to yet. Then they, as all proper members of society should, generously share what they now have in abundance with the rest of the family.
Currently, I feel like I’m constantly drowning with fluid in my lungs.
I’m not really sure what the purpose of sharing any of this was, but I did. You can thank me later.
So, we were sitting around in the lunchroom talking, and came up with something that we think could be a really valuable change to a key method in the .NET framework (as well as in just about every other language). The name IsNumeric is misleading, because you would expect it to return true only if the value was truly a number, but as many know this is not really the case. As such, I have created a couple of other methods that may be suitable to replace it.
Public Function MostLikelyNumeric(ByVal Expression As Object) As Boolean
Return IsNumeric(Expression)
End FunctionPublic Function PossiblyNumeric(ByVal Expression As Object) As Boolean
Return IsNumeric(Expression)
End Function
Either of those seem like they are more descriptive….
I commonly read Snopes to see what new urban legends are floating about. I am not sure if this is true, but either way, it made me laugh out loud.
Dear Friends,
My wife Toni is fond of saying that my last words on this earth will be something akin to, “hey y’all, hold my beer and watch this!” Well, I have outdone myself once again. No doubt you will see this true story chronicled in a LifeTime movie in the near future. Here goes.
Last weekend I spied something at Larry’s Pistol and Pawn that tickled my fancy. (Note: Keep in mind that my “fancy” is easily tickled). I bought something really cool for Toni. The occasion was our 22nd anniversary and I was looking for a little something extra for my sweet girl. What I came across was a 100,000-volt, pocket/purse-sized Tazer gun with a clip. For those of you who are not familiar with this product, it is a less-than-lethal stun gun with two metal prongs designed to incapacitate an assailant with a shock of high-voltage, low amperage electricity while you flee to safety. The effects are supposed to be short lived, with no long-term adverse affect on your assailant, but allowing you adequate time to retreat to safety. You simply jab the prongs into your 250 lb. Tattooed assailant, push the button, and it will render him a slobbering, goggle-eyed, muscle-twitching, whimpering, pencil-neck geek. If you’ve never seen one of these things in action, then you’re truly missing out—way too cool!
Long story short, I bought the device and brought it home. I loaded two triple-a batteries in the darn thing and pushed the button. Nothing! I was so disappointed. Upon reading the directions (we don’t need no stinkin’ directions), I found much to my chagrin that this particular model would not create an arch between the prongs. How disappointing! I do love fire for effect. I learned that if I pushed the button, however, and pressed it against a metal surface that I’d get the blue arch of electricity darting back and forth between the prongs that I was so looking forward to. I did so. Awesome!!! Sparks, a blue arch of electricity, and a loud pop!!!
Yipeeeeee . . I’m easily amused, just for your information, but I have yet to explain to Toni what that burn spot is on the face of her microwave.
Okay, so I was home alone with this new toy, thinking to myself that it couldn’t be all that bad with only two triple-a batteries, etc., etc. There I sat in my recliner, my cat Gracie looking on intently (trusting little soul), reading the directions (that would be me, not Gracie) and thinking that I really needed to try this thing out on a flesh and blood target. I must admit I thought about zapping Gracie for a fraction of a second and thought better of it. She is such a sweet kitty, after all. But, if I was going to give this thing to Toni to protect herself against a mugger, I did want some assurance that it would work as advertised. Am I wrong? Was I wrong to think that? Seemed reasonable to me at the time. . .
So, there I sat in a pair of shorts and a tank top with my reading glasses perched delicately on the bridge of my nose, directions in one hand, Tazer in another. The directions said that a one-second burst would shock and disorient your assailant; a two-second burst was supposed to cause muscle spasms and a loss of bodily control; a three-second burst would purportedly make your assailant flop on the ground like a fish out of water.
All the while I’m looking at this little device (measuring about 5″ long, less than 3/4 inch in circumference, pretty cute really, and loaded with two itsy, bitsy triple-a batteries) thinking to myself, “no friggin’ way!”
Friggin’ way—trust me, but I’m getting ahead of myself.
What happened next is almost beyond description, but I’ll do my best. Those of you who know me well have got a pretty good idea of what followed. I’m sitting there alone, Gracie looking on with her head cocked to one side as to say, “don’t do it buddy,” reasoning that a one-second burst from such a tiny lil’ ole thing couldn’t hurt all that bad (sound, rational thinking under the circumstances, wouldn’t you agree?). I decided to give myself a one-second burst just for the hell of it. (Note: You know, a bad decision is like hindsight—always twenty-twenty. It is so obvious that it was a bad decision after the fact, even though it seemed so right at the time. Don’t ya hate that?)
I touched the prongs to my naked thigh, pushed the button, and HOLY SHIT!
DAaaaauuuuuuMN!!! I’m pretty sure that Jessie Ventura ran in through the front door, picked me up out of that recliner, then body slammed me on the carpet over and over again. I vaguely recall waking up on my side in the fetal position, nipples on fire, testicles nowhere to be found, soaking wet, with my left arm tucked under my body in the oddest position. Gracie was standing over me making meowing sounds I had never heard before, licking my face, undoubtedly thinking to herself, “do it again, do it again!” (Note: if you ever feel compelled to mug yourself with a Tazer, one note of caution. There is no such thing as a one-second burst when you zap yourself. You’re not going to let go of that thing until it is dislodged from your hand by a violent thrashing about on the floor. Then, if you’re lucky, you won’t dislodge one of the prongs 1/4″ deep in your thigh like yours truly.) SON-OF-A-BITCH that hurt! A minute or so later (I can’t be sure, as time was a relative thing at this point), I collected my wits (what little I had left), sat up and surveyed the landscape. My reading glasses were on the mantel of the fireplace. How did they get there??? My triceps, right thigh and both titties were still twitching. My face felt like it had been shot up with Novocain, as my bottom lip weighed 88 lbs. give or take an ounce or two, I’m pretty sure.
Film at eleven….
You spend your time pouring your heart in soul into the little buggers, you tend them with care, read to them, play with them, you watch their progress through life with love and pride. You’re heart breaks when you can’t be near them and you rush home from work just be around them every precious second you can.
Yep, Golden shovel trees are the best but then your disloyal five year old son shakes that beautifully tended golden tree and steals its golden shovel fruit right out from under your nose. Back stabbed by my own flesh and blood. My heart has been torn in two. I don’t know if I can ever enter the door of my home again, because every time my foot steps across the threshold my mind will transport me back to those life altering words I heard just last night.
“Hey dad! Your tree grew the Golden Shovel today, so I shook it and got it for you. It’s in my house if you want it!”
The Earth stood still, the birds outside got quiet listening intently to hear the primal scream which would no doubt soon be ripping through my soul and bursting out my mouth like an alien life form hungry for blood and destruction.
But instead, I took a breath, smiled and said “Cool, Thanks, I’ll have to check that out in a minute, just let me set my stuff down.” The earth continued in it’s rotations, the birds continued their chirping and I continued a forced march back to my office where I closed the door and threw myself into the arms of my loving wife, my body wracked with sobs and tears streaming down my cheeks.
She comforted me with words and held me close, stroking my hair to calm my grief stricken soul. “I know sweetie, I know. We’ll plant another golden shovel tree, you’ll be able to shake that tree yourself sometime, don’t worry.”
I knew she was right, but it just hurt so bad. After a few hours, I felt composed enough to at least attempt to enter the world. So out I went to face the little backstabber. All smiles, he handed me the control and said, “There you go Dad, see aren’t I a good helper?”
Yes, yes you are and I love you for it. It’s funny the things you learn to adjust in your life when you’re a parent, but if that little man even lays ONE FINGER on my Ranger in Guild Wars….well, we’ll let that tale for another day.
P.S. If you’ve never played Animal Crossing for the Gamecube, DON’T!! You just don’t have enough hours in the day to live two lives, believe me, my whole family is trying….just remember, you’ve been warned.
[powered by WordPress.]
22 queries. 0.795 seconds