This is a fascinating read that presents the idea that calendars should be multi layered.

We tend to think of calendars as 2D grids with mutually exclusive blocks of time, but as this example shows, not all events automatically cancel each other out. Depending on their characteristics, they can be layered on top of each other. This means we manage time in three, not two, dimensions.

Think of a meeting you need to travel to. In your calendar will be an event for the actual meeting, but you need to block off time before and after so that no one else schedules something in that time. So really the unavailable time covers when you start travelling, the meeting itself, and the time travelling back. The total time makes one layer, the meeting is a second layer, and perhaps some tasks you need to accomplish in the meeting are a third layer. It’s a great concept and one I would love to see someone build an app based on it.