The Boston Diaries

The ongoing saga of a programmer who doesn't live in Boston, nor does he even like Boston, but yet named his weblog/journal “The Boston Diaries.”

Go figure.

Wednesday, March 02, 2016

Observations on an incident in the Ft. Lauderdale Office of The Corporation

Sean
[Sean is typing away at the computer when suddenly …] Oops. I didn't mean to add all those files to the source repository. How to I reverse svn add?
SVN
[Doesn't say a word.]
Sean
Okay svn, be that way. Let's check the manual. [Sean goes the check the manual. Many minutes go by.] Okay, let's see what the Great and Powerful Oz Google has to say about this. [Sean checks Google] Hmm … okay, let's try this. [Sean types a command.]
SVN
Okay.
Sean
And let's see the results …
SVN
I'm sorry Sean, I can't let you do that on a damaged repository sandbox.
Sean
What?
SVN
I'm sorry Sean, I can't set you do that on a damaged repository sandbox.
Sean
Okay Google, what else do you have for me?
Google
Much more of the same command that didn't work in the first place. But here, try this random command.
SVN
I'm sorry Sean, but you are horribly screwed right now.
Sean
Okay svn, take this!
SVN
Okay Sean, but I still think you are totally screwed right now.
Sean
Um, guys … [Sean turns to his fellow cow-orkers] Could you update your main repository? [T starts typing furiously; J hears this and decides to let T be the guinea pig.]
T's SVN
I'm sorry T, you are completely screwed right now.
T
I'm completely screwed right now.
Sean
[Visibly trying not to throw the computer across the office.] Okay, svn, take this!
SVN
I'm sor—
Sean
And this!
SVN
I'm so—
Sean
And this you XXXXXXX XXXXX XX XXXX!
SVN
I'm sorry Sean, you are even more screwed now than you were before.
Sean
[Blood vessels are about to pop out of his skull. A stream of ornate sacraficial daggers are pouring out of his eyes towards the computer as he rips the power cord out from the computer.
Computer
I'm a MacBook Pro. I'm happily running on battery power right now.
Sean
Nnnnrrrrrrggggggggggggggaaaaaaaaaaarrrrrrrrrrrrrrg! [Sean's head is about to explode.]
MacBook Pro
If you are thinking of ripping the battery out of me, I need to remind you that I am a sealed unit and there is no possible way you can gain access to the batteries to rip them out.
Sean
Grrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr! [Sean is visibly shaking with anger, face red with rage.]
The Other Laptop on his Desk
Besides, it's not a good idea to rip the battery out of a laptop. I'm just saying …
Sean
[Jabs the power button the MacBook Pro.]
MacBook Pro
Do you wish to shut down now? Cancel, okay, or log off? [A loud thud is heard in the office as Sean plants his head through the desk.]

Why bother reading pages when you can just spam them and hope for the best

From
"Ashley Knowles" <leah@sponsorconnection.org>
To
"sean" <sean@conman.org>
Subject
Thank You for Supporting Veterans on boston.conman.org
Date
Wed, 2 Mar 2016 12:24:48 -0800

Hello,

I came across this page of your site http://boston.conman.org/2004/11 and noticed that you are linking to http://www.va.gov/opa/vetsday and other resources for servicemen and women. I wanted to thank you for supporting veterans and active military. This is a mission I have been deeply involved in as well. If I may have just a moment of your time, I wanted to talk to you about a serious health struggle among veterans - and also suggest an addition to your page.

[ … ]

Thank you,

Ashley Knowles

Outreach Coordinator

outreach@advocatesforhealth.org

It's only because today is such a great day that this spam email caught my eye. I know this is a rhetorical question to Ashley but … did you even bother to read the post in question? Did you even bother to read the page you linked to to see if it's relevant to your organization?

No? Is that because you just did a search for “Vererans Day” and spammed every site that linked to that page? Yes? Do you realize you have two completely different email addresses? No? Is that because you don't care?

Gaaaah!

Update just two hours later …

From
"Ashley Knowles" <outreach@advocatesforhealth.org>
To
"sean" <sean@conman.org>
Subject
Correction - Thank You for Supporting Veterans on boston.conman.org
Date
Wed, 2 Mar 2016 14:15:23 -0800

Hello,

*I'm resending this because my recent e-mail was mistakenly sent through a colleagues account. Apologies if you have received two.

I came across this page of your site http://boston.conman.org/2004/11 and noticed that you are linking …

[ … ]

Thank you,

Ashley Knowles

Outreach Coordinator

outreach@advocatesforhealth.org

Really?

Sigh.

Thursday, March 10, 2016

How hard can it possibly be to find a 10-digit phone number?

More difficult that you could imagine.

As initially designed, “Project: Sippy-Cup” was only to be used in North America. It was also designed such that the MDNs (aka “phone number”—the telephony industry has its fair share of TLAs) would be found in a particular format—a TEL URI. And because we only support numbers in North America, they follow the NANP (this is an example of an ETLA) format for numbers.

Of course, that's the theory. In practice, we are dealing with the Monopolistic Phone Company and well … they don't have to care. So it was with that in mind that I was told to look for MDNs in SIP URIs. Okay, so find a 10-digit number in a TEL or SIP URI. The design specification said that the MDN in the TEL URI would have a leading “+1” and then the MDN. Since SIP URIs were a complete afterthought I figured that any MDNs in a SIP URI would also follow the same format, a leading “+1” and the MDN.

So in mid-January, I get a report that “Project: Sippy-Cup” is failing to handle non-NANP MDNs.

“But we only support NANP MDNs,” I said.

“But international MDNs are failing,” was the reply.

“That can happen in production?” I asked.

“It is happening in production.”

“Excuse me? It's in production?”

“Yes. Has been since mid-December.”

We're still testing with the OEMs!

Did you not get the memo?”

“I failed to get the memo,” I said as I headed back towards my computer.

“I'll send you a few copies.”

Code code code.
Test test test.
Code code code.
Test test test.
Hack hack hack.
Test test test.

Mid-February, it was patched and tested.

But because it was in production (seriously, why did no one tell me?) updates are … complicated. Many meetings need to be held to determine if we need a MOP, even more meetings to determine what to MOP, which what to MOP, when to MOP, who needs to MOP, where to MOP, and why to MOP.

One month later, last night (or rather, very early this morning) to be precise, we could install the fix.

An hour and a half in (for some reason the term “Charlie Foxtrot” comes to mind since we seem to have forgotten to discuss “how to MOP”—I'll skip the “Project: Sippy-Cup” production setup house-of-card details due to the OEM testing that is still on-going) I made the call to abort and roll back. The code I had written was mis-identifying NANP MDNs as non-NANP MDNs because some codepath somewhere else was failing to prefix the MDNs in SIP URIs with a “+1” in some cases.

I swear, why did we even bother with a specification?

Sigh.

Obligatory Picture

[Here I am, enjoying my vacaton in a rain forest.]

Obligatory Links

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or entry, if there is only one entry). The titles are the permanent links to that entry only. The format for the links are simple: Start with the base link for this site: http://boston.conman.org/, then add the date you are interested in, say 2000/08/01, so that would make the final URL:

http://boston.conman.org/2000/08/01

You can also specify the entire month by leaving off the day portion. You can even select an arbitrary portion of time.

You may also note subtle shading of the links and that's intentional: the “closer” the link is (relative to the page) the “brighter” it appears. It's an experiment in using color shading to denote the distance a link is from here. If you don't notice it, don't worry; it's not all that important.

It is assumed that every brand name, slogan, corporate name, symbol, design element, et cetera mentioned in these pages is a protected and/or trademarked entity, the sole property of its owner(s), and acknowledgement of this status is implied.

Copyright © 1999-2017 by Sean Conner. All Rights Reserved.