I returned home from a week long vacation out of state to find my internet connection is down, which after some calls to tech support, yields a technician coming to my house in three days. At any rate, as I’m a pretty avid gamer, I have a stash of single player games which typically I save for these “rainy days”.
Well, over time, it seems I have picked up a fair amount of single player games which were purchased and delivered on Valve’s Steam system, which I am a pretty big fan of. The ability to just download and play the games you have already purchased is awesome!
Now normally, when your internet connection temporarily goes down, Steam supports an “Offline Mode” which allows you to play your games even though it can not connect to the Valve servers to validate the purchase. And usually it works fine. Games which require internet access don’t work so well, but you’d run into that with or with-out Steam, no doubt.
The problem I have run into however is, I would have to call a bug. As I mentioned I have been away for a week and my machine was turned off. So after some period of time, the Steam client decides it needs to check for an update, which ultimately falls as the internet connection is down. So, really that’s fine, the problem is, when an update fails the Steam client will not allow anything else to happen and closes Steam. An even more frustrating, it pops up the dialog which let’s you either Cancel running Steam or to start it in “Offline Mode”, however, when a Steam client update fails, it can only close steam and will not allow “Offline Mode” to proceed.
Here are some screenshots of the process:
1) So far, so good, starts up and tries to update

2) Starts doing something, in fact it gets to 27% pauses for a second, then retries. It will try 3 times in total never getting past the original 27% . This is likely due to the fact that the internet connection this machine is currently using is a tethered mobile phone using the 3G network of my provider. I’m not blaming Steam for this. With absolutely no internet connection, this #2 shot never happens, it just proceeds to #3.
3) After 3 failed attempts at completing the download and update, it errors out.
4) We are now presented with an option to Retry, Quit, or Start in Offline Mode. Retry repeats items 1 thru 3. Quit simply quits the steam client here. We then try the “Start in Offline Mode” to get to our games list or onto the game we started via Steam generated shortcut.
5) The Steam client update is apparently a MUST HAVE to proceed, and since it has failed (and in this case can never proceed as no internet connection is available). We are denied starting in “Offline Mode”
6) Surprise, surpise, there is a problem with the internet connection… We knew that, but I am now being denied access to any of my PURCHSED ($$$) games delivered by Steam.
WTF IS THAT ABOUT?!?
Surely this is normally a temporary inconvenience but I can’t play games I’ve paid for for 4 days, plus however long the internet connection actually was done while I was away… It’s not Valve or Steam’s fault, but it is there problem.
Regards!
AT&T Uverse is AWFUL!
Ok ya got me, awful is nowhere near strong enough a word but it'll have to do. Why? Ok here we go:
1) If you have a TV it MUST have a set top box otherwise you'd better have an air antennae or the tv is useless. $5.00 a month per set top box.
2) 4 Incoming TV streams. So you can watch different channels on 4 TV's. if you have 5 simultaneous viewers on 5 TV's, one of them must watch what someone else is watching or they can watch a DVR recorded show (if ya spring for the extra money for a DVR set top box.). Ok, sounds a little constraining but that's a lot of TV to watch at once right? Oh you forgot about the DVR didn't you. If the DVR is recording two different programs at the same time, there goes 2 of your streams leaving you 2 streams left to watch on your remaining TVs.
3) If you opt to pay the additional $10 a month for HD programming, 2 of your 4 channels are HD, the other 2 are SD. So if you happen to DVR those two programs in HD (and why the hell wouldn't you???) well you've still only got 2 channels left, but they are SD so enjoy watching that SD on your HD TV ya paid all that money for.
4) Only 1 DVR per house-hold. You can watch recorded shows from the DVR on any of your TV's but you can only schedule recordings from the DVR Tv (or the web based interface (which is only available to the primary account holders login on their site, so sorry spouse, roommate, or children, better ask the account holder to do it for ya…))
5) The 2Wire DSL modem / wire-less router combo. OK the device itself isn't awful for your average web-surfing person, but I have a swell D-Link wireless router that I purchased because it has all the features I require. It did work behind the 2Wire one, but has no way to disable the router or route all traffic to the real router so it effectively crippled some features (automatic DYNDNS updates, UPNP firewall, etc)
6) Understaffed installers and incompetent customer service personnel. I'm sure there are a few who actually know how to do their job, but I have no empirical evidence of that. The woman I spoke with to order my service got the number of TV's wrong (3 instead of 4, I realize there only one away but its a pretty important detail…) So of course when the installer gets there, he only has 3 for me. 6 hours later he leaves after drilling 2 holes and running cable to 2 rooms 10 feet from each other (….) and tells me I can schedule another box to be delivered. Which I do, of course the 1st appointment available is 3 weeks out. So I tell them to cancel the service, and magically they can drop it off 2 days out. So I take the day off work and wait for my 8:00 am – 10:-00 am appointment. 10:15 rolls around and the installer says he's running late and won't be there until between 10:00 and 12:00. 12:30 rolls around and I call them as I've heard NOTHING and he's running late and says he won't be there until between 12:00 and 2:00. 2:15 rolls around and surprise, he won't bet there until between 2:00 and 4:00. So at 4:30 I call them to see where the hell he is and of course customer service says no installer has been assigned to do anything and they can schedule one (…wait for it…) in 3 weeks.
So, thankfully, I never cancelled my Time Warner service as I suspected AT&T Uverse was incompetent and lo and behold, they are. So I re-wired my cable in 15 minutes (6 freaking hours it took the moron to wire in the Uverse) and I have reliable service again.
On the positive side, the set top box UI is way better then Time Warners, but that ain't any reason to keep the service.
Clusterfuck is far more an appropriate term. I suggest you stay FAR FAR AWAY from this garbage. Asta la vista baby, you can suck it!
Whoa! Here’s some bad code
This post has no basis in advice or analysis, I just was documenting an existing SharePoint site I sadly must maintain at work. If you've read my posts in the past, you'll remember that I am not a big SharePoint fan. Well, this isn't really SharePoint related (I just wanted to kick an app while it was down with that last comment) aside from a demonstration of how things can go horribly awry when one tries to mix development methodologies for SharePoint…
The application in question is a corporate use Room Reservation system. Oddly, the company uses Lotus Notes which has an ugly (though quite functional) room reservation system built right in. In my opinion, this never should have been created. The company is trying to get away from Notes but until they migrate the 1500 – 2000 custom lotus notes database applications to SharePoint, Notes is not going anywhere. It should have been one of the last items migrated and it should have just been migrated to Microsoft Exchange as it also has a good meeting scheduler.
At any rate, the reason for the post. Check out this code snippet from a C# 2.0 Web Service which runs under SharePoint. To be honest, until I saw this, I didn't even know C# supported "goto" *slaps head*
And sadly that's one of the more clear-cut code chunks up in there. This my friends is why we have Coding Best Practices and Code Reviews… DON'T LET THIS HAPPEN TO YOU (and you better pray I don't ever catch you writing something like this, you will be flogged!)
double num = -41.0;
double num2 = 39.0;
string str22 = str10;
if (str22 != null)
{
if (!(str22 == "week"))
{
if (str22 == "day")
{
str12 = "<Where><DateRangesOverlap><FieldRef Name=\"EventDate\" /><FieldRef Name=\"EndDate\" /><FieldRef Name=\"RecurrenceID\" /><Value Type=\"DateTime\"><Today /></Value></DateRangesOverlap></Where>";
goto Label_01A5;
}
}
else
{
str12 = "<Where><DateRangesOverlap><FieldRef Name=\"EventDate\" /><FieldRef Name=\"EndDate\" /><FieldRef Name=\"RecurrenceID\" /><Value Type=\"DateTime\"><Week /></Value></DateRangesOverlap></Where>";
num = -8.0;
num2 = 15.0;
}
}
goto Label_01BB;
Label_01A5:
num = -1.0;
num2 = 1.0;
Label_01BB:
time2 = time.AddDays(num);
DateTime time3 = time.AddDays(num2);
string roomid = "0";