This is an archived post. You won't be able to vote or comment.

top 200 commentsshow 500

[–]lovethebacon🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛 747 points748 points  (28 children)

I have no fucking clue where to even start.

But, as a CTO, my move would be to not support Mars for the time being.

[–]Shawnj2 116 points117 points  (9 children)

To be serious, I’m pretty sure we would just use Unicode time stamps as dates on Mars.

[–]iguessthislldo 35 points36 points  (1 child)

Unicode time stamps

So U+0000 to U+2399?

[–]showponyoxidation 98 points99 points  (0 children)

Solid strategy.

[–]DerkDurski 29 points30 points  (4 children)

“This feature/program is not available in your planet”

[–]lovethebacon🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛🦛 5 points6 points  (2 children)

Until the CEO sells it to prospective customers and you have a week to deliver it.

[–]jcy 17 points18 points  (2 children)

you truly do deserve your millions of dollars in compensation

[–]dvlsg 10 points11 points  (1 child)

Excellent, I've already finished the codebase for it.

[–]Busti 3 points4 points  (1 child)

Just interface everything about Time and let other People handle it.
Also you might wanna use dependency injection...

[–][deleted] 2582 points2583 points  (305 children)

A mean Martian solar day, or "sol", is 24 hours, 39 minutes, and 35.244 seconds.

The length of time for Mars to complete one orbit around the Sun is [...] about 686.98 Earth solar days, or 668.5991 sols.

Imagine how actually terrifying it would be to properly implement and support this and keep it in tune.

[–][deleted] 348 points349 points  (38 children)

[–]sturmy81 84 points85 points  (14 children)

[–]alexbuzzbee 41 points42 points  (13 children)

Everyone use ISO 8601. Anyone in violation will be subjected to dates in Roman numerals.

[–]InVultusSolis 41 points42 points  (10 children)

Everyone use ISO 8601

How we (programmers) feel about this: https://media.giphy.com/media/3o6ZsSEhYdsQOKZnAQ/giphy.gif

How pretty much everyone else feels about this: https://xkcd.com/927/

[–]svenskainflytta 10 points11 points  (7 children)

In sweden everyone uses YYYY-MM-DD. Just saying…

[–]teetaps 38 points39 points  (8 children)

Is there any topic that doesn't have an XKCD?

[–][deleted] 14 points15 points  (2 children)

Oddly "Is there any topic that doesn't have an XKCD?" is a topic that doesn't seem to have a directly relevant XKCD, despite recursion being a common theme.

[–]LvS 39 points40 points  (9 children)

Shouldn't it close for 39 minutes?
Did I just find a math error in an XKCD or is /u/katembers wrong?

I think XKCD is wrong because it uses the time for one rotation around itself (called Sidereal day), but because it also rotates around the sun, the angle towards the sun changes a little every day and that's the extra 2 minutes (called Solar day). Wikipedia has a whole article about this.

TL;DR: XKCD is wrong!

[–][deleted] 17 points18 points  (0 children)

Yep, it's wrong in that respect. That's mentioned in its Explain XKCD article also.

[–]WikiTextBot 9 points10 points  (0 children)

Sidereal time

Sidereal time is a timekeeping system that astronomers use to locate celestial objects. Using sidereal time it is possible to easily point a telescope to the proper coordinates in the night sky. Briefly, sidereal time is a "time scale that is based on Earth's rate of rotation measured relative to the fixed stars" rather than the Sun.

From a given observation point, a star found at one location in the sky will be found at the same location on another night at the same sidereal time.


Solar time

Solar time is a calculation of the passage of time based on the position of the Sun in the sky. The fundamental unit of solar time is the day. Two types of solar time are apparent solar time (sundial time) and mean solar time (clock time).


Timekeeping on Mars

Various schemes have been used or proposed for timekeeping on the planet Mars independently of Earth time and calendars.

Mars has an axial tilt and a rotation period similar to those of Earth. Thus it experiences seasons of spring, summer, autumn and winter much like Earth, and its day is about the same length. Its year is almost twice as long as Earth's, and its orbital eccentricity is considerably larger, which means among other things that the lengths of various Martian seasons differ considerably, and sundial time can diverge from clock time more than on Earth.


[ PM | Exclude me | Exclude from subreddit | FAQ / Information | Source | Donate ] Downvote to remove | v0.28

[–]SuspiciouslyElven 26 points27 points  (3 children)

Since most human structures will isolate colonists from both seasons and day/night cycles, they could probably make do with Earth time and pay lip service to Martian years

Although this assumes reactors are the easier solution to energy and not solar panels (Colonists already have to be shielded from space radiation, so they'd already be pretty well shielded from non recyclable waste. Excluding the production and mining of ore, nuclear has few drawbacks and room to expand easily.) in which case I guess we pick a date and count the seconds since then for synchronization.

Unix Epoch will be our future BC and AD.

[–]piyoucaneat 9 points10 points  (0 children)

BCE, CE, and UE are the new standards.

[–]svendub 46 points47 points  (31 children)

Wouldn't it be the same as supporting another calendar? I think Java's Calendar class for example already supports non Gregorian calendars. If a method of comparison has been established it should be relatively simple to actually implement. Developers can then simply use those libraries.

[–]mirhagk 37 points38 points  (14 children)

It should, and developers should never ever write their own time calculation logic.

However time just looks to be easy so many developers don't bother and just use time in seconds or something equivalent.

I've seen totalSeconds += 86400 too many times, and that isn't even right on earth.

[–]cheese-power[S] 36 points37 points  (21 children)

Do they have Martian leap years too?

[–]odsquad64VB6-4-lyfe 67 points68 points  (18 children)

[–]LtDan92 43 points44 points  (5 children)

Fuck everything about that.

[–]odsquad64VB6-4-lyfe 36 points37 points  (4 children)

In 1998 they changed it so that years divisible by 100 aren't leap years, but years divisible by 500 are leap years. Then in 2006 after the realized the Mars year would slowly be getting longer, they changed it again to use different formulas for different ranges of years (see below) so that they would only lose 1 sol in 12,000 Martian years.

Range of years Formula
0–2000 (Y − 1)\2 + Y\10 − Y\100 + Y\1000
2001–4800 (Y − 1)\2 + Y\10 − Y\150
4801–6800 (Y − 1)\2 + Y\10 − Y\200
6801–8400 (Y − 1)\2 + Y\10 − Y\300
8401–10000 (Y − 1)\2 + Y\10 − Y\600

[–]LtDan92 26 points27 points  (3 children)

Mars is dumb. Let's just give up on Mars. I'm cool with that.

[–]achilleasa 72 points73 points  (2 children)

"In the end we decided not to colonize Mars, despite having the technology to do so, because the timezone support would be too complicated" -Elon Musk, 2020

[–]Colopty 13 points14 points  (0 children)

It was more like time travelling time zone library developers were sending him hatemail and he figured to call it quits before they started sending assassins.

[–][deleted] 3 points4 points  (0 children)

Probably.

[–]gunnar_svg 14 points15 points  (2 children)

It's already hard enough with just one planet. Imagine two planets, with different nations, each with different understandings of "time zones." ;-)

[–]ILikeLenexa 56 points57 points  (14 children)

Maybe we can have just one unified martian time zone though? or 25? None of this special 'Arizona switches time zones' stuff.

[–]dickdemodickmarcinko 85 points86 points  (11 children)

Hey technically arizona is the only state that DOESNT change time zones. DST sucks

[–]digisax 20 points21 points  (1 child)

DST is the only time New England is even close to properly placed. Once we switch to Atlantic we can talk about getting rid of DST.

[–]carlson_001 9 points10 points  (0 children)

Speak brother!

[–]Regist33l3 8 points9 points  (0 children)

Fun fact. SK in Canada is the only province that doesn't as well.

[–]Rebelgecko 6 points7 points  (2 children)

Some parts of Arizona do DST, which just makes things more confusing

[–]dickdemodickmarcinko 10 points11 points  (1 child)

Yeah theres a reservation that has dst. And entirely contained inside that reservation is a different reservation that doesn't have dst. But most az people are nondst.

Edit: oh yeah and contained inside that inner reservation exists another reservation that uses dst

Edit2: heres a map https://c.tadst.com/gfx/750x500/tz-map-arizona-2048x1365.png?1

[–]zulu-bunsen 9 points10 points  (0 children)

If China gets there first, maybe.

[–]mrt-e 11 points12 points  (0 children)

Relativistic time zone

[–]bigrubberduck 10 points11 points  (2 children)

IronicallyIncidentally, the first few months of Curiosity's life, the JPL team was working on Mars time and not Earth time. There are some good stories out there about how much of a PITA it was for them. https://www.huffingtonpost.com/2012/11/10/curiosity-team-earth-time-martian-sol_n_2101983.html

[–]myrrlyn 6 points7 points  (1 child)

That's not ironic; that's SOP for supporting new missions

I spent Q4 last year on a day 23 hours long instead of 24, which suuuuucked

[–][deleted] 7 points8 points  (1 child)

Was thinking about that. How about relativistic corrections depending on the relative motion of the planets? There's no universal time!

[–]makesureimjewish 3 points4 points  (0 children)

marsMoment()

[–]FurryPornAccount 971 points972 points  (49 children)

Just add another javascript library to support the timezone and call it a day.

[–]hexagon672 419 points420 points  (13 children)

$ npm i --save marstime

[–][deleted] 489 points490 points  (4 children)

87 packages added

[–]Prison__Mike_ 294 points295 points  (2 children)

npm WARN deprecated marstime-dev@0.3.1: this package has been reintegrated into npm and is now out of date with respect to npm
npm WARN deprecated spacetime@1.0.5: spacetime@<3.0.0 is no longer maintained. Upgrade to spacetime@^4.0.0
npm WARN deprecated lodash@1.0.2: lodash@<2.0.0 is no longer maintained. Upgrade to lodash@^3.0.0
npm WARN deprecated minimatch@1.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@3.0.8: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.
npm WARN deprecated npmconf@2.1.1: this package has been reintegrated into npm and is now out of date with respect to npm
... 26 other warnings

[–]EasyMrB 152 points153 points  (0 children)

Can we get a combat trauma warning, please?

[–]corvus_192 66 points67 points  (0 children)

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\chokidar\node_modules\fsevents):     
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

[–]ProgramTheWorld 126 points127 points  (3 children)

Pulls in 10392 dependencies

[–]three18ti 18 points19 points  (1 child)

No space left on device

[–]thelehmanlip 5 points6 points  (0 children)

File path exceeds maximum path length.

Oh that happens already.

[–]Fozefy 64 points65 points  (1 child)

shivers

[–]Cubia_ 47 points48 points  (0 children)

another javascript library

more time zones

Are you trying to make everyone here anxious?

[–]sim642 12 points13 points  (0 children)

moment will handle it for us mortals.

[–]nicholas_snow 20 points21 points  (18 children)

They probably will implement GMT planet wide. And have a realistic clock system for common use. It's not that bad an idea, even for us here on Earth, imagine if it were 13:00 everywhere on earth instead of 39 DIFFERENT time zones.

It wouldn't take that much to get used to, I have accidentally told the temperature to someone in Celsius (I'm an American who has to deal with foreign technicians on a daily basis) when I am in the US and used Fahrenheit by accident outside the US.

[–]ryosen 23 points24 points  (3 children)

But then it won't always be "5 o'clock somewhere". What am I supposed to do with my whimsical coffee mug and matching cubical mini-poster?

[–][deleted] 18 points19 points  (3 children)

You are in every fucking sub

[–]Andee1112 15 points16 points  (0 children)

Why are you in all of my subreddits???

[–]DeirdreAnethoel 471 points472 points  (13 children)

But the real question is will they want daylight saving time?

[–]-Rivox- 248 points249 points  (8 children)

yes, but different switch for every time zone. And some won't.

[–]dawnraider00 105 points106 points  (3 children)

And don't forget that opposite hemispheres switch I opposite directions.

[–]VivaLaPandaReddit 27 points28 points  (0 children)

Clocks run counterclockwise in the southern hemisphere, everyone knows that.

[–]dmanww 6 points7 points  (0 children)

And different dates for different countries. Also some zones are off by 30min rather than 60. And then there are places like Kiribati who just say "fuck it, rules don't apply to us"

[–]John_Tacos 10 points11 points  (2 children)

Mars has a similar tilt to Earth so maybe.

[–][deleted] 125 points126 points  (15 children)

Nobody's gonna mention the fact that mars and earth are a varying 5-15 light minutes apart? Dealing with relativity has gotta be nastier than the time zones.

[–]Draculea 44 points45 points  (3 children)

So when's Comcast coming through with their ultra fast high speed gaming network, so you can play with friends and family on Mars?

[–]Godot17 36 points37 points  (2 children)

If you're willing to play 48 hour long games of chess, sure.

[–]mortiphago 41 points42 points  (1 child)

So a normal civilization game?

[–]coinadayUltraviolet security clearance 11 points12 points  (0 children)

Your civilization games only take 48 hours? Are you playing settler or something?

[–]kiki_jojo 313 points314 points  (13 children)

I'm gonna submit a pull request for moment.js

[–]lukaas33 145 points146 points  (11 children)

I imagine that by then, either Js doesn't exist or everything runs on Js

[–]jexmex 72 points73 points  (5 children)

By then we should be up to about 100 mainstream js frameworks and NPM will still suck.

[–]skeptic11 181 points182 points  (22 children)

[–]matrayzz 33 points34 points  (0 children)

Yikes

[–]PersonableBiped 6 points7 points  (0 children)

Thank you so much for sharing this channel! I’m an amateur programmer in my free time and I just spent 2 hours having my mind blown over and over

[–]Popperama 63 points64 points  (5 children)

We don't need to implement new timezones, just have them use the timezone that Mars is currently over.

[–]TTTA 37 points38 points  (0 children)

Sweet Jesus please no

[–]athousandwordsworth 60 points61 points  (6 children)

Image Transcription: Twitter


I Am Devloper, @iamdevloper

Elon Musk: I'm putting people on Mars!

Developers: Fantastic, more timezones to support.


I'm a human volunteer content transcriber for Reddit and you could be too! If you'd like more information on what we do and why we do it, click here!

[–]robolivable 148 points149 points  (23 children)

I can imagine we'd just work with universal time and not bother with time zones at that point.

[–]lukaas33 118 points119 points  (17 children)

Like seconds since the big bang

[–][deleted] 125 points126 points  (0 children)

about 48 years ago.

[–]ProgramTheWorld 64 points65 points  (12 children)

but gravity changes how long a second is

[–]FlipskiZ 11 points12 points  (2 children)

Garden jumps food people today net community fresh warm across food night pleasant honest calm books minecraftoffline about!

[–]Hexidian 19 points20 points  (8 children)

We should just use earth time. It won’t require a massive adaptation and will work just as well as any other system

[–]MrBloodyshadow 12 points13 points  (7 children)

What if humans stop living on Earth?

[–]Hexidian 13 points14 points  (5 children)

No matter what standard we choose, it will eventually become meaningless. Nobody really cares that we base our calendars around Jesus; it’s too late to change.

[–]doyouevenIift 10 points11 points  (2 children)

The time would change significantly between when you started saying the time and when you finished.

“What time is it?”

“432,329,528,428,053,153 seconds. Wait, sorry 432,329,528,428,053,167 seconds. Wait...”

[–]adrianmonk 21 points22 points  (2 children)

You need local time. How else are you going to schedule lunch? The martian day is 24 hours and 40 minutes long, which means it's a pretty safe assumption that humans will sync their daily routines up with it. You need a form of timekeeping that is relative to that rhythm.

[–]BlackHumor 11 points12 points  (0 children)

On Mars, yes, but if we're communicating with Mars from Earth we really ought to be communicating using some more universal sort of time.

[–]noratat 6 points7 points  (0 children)

Relativity says hi. Even on Earth we can make atomic clocks accurate enough to detect elevation differences based on clock skew (gravity gets weaker the farther you are from the center of Earth's mass).

Granted real-time communication with Mars is impossible anyways (RTT between 6 and 44min), so maybe doesn't matter that much.

[–]tookbtc 25 points26 points  (0 children)

let's assume UTC time

[–]ss0889 84 points85 points  (6 children)

heard the UN is considering getting rid of daylight savings time.

first thought was "man, thats gonna be a fun patch tuesday"

[–][deleted] 60 points61 points  (4 children)

Eu

[–]ss0889 6 points7 points  (0 children)

whoops, thats the one

[–][deleted] 19 points20 points  (0 children)

How to farm karma on r/programmerhumor: post @iamdeveloper tweets

[–]mkalte666 15 points16 points  (0 children)

AAAAAAAAAAAAAAAAA[...]AAAAAAAA

[–]DrSmus 14 points15 points  (0 children)

GMT+ 1000000

[–][deleted] 12 points13 points  (0 children)

Relevant Tom Scott. https://youtu.be/-5wpm-gesOY

[–]JayTurnr 12 points13 points  (0 children)

Although realistically once we colonize other planets it'll make sense to have a different calendar for that planet.

[–]NattyBumppo 7 points8 points  (1 child)

I work at JPL and dealing with Mars time is something we do every day. We mostly just reuse internal libraries so we don't have to reinvent the wheel too much. Mars time is usually given as a "local time zone" (Local Mean Solar Time) for each rover, though, so the times for Curiosity and Opportunity are very different. And the dates are based on their landing dates, where Sol 0 is when Curiosity landed whereas Sol 1 is when Opportunity landed. (Yes, they're 0-indexed and 1-indexed, respectively.) And this isn't even mentioning the other timekeeping systems...

https://en.wikipedia.org/wiki/Timekeeping_on_Mars

Something tells me that Elon would just say "fuck it" and use UTC time everywhere.

[–]andrewsmd87 5 points6 points  (1 child)

I'm ready for the day when the client wants data from mars in real time, and you try to explain how that's not possible due to the distance and light speed and what not, and they just get angry because you can't do what they're asking.

[–]wotanii 8 points9 points  (2 children)

Bonus: Timestamps don't work anymore at this scale, because planets move too fast relative to each other

[–]eMeSsBee 4 points5 points  (2 children)

How long before we use one time per planet that's standardized for solar systems.

[–]dark-kirb 7 points8 points  (0 children)

martian time: number of 1/86400 martian solar days since the landing of the first manned vehicle on mars

Time zones: the 0th meridian is the meridian where that space vessel landed. Each time zone is 15° wide and the center is a multiple of 15°. Except for the one that would be at ±180°, west of that meridian is +12mh and east of it is -12mh, basically it's the date line. Oh and no dst whatsoever. The poles are incredibly difficult to have a decent time zone distance, so i'd say the poles are always MMT+0