Recently I was practicing for the keynote talk at the 2014 SQL in the City events. There were three of us in the “Ship Often, Ship Safe” talk, and we’d been practicing remotely. For the most part that meant a Skype call where we could work on timing and a Join.me share of a remote desktop to work on demos. The whole delivery became smoother and smoother as we got closer to the event, and I’m glad we spent a few weeks practicing (that’s important).
However, we had an issue when we all arrived in London to practice. The first few run throughs, using a live laptop instead of a remote session, went much slower and less smoothly. In fact, the entire timing of the keynote was a problem because certain tasks were taking entirely too long. We were starting to think that we’d have to rewrite the talk in places, or take screen shots and show those.
One of the presenters then suggested that we find a working network connection and retry our demos. It sounded a bit silly, but we relocated to a hotel room and connected to the network. Sure enough, everything ran faster.
It turns out that there were various services, our own products, IE, and a few more that all had a few delays built in to check something across the network. Together, those delays added up to substantial time lags for various processes.
While I think we’ve come a long way towards building amazing connectivity at high speeds, there are still plenty of times, including common tasks taking place in server rooms, where we don’t have a live connection to the Internet. I would hope that people would consider that the network might not be live and allow their services to continue to function if Internet access is not a core requirement. I suspect far, far too many developers still do not think of this.
I don’t know that we’ll get better written software to allow for a lack of Internet access, but if you find things running slow, you might try enabling an Internet connection and seeing if your performance improves.