A few weeks back I wrote about including a new “social widget” from AddThis on one of my boards. Today I removed it. Why? Because a few weeks ago their code started screwing up. Since I was referencing their code rather than hosting my own copy, I inherited their problems.
That’s not something I am really happy about.
A few weeks ago the “newest post” link stopped working. Something was interjecting a stray URL in the middle of the page that caused the page URL to break. Instead of this:
I would end up with this:
That doesn’t work, so the newest post logic failed. This was a nuisance, but nobody complained about it, so I was wondering if it was just me. I found out today it was doing this for other folks too and nobody complained.
Today a new release of AddThis was released, and it broke the back button for IE6 and IE7. That spawned immediate feedback from my users. Some of them did a search and figured out what was going on, and with a quick edit of my files I permanently removed the AddThis code. I don’t plan to put it back.
Frankly this could happen with any sort of hosted code. Even if you assume that the code provider is trustworthy, there is a risk involved. What sort of testing do you do with new code before you release it? How much feedback do you get from your users? What sort of regression testing plans do you have? Now, do you think that your hosted code goes through the same series of tests that you do on your own code? What if they add new features and don’t tell you about them? What if they introduce bugs, like AddThis did?
I have read several articles that suggest we should all use Google’s hosted code for their AJAX framework. I didn’t like that idea to begin with, and I like it even less now. You can be sure that from here on out I will be very careful about adding references to hosted code to my boards.