Bear with me, this is going to me a long post, but it’s something I need to get off my chest.
Working in software development and web design for the better part of my adult life, I have dealt with all sorts of people “in the business”. I have worked with some of the most awesome people and I have worked for some of the worst people, but I have always tried to remain professional and above all else ethical.
When I first started writing software I didn’t even have a software or programming type job, but many of my co-workers helped test some of the software I was developing which gave me great insight into the way people (those who sit in front of the computer using my software) see things.
Developers always see things one way, while customers and end-users see things quite differently. A lot goes on behind the scenes that customers never see, and it’s vital that developers deal with each other with a strong code of ethics. Who would want to deal with someone, let alone work with someone who was unethical?
- (used with a singular or plural verb) a system of moral principles: the ethics of a culture.
- the rules of conduct recognized in respect to a particular class of human actions or a particular group, culture, etc.: medical ethics; Christian ethics.
- moral principles, as of an individual: His ethics forbade betrayal of a confidence.
- (usually used with a singular verb) that branch of philosophy dealing with values relating to human conduct, with respect to the rightness and wrongness of certain actions and to the goodness and badness of the motives and ends of such actions.
My mother raised my sister and I as a single parent. I don’t know how she did it sometimes, but not only did she provide us with a good home life, but she instilled in us all the principles and values we would need to develop our own ethical backbone.
I remember times when my mother would have loved to take a day or two off, but she wouldn’t. She wouldn’t call in sick unless she absolutely had too. She wouldn’t take an extra day or two here and there for herself because she knew someone else would have to pick up the slack. She was always there to support her co-workers and the last thing she wanted to do was to make the day any more difficult for them.
Maybe I set my expectations too high and maybe I am jaded because I had the opportunity to learn such from a strong role model, but I have certain expectations from people and when they let me down, I can’t help but feel disappointed.
This is one of those times. I learned today that someone I thought was honest and upstanding was just another dirtbag with no ethical backbone.
It’s one thing to sever a business relationship because you have chosen to move on, but it’s quite another to lie about a situation knowing full well that while I am checking the front door, you are sneaking out the back door. Let me give you some history, without making this too long (hopefully).
On October 04, 2007 I setup an account on my hosting server for a developer in Canada. Unlike all of the other hosting accounts on the server, I gave him additional access to create accounts for his own customers which gave him the option to offer web hosting as an additional service to his customers. With the opportunity to incorporate that value-added service into his proposals, he stood to build his client base and his bottom line.
I gave him quite a discount as a favor to him, because he too was running a small development firm. I had the space on the server, so it just made sense to help the guy out. At one time he had twenty accounts on the server and I was taking quite a loss because I was charging him a flat rate rather than a “per account” charge. It didn’t bother me at all though because I figured it wasn’t hurting me to pay it forward a bit to help him out. Not the best business sense, but a deal was a deal, and being ethical I wasn’t going to pull the rug out from under him because he was successful.
Last year there were several issues with the server. Most of the issues were minor and fixed within minutes, but others were quite severe and took a few hours to solve. Between runaway scripts on specific sites, denial of service attacks from disgruntled people on the other side of the planet, and specific software installations that didn’t play nice with the server, I had my hands full making sure the server kept running. But I kept it running.
My troubles were not unique in the industry, and truth be told I am glad I went through them because I think the entire last year has made me much more professional when it comes to server maintenance. The main thing is, all of the problems were solved. Server performance for the past four months has been stellar, in fact, the server has not had any minor or serious issues for 110 days as I type this (knock wood), which is why the events over the past two days have stunned me.
Last night at 8:50pm I received a direct message on Twitter.
At the time of the message I was away from my desk, so I used my iPhone to connect to the server, and everything looked like it was running just fine. I checked all the services and figured it must have been a “glitch”.
At 9:17pm I received an email notifying me that his hosting subscription had been cancelled with PayPal. This happens from time to time, even when clients don’t intend for their subscriptions to be cancelled, so I didn’t think anything of it at the time.
When I got back to my desk I checked the server again and the following conversation took place.
9:28:11 Michael Barrett: Dude, server is up and running just fine
9:28:14 Michael Barrett: has been all day
9:28:21 Michael Barrett: server load is 1.46
9:28:29 Josh Schnell: alpha one isn’t loading
9:28:33 Josh Schnell: mail isn’t getting forward to google
As soon as I ascertained that the server was functioning properly, and the issue was not associated with my server at all, I checked the name server settings for his domain and found the issue. It turns out the name servers for his domain had been changed at his domain registrar.
At this point I was quite suspicious because of the email notification regarding the subscription cancellation. I wondered for a moment if this was all intentional, but then his original inquiry wouldn’t make sense if he was making these changes himself. Although I was suspicious, I thought maybe his account had been hacked at the registrar level and I thought I would point that fact out to him.
9:30:57 Michael Barrett: name servers aren’t mine.
9:31:04 Josh Schnell: wtf.
He seemed genuinely shocked.
9:36:40 Josh Schnell: this is so fucked up
9:37:14 Michael Barrett: sounds like there is a routing issue from the great white north or something
9:37:27 Josh Schnell: quite possibly
9:38:24 Michael Barrett: I wonder about the name servers though
9:38:36 Josh Schnell: yeah, looking into that at my registrar
That last statement led me to believe his registrar account was indeed hacked, and he had no idea that these changes had been made. I continued the conversation, doing what I could to find out as much as I could in order to help him.
At this point I figured he had no idea his account subscription had been cancelled so I thought I better mention it too.
9:47:31 Michael Barrett: You cancelled your subscription?
9:47:41 Josh Schnell: say what?
9:47:49 Josh Schnell: don’t tell me that…
9:47:51 Michael Barrett: Hello Michael Barrett, Joshua Schnell’s subscription to Custom Reseller 90 has been cancelled.
9:47:55 Josh Schnell: WTF
9:47:59 Michael Barrett: it just came through
9:48:02 Josh Schnell: WTF WTF WTF
9:48:08 Josh Schnell: ffs
9:48:14 Josh Schnell: what the hell is going on
9:48:15 Michael Barrett: doesn’t show a reason or anything
9:48:22 Josh Schnell: god damn
9:48:26 Josh Schnell: send me a new one
Did I misinterpret this conversation? From his initial notification, “hey, what’s up with the server? dns isn’t working, and I’m not getting alpha-one mail” all the way through, “what the hell is going on”, I was under the impression that someone may have hacked into his account and he had no idea what had happened. The fact he told me to send him a new subscription link gave me reassurance that none of this was intentional.
When I sat down at my desk this morning, the first item on my agenda was to check to see if he had resolved the “hacking” issues with his registrar. Imagine my surprise when a simple check of whois showed yet another set of name server ip addresses.
A simple ping to each of his domains revealed the truth. While I was working to find out what was going on with his domains and trying to help any way I could, he was busy sneaking out the back door. Who knows, he may have moved out in broad daylight, because I didn’t think I needed to keep an eye on a colleague that I had bent over backward to help out. I honestly thought he was more ethical than that.
Over the course of the past two years I spent countless hours helping him with specific issues, not just server issues. I helped him set up security certificates on his accounts, I helped troubleshoot code from time to time, and I helped him when he had questions about hosting or other server issues.
I was there to lend a hand because he asked for my assistance. I never billed him for that additional time, I never asked for anything in return (except a little bit of understanding when we were going through our rough patch with the server). I was there for him because that’s what honest and ethical colleagues do.
Was I wrong to come to this conclusion? I guess so, because it turns out that I should have interpreted the entire conversation as his way of telling me he was cancelling his account and moving all his hosting accounts to a new host. Apparently I don’t understand English anymore.
It turns out the only reason his dns wasn’t working and the reason he wasn’t receiving his alpha-one.ca email (for three days) was because the network propagation and resolution for the changes he made to his name servers took longer than he expected they would.
Sometimes you know before you start doing business with someone that you should just walk away, other times you get hit by a freight train carrying that same message two years after the fact.
Over the past two decades I have had the good fortune of meeting some of the most ethical and honest people in the industry but Josh Schnell is not one of them. Am I angry that he decided to take his business elsewhere? No. If he thought it was in the best interest of his business and his clients to change hosting servers, so be it. That doesn’t upset me at all.
I am angry (and quite upset) because he chose to lie to me and lead me to believe he had no idea what was going on.
I am angry that he tried to create an issue by claiming that dns wasn’t working for his domain and he wasn’t receiving email because of my server in order to justify his move.
I am angry that he chose to sneak out the back door rather than treat me with the respect I have always shown him.
I know I am not perfect, and I know I could use some improvement, but I am ethical, which is something Josh Schnell is not.