I find it really amusing when companies have "no meeting Wednesdays!" - fix your damn system so that you don't need so many meetings. I know of no actual programming problem that requires so much coordination that a programmer actively needs more than two or three meetings a week. My goal is to get every developer to 1 meeting a week (the weekly 1:1).
Things to remove:
* Meetings
* Interruptions/Noise (this is why open-plan offices are terrible)
* "Can I ask you a quick question?" questions
* High-bandwidth communication for anything that isn't life-or-death emergency
* Fire-drills/"emergencies"
* Fixed work schedule
Things to do instead:
* All meetings (with the exception of 1:1's) are optional
* Async communication wherever possible (chat rooms, email)
* Assume that any person, at any time, can be remote (this changes everything and makes sure that folks prepare ahead of time)
* 100% flexibility in work schedule to allow for folks to find their productive peaks, whether that's at 4am or 4pm