Virtual Coffee Break

综合技术 2018-03-12

Photo by karl chor on Unsplash

Virtual Coffee Breaks (VCBs) are the analogue of coffee breaks for remote workers. Here are the rules for holding a Virtual Coffee Break.

  1. VCBs are initiated with a text message “VCB?”
    • Other media (email/chat) are allowed, as long as they are text based. No calls.
    • The message must include a way to reach you, e.g. hangout link, phone number or a skype name.
    • If you sent this text to a VCB first timer then indclude a link to this post.
  2. To accept a VCB the receipient enters the hangout / returns the call / …

  3. The recepient may ask for a short delay before joining.

  4. The recepient may turn down a request directly by answering “busy”.

  5. VCB requests silently expire after 5 minutes.
    • If the recepient did not get back to you, he was apparetly busy. No apologies needed.
    • Once a request has expired, the initiator has probably picked up work again. Further interruptions might not be welcome.
    • If he missed the request before it expired, the recepient can always initiate a new VCB.
  6. A VCB session must be ended after a maximal duration of 15 minutes.
    • The initiator of the VCB is reponsible to end the session in time.
  7. A VCB session may or may not include the consumption of actual coffee.

That’s it. Enjoy your virtual coffee!


Not having colleagues around is clearly the biggeste drawback of working remotely. The VCB is a way to bring the inofficiall refreshing coffee sessions from the office to the remote work space.

There are additional complications in the remote settings. The most obvious one that remote communication technologies are involves (which sucks, but can’t be avoided). Here are the design goals, that lead to the above format:

Low distraction.In a remote setting it’s not possible to see if someone is busy. You would not yell at someone who is two hands deep into code with his headphone on. Whereas if you see someone reading the news or wandering around the office a coffee break might be highly welcome. This is the reason we include text messages here. They need to be push based, but easy to discard or ignore.

Keep it short.With a VCB you might get in touch with people you have not seen for a while. Catching up with all life events since your wedding can take hours. A coffee break in within the working hours is not the right place for this. The hard cut at 15 minutes explicitly shuts down this kind of conversations.

No scheduling.A scheduled meeting costs much more than the scheduled time. You can’t start any task, which requires some context to keep in mind up to 30 mins before the meeting. Also the time in your day is now blocked, and you can’t take in anything else, like going to lunch. VCB’s are not scheduled. It’s either happening now or not at all.

No obligations.If you are busy. It’s fine. Unanswered VCB requests won’t pile up in your inbox and wait to be responded to. Just delete and ignore the request. That’s the protocol. Of course you may come backt to these people by initiating a new VCB but there is no obligation. Not even an implicit one.

Feel free to suggest futher improvements to the protocol.


Preliminary sandboxfs support in Bazel During the summer of last year, I hosted an intern who implemented sandboxfs : a FUSE-based file system that exposes an arbitrary view of the host...
JCOP31/JCOP41 v2.3.1模拟M1门禁卡 模拟M1卡其实就是利用cpu卡模拟m1卡的结构,即将cpu卡存储区域模拟成m1卡的扇区结构,但是本质还是m1卡。 首先,小哥先找来一张CPU门禁卡来,先用前几年号称神器的acr122U来解密。 从中我们可以看到acr122U提示已经完成,卡号cdeadfbe。 现在我们打开解密出的d...
Two Games with Monte Carlo Tree Search Monte Carlo tree search (MCTS) is the most impressive game artificial intelligence I’ve ever used. At its core it simulates a large number of games (...
Full SupConf Video for Use the Data You Have Hey folks! I’m really happy to share with you the full video of my recent talk at SupConf 2016 , where I gave a talk on leveraging your existing d...
谁来检查方法参数合法性 我们在编程中的函数或者是方法,大多数都是有参数的。参数对于方法来说是很重要的输入数据,传入的参数值的合法性影响着方法的稳定性,严重时甚至可能导致崩溃问题的出现。 比如这段代码 public static void main(String[] args) { ...