- Everyone has to use the same communication tools, ie everyone in the office has to be using Slack/Hipchat and regularly do hangouts with remote people
- All meetings have to assume someone is going to be remote. It has to be burned into the culture that when you have a meeting a laptop is open and hangouts/gotomeeting/etc are running
- Annual onsite is a must! I've been amazed how a few days of in person communication can form pretty deep bonds. Once that username has a face and some shared inside jokes they become human forever. Anyone more key on any team should also strive to make it out around quarterly. I think everyone has people they'd consider good friends that they only have met in person one or two times while attending a conference or visiting a far away friend, same goes for the office.
- Let your local people work from home when it makes sense! Don't make your office people trudge through feet of snow while the remoters sip hot cocoa at home. In my experience most people working in the office actually like working in an office and most remoters like working remote. But, whenever possible, let the local people stay home if they need to wait for a package, take care of a sick kid, need some time to clear their head, the office is under construction etc.
Even though it sounds like the smallest one, the chat one is actually one of bigger issues. If everyone is on Slack you'll find even people in the office start using it to communicate with people a few seats away for small stuff, sharing links, conversations you'd prefer to be quiet etc. And this eventually means that communicating with someone 10 ft and 10k miles away feels very similar.