Watching a Delta Jet Land Directly Overhead from the Beach in St. Martin (Sunset Beach / Airport Beach)

Thursday, November 20, 2014
I just returned from my vacation and am not yet ready to post the "big review" quite yet. But I had to share this. Earlier this week I wrote "Today, I had a plane pass over me so close, I could lick it."

Here's the video.  It doesn't do the experience justice.  At the end, you'll hear the roaring wind that's all around us. The phone's microphone is totally overwhelmed.  It was just neat!

If you're interested in doing this yourself, find any Eastern Caribbean cruise that visits St. Maarten/St. Martin island. Take a cab from nearly anywhere to Airport/Sunset Beach, the rates are set by the government, for us it was $20.00 USD for my wife and I to get there.  Watch a few puddle jumpers land to position yourself, and enjoy.

I'll post the other videos I grabbed from less ideal locations, but here's the best one:

FIX: T-Mobile Wireless (WiFi, not 3G) CellSpot / ASUS TM-AC1900 Port Forwarding Not Working

Wednesday, November 5, 2014
You try to forward ports on your new $25 deposit ASUS Wifi awesome-router and it doesn't work. Neither does UPNP. Or maybe it works but not for very long.
What's happening
Those clever folks at ASUS added a NAT acceleration capability. Unfortunately, as best I can tell, it basically does nothing much better than crash regularly. This is why you may have noticed that forwarding works occasionally after reboot. I, personally, found this to be very rare. I've also found that the NAT acceleration isn't noticed when it's disabled. I don't have Google internet, but I'm pulling 80/20 and the router is doing fine.
Go to LAN -> Switch Settings. It will probably hang. Worry not, your router probably just crashed. You likely lost internet. Give it a full minute and refresh.
Go to LAN -> Switch Settings. Set any setting that has the word Acceleration (or NAT) in it to Disabled. Your router will reboot and your ports will be forwarded.

Update: Around December, for no apparent reason, my NAT rules all stopped working again. Nothing had changed on the router (well, as far as I know ... we rarely need that functionality). See the comments for what I did to repair, but I'll summarize: Factory Reset and some other steps.
I couldn't find better information to help with this, so I went nuclear and blew away the entire configuration. It worked, but ... yuck!

My AT&T U-Verse Nightmare - Going on Two and a Half Years with Broken U-Verse High-Speed Internet

Update 2: This, at least, sounds like a similar problem.

Update 1: I can't believe I'm saying this but Comcast to the rescue? I had a wonderful customer experience with a CSR, purchased Comcast service to replace my U-Verse TV at home until Comcast gets a digital line to my house. I'm told this will happen before the house gets its most use next summer! Also filled in some details...

The following is an account of my lousy experience as an unhappy customer of AT&T U-Verse (Specifically their High-Speed Internet DSL variant). It is accurate to the best of my recollection. This isn't one of those horror stories where the company bankrupted the victim or anything like that. It's just one of frustration and banging of heads into walls... I hope it will be entertaining and informative to you, dear reader, but I make no guarantees. This post is to get out my frustrations and hopefully plan a new solution to this problem. These are my personal opinions, and though my wife would probably agree with me, many others that associate with me may not. Don't blame them. I'll update with new information (or any adjustments as this was "from memory" as they come along).
The Lake House
No, this is not the movie. My family purchased a cabin up north. If this seems strange to you, you don't live in Michigan. Seriously, nearly everyone has one. These communities are, to say the least, underserved. For the most part they're a mix of rural and vacation property. My dad swore he'd never get a place up north. He did. We're really glad they did!
Of course, being the most technically savvy in the family, the first thing I reached for was Internet access and I was pleased to find that AT&T offered 12/1 Internet service! Woot! I'm on-call and knowing that I could actually WORK from up there if I had to was a pretty nice thing.
Never Ending Quest for TV
The first thing we started looking into was TV. No dice. Comcast is the cable provider and they're analog only. Up until very recently, they offered so few channels for the price ($45) it was an extremely bad value. This was coupled with the problem that they offered no internet.
A side note to cable/ISPs: When I call up and ask if you have service, ask for my address and verify, especially in small communities. Comcast's regional office was certain we could get digital service with internet. Not until digging down to the address was it realized that this was not possible.

Next was DirecTV/Dish. The property is very low lying, but in this area that's normally not a problem. The location of the property, however, makes it impossible to hit either satellite. There are some options but all involve installations that Dish/DirecTV installers are "forbidden from doing". Understandable, you don't need your employees dying to install service to your customers.
AT&T was out because the "U-Verse" branded service that they offer is really just slightly improved DSL from the early 2000s.
Hacking together a solution: VerseFinity
I've been a cord cutter for a long time, but my mom really likes to watch the news before going to sleep. Sleep habits are tough to break! My normal route of Netflix, Plex and Hulu would not suffice. My dad had purchased a Slingbox and since I have Comcast Business Internet at home, the bandwidth was sufficient between AT&T and my connection at home to share Plex and Sling with no issues. Couple an iPad and an Apple TV or Roku (we have both) and you have a slightly clunky, but totally usable solution. And two rather non-price-optimized bills.
The first sign of stupidity
At my home I have U-Verse TV. I have SD service and one box. It's getting service from AT&Ts IP network using a low-end DSL modem (SD service doesn't net you the nice one). It's plugged into a Sling Box that pushes the TV signal out Comcast to my AT&T U-Verse Internet up north. Interestingly enough, it's coming in on the very same model low-end DSL modem that it's being sent to in my home! So basically, AT&T does sell IPTV service up north, you just have to buy a house somewhere else, Business Internet from Comcast and U-Verse TV.
Trying to Right my DSL Past
I have had DSL service before, but this was around 2000-2001. At that point, almost all broadband installations were difficult, and almost all had problems after the fact. Eventually, however, they'd get fixed. My first trip around the DSL block in 2000 netted me an almost identical problem to what I'm experiencing. I ended up running a new wire in the house, fresh for the DSL connection and that resolved everything.
Knowing this, and knowing that I have a history of running cable (and all of the basic equipment to test such cables), I eliminated all of the existing home wiring. We were not planning on having home phone service up there--we're well served by all carriers on the property--so it was gone. It was replaced with one straight run from the source about 15 ft. CAT-6 cable with the pairs wired properly. My own equipment can tell me a lot.
The intermittent mess - Beginning in 2012
The service never worked reliably. From the day it was installed it dropped off intermittently (which got worse progressively). It'd do this for a minute, look like it was going to connect again, disconnect, reconnect and be stable for a few minutes to a few hours. All. Day. And. Night. I called tech support and they sent someone out quickly. He saw no problems. Great. None-the-less, he replaced the box on the outside of the house and cleaned up all of the connection points. He checked my wire. Clean.
Throughout the summer we disconnect a bit. We had TWO techs come out. One replaced the modem, one checked everything and did something ... I'm still not clear. Still magically the internet worked and didn't work... mostly not working. Toward the end of the summer we had another tech out because the connection was really flaky. He replaced the modem. It seemed fixed, briefly, but it returned. Again.
At the end of the year, I started noticing something I noticed with DSL service at a previous residence. When the weather would turn cold or rapidly change in temp, the modem would disconnect/reconnect continuously. Warm working days would give into freezing cold, barely 30-seconds of Internet between minutes of disconnection. There's little to do up north in November while waiting for a tech for 8 hours on a Saturday... at a $25 gas bill each time.
After 3 tech visits and 6 months of barely functional service, I'm getting frustrated.
I make one last arrangement in late November 2012. A tech visited and actually saw the problem on the line while visiting (it was easy to see, it was happening every ten minutes).
"Everything looks clean for a few minutes for a while then *BAM* thousands of errors."
He said it could be something related to the connection points on the wire all the way to the CO. As the wires expand/contract, they disconnect/reconnect. Look, I work in telecom, but I have nothing to do with the actual telecom stuff. I know a lot about communications equipment, networking, wiring ... It didn't sound exactly right, but it was better than the nothing explanations I'd been getting so far. The tech suggested that switching out the modem and switching the port at the CO might help.
Side note: This is where that explanation falls off. If the issue exists at a point where a wire connects with another wire "in the elements", I would expect that replacing/changing two things that reside in (I'm assuming) a temperature controlled environment isn't going to help. Nuts.
It might have worked?
The internet service seemed to come back for the remaining time that we were there. I suspected that it would still fail so I put a RaspberryPi up there to serve as a way to send small bits of data back and forth and record success/fail in Nagios.
When the issues with the home were handled, we returned to internet service that was just down. This was the first point at which I started yelling on Twitter/Facebook. I didn't do so to get any attention, I was just angry!
Social Media to the Rescue? Maybe?
I got attention with my Facebook post. Suddenly my phone is ringing and helpful, state-side, folks are assuring me that everything is going to be fixed. A person is coming up there tomorrow. You don't have to be there. They did. They discovered the need to send someone out.
I was assured during this time that everything was going to be handled. I'd be credited. I'd be well taken care of. We're very sorry, sir. (sir, me?).
I was told that they'd do a something-or-other "Home Run", which was described as "we'll just give you new wiring so that at least we know it's our stuff".
I was told they'd replace the modem. Again.
Upon calling to set up the appointment, I made the mistake of contacting regular customer service.
The second sign of stupidity
Evidently yelling on Facebook/Twitter gets you put into some sort of "Second-Class" tech support line. I say second class, because I am still not impressed, but compared to the way you're treated when you call the regular support line? Good Grief.
The difference between Second and Third Class Support
In second class, I get all of those things I was told I would get. I didn't really want any of them. I wanted working Internet. I knew my pristine wire and all of its connections were clean. The modem had been replaced. Twice. Good grief, AT&T, what a waste of money! None-the-less, I was getting it because it might just magically fix the problem. And I was getting it with apologies for the frustrating service experience I'd had thus far.
Not so when I called Third Class support. My very friendly but exceedingly unhelpful representative told me that modems aren't free nor is home wiring. The modem would be at least $200. I explained I didn't want it and that the "other guys" had set that up. I'm assuming AT&T uses some sort of ticketing system that falls very short of providing call center employees with useful information. This person should have known I was working with someone on an ongoing issue. I told the rep I'd try my hand at the phone number given to me in the e-mail. I did. My rep (names omitted even though they're probably internal-use aliases) assured me everything would be taken care of.
The tech came out, replaced the modem and inspected the line. He told me the wire was better than what he'd install and wasn't worth doing. It tests well. Again, he left me with the impression that he thought he fixed the problem but couldn't articulate what the problem was. And, look, the modem is connected again. And it's a different kind of modem! Interestingly enough, this one displays a giant statistics page.
I was bumped from one social media rep to another and basically lost. The internet service continues to go up and down and it's basically unusable during the winter. But this is what happens when you have one provider for a huge geographical area with extremely old equipment trying to somehow make it do magic.
I've surveyed my neighbors. Most of them have U-Verse. Most of them assume it's normal for it to disconnect. The ones that know it isn't gave up trying to get it fixed. It comes and it goes.
So when you hear that Broadband penetration is "x" in the United States, think of all of those areas that are about 30 miles away from a major city. In my rural cabin community, the survey indicates 12/1 service provided by AT&T. My guess is that needs a giant asterisk followed by "where it works at all and we don't just string you along until you give up complaining ..."
There are very few. AT&T is the provider of choice and if you pick someone else you're on their equipment anyway. There's Fixed Wireless provided by a few rural providers but the service is "five times the price and a tenth the speed". In addition, being on low lying property like that, the chances of getting a line of sight signal are nil.
I see the orange Comcast Digital cable and I have talked to folks in town that have Comcast Digital service and internet.
The last sign of stupidity
I'm actually hoping that Comcast moves into the area so that I get better customer service. Good God, what is wrong with the world?

That might not have been fair. I have been a Comcast Business Internet customer for 5 years and I couldn't be happier with their customer service. I have not, however, had great experiences with their residential service folks.

FIX: ORA-00911: invalid character in c# but seemingly nowhere else

Wednesday, June 18, 2014
I am not normally a developer who targets Oracle, but something recently required me to go down this rabbit hole. I'm the first to admit that I hate Oracle primarily because I lack experience with their dialect of Sql and ... well, Java (Ask toolbars and security issues, grrr). But I digress.
The world's most useless error message
I write this at least partially as a joke because the specific solution I'm going to propose was a fix for my specific problem but because of the ambiguity of this error message, your problem could be something entirely different. Basically, what the Oracle database query parser is trying to tell us is that out of the hundreds of characters in your command text, at least one of them (maybe more) is not a character that it should be. It is, instead, an invalid one. Most likely, you've smashed two keys at the same time and put an errant underscore after a parenthesis. Maybe it's an obvious problem. Or maybe, like me, your unfamiliarity with Sql*Plus combined with this obtuse error led you down the wrong path a few times.
Bad semicolon
There's something about the Oracle provider in C# that causes it to crap all over your statement if the last character in the command text is a semicolon. Note that I've only tested this in the ODP.NET (DataAccess.dll not ManagedDataAccess.dll) 12.x client. In my case, I assumed it was that strange looking colon in front of the variable names. Nope, colon: Good. Semi-colon: Not so much.