Submitted by greggles on
What are Widgets (Blog Widgets)
Widgets are the little things that people place in the sidebars and other low-value parts of their site. They do this to provide additional features, to show affiliation with something, to prove the value of their blog, to make money from their blog, basically they do it for a lot of reasons. Prominent examples include the MyBlogLog widget, Last.Fm widget, Adsense widget, Flickr photostream widget, the Google Analytics widget (hidden widget, but still a widget).
Even fast blog widgets are slow
Each file that gets downloaded takes time because of the size of the file itself and also because of the additional request. Each file request has additional overhead associated with it. So, downloading 1 file that is 2MB will take less time than 2 files that are 1MB each.
Widgets add more files to your page. More files makes your page slower, even if they are served quickly. But what if they are served slowly or - ghasp - the widget server goes down.
Widgets are Often Served Slowly (or from Dead Servers)
So, adding any widget - even from a fast server - slows your site. And now you add widgets from an overloaded server? Most widgets are personalized. Behind the scenes they are searching for information about you among millions of other people and then inserting that unique content into your site. That takes time. Lots of it.
The day after I disabled the widgets on my site, I happened upon the ColoradoStartups homepage. (And David, I single you out because I love your site). The page load time was atrocious. Really. Total page load: 17.79 seconds Wow. If we look at there site, my browser 105 Requests for 513KB worth of data, of which 310KB was already cached. So I was only downloading 200KB worth of new data - why did it take so long? For the test I only used the internet to get their page and I'm on a DSL connection where downloading a movie at over 300Kbps (typical dsl speed). The problem is in all of these widgets doing their personalization, storing data, reading data. Behind the scenes, some of them use yet further web services to lookup data!
When you have 8 widgets like ColoradoStartups.com does (madkast, widgetserver, widgetbox, lijit, mybloglog, madkast, plugoo, feedburner - and then yahoofs and amazonaws support some of those) is that at least one of the 8 is bound to be overloaded. And pretty regularly one of them is going to be totally down. This makes a page load take an immense amount of time.
The left image shows the page loading for ColoradoStartups.com and on the right you get Knaddison.com
I understand that they have somewhat overloaded their page with different widgets so that they can utilize the services provided by companies they review (like lijit and intense debate) but I think at some point you turn users away. That point is, according to various studies I've read, about 4 seconds. So, a page load time of almost 5 times that threshold won't work.
Solutions to the Blog Widget problem
As I've pointed out, the problem can't be solved by "get faster" solutions like just speeding up the internet connections of users or making the servers that run the widgets faster. That would certainly help, but the "more files" problem means you are still limited to a few widgets.
Of course the problems with my solution is that 1) it requires lots of things like microformats that are only slowly picking up 2) site users will need powerful website building software that can be more difficult to install 3) some of these widget companies have "collect lots of data and do stuff with it" as a business model and they can do more of that without you knowing about it when they do it in this format.
- Log in to post comments
July Denver/Bou... replied on Permalink