This probably goes without saying, but your user demographic has a lot to do with how this kind of mishap will be received. Our product sells to Fortune 1000 companies in the procurement software space. I can tell you, unequivocally, that the users of our product have a distinct lack of tolerance with regard to "lack of attention to detail".
We've had a debug message or two slip through to production, and the conversation that follows is never comfortable. The inevitable conclusion they reach is that if we miss one small thing, we're likely to miss another. Sometimes you really do have to sweat the small stuff.
We definitely have customers that would find something like this funny, but we have plenty of large customers that wouldn't. When your ASP is around $100k a year, you really want to avoid losing even a single customer to something silly like using unprofessional language in a test email.
I can only speak for myself, but I certainly have considerably more of a sense of humor and tolerance for mistakes in a product that costs $2 versus one that costs $2000. If you are charging me serious dough, then you better damn well have your ducks in a row. If you are offering a free product, then all you need is enough redeeming qualities to hold my attention.
You shouldn't say radioactively stupid things to your customers, but you should get their permission to talk to them and then proceed to do so, because that will predictably raise engagement, retention, and many other things you might be interested in tracking. Look at the graph. Look at the "I had totally forgotten about you until you sweared at me, now I might actually use the service" testimony. These things can be yours without swearing.
I've been worried for the last five years that I don't send enough email. After having worked closely with some clients who have figured things out, this strikes me as less "a missed opportunity" and more "an oversight as glaring as being unable to spell SEO." They get tremendous value out of connecting with their customers on a semi-regular basis, and (this part truly blows my email-hating-spam-squashing mind) so do their customers.
I've learned over the years to never put profanity or anything even mildly offensive in test data. Too many times have I had to give an impromptu presentation off my test database, only to see user names like "Asshat Joe" and "Jack Off" show up big and bold on the projector screen.
Always, always use plain, non-offensive vanilla boilerplate text in everything you do.
I've been beaten much worse at that. 12 years ago we were writing a very ambitious media asset management platform as a service (yes, in the cloud basically) and I needed tons of pictures and videos to test the system and fill the database and filesystems and test the image pattern recognition engine and else. Guess what I did? Yeah, I loaded an humongous heap of porn into the software, pictures, videos, everything.
Then the very important finance guy and the very important communication lady from whatever big important investor came unexpectedly and demanded the mother of all demos RIGHT NOW.
Boys, I know what it's to be embarrassed to death and to wish being an earthworm. Preferably deep underground. Like in New-Zealand.
You actually demo'd the product like that? You couldn't have bought an hour or two to empty out the porn and replace it with kitties? I am curious to know how this played out. Thanks for sharing. :)
Remember that it was in 2000 or 2001, several years before youtube and most other sources... Actually there were hardly any downloadable videos except porn :)
In fact there was quite a lot of harmless material too, however I really hoped that they wouldn't ask for a keyword that would bring forbidden pictures, or worse, ask to use the mouse themselves! I think we managed to avoid any incident this time; however a little later the boss discovered what was in there and he wasn't happy.
Recently I was this close to uploading an "edgy" picture to an imaging application I help develop to test a new deployment under the test user. I was so sick of seeing that same innocuous test image, and after all, it was under the test user and no one would ever see it, right?
I resisted and uploaded the test image again. Later that day, I was called and informed that a recent change to one of the server components was mixing up sessions and the client was seeing the test image instead of the image they expected. Needless to say, I was grateful for the restraint earlier that day. I probably would have been fired if the client had seen what I had almost put up instead of the test image.
I have also accidentally overwritten a whole column in a development database with a comment about skateboards. This was obviously not a big deal since it was a dev db, but it's just more reinforcement that as boring as it gets to write completely innocuous, repetitive stuff in fields while testing, it is much better than letting something slip through in frustration and getting fired and/or losing customers over it.
Like hard drive failure and other inevitabilities, it's not a question of if your dummy data will eventually be exposed to people not meant to see it, but when.
I learned that a "cute" message can be the best thing. I am a dev on a top iPhone app and while testing our push notifications, I sent a notification out to millions of people. Luckily I wrote "Have a nice day!". It cost thousands of dollars but our vendor was nice enough to refund. In my case, people thought we were just trying to cheer them up. Had I wrote "this is a test", people would have been annoyed and lost confidence in us.
Yeah, I've been trying to bang into the heads of the students that I TA that "there is no test data - only fake data." Test data always seems, to me, to mean meaningless junk. Names like addresses to Dicksville, IL do nothing but accidentally get leaked to someone they shouldn't, and they can't be validated, which creates a whole nest of testing problems.
Fake data, like John Doe, San Francisco, CA, doesn't share these problems.
I read a story a couple years ago about a couple who had there home raided over 50 times over a 4-5 year period by NYPD. Turns out there address was used as test data in the system, and it was leaking into the police's forms/database. So, if using fake data, make sure it can't be mistaken with an actual address/phone number/dna sequence.
The TV show Breaking Bad uses phone numbers like 1 (575) 147-8092. Since the local part of a phone number can never start with a 0 or a 1, it avoids the "555 problem" of obviously fake phone numbers catching the viewer's attention, while still being non-dialable.
The Sherlock Holmes Museum is not located at 221b Baker Street.
That address does not exist, but any mail addressed to it is redirected to the Museum, which is technically 239 Baker Street (since it sits between 237 and 241).
They do have a special dispensation from the City of Westminster to display their address as 221b Baker Street though.
We had an auction website project in college as freshmen, and the person teaching the class who was playing the role of client made this very clear. One of the groups was demoing their app and some bad language and comments made it onto the screen. Their review/feedback/demo ended right there... Painful for them, but taught me and the rest of the class a lesson
During a demo for a group bittorrent client project in college, the person running the demo chose to use the link on the piratebay with the most seeders (because we had some bugs that made it not work reliably with non-seeders). The file? A windows keygen program. Fortunately, the prof didn't notice what we were downloading.
This is actually very good advice, and you can extend it to comments in source code.
When I was young, I sometimes couldn't resist the urge to put strong wording in comments, like:
// This sucks, use a better data structure for it!
Invariably, when I revisited the code months or years later, I thought by myself: Why swearing? You can also express disagreement in a more neutral way.
So, nowadays I use a better commenting style for bad code and tech debts, always with a motivation along it:
// TODO: This datastructure is probably inadquate
// here because of O(N^2) lookup
I think it's not just "strong wording", but the inarticulateness of the first example comment. You can express strong feelings while still being articulate.
Example 1: //FIXME: This code is shit, someone make it better.
Example 2: //FIXME: This code is a truly atrocious hack to work around $issue. I don't know of a better way, but suggestions welcome.
//FIXME: This code is a shitty hack to work around $issue. I don't know of a better way, but suggestions welcome.
This contains the same information but uses a swearword. I think that every would agree that clearer comments are better, but does the presence of obscenities inhibit clarity or are they merely offensive and superfluous?
> but does the presence of obscenities inhibit clarity
That entirely depends on your work environment. Will adding in obscenities will rouse up some big HR kerfuffle? Then don't do it, you're just wasting everyone's time. Otherwise, do whatever you want.
Annoyed that I couldn't tell which part of the test data was failing when a test failure spewed out "foo", I wrote http://canonical.org/~kragen/2words.cgi several years ago. This produces randomly selected, short, memorable strings from several hundred million possibilities, so when you see one you can easily grep the tests to see where it came from. It picks two random words from the dictionary.
After I left, people stopped using it. They decided that strings like "jounce-visit", "crotch-surges", and "rubble-rump" (all real examples from a single run of it just now) were just a little too memorable, to the point of distracting one's mind from the code during development.
for more or less the same reason, some mail system (maybe Andrew?) used to generate Message-IDs without using vowels, and Google Chrome generates extension IDs using random strings from only the first half of the alphabet.
When I was younger, I worked at a navy base, and learned how to swear professionally. But it's a turn-off, and more importantly, it's just not that funny.
I've switched to animals. Yeah, it's a bit ridiculous coming from some giant leaps in profanity and the implied sexual/violent imagery. But, animals are funny, cute, and have a very large base of context to work with.
I can shove a panda image as a test anywhere, and if I screw up, hey, it's not so bad, it's a cute panda. Some people will ping you if you screw up, no matter how small; that can't be helped. But there's a large range of screw-ups that are recoverable, and a cute panda/kitten/monkey image really helps.
I think there is a big psychological difference between hackers and "normals": the former see the data as just as a placeholder for the code to grab on to, whereas the latter see the data as important and the code as the ancillary thing.
I think it comes down to coders being much more able to traverse levels of abstraction quickly. For us, "Asscock Asscocksson" is just tag for <loremipsum>, whereas non-coders may get tripped up on that and not be able to just skip past it.
It's easy to get frustrated at 1:00am and type a field in as "This software is a huge pile of shit" and forget that it's there. It will always come back to haunt you one day.
I've been trying to beat this into the skulls of my employees. I run a contract based QA team so there's a good chance our paying client(s) are going to see everything we have entered into their databases.
I really hope every brand doesn't decide to start swearing at me. Personally, after having a product that was supposed to be "the next step" in our company's evolution get blasted in the press because a developer left a smartass comment in (Google "you have to install directx dumbass"), my policy is NO profanity, period, in any string, any test message, anything.
If you are trying to build a brand around it, great. Make a conscious decision and go with it. But doing it to be funny, "just amongst the team", has a nasty way of biting you.
If you are trying to build a brand around it, great. Make a conscious decision and go with it. But doing it to be funny, "just amongst the team", has a nasty way of biting you.
That's a great point. Sometimes the profanity thing can actually be a part of your brand / identity, and you just accept that you'll lose some people over it, but you're banking that the benefit is worth it. I've often said that I want Fogbeam Labs to be "The Motley Crue of software companies," so something like this would not be a big deal to us. We want to be known for breaking the rules, saying "fuck it" and being a bit edgy. But that path clearly isn't for everybody. \m/
Is there an automated tool for finding profanity in software source? I know we can always 'ack' (grep) special keywords in source code (or on OS X, use commands like 'strings')?
Personally, i really don't like to see profanity in a professional context, but having said that...i really like the way these guys handled it, and not only that, their honesty and transparency really endears me towards them.
Edit: Interestingly enough, come from Britain, i think something like this would fair worse of in the UK. I think we're a little more 'stiff' than our US counterparts.
We won’t be throwing around profanity in our emails, but we’re definitely going to try to take a more “real” tone rather than the false formality that pervades most company communications.
This, to me, is the key takeaway from all this. That "false formality" is a killer, IMO. I personally try very hard to avoid it when writing Fogbeam Labs stuff, like our blog[1], but it's SOOO easy to slip into that mode. Keeping that out and maintaining a "real" conversational tone is tough, but I believe it's better in the long run. (No, I haven't A/B tested this or anything, it's just a hunch).
Sorry this is slightly off-topic, but I'm curious about the product here. Why should I use it? What problem is it solving for me?
Halfway down the homepage it says, "Don’t Change: Use Fetchnotes with Google Apps, Evernote, Outlook and all the other services you already love." Which was a great reminder that I already have a ton of other services trying to get me to keep notes in them... what's different about Fetchnotes and why isn't this plastered all over the homepage?
The problem (well it's not even really a problem I guess) is that nowadays you're not sure any more if this was an 'accidental' slip up, or a bold marketing tactic. They surely are getting a lot more exposure with the 'slip up', and if it had backfired, well who cares really - in 2 months time nobody will remember.
Maybe I've been on the internet for too long and have become too skeptical.
> we’re definitely going to try to take a more “real” tone rather than the false formality that pervades most company communications
This makes me wonder if by now there is an entire generation of tech entrepreneurs that has never read the Cluetrain Manifesto: http://www.cluetrain.com/
There's a difference between formal language and the corporate lexicon. Formality is a form of respect, but managementspeak is essentially a political creation.
I was once part of a team who accidentally sent a communication where we updated our privacy policy, stating specifically that we would never share your email address with anyone.
Sounds normal right? The catch is, we sent it to 1000 people per batch, and rather than bcc'ing everyone, we used the "to" field. Whoops? Luckily we caught the issue after the first batch, i have no idea to this day how it slipped through QA however.
Similar result however, people didn't like it but many just wanted to point it out to us (and we did our best at saying sorry) I totally got where they were coming from, however we're human and life went back to normal eventually. Lesson learned!
I was working on some XML stuff and put superhero names in the test XML file. A week or so, some QA guy asked for sample XML and I gave it to him. Before I knew it, my test file was circulated in QA and Business Analysts for testing.
I guess they didn't read what's inside or didn't bother.
Then our client came and the BAs gave demo to them, using my XML file (I didn't know if they're going to use that!). The client were very upset with it.
Alex Schiff, co-founder and CEO of Fetchnotes here (and author of this post). The quality of discussion on the things we post to Hacker News never ceases to amaze us! I just wanted to point out that we posted an invite link by which 1000 people can get access to our beta on the blog post itself. You can also get in directly with this link:
It is a clever (accidental?) marketing, but will the traffic stick?
Naturally, after reading the post, I went to check what fetchnotes is all about and... could not figure it after 30 seconds of scanning the homepage and left.
This is what happens when companies don't value QA and/or don't hire experienced systems administrators. Even among experienced sysadmins email list servers are special skill.
No surprise when startups shoot themselves in the foot because the hiring director is a codehead who does not see the value in a sysadmin who cannot double as a dev or who is over 45 years old.
I just noticed there's nt link to your product or homepage from your blog. I wanted to click to learn about what your product is but there's nothing there.
Not the end of the world for me, I can copy from the address bar but I wonder if you're missing out on conversions.
Cool story though. I got a kick out of the customer responding back "...bitches"
I've always been a fan of connecting to users on a more human and personable level. This might have been an accident, but it made FetchNotes feel more human and have a sense of humor. I think most people really appreciate this, considering the majority of websites are bland and full of generic marketing text.
Demographics are everything. To this old dinosaur, I'd question your maturity and whether I'd want to be a customer in the future -- especially if you have any of my personal data.
Unlike some of the other commenters below, I don't think it's an issue of whether you have a "sense of humor" or not. YMMV.
I think it should be ‘What happens when you accidentally swear at your users and properly apologize afterwards.’ It's only the latter that softens and makes swearing look fun—IMO even for (most) young techy people.
they've been lucky. it might work once for a small, "personal" startup or a company that centers its marketing strategy on being political incorrect. but it also could have gone terribly wrong.
CD Baby had a great e-mail that they sent users after an order:
"Your CDs have been gently taken from our CD Baby shelves with sterilized contamination-free gloves and placed onto a satin pillow.
A team of 50 employees inspected your CDs and polished them to make sure they were in the best possible condition before mailing.
Our packing specialist from Japan lit a candle and a hush fell over the crowd as he put your CDs into the finest gold-lined box that money can buy.
We all had a wonderful celebration afterwards and the whole party marched down the street to the post office where the entire town of Portland waved ‘Bon Voyage!’ to your package, on its way to you, in our private CD Baby jet on this day, Sunday, December 11th.
I hope you had a wonderful time shopping at CD Baby. We sure did.
Your picture is on our wall as "Customer of the Year". We’re all exhausted but can’t wait for you to come back to CDBABY.COM!!
The bitches who got offended over this are drama queens who should get the sand out of their vaginas and redirect their attention to something worthier than petty trifles and smallminded grudgebearing.
Debate over the term 'misogyny' aside, there is a difference between a word that's simply profane (pick your favorite term for poop/sex) and a word like 'bitch', which is generally frowned upon by the feminist community as being seriously degrading to women.
By that logic, the "N-word" isn't "hatred of blacks", so it's not racist.
"Bitch" is a loaded sexist term, much like the "N-word" is a loaded racist term. There's really never a good reason to use it when you can use something else instead. And just because some people do use it doesn't mean you have to sink to their level when there's a thousand other words you could use.
Well, by some stretch it is: this is a word most women don't like to be called, and when referring to men, at least part of the offense is that it's bad to be a woman.
But is it offensive because being a woman is offensive, or is it offensive because as a man, being identified as a woman is a degradation or insult of your condition of being a man?
A developer might feel slighted at being compared to a manager. Likewise a manager might feel slighted at being compared to a developer. Both might have arguments about why a developer or a manager is better/different/more awesome, but the underlying slur isn't a global condemnation of either developers or managers, but that as a group of X you're trying to be more like other X and not like Y. So being told that you're Y is in fact saying you've failed at being X.
In other words, it's not misogynist if a man feels insulted by being feminized, just like a woman might feel slighted by being forcefully masculinized (sp?).
We've had a debug message or two slip through to production, and the conversation that follows is never comfortable. The inevitable conclusion they reach is that if we miss one small thing, we're likely to miss another. Sometimes you really do have to sweat the small stuff.