Desmond File

Blog archive

E-Mail and the Law of Unintended Consequences

I've always been a big fan of the law of unintended consequences. Whether it's Henry Ford's invention threatening to melt the polar ice caps or Ray Kroc's innovative fast-food business helping transform America into the most obese nation on earth, it seems that even great ideas can have terrible consequences.

Ask Ray Tomlinson. He knows. The man who invented e-mail back in 1971 was interviewed this week by the Times Online and said he had no idea how huge his innovation would become and the threat it might unleash.

"At that time, the number of people who used e-mail was very small -- maybe between 500 to 1,000. So if you were getting spam, you'd know who was sending it. You'd be able to say to them: that's not a good thing to do," Tomlinson told the Times Online.

The lesson seems pretty darn simple: If you design something to become a success, you better be ready to manage the wages of that success -- whether it's an unintended side-effect, an environmental impact or simply bad people leveraging that success against others.

What's honestly surprising is that software designers often fail to pay full attention to the law of unintended consequences.

Microsoft's ActiveX is such an obvious case in point that I'm almost reluctant to use it here. But ActiveX should stand as an object lesson of what not to do with a software architecture. Intended to enable rich, desktop-like, Web-served applications within Internet Explorer, ActiveX instead emerged as an unacceptable security risk. The same tight and rich integration that made ActiveX so valuable for applications also made it a perfect vehicle for malware.

As with Ford's mass-produced automobile and Kroc's fast food restaurants, Tomlinson's e-mail and Bill Gates' ActiveX are, to an extent, victims of their own success.

"E-mail is like any tool -- it can be used for good or bad," Tomlinson said.

Have you had a development effort that's run into the law of unintended consequences? What did you do to remedy the issue? E-mail me at mdesmond@reddevnews.com.

Posted by Michael Desmond on 03/13/2008


comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube