Epochalypse

2023-01-073:14403164epochalypse.today

A countdown to the end of 32-bit unix time

The signed 32-bit integer that is commonly used to keep unix epoch time has already exhausted of all possible values.

Only days ( years) until it's finally 20:45:52 UTC on 13 December 1901 again!


Read the original article

Comments

  • By shagie 2023-01-075:083 reply

    My favorite instance of the epoch showing up in sci-fi is A Deepness in the Sky.

    > Take the Traders’ method of timekeeping. The frame corrections were incredibly complex—and down at the very bottom of it was a little program that ran a counter. Second by second, the Qeng Ho counted from the instant that a human had first set foot on Old Earth’s moon. But if you looked at it still more closely…the starting instant was actually about fifteen million seconds later, the 0-second of one of Humankind’s first computer operating systems.

    • By dmd 2023-01-0713:23

      As long as we're discussing Vinge, here is Vinge's annotated version of A Fire Upon the Deep, with all his thoughts, alternate plot ideas, and discussions with reviewers and early readers:

      https://3e.org/vvannot/

      There are very few copies of this out there and it would probably be good if it were more widely mirrored.

    • By block_dagger 2023-01-075:281 reply

      Vinge's ideas about galactic organization (Powers, breakdown of automation near center) are very original and make enjoyable scifi.

      • By pyinstallwoes 2023-01-0710:092 reply

        Can you expand in summary?

        • By flir 2023-01-0710:391 reply

          I think it's reasonable to give mild spoilers for a 30(!) year old book:

          Maximum possible intelligence is a function of the speed of light. The speed of light is a local constant, not a universal one, and is a function of the amount of mass in the local area (maybe).

          Thus, if you dive towards the core of the galaxy you get dumber, but if you head up and out you have the potential to get smarter. The reason we haven't all been eaten by the Borg is that, two thirds from the centre of the galaxy, the universe only supports boring, mundane, human-level intelligence, and everyone wants to get up and out, to where they can become Sufficiently Advanced.

          Sidenote: Sufficiently Advanced intelligences don't seem to hang around for long, and nobody down here is quite sure what happens to them when they stop communicating.

          Marooned in Realtime is almost as good as the first two Zones of Thought novels, IMO: what if time travel, but only forwards?

          • By KineticLensman 2023-01-0713:511 reply

            > what if time travel, but only forwards?

            Just to expand on that a bit (also teasers for an almost 40 year old novel).

            They don't have time machines as such, but instead indestructible stasis fields ('bobbles') in which time stands still. These are initially thought to persist infinitely, but early in the first novel ('The Peace War') it becomes apparent (in 2048) that the bobbles eventually pop releasing whatever is inside them back into real time. This causes problems for the baddies who control bobble technology and have long been using bobbles as way of imprisoning their enemies.

            In the follow-up novel, Marooned in Real Time, various characters who have been bobbled for various reasons travel to the far future of the Earth, long after an apparent singularity has left the planet almost devoid of human life, and witnessing changes to the planet on geological timescales. The bobbles are now a pervasive technology used in a whole range of applications (from solar mining to deep space combat), which Vinge has fun exploring.

        • By PicassoCTs 2023-01-0710:301 reply

          His slow zone traders are the only constant in civilization. Meaning, planets are unreliable destinations. You set out to trade and arrive at a medieval kingdom 500 years after a nuclear apocalypse. You set out for a meh-destination and find upon arrival a high tech civilization, that is so integrated its even eaten up the error margins, due to thinking itself infallible.

          The only constant is the traders, reviving and stabilizing societies, which its why information exchange without a known listener (basically a Wikipedia radio edition) is most important for keeping a slower then light traveling galactic civilization alive.

          He also has some quibs about how society is basically a attempt to overcome the flaws of the individuals psyche comprising it. That and murder AI.

          He tried to explore AR in Rainbows end, but it was insubstantial. Another great man ruined by california..

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

          • By e40 2023-01-0710:373 reply

            I followed everything you said until the California comment. Please explain.

            • By ravel-bar-foo 2023-01-0717:49

              Author known for highly imaginitive galaxy-spanning settings writes a novel about AR and a down-on-his-luck poet on a UC campus. (IIRC!) The story is good, but it is a book about California in the proximate future as imagined from the 2010s and so it doesn't feel as timeless as the spacefaring universes of his other work.

            • By Shorel 2023-01-0711:13

              I think that's just the setting of the novel, but not the plot.

              The plot of Rainbows end is more about... this would be a spoiler.

            • By 867-5309 2023-01-0714:02

              I think it refers to the curse of celebritydom

    • By aaron_m04 2023-01-075:141 reply

      Good stuff. I also like this author for coining the term software-archaeologist.

      • By buildbot 2023-01-078:221 reply

        One if my favorite terms as well - extremely evocative

        • By dylan604 2023-01-0718:512 reply

          I'm immediately imagining the steam punk style devices that future software archaeologists will use to read things like CD-ROMs

          • By shagie 2023-01-0723:391 reply

            Consider more of: here is a BSLOC 'application' find a routine that does X and make it do X'.

            Continuing from the quoted passage above...

            > So behind all the top-level interfaces was layer under layer of support. Some of that software had been designed for wildly different situations. Every so often, the inconsistencies caused fatal accidents. Despite the romance of spaceflight, the most common accidents were simply caused by ancient, misused programs finally getting their revenge.

            > “We should rewrite it all,” said Pham.

            > “It’s been done,” said Sura, not looking up. She was preparing to go off-Watch, and had spent the last four days trying to root a problem out of the coldsleep automation.

            > “It’s been tried,” corrected Bret, just back from the freezers. “But even the top levels of fleet system code are enormous. You and a thousand of your friends would have to work for a century or so to reproduce it.” Trinli grinned evilly. “And guess what—even if you did, by the time you finished, you’d have your own set of inconsistencies. And you still wouldn’t be consistent with all the applications that might be needed now and then.”

            > “Sura gave up on her debugging for the moment. “The word for all this is ‘mature programming environment.’ Basically, when hardware performance has been pushed to its final limit, and programmmers have had several centuries to code, you reach a point where there is far more signicant code than can be rationalized. The best you can do is understand the overall layering, and know how to search for the oddball tool that may come in handy—take the situation I have here.” She waved at the dependency chart she had been working on. “We are low on working fluid for the coffins. Like a million other things, there was none for sale on dear old Canberra. Well, the obvious thing is to move the coffins near the aft hull, and cool by direct radiation. We don’t have the proper equipment to support this—so lately, I’ve been doing my share of archeology. It seems that five hundred years ago, a similar thing happened after an in-system war at Torma. They hacked together a temperature maintenance package that is precisely what we need.”

            > “Almost precisely.” Bret was grinning again. “With some minor revisions.”

            • By dylan604 2023-01-085:43

              Sure, but...how did they get this old software to be able to view it? At some point, that software is not going to be in whatever the equivalent of GitHub is, and the only version of it is on this ancient storage format that the silly people of 2000s used called a "d'elle tea".

          • By thaeli 2023-01-093:00

            Probably more like the floppy disk imagers we use today in preservation, that preserve far more information than the nominal disk size. (This is particularly important because the golden age of floppy-based copy protection used all manner of weird tricks, so the analog state of the media is important - not just the "official" binary data.)

  • By danielodievich 2023-01-076:091 reply

    I am a 3rd generation programmer, my grandmother programmed with punch cards, my father on mainframes, I do things now, and my child looks to be a 4th one. When we came here my father brushed off his COBOL skills during Y2K stuff and made some excellent money working at some hospital chain fixing things. Right before New Year 2000 I ask him half in jest - "so hey, should I be sick on New Year"? He looks at me, smiles, and says "you can, but not too sick, ok?".

    I am wondering if I'd be recompiling int32 to int64 out of systems and changing database datatypes in 10+ years and answering similar questions from my kids

    • By panzi 2023-01-076:522 reply

      I think any somewhat actively maintained software should be fixed by now, except devices that aren't seen as computers by the users and don't even have update mechanisms. And old COBOL programs running on some bank's mainframe, of course. Did your dad teach you COBOL?

      • By bluesmoon 2023-01-077:461 reply

        COBOL programs will be fine. They use 4 characters just for the year since it's stored as the decimal characters. I was trained in COBOL in the late 90s to work on Y2K migrations. It's done this way so that COBOL programs stored on punched cards are readable (also why COBOL has its line-length limitations).

        • By __d 2023-01-077:53

          Except for the programs where it was too hard to change to 4 digit years, and we just shifted the epoch ...

      • By danielodievich 2023-01-0718:48

        No, I never learned COBOL. I learn some programming from him when I was like 7 or 8, some language one would never have heard of called FOCAL https://en.wikipedia.org/wiki/FOCAL_(programming_language) which was ripped off from DEC by the soviets for their little BK-0010 https://tvtropes.org/pmwiki/pmwiki.php/UsefulNotes/BK0010 and which I mostly used to play games loaded from tapes. Mostly I just really liked computers, just like him. He didn't stick with mainframe programming after the Y2K passed, I think he could have continued but he was bored...

  • By mholt 2023-01-074:355 reply

    Yesterday while writing code to parse MP4 metadata, I learned that MP4 uses an epoch from the year 1904. (I was suspicious when I saw the timestamp start with a 3).

    Turns out there's lots of epochs, and the Unix epoch doesn't have any "rationale" according to Wikipedia: https://en.wikipedia.org/wiki/Epoch_(computing)#Notable_epoc...

    For example, Ingenuity helicopter counts from 2000.

    • By chungy 2023-01-074:431 reply

      Early versions of Unix moved the epoch quite frequently between various dates in the 1960s and 1970s. Version 6 finally "settled" it on 1970 and everyone has just gone with that ever since.

      It's somewhat arbitrary, but by making it a signed integer, Dennis Ritchie figured it was good enough to represent dates spanning his entire life time. He probably thought Unix's life time would be significantly shorter rather than outliving him.

    • By aidenn0 2023-01-075:122 reply

      Lotus 1-2-3 used an epoch from 1900-01-01, but it had a bug where it considered all years divisible by 4 to be leap years.

      When Excel came around, it needed to be compatible with 1-2-3, so it used the same date format, and to be compatible it considers 1900 to be a leap year.

    • By bluesmoon 2023-01-077:481 reply

      Perl counts from 1900, so the year 2000 was actually stored as 100. You'd get 2 digit years in the 1990s and suddenly 3 digit years after 2000. The solution was to arithmetically add 1900 to the year before rendering. Newer perl functions would handle that internally.

      • By shagie 2023-01-0717:42

        That's a direct translation of struct_tm from time.h.

             External declarations, as well as the tm structure definition, are
             contained in the <time.h> include file.  The tm structure includes at
             least the following fields:
        
                   int tm_sec;     /∗ seconds (0 - 60) ∗/
                   int tm_min;     /∗ minutes (0 - 59) ∗/
                   int tm_hour;    /∗ hours (0 - 23) ∗/
                   int tm_mday;    /∗ day of month (1 - 31) ∗/
                   int tm_mon;     /∗ month of year (0 - 11) ∗/
                   int tm_year;    /∗ year - 1900 ∗/
                   int tm_wday;    /∗ day of week (Sunday = 0) ∗/
                   int tm_yday;    /∗ day of year (0 - 365) ∗/
                   int tm_isdst;   /∗ is summer time in effect? ∗/
                   char ∗tm_zone;  /∗ abbreviation of timezone name ∗/
                   long tm_gmtoff; /∗ offset from UTC in seconds ∗/
        
        You'll note that tm_year is years since 1900.

        While working support at SGI in the late 90s, got a number of support tickets (there was a woman who worked for a government department (NASA?) who was very good at finding them in doing their y2k checks) about dates showing up as `20100`.

    • By roflyear 2023-01-076:032 reply

      Why does year 0000 have any rational? :)

      • By astrobe_ 2023-01-079:291 reply

        Speaking of, when I think about it, it's amazing we've been keeping track days and years exactly for all this time (about 4000 years), with different calendar systems between civilizations. I guess astronomic event records (supernovae, comets, eclipses,...) serve as benchmarks so we can reconstruct relatively accurate timelines (the event you indirectly refer to has some uncertainty) from this cacophony.

        • By Archelaos 2023-01-079:51

          When it comes to years, the most accurate unbroken timelines are based on tree rings (and similar, such as annual layers of sediments). The longest, the Hohenheim Tree Ring Timeline (Central European pine) goes back to 10,461 BC, and researchers hope to extend it another 2,000 years back.

      • By tiagod 2023-01-0711:061 reply

        Interestingly, there is no year 0

        • By technothrasher 2023-01-0713:05

          in the Gregorian calendar. Some other calendar systems do have a year zero. ISO 8601 (the time/data standard) does include a year zero, which maps to 1 BC.

    • By radicalbyte 2023-01-0711:17

      This is one of the reasons why you shouldn't use an int32 to represent dates/date-time in text-based APIs unless you have a very good reason to (and I'd argue that you shouldn't be using a text-based API in many of those cases).

HackerNews