3 comments

  • danso 1823 days ago
    Related thread from 10 months ago, about a MSDN article titled "The Japanese Calendar’s Y2K Moment"

    https://news.ycombinator.com/item?id=17430085

    From the MSDN article:

    > The Japanese Calendar has Japanese Era Names that coincide with the reign of the Emperor. For most of the modern age of computing that has been the Heisei era, however the Emperor is expected to step down on April 30, 2019. Which will bring about the beginning of a new era. Fortunately, this is a rare event, however it means that most software has not been tested to ensure that it will behave with an additional era.

    > The magnitude of this event on computing systems using the Japanese Calendar may be similar to the Y2K event with the Gregorian Calendar. For the Y2K event, there was world-wide recognition of the upcoming change, resulting in governments and software vendors beginning to work on solutions for that problem several years before 1 Jan 2000. Even with that preparation many organizations encountered problems due to the millennial transition.

    I swear there was an HN thread about a language-specific implementation (Java? Ruby?) of calendar, which included having to deal with the Japanese epoch change.

    • PeterisP 1823 days ago
      A big issue is that people couldn't finalize any changes until the new era name had been decided and announced, which happened just a few weeks ago on April 1.

      For things like Y2K, you could have done your deployment and testing long before it happened - for this change, everyone has just this one month to wait for any vendors involved to finalize, test and distribute their updates so that they can start deploying them on their own systems. No programming language or calendar library version older than March 31, 2019 could include proper support for Japanese dates of May.

      • danso 1823 days ago
        > A big issue is that people couldn't finalize any changes until the new era name had been decided and announced, which happened just a few weeks ago on April 1.

        Yeah, I was wondering about this line in the article:

        > Officials compounded the problem by keeping the new era’s name secret until April 1, just one month before the transition.

        Is there any reason, specific to Japanese tradition/convention/bureaucracy to keep the name of the era secret until one month before the actual change? When is the era name actually decided on, and how soon after the abdication of the current emperor?

        • kryptiskt 1822 days ago
          The era name was decided by the government a couple of weeks before the announcement. Announcing a month in advance was a concession, conservative politicians wanted it like it always has been done, that the name is revealed at the start of the era.
          • SiVal 1822 days ago
            I had to deal with the previous transition, and that one was going to be the result of the death of the emperor. Therefore, software was not allowed to include any provision for transition to a new date system, because doing so would imply that the emperor might die someday, which was strictly forbidden. I don't know whether it was an actual law, but there was zero tolerance for including any provision for changing the Showa date system.

            As a foreign (non-Japanese) company, we just used the western-style date almost everywhere except for published documents to skirt this problem. Doing the wrong Japanese thing would have earned us serious hostility from the Japanese business press, but foreigners doing dates the foreign way would tolerated as mere foreignness.

        • jpatokal 1822 days ago
          The one month period was already a major concession by traditionalists: historically, the era name was announced the day it started.

          Then again, this transition is also highly unusual because the emperor abdicated, allowing time to prepare. It's the first time in the modern era that this happened, as all previous (recent) emperors have died on the throne.

        • ken 1822 days ago
          Does the announcement of a Pope have any advance notice at all?

          From the other perspective, the only unique part about Japan is that they use a name for the calendar.

          • danso 1822 days ago
            The Pope is conducted by secret election, and the candidates can be virtually any one who is a baptized Catholic man. I was under the impression that Japan's emperor has a line of succession? And which world governments (besides Vatican City) base how their bureaucratic system enumerates dates on the naming of the Pope?
        • alexmlamb2 1822 days ago
          "Is there any reason, specific to Japanese tradition/convention/bureaucracy to keep the name of the era secret until one month before the actual change?"

          Yes.

      • viraptor 1822 days ago
        > No programming language or calendar library version older than March 31, 2019 could include proper support for Japanese dates of May.

        I don't think that's correct. The same way we handle timezone updates via external data source in most languages/libraries, we don't need to update the language itself to handle the new era. This could be done by preparing the code to handle changes and then publishing just the common database update which includes a new "(date) (era)" entry.

      • thaumasiotes 1822 days ago
        > A big issue is that people couldn't finalize any changes until the new era name had been decided and announced, which happened just a few weeks ago on April 1.

        How many different ways were dates marked "Heisei" displayed? I suspect it would actually be easy to finalize changes using a placeholder string, and just update to the actual era name when it was announced.

        • PeterisP 1822 days ago
          Deploying a one-character change is still a deployment that requires effort and time to do and verify - ensuring that every system that you run, and every library that those systems depend on, and every library those libraries depend on have done and deployed that one-character change.
          • thaumasiotes 1822 days ago
            You think a one-character change is such a major project that there's just no way to get it done inside of a month?

            Because every other part of the change can be implemented without reference to what the era name happens to be.

        • massivecali 1822 days ago
          How do placeholders work in languages where you are forced to assign lengths to variables?
          • maxnoe 1822 days ago
            Not a Problem in this case, the era is always a single character, a newly formed ligature of two kanjis.

            The code point was already reserved in unicode 11.0, so you could even just the unicode code point.

            • kevin_thibedeau 1822 days ago
              The real world is not so perfect. I never see Heisei or Showa, or earlier reigns as a single character. The Japanese are also not fully onboard with Unicode so there's an extra level of effort needed if you want to get into a normalized form.
              • thaumasiotes 1822 days ago
                For this specific question, I strongly suspect that whatever the length of your Heisei string is, it's safe to assume that the new era string will be the same length.
              • massivecali 1822 days ago
                >The real world is not so perfect. Perfect summation. Curious how this will also impact other consumers of Japanese data.
            • dialogbox 1822 days ago
              Then it looks even harder. How do we handle it if our system doesn't support Unicode 11.0? Is platform upgrade only option?
        • titanix2 1822 days ago
          At lot of forms allow choosing between Shôwa and Heisei, sometime Taishô too. In this case it means adding a third option (Reiwa) which is what is complex for computerized systems.
    • FanaHOVA 1823 days ago
      Ruby 2.6.3 added support for the Japanese new era last week. You can see the ruby-lang thread here [0].

      [0] https://bugs.ruby-lang.org/issues/15742

      • ChrisArchitect 1822 days ago
        a good digital example of the last minute waiting til the name had been announced -- this issue only submitted on april 1
    • james_s_tayler 1822 days ago
      Yeah, probably Java. Here's the relevant info.

      https://blogs.oracle.com/java-platform-group/a-new-japanese-...

    • Kinnard 1822 days ago
      So they don't use unix time?
  • gpvos 1823 days ago
    There will also be a new Unicode character: http://blog.unicode.org/2018/09/new-japanese-era.html
    • ChrisArchitect 1822 days ago
      interesting - extraordinary measures needed where possible to plan ahead to help with the crazy rush imposed because they don't release name until April 1st. Reserving an empty space for the new chars and then a quick patch right after the announcement
    • Grue3 1822 days ago
      Which is completely useless. I haven't ever seen "Heisei" written as one character.
  • localhostdotdev 1822 days ago
    the issue is that the name of the new era was unknown until ~2 weeks ago as far as I can tell

    https://bugs.ruby-lang.org/issues/15195

    https://bugs.ruby-lang.org/issues/15742