
The photo today is a fountain in front of Nitro City Hall that they have added color lights too. I thought it looked pretty cool, so I took a photo of it.
The past few nights, I have been to the point of pulling out what little hair I have. I downloaded this nice free BASIC language for the Mac, geared toward making games. It is very much like AMOS on the Amiga that I used quite heavily in the 90's when I was writing games for that platform.
Anyways, to get back in the groove of things, I decided to start with a simple game, KABOOM!. Things were going quite well, until I needed some sounds. So I download some sounds from the internet, and they worked, but were a little long, or needed other tweaks. Ok, so I thought to myself, I'll go find a nice free Mac sound editor. Enter Audacity. Downloaded, ran, tweaked some sounds. Everything seemed fine.
Seemed fine, that is, until I tried to open TNT basic. Error loading "Music Block". This was strange. Tried quite a few things, but to no avail. So, I thought to myself again. Ok, let's take a break, and go read a little NASCAR news. Open up the website, and the sounds not working in the little TrackPass preview window. Say what? Ok, this is starting to get strange.
To make this long story short, I tinkered around, just stopping starting things, rebooting, reinstalling QuickTime, etc. Sound started working again. Ok, I didn't thing much of it. Just a glitch, I thought. I went on my way coding some more. Then I needed another sound. Fired up Audacity. And then, sound quit working, and I couldn't load TNT Basic. Ok, I thought. Audacity must be doing something to the sound channels. Locking them up somehow. So, I did the whole tinker around thing again, and finally after several hours, got sound working again. This time, though I knew Audacity had to be the culprit. To prove my theory (I am a masochist I know) I fired Audacity up again. Sound quit working. I can't load TNT basic again. Off to do some googling. You may think I didn't do this by now, but I had. Hadn't turned anything up. This time though I turned my search around, and looked for "Audacity problem". Bingo, found this:If no sound in QuickTime or Realplayer after using Audacity 1.2.3 - try checking Audio MIDI Setup (Applications/Utilities?). I find that Audacity consistently changes the Audio Output setting from 44100.0 Hz to 96000 - and changing it back brings back QT and RA sound.
Well, I gave that a try, and everything is right in the world once more. I am guessing that the Audacity team is working on resolving this. I would think it would an easy fix to not set the audio output to 96000, so I suspect this will be a new release before too long.

Here is a shot of the St. Albans Mall that I took a few nights ago. They sky was incredible again, and that coupled with the wonder lighting of the mall made for a pretty good picture. At least I think so. Plus, this shot turned rather well for a hand-held one, with slow shutter and low ISO settings.

Here is a shot of traffic as I saw it coming home yesterday afternoon. It was backed up for 4-5 miles on I64 west bound. Was it an accident you say? No. Was it construction, you say? No. Traffic was backed up thanks to a couple of tractor trailers driving rather slow in the left two lanes. Traffic in the far right lane cleared once I got to the Montrose exit, and so I darted over there. I thought for a bit of taking Montrose and going that way, but my better judgment kicked. The right lane was clear, so I darted on down the road. Got almost to the MacCorkle exit where the construction starts, and traffic was clear... Well, ahead of me anyways, it was. Just two tractor trailers holding everybody up. Man, I was steaming mad! But I quickly calmed once I realized I had just saved myself a long wait.
I came across this backyard monorail while surfing some pages randomly today. My kids would absolutely love this! I am no builder by any means, but if I were, I would build myself one of these. It would be great to see the looks of the neighbors as we cruise above privacy fence level and look over into their yards.
Driving to work this morning, I came across a pedittle. For those who don't know:
pedittle: A vehicle with two headlights, but only one of which is operating.
Now, I see these quite a bit on the highways, but this morning, the one that I came across shocked me to say the least. It was a school bus. A school bus with children on board. Now, I thought that the Department of Education did a better job of keeping their school buses in compliance with the law. Having all lights operational on a vehicle on the highway is a law in the state of West Virginia.
I suppose that the light could have went out after the bus had began on its route, but I would wager that it was out when the driver left the station. If I could have seen the number on the school bus I would have called it in. Maybe, I'll get lucky, and pass this same bus with a headlight out tomorrow. If I do, I can guarantee you that I will call it in.
I really hope that they fix the light, and I don't have to call.
Is it just me, or do others of you get really annoyed when you see someone driving in the early morning, or late afternoon with their parking lights on instead of their headlights? What's up with that? Why do people do that? Do they think that is what parking lights are for? Driving at dusk and dawn? I mean, do they not comprehend the term "parking lights", or do they unaware of the term "parking lights"? And why is it that many of those who do this are driving grey or sliver colored cars that are hard to see at dawn and dusk?
More annoying that this, though, are those that drive with no lights, parking or otherwise, at dawn and dusk. Again it seems that the drivers of grey and silver cars are the main culprits. Anyone else notice this? Maybe it's something in the grey and silver paint.... What do you think?

Walking to my car this afternoon after work, I stumbled upon these berries. At least I think that this is some sort of berry. Can anyone out there confirm or refute this for me? I'm not about to try one, but they did look rather yummy. These were found on Morris Street near the intersection with Virginia Street. Kind of wish I had some homemade blackberry cobbler now.
Now, I have heard of some large families before, but this one "takes the cake", as they say. This couple is a single income family with 16 children. And they might have more. That is simply amazing. In today's times, I have a hard time imagining how they manage their time. In my little family, we just have 2 children, and we have a tough time managing it, let alone finances. I'd love to get the inside scoop on how they manage everything.
On a finances front, I picked the wrong industry, obviously. I should have went into real estate sales. This family of 18 manages on a single income of the father, who is in real estate sales.

I'm sharing a second photo today with the hopes of making you laugh as much as it makes me laugh. Everyday, I drive past this sign, and everyday I wonder to myself, "And just what other direction could I possibly go but one of these two, so why in the world do I have this sign? I mean after all, there are those bright yellow barrels warning me that the road splits. And of course, I can see, so I can see that the road splits. So why this sign?"
Does anyone else out there wonder about this sort of thing, and then just have to laugh at the events that must have occurred for this sign to be needed? It's kind of like the warning on some irons, "Don't use on clothes which you are wearing." And on a set of pajamas with a Superman theme, "Does not endow wearer with ability to fly". And in the manuals of some Winnebagos I understand, "Cruise control is not an automatic pilot".
While listening to a local radio station, I keep hearing this commercial for Southern Candles & Gifts. What strikes me as funny about it, though, is that at one point the conversation between these two ladies in the commercial goes something like:
Girl 1: I really don't need any candles.
Girl 2: They have so much more than candles, girl. Here, smell my hands.
It's that point that I expect to hear the smacking sound of a hand hitting a face. I just keep thinking about my younger days in school. Someone would say "I can make my hands smell like this or that by rubbing them together... Here... Smell." And you do, and then WHACK! They smack you in the face, and start laughing at you for being so gullible.
So, every time I hear this commercial, I think about that and just start laughing!
Jack Thompson, who I mentioned in an earlier post, has apparently rescinded his offer of $10,000 for a video game fitting his described scenario. Apparently, he was only kidding, and was attempting to use satire to make a point. I can appreciate the use of sarcasm and satire to make a point, but being that he is a lawyer, he should understand the gravity of such statements. After all, others have been forced to pony up an automobile to an individual who brought in a billboard that stated "bring this coupon in for a free car". And then there was the lawsuit brought against Pepsi regarding it's Pepsi Points commercial purporting that one could get a harrier jet with enough points. One must be very careful what one says.
While driving home this evening, I got behind an automobile with a number 3 sticker (Dale Earnhardt's number for those who don't follow NASCAR) right below a Kerry/Edwards sticker. Now, for those who know nothing of the politics of NASCAR, let alone of Dale Earnhardt, rest assured that this is quite an odd combination. If Dale were alive today and he came upon this combination of stickers, I am quite sure he'd tear that number 3 sticker off to prevent it from being associated with Kerry/Edwards. He was quite the staunch Republican, as are many in the NASCAR community. I find it hard to believe that any real Dale Earnhardt fan would be caught dead with a Kerry/Edwards sticker on their automobile, especially since the election ended nearly a year ago. And to add insult to injury, the automobile in question was a large SUV. Any real Kerry/Edwards fan wouldn't be caught driving a large gas guzzling SUV. After all, that'd be the same as voting for George W. Bush and Dick Cheney, wouldn't it?
The name of the game in tonight's NASCAR race, UAW-GM Quality 500, at Lowe's Motor Speedway was tires. Fifteen cars failed to finish the race, all but one because of tire issues, mostly right fronts, though there were a few with right rear trouble. Among those, some of the drivers in the Chase for the Nextel Cup. These included Tony Stewart, Rusty Wallace, and Matt Kenseth. The standings for the drivers in the Chase have really tightened up. Tony Stewart and Jimmie Johnson are now tied for the lead. Kurt Busch made up 81 points on the leaders. There is now only 54 points between the leaders and 6th place. There are five more races left in the Chase. Things are bound to become quite interesting in the next 5 weeks.

I guess I am longing to go back to Disney World again. We go every year, or at least we have for the past 5 years, and we just love it. This past year was our first trip to spend an entire week on property. We stayed at the Pop Century Resort. It is larger than life as you can see from this photo. It's a great resort for the pop culture aficionado.
An attorney, Jack Thompson, is offering $10,000 to charity if a game publisher will create a game based on a scenario he has defined. The basic premise is that a father of a son who was murdered vows vengeance against the video game industry. Basically, another violent game.
Now, I do not think that violent video games contribute to violent actions any more than cutesy games contribute to pacifist actions. I have been reading Wild At Heart by John Eldredge, and he makes some great points. Boys and men are wild at heart. Each of us has a desire for three things: a battle to fight, an adventure to live, and a beauty to rescue. These three themes are at the core of every man's heart. The violence we see is a result of a wound that each man receives earlier in his life. These are not physical wounds, but emotional ones. And usually, these wounds are inflicted by the man's own father. The violence comes out as a distorted attempt at trying to prove that "they have what it takes", that they are "men".
While reading this book, I keep thinking about the song "Where Have All the Cowboys Gone?" by Paula Cole. I never paid much attention to that song until I began to read this book. She hits the mark. We need more "cowboys". Not so much the over-macho stereotype, but true masculine men, who are wild at heart, and whose wild hearts have been set free.
Quoting Eldredge:Yes, a man is a dangerous thing. So is a scalpel. It can wound or it can save your life. You don't make it safe by making it dull, you put it in the hands of someone who knows what he's doing.

I am not sure what kind of flower this is, but I love the little bits of purple. I found this one in my in-laws yard. It's actually quite a small flower, but the macro setting on my camera really brings you in for a closer look. This is quickly becoming one of my favorite features of my camera. For those who may be wondering, my camera is a Sony Mavica CD-350.
UPDATE 10/14/2005 11:07am
Found one more little bug. An extraneous slash at the end of the namespace in some cases, and so the correction has been reflected in the source listing below..
UPDATE 10/13/2005 1:07pm
I corrected a slight bug in the code. The line that used to read
redim parms ( i )
now reads
redim preserve parms ( i )
Some time back, I posted an entry about calling a web service method using HttpWebRequest. I have translated that code into ASP/VBScript and have posted it here. Some stuff I have been working on required it to be done this way, and I thought that someone else might find it beneficial. The main reason for needing to do this in my case was that the server was upgraded to Windows 2003 Server from Windows 2000 Server, and it broke the SOAP API toolkit.
function makeWebMethodRequest ( url, webMethod, parmValues )
dim xmlHttp
dim ns
dim ns1
dim xml
dim xmlDoc
dim attrs
dim attr
dim nodes
dim node
dim cNode
dim sNode
dim pNode
dim parms ( )
dim i
dim returnsResult
dim soapXml
dim p
dim v
dim soapDoc
dim responseXml
dim xmlSend
dim soapAction
dim webMethodResult
if ( Right ( url, 5 ) <> "?wsdl" ) Then
url = url & "?wsdl"
end If
set xmlHttp = server.CreateObject ( "Msxml2.ServerXMLHTTP" )
xmlHttp.open "GET", url, false
xmlHttp.send vbNull
xml = xmlHttp.responseText
set xmlDoc = server.CreateObject ( "Microsoft.XMLDOM" )
xmlDoc.loadXML ( xml )
set attrs = xmlDoc.getElementsByTagName ( "wsdl:definitions" ) .item ( 0 ) .attributes
ns = getAttribute ( "targetNamespace", attrs ) .text
ns1 = ns
if right ( ns, 1 ) <> "/" then
ns1 = ns1 & "/"
end if
set nodes = xmlDoc.getElementsByTagName ( "s:element" )
for each node in nodes
if getAttribute ( "name", node.attributes ) .text = webMethod then
set cNode = node.childNodes ( 0 )
if cNode.hasChildNodes then
set sNode = cNode.childNodes ( 0 )
if sNode.hasChildNodes then
i = 0
for each pNode in sNode.childNodes
redim preserve parms ( i )
parms ( i ) = getAttribute ( "name", sNode.childNodes ( i ) .attributes ) .text
i = i + 1
next
end if
end if
exit for
end if
next
for each node in nodes
if getAttribute ( "name", node.attributes ) .text = webMethod & "Response" then
set cNode = node.childNodes ( 0 )
if cNode.hasChildNodes then
returnsResult = true
end if
exit for
end if
next
soapXml = "<?xml version=""1.0"" encoding=""utf-8""?>"
soapXml = soapXml & "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" "
soapXml = soapXml & "xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" "
soapXml = soapXml & "xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">"
soapXml = soapXml & "<soap:Body>"
soapXml = soapXml & "<" & webMethod & " xmlns=""" & ns & """>"
i = 0
for each p in parms
soapXml = soapXml & "<" & p & ">"
v = replace ( parmValues ( i ) , "&", "&" )
v = replace ( v, "<", "<" )
v = replace ( v, ">", ">" )
soapXml = soapXml & v
soapXml = soapXml & "</" & p & ">"
i = i + 1
next
soapXml = soapXml & "</" & webMethod & ">"
soapXml = soapXml & "</soap:Body>"
soapXml = soapXml & "</soap:Envelope>"
set xmlSend = server.CreateObject ( "Msxml2.ServerXMLHTTP" )
xmlSend.open "POST", url, false
soapAction = """" & ns1 & webMethod & """"
xmlSend.setRequestHeader "Content-Type", "text/xml"
xmlSend.setRequestHeader "SOAPAction", soapAction
xmlSend.send soapXml
responseXml = xmlSend.responseText
set soapDoc = server.CreateObject ( "Microsoft.XMLDOM" )
soapDoc.loadXML ( responseXml )
if returnsResult then
webMethodResult = soapDoc.getElementsByTagName ( webMethod & "Result" ) .item ( 0 ) .text
webMethodResult = replace ( webMethodResult, "&", "&" )
webMethodResult = replace ( webMethodResult, "<", "<" )
webMethodResult = replace ( webMethodResult, ">", ">;" )
else
webMethodResult = ""
end if
makeWebMethodRequest = webMethodResult
end function
function getAttribute ( attrName, attrs )
dim v
dim attr
for each attr in attrs
if attr.name = attrName then
set v = attr
exit for
end if
next
set getAttribute = v
end function
I have been coding in C# now for so long that I have just about forgotten (and I think that's a good thing) all of my knowledge of VBScript and its quirks. Well, I am working on some stuff now that requires it, and I am about to go bonkers trying to remember the syntax of some things. I keep wanting to use parentheses where they are not needed, end statements with semi-colons, and use brackets to reference elements in arrays and collections.

For a fake tree, the bark and such sure look real. For those who don't know, and have never been to Animal Kingdom at Walt Disney World, this a picture of the "Tree of Life" in the center of the park. It is quite cool looking. It's also quite large. There is a theater inside the tree where you can see a 3-D show, "It's Tough to be a Bug", based on the movie "It's a Bug's Life". The inside of the tree is just as elaborate as the outside. If you are ever there, it is a must-see in my opinion.

I in no way care for the cartoon South Park, but I stumbled across something today that I thought was a lot of fun -- South Park Studio. It lets you create South Park style characters. I played around for a few, and created one of myself.
By sheer accident, I discovered a useful keyboard shortcut in Visual Studio.NET..... Control - T. Swaps the two characters before the cursor. So, if you are like me, and mis-type things by swapping characters, this could be quite helpful.
Well, today I have been tagged by a fellow blogger. How considerate of him. All of this time, I have been spam free thanks to some serious spam filtering (Sorry if I never responded to you're e-mails... They were probably deleted as spam), but today I get tagged with some spam in another blog. Now, this is just too low. I can control my e-mail, and my blog, but when you get spammed in another blog. What are you going to do? I guess I have to do this now. Thanks a lot Jackington!
Ok, so here's the rules:
1. Go into your archive.
2. Find your 23rd post.
3. Find the fifth sentence (or closest to).
4. Post the text of the sentence in your blog along with these instructions.
5. Answer the questionnaire.
6. Tag five other people to do the same.
Here goes, my 5th (actually 2nd since I only had 2) sentence from my 23rd post: I guess only time will tell.
And now the questionnaire...
1. Legal First name? Stacey
2. Were you named after anyone? No.
3. Do you wish on stars? No
4. When did you last cry? I don't remember.
5. What is your favorite lunch meat? Turkey.
6. What is your birth date? December 30.
7. What's your most embarrassing CD? None, I love all of my music.
8. Would you be friends with you? Yes, I think.
9. Do you use sarcasm a lot? Absolutely Not!
10. What are your nicknames? I'll never tell, but my friends know, and they better not post them in the comments.
11. Would you bungee jump? Are you nuts? I do love roller coasters, however.
12. Do you untie your shoes when you take them off? Rarely.
13. Do you think that you are strong? No.
14. What is your favorite ice cream flavor? Chocolate.
15. Shoe Size? 12.
16. Red or pink? Red.
17. What is your least favorite thing about yourself? I love myself. What's not to like?
18. Who do you miss most? A college buddy. We still talk some, but not like we used to.
19. What color pants and shoes are you wearing? Blue Jeans, white Reeboks.
20. What are you listening to right now? 100.9 The Mix (Hey Spike!).
21. What did you eat for breakfast? Blueberries & Cream Oatmeal.
22. If you were a crayon, what color would you be? Purple.
23. What is the weather like right now? Cloudy, but a perfect 72 degrees.
24. Last person you talked to on the phone? Wife.
25. The first things you notice about the opposite sex? Eyes.
26. Do you like the person who sent this to you? I might, but they obviously don't like me, or they wouldn't have sent it in the first place.
27. Favorite drink? Coffee.
28. Hair color? Dark Brown.
29. Do you wear contacts? Not anymore... Just glasses.
30. Favorite food? Lasagna.
31. Last movie you watched? Monster-in-Law.
32. Favorite day of the year? Thanksgiving.
33. Scary movies or happy endings? Happy Endings.
34. Summer or Winter? Spring and Fall, actually.
35. Hugs or kisses? Hugs.
36. What is your favorite dessert? Lemon Meringue Pie.
37. Living arrangements? Myself, wife, two little ones (5 and 2).
38. What books are you reading? None.
39. What's on your mouse pad? Dilbert.
40. What did you watch last night on TV? Nothing last night. I watched Amazing Race the night before last.
41. Favorite smells? Anything that doesn't stink.
42. Favorite junk food? Brownies.
43. Rolling Stones or Beatles? Beatles.
44. What's the farthest you've been from home? Cheyenne, WY.
Finally, the "lucky" tagees:
Tag! You're It!
I came across an interesting new blog, Au Contraire, while surfing blogs on BlogAdvance. It's a blog with 4 team members -- a liberal, a conservative, a libertarian, and an independent.
From their site:Our intention is to post weekly on Thursdays or Fridays -- four 400-word perspectives on a political issue. Sometimes that issue will be one of immediate interest to the American public; other times we'll cover more enduring conflicts.
I think that this is a great idea, and I look forward to reading 4 takes on different topics. Whether or not I agree with one, or none, I think it will be great to get some insight from each perspective on a particular topic all right in one place. This should prove most interesting.
I have been having a state management issue with a composite custom control that I created. This control is made invisible as a result of a post-back event. It remains invisible until a button on the form is clicked. The control in question is a list. When an item in the list is clicked, the control is hidden and a data entry form is displayed where the user can update information for the item which was clicked. In the data entry form is another list, which provides the same functionality. An item can be clicked, and data can be updated for that item.
During all of this the original list remains invisible. However, I need it's state to be maintained so that when the update is done, or canceled, I can once again display the list, and not need to rebind the data. Herein is where my problems began.
Apparently, CreateChildControls() is not called for a control when it is invisible, and a post-back event occurs. However, OnInit() and OnLoad() are called. So, the solution to my dilemma was easy, though it leaves very uneasy. I override the OnLoad event for my list control. It looks like the following:
protected override void OnLoad(EventArgs e)
{
EnsureChildControls();
base.OnLoad (e);
}

Just some logs beside a building. This building is right beside the rusted car that was pictured in my Photo of the Day this past Friday.
The past couple of days, I have been working on a problem that I finally solved.
Suppose you created this really useful custom control class, and that you have been using this class on all sorts of pages with no problems. Then suppose that this class needs to be embedded in another control, that is embedded in another control. Everything still seems to be fine, until you find a bug. This bug, as it turns out, is a result of the dynamic built nature of your control. Your control displays a nifty list that also provides a search capability. Everything works fine until you search. It appears to work. Your list is generated, and the link buttons are all created just fine in the list. Then, you click one. Postback occurs, it goes awry. The button you clicked is not what the page thought you clicked. In fact, what it thought you clicked was actually the button that happened to be in the same location in the list prior to your search.
Well, the problem as you may have guessed, if you are .NET savvy, is that I rebound the data on the Load event for the page. This is typically a non-no unless you are building dynamic controls. In those cases, you have to rebind so that you rebuild the state of the control, so it can process events.
OK, so I remove that. It shouldn't be there. But, actually it should. I need to display an initial set of data when the page first loads. Ok, so I think, I can just check to see if this is a post back or not, right? Well, normally yes. But in my case, I couldn't. Here's why. In my case, the control that contains this list control is actually a dynamically loaded control that results from a click in another list in another control. Sound complicated? It is. So, what happens is by the time I get to this control, it is already in post-back mode, and will continue to be so from this point forward. But I really need a way to know that it is the first time this control has loaded.
Here's where the solution comes in. My Load event handler now looks like the following:
if (this.ViewState["firstTime"] == null)
{
bindData();
this.ViewState["firstTime"] = false;
}
What happens is now when the control loads, it checks for the existence of "firstTime" in the ViewState. If it's there, then it just goes on it's merry way. If it's not though, we are loading this control for the first time, so we bind our data, and then we set the ViewState indicating we are no longer in a first time state. The ViewState object persists as long as we are posting-back to this page, and once we are not, it is cleared. When the control is loaded again, it will be just like the first time.
I watched the UAW Ford 500 today. The race was quite a great race for the fans, but not so great for several drivers. There were a couple "Big Ones" today, and each took several chase contenders out. The first big one came around lap 20, and was the result of Jimmie Johnson getting into the rear of Elliott Sadler as they entered a corner. Johnson claims that Dale Jr was all in his bumper, and that's the reason he couldn't help but hit the rear bumper of Sadler. Close examination of the replay tape clearly shows that Johnson was in the bumper of Sadler long before Dale Jr reached him. As a result, Dale Jr, Mark Martin, Elliot Sadler, Michael Waltrip, and a few others sustained damage that basically ended their days.
After the incident, Mark Martin was quite outspoken. He says that only the fans can change this type of behavior, and these types of wrecks. Martin doesn't like restrictor plate racing, and is quite certain it can't be all driver error. I think Martin needs to have a talk with Jeff Gordon to get a better perspective on the matter.
Jeff Gordon, on the other hand, is more sensible. In his post wreck interview, he says the drivers just need to get off the bumper. He says only the driver can prevent his car from hitting the car's bumper in front of him. And I have to agree. I think the plate racing is great. Anyone can win. Today, Dale Jarrett won the race. I for one did not expect that, yet when there was 2 to go, and he was catching the leaders I was cheering him on! It was awesome!
The announcers were discussing the incident and I think they had a great idea to force the hand of the drivers. Remove all of the added support to the front bumpers at the plate tracks. Without this, there's no bump drafting. Without the bump drafting the likelihood of crashes goes down drastically. If they were to try it, they smash the front end of the car in, resulting most likely in the engine overheating from restricted airflow. Problem solved.