I mean no disrespect but as I understand the code, and I'll be the first to admit that I'm missing something here as the brain is fried, this lists all of the blogs within a mu install. Correct?
The problem with that is you;re compiling this list live each and every time the widget loads unless you have caching in place on the backend.
Imagine the load on a 30k blog site where each and every blog has this widget installed.
Wouldn't it be better to run this say once an hour and say the data as a site option within the db and pull that as a single load? Or set this up to use the built in cache if it;s present?
We had this discussion over on the tutorial site:
http://wpmututorials.com/how-to/making-a-member-list-blog-directory/
edit: I don't have the code handy to look at but the blog count function (whatever it's called) is cached to update once an hour I believe. Folks may want to review how that's done to see what I'm talking about.