-

Mashable’s overuse of third party scripts is due to offloading a large number of services to other sites. They use Disqus for comments, which may explain why the immensely popular site receives relatively few comments. I’ve always considered 3rd party comment services to be a big faux pas…
-

Politico’s usage of external scripts seems to be a wide mix of social, tracking, and other various services. In their case, it may be hard to avoid this problem without creating multiple inhouse web apps to replace all of these 3rd party services.
-

Huffington Post is another popular site with a metric ton of 3rd party JavaScript. Most of these are from sharing sites, which doesn’t affect its functionality much.
-

Gawker’s external scripts seem to be focused on tracking and ads. They appear to have their own CDN domain, which is great, but it may have been better to put it on a subdomain rather than its own since many NoScript users such as myself whitelist subdomains by default.
-

Craigslist is a model example of external script usage – There are none
-

This site – I have manually added all the external scripts used here. I add and remove various widgets and code at regular intervals for testing. Here you see I have 3rd party code from 3 advertisers, a blog hopping widget and its CDN, and a newly added PostRank widget that I added very recently.
Thoughts and Recommendations
There are a few other problems caused by reliance on 3rd party widgets besides those pointed out above.
Increased number of DNS lookups may impact page load time. Every widget you add means one more site to lookup and download from. If the site hosting widget code goes down or experiences other problems it will likely affect your own sites user experience. Another problem involves the way search engines index and cache your site. The rendered JavaScript isn’t currently cached by Google and others, only the script code. This means that when someone views a cached version of your page, they may see a widget with different information that you originally intended to display.
In many cases, you can combine and minify third party code and it will remain functional. Much of the JavaScript I’ve encountered from social networking widgets are fairly portable and you can easily host it locally. Another option would of course be to develop your own local code to include only the needed functionality. You don’t need to hand your own user’s information and surfing habits to some third party just to give them an easy way to retweet your blog post.
