> This piece of advice is confusing. I think the author meant to make
> libraries thread-agnostic: don't bend over backwards to accommodate
> access to the same data from multiple threads, but don't unnecessarily
> couple different pieces of data either.
My take is simply don't use global variables or anything that would break a threaded application. Return contexts such that when you hold a lock around a context, things work as expected.