Date format
A good way to format discordian dates is the following.
Today is Setting Orange, the 39th day of Confusion in the Year of Our Lady Discord 3190
or
Today is Setting Orange, the 39th day of Confusion in the YOLD 3190
Python script
I used to follow a bot on twtxt that would post the current date in the Discordian calendar every day. I really enjoyed it at the time, but when I checked it out again recently, it no longer existed. So I decided to write my own script to enumerate the Discordian calendar.
My script doesn’t have a fancy algorithm to convert arbitrary dates between the Gregorian and Discordian calendars. It just starts from a reference date and follows the rules of the Discordian calendar to enumerate the dates.
This is okay, computers are fast and we can precompute the entire calendar for for thousands of years in a few seconds. So this is pretty much a non-issue for me.
Below is the script I wrote, it will start from 1970-01-01 (heh, the Unix epoch), and print out the Discordian date for every day after that. Feel free to save the output to a file and use it as a reference.
import time
import datetime
SEASONS = [
"Chaos",
"Discord",
"Confusion",
"Bureaucracy",
"The Aftermath",
]
WEEKDAYS = [
"Sweetmorn",
"Boomtime",
"Pungenday",
"Prickle-Prickle",
"Setting Orange",
]
APOSTLE_HOLYDAYS = [
"Mungday",
"Mojoday",
"Syaday",
"Zaraday",
"Maladay",
]
SEASONAL_HOLYDAYS = [
"Chaoflux",
"Discoflux",
"Confuflux",
"Bureflux",
"Afflux",
]
REF_DATE = datetime.date(1970, 1, 1)
def discordian_dates():
day_of_year = 0
season = 0
day = 0
year = 3136
total_days = 0
while True:
real_date = REF_DATE + datetime.timedelta(days=total_days)
season_s = SEASONS[season]
weekday_s = WEEKDAYS[day_of_year % 5]
if day == 4:
holyday = APOSTLE_HOLYDAYS[season]
holyday = f"Apostle holyday: {holyday}"
elif day == 49:
holyday = SEASONAL_HOLYDAYS[season]
holyday = f"Seasonal holyday: {holyday}"
else:
holyday = ""
yield str(real_date), weekday_s, season_s, str(day + 1), f"{year} Year of Our Lady Discord", holyday
if (year + 2) % 4 == 0 and season == 0 and day == 58:
total_days += 1
real_date = REF_DATE + datetime.timedelta(days=total_days)
yield str(real_date), "St. Tib's Day", "", "", f"{year} Year of Our Lady Discord", ""
day_of_year += 1
day += 1
total_days += 1
if day == 73:
day = 0
season += 1
if season == 5:
season = 0
year += 1
day_of_year = 0
for parts in discordian_dates():
justs = [10, 15, 13, 2, 30, 0]
out = " | ".join([x.ljust(y) for x, y in zip(parts, justs)])
print(out)
Here’s some sample output:
Date | Weekday | Season | Day | Year of Our Lady Discord | Holyday |
---|---|---|---|---|---|
2023-09-01 | Prickle-Prickle | Bureaucracy | 25 | 3189 Year of Our Lady Discord | |
2023-09-02 | Setting Orange | Bureaucracy | 26 | 3189 Year of Our Lady Discord | |
2023-09-03 | Sweetmorn | Bureaucracy | 27 | 3189 Year of Our Lady Discord | |
2023-09-04 | Boomtime | Bureaucracy | 28 | 3189 Year of Our Lady Discord | |
2023-09-05 | Pungenday | Bureaucracy | 29 | 3189 Year of Our Lady Discord | |
2023-09-06 | Prickle-Prickle | Bureaucracy | 30 | 3189 Year of Our Lady Discord | |
2023-09-07 | Setting Orange | Bureaucracy | 31 | 3189 Year of Our Lady Discord | |
2023-09-08 | Sweetmorn | Bureaucracy | 32 | 3189 Year of Our Lady Discord | |
2023-09-09 | Boomtime | Bureaucracy | 33 | 3189 Year of Our Lady Discord | |
2023-09-10 | Pungenday | Bureaucracy | 34 | 3189 Year of Our Lady Discord | |
2023-09-11 | Prickle-Prickle | Bureaucracy | 35 | 3189 Year of Our Lady Discord | |
2023-09-12 | Setting Orange | Bureaucracy | 36 | 3189 Year of Our Lady Discord | |
2023-09-13 | Sweetmorn | Bureaucracy | 37 | 3189 Year of Our Lady Discord | |
2023-09-14 | Boomtime | Bureaucracy | 38 | 3189 Year of Our Lady Discord | |
2023-09-15 | Pungenday | Bureaucracy | 39 | 3189 Year of Our Lady Discord | |
2023-09-16 | Prickle-Prickle | Bureaucracy | 40 | 3189 Year of Our Lady Discord | |
2023-09-17 | Setting Orange | Bureaucracy | 41 | 3189 Year of Our Lady Discord | |
2023-09-18 | Sweetmorn | Bureaucracy | 42 | 3189 Year of Our Lady Discord | |
2023-09-19 | Boomtime | Bureaucracy | 43 | 3189 Year of Our Lady Discord | |
2023-09-20 | Pungenday | Bureaucracy | 44 | 3189 Year of Our Lady Discord | |
2023-09-21 | Prickle-Prickle | Bureaucracy | 45 | 3189 Year of Our Lady Discord | |
2023-09-22 | Setting Orange | Bureaucracy | 46 | 3189 Year of Our Lady Discord | |
2023-09-23 | Sweetmorn | Bureaucracy | 47 | 3189 Year of Our Lady Discord | |
2023-09-24 | Boomtime | Bureaucracy | 48 | 3189 Year of Our Lady Discord | |
2023-09-25 | Pungenday | Bureaucracy | 49 | 3189 Year of Our Lady Discord | |
2023-09-26 | Prickle-Prickle | Bureaucracy | 50 | 3189 Year of Our Lady Discord | Seasonal holyday: Bureflux |
2023-09-27 | Setting Orange | Bureaucracy | 51 | 3189 Year of Our Lady Discord | |
2023-09-28 | Sweetmorn | Bureaucracy | 52 | 3189 Year of Our Lady Discord | |
2023-09-29 | Boomtime | Bureaucracy | 53 | 3189 Year of Our Lady Discord | |
2023-09-30 | Pungenday | Bureaucracy | 54 | 3189 Year of Our Lady Discord |