'Fixing' 12-Hour Time
Resolving the discontinuities in 12 hour time and proposing Continuous 12-Hour (C12) Time
§12-Hour Time is Confusing
When we teach children to read clocks and tell time, they're often confused by the strange combination of rules we follow. Even some adults mix up whether midnight is in the a.m. or p.m. and how many hours are between two times that span noon. This confusing complexity isn't intrinsic! It can be removed!
§12-Hour Time is Discontinuous
A sensible 12-hour time system would be continuous and linear within its 12-hour segments. Any times (N):mm a.m.
and (N+1):mm a.m.
should be 1 hour apart and any (N):mm p.m.
and (N+1):mm p.m.
should be too.
Sadly, 12:30 p.m.
is actually 11 hours before 11:30 p.m.
.
In my opinion, this is where a lot of the confusion about hours of the day and distances in time comes from.
§Implied 24-Hour Value
One simple way to demonstrate how 12-hour time deviates from intuition is to imagine a simple hypothetical rule: the 24-hour time for a 12-hour time is equal to its 12-hour time if it is a.m.
and equal to 12 hours later if it is p.m.
. This rule isn't how 12-hour time works, but plotting the values it gives us makes 12-hour time's major issue obvious.
This also presents an obvious way to create intra-segment intra-day continuity. Just make the hypothetical rule the actual one making noon 12:00 a.m.
and midnight 12:00 p.m.
.
Most people would leave it here having made times within the day continuous, but we can do better... we can make times continuous between days! (even if we shouldn't)
§Segment-Amplitude
The approach for inter-segment inter-day continuity will look a little different and we'll start by using a different visualization.
Instead of focusing on the "implied 24-hour value" we're going to focus on the amplitude of each time ignoring whether they are a.m.
or p.m.
.
For the next step we're going to take a hint from what "a.m." and "p.m." actually stand for:
- ante meridiem which translates to "before midday"
- post meridiem which translates to "after midday"
What's strange about this is that "12 a.m." isn't really "12 hours before midday" though "12 p.m." does mean "12 hours after midday, but what if they did match?
What if HH:mm a.m.
meant HH
hours and mm
minutes before noon instead?
Instead of hours increasing up till 12 and then resetting to 1, they would go up to 12 and down to zero and then back up and then back down. Intuitively this would mean that 12 hours after midday is equal to 12 hours before midday of the next!
By reversing the order of time in the a.m., we've finally reached a truly inter-segment inter-day continuous 12-hour time, which I propose we call Continuous 12-Hour Time a.k.a. C12 Time and adopt immediately. Its inter-day continuity can be seen in the following figure by repeating the plot across multiple days.
In addition to continuity, it's also much easier to tell how long durations of time ranges that cross noon, which are very common, are: you can simply add the a.m. start time to the p.m. end time!
Notably, this innovation can't be applied to 24-hour time demonstrating why 24-hour time shouldn't be taken seriously.
§Clocks
This will obviously have both foreseeable and unforeseeable consequences and implications for clocks and the keeping of time. As we begin to implement it, I'm sure we'll figure out the details.
At some point I hope to build a physical analogue clock demonstrating it, which will conveniently only require a change in the motion of its hands but not its structure, which is a notable feature of my proposal.
For now, please accept this digital clock showing the current time in the proposed system:
§Code
The code for this blog post is available online and licensed under the Apache 2.0 license.
c12.js
- a simple script that turns any element with classc12-clock
into a live C12 clock.gencharts.py
- code for generating all of the SVG charts in this blog post.