The first version of this blog was entitled Framework Whipped. I attempted to compare the code that uses a framework to the concubines in a harem. I thought my comments were clever and funny; but many people found them offensive.
I sincerely apologize for that offense, it was not intentional. I broke Don Norman's law:
“If you think something is clever and sophisticated beware-it is probably self-indulgence.”
I will try to avoid mistakes like this in the future. I appreciate the conversation about them, and hope that it can continue constructively.
Let me also say this. My original post had made women the butt of a set of very bad jokes. This had not been my intent. Nor did I realize I had done it. It was pointed out to me later; and I agreed and apologized. I believe that was the right thing to do.
Pointing out that you are being made the butt of a set of bad jokes is an honorable thing to do. There's nothing wrong with standing up and saying "No I don't want to be treated that way."
I have 50,000 followers to my Twitter feed. If I inadvertently make a bad joke, and then don't correct it, others might decide to follow suit. I don't want that.
So to those of you who think I caved under some kind of pressure, you're wrong. I revised the blog because I was wrong.
Uncle Bob's castigation for his blog post isn't warranted. It's perilously easy to offend just about anyone on the Internet. Bob Martin's comments in his post were well put in spite of the poorly chosen metaphor. But, there is a major difference between intending to harm with one's words and not having that intent. Keep in mind that offense is always subjective, even if the offender intended to cause harm. People are constantly offended about all manner of things, and if we were constantly pursuing an apology for everything we were offended by we would accomplish nothing else. Regardless, Bob did apologize for offending people, and he revised his blog post. The mature thing to do would be to silently accept his apology and move on. The argument put forward in the post is born out of years of experience, so look past the offense and interact with the ideas in a mature fashion.