This week, I’m working in China. At the moment, I’ve got a room in a fancy hotel in a peripheral neighborhood of Shanghai, where my company is holding its sales conference. Bad internet is not a stranger to high-end hotels the world over, but over the past couple of days, I’ve been made aware of just how much I rely on internet connectivity for my daily work.
I’m a big user of Dropbox, because it allows me to have my files offline (as opposed to Google Docs online-only approach, although Google Drive is supposed to change that), across several computers, easily accessible on my mobile devices, versioned, and shareable (systematically with designated colleagues who also have Dropbox, or as a one-off with special URLs).
My company relies on the dreaded Lotus Notes for email. It’s bad in so many ways, many of them related to how it’s managed for us (the ridiculously low mailfile size limit and mobile support limited to Blackberry), some related to the architectural design of the tool.
Although more of my tools are having difficulty, I’m deliberately picking those two examples: one is a fairly modern digital-native tool, well-written and very stable, while the other is a notoriously clunky holdover computing concept from over a decade ago.
Both fail spectacularly in this context of low-bandwidth, limited internet access. And guess what still does work well?
File syncing grinds to a halt
Consider Dropbox: opening certain documents changes their meta-information (I imagine just the “last opened” flag). This triggers a re-upload. When I’m at home on a super-fast fiber connection, or even at the office with a narrower but still significant bandwidth, I don’t even notice this is going on. (I’m not sure if the whole file gets uploaded — in general Dropbox behaves in a pretty clean way, so perhaps only the diff gets transmitted over the network.)
Here, over a terribly tight network, this chatter slows down other network activities. And for necessary traffic (such as uploading or downloading a new file), the communication time is very long.
All the benefits I talked about earlier are unavailable to me, unless I am willing to consciously wait until syncing is finished. When the network cost is high, Dropbox becomes a cumbersome luxury, and if I were working in such conditions all the time, I would definitely be much more selective in which files I store there.
Lotus Notes seems to add significant network overhead: simply navigating through the inbox, looking for a name in the directory, or opening up the calendar is very slow under the best network conditions, and performance degrades very quickly. Attachments slow down interaction: they’re probably being downloaded under many conditions, and very little local caching takes place (if any at all).
Now there’s some sort of offline mode, which replicates the online mail database locally and allows you to work without any network traffic. However, it’s not a solution, in that it tries to download all contents (including attachments): it chokes on large emails. No way to just browse headers, or to keep large attachments on the server for on-demand download.
What’s more, with an unstable internet link, the requirement to connect over a VPN results in extremely frequent failures, and poor recovery. I’ve probably downloaded a total of 80MB over at least 40 connections in the past 3 days, but failed every time because I never completed the download of a single 3MB message.
Can this be fixed?
Being a file management system, I don’t think Dropbox could do much better: the files’ content simply must be transmitted. Perhaps some unnecessary chatter can be cut down, and the user’s priorities can be used to improve the behavior, through a “degraded mode” that would offer the explicit choice of downloading or uploading certain files: I would deny all but the most important updates. (Not sure the interaction would be comfortable enough, but in the present conditions, I’m willing to go to quite some length to make it work.)
For Lotus Notes (aside from lengthening the timeout configuration of my company’s VPN), I’m afraid the problem is fairly deep, and is linked to the kind of assumptions the platform makes as to the availability and quality of the network — and the huge gap between those assumptions and reality.
But as far as email is concerned, well, guess what, Gmail actually got it nailed. In a low-bandwidth environment, it seems the chatter of the web interface of Gmail is rather limited. Aside from the odd “message failed to send” when my connection is actually down (an error from which I’ve always been able to recover once the network was back up), I’ve not encountered significant challenges.
Of course, the download of large attachments is still slow, and not very reliable. But you can still forward those attachments, and they do not slow down navigation within your email. I don’t use a mail client or Chrome’s offline email mode, but I expect that I would be able to deal with a good variety of use cases, in a bandwidth-thrifty way.
Gmail’s software architecture seems designed to make effective use of the available bandwidth, and does not assume too much is available. Physically, I guess they always serve my content from a very nearby machine, reducing the number of network hops, exposing me to fewer bottlenecks.
What’s more, the required points of interaction with Gmail are grouped rather well: the interface does not require me to wait for a certain operation to be completed, or to monitor its state so I can enter further commands. It does not freeze or steal focus from other apps when I’ve pushed it to the background while it’s doing something slow (such as downloading a large attachment).
Not only is Gmail effective with technical resources, it also maximizes the value of its interactions with me. “It just works.” And I imagine there’s tremendous discipline and architectural cleverness in making this feel right.
Climbing up the wall*
Overall, poor network conditions result in a significant slowdown of my daily work, and constantly-irritating time sinks. And there is the added annoyance of having portions of the US internet not accessible (Twitter for example) due to the Great Firewall of China. Really, this is driving me nuts!
Getting a better network (perhaps through a 3G wifi access point) will probably help, if I come and work here more often. But whenever possible, I will also be choosing tools that make the best possible use of available resources, both technical and human.
* Note I did not wallow in a mediocre great-wall joke here. Credit please.