- cross-posted to:
- technology@lemmy.zip
- cross-posted to:
- technology@lemmy.zip
Self-pay gas station pumps break across NZ as software can’t handle Leap Day::“We’ll add it to our Outlook reminders…”
It was millennia ago when I first read “don’t ship your own date/time library”. Guess these fellas somehow missed it.
(I did this thing a while ago, but hopefully it doesn’t count since it’s a joke library)
A decade ago Tom Scott was recorded for Computerphile with this hilarious an enlightening cautionary tale. Never, ever, write your own calendar code.
That was excellent, thank you.
Here is an alternative Piped link(s):
https://piped.video/-5wpm-gesOY
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.
Does your September library break on leap Septembers?
I honestly have no idea, it’s been a while since I wrote it.
And THAT’S why you don’t roll your own datetime class/column format. It’s a solved problem, people!
Hahah, this reminds me of that time (long ago) when a very old version of our software would also simply crash when attempting to use it on a leap day. When customers called in, all we could do was tell them to wait until tomorrow, and that the problem wouldn’t return for at least another four years.
Y2K finally happened.
kiWi2K
Someone forgot a case in their test suite.
I can’t imagine what logic would’ve hinged on February having 28 days. It’s not like 29 exceeds some maximum value for days in a month. Probably someone thought it was a good idea to write their own date-time library.
Next = (year+1, month, day)
Days you should book off as a developer:
Feb 29th. Clocks go forward day. Clocks go back day.
If you’ve done anything with dates or scheduling, these days will fuck it.
Jokes on you if you wrote the timeoff system
Did they not have automatic pumps 4 years ago?
This was one company, with only their NZ code affected. It’d be astonishing if all the pumps in NZ were still using the same code as four years ago. And not at all astonishing that coders are still making careless errors to do with dates.
As a new programmer who actively treads carefully in date-data-dabbling territories it is amusing to see how shit commercially available code is, especially in the e-commerce world.
I started my first programming job 2 years ago working with building Magento 2 sites. I already knew Magento was a horrible mess to begin with, but I took whatever I could get. After witnessing the publishers, developers and code of 99% of the plugins available (which is btw quality certified on Adobes marketplace) I can safely say that there is so much shit code squirted out every second be self-taught developers working in shitty small companies with CEOs trying to earn a quick buck.
It is actually insane how bad the code was, I can not with words describe how bad it was. Every time I felt impostor syndrome i would just open up vendor and look at a random plugin to confirm that I am at least not a Magento plugin developer.
If you’re running Magento, change, preferably 10 years ago, but change.
It’d be astonishing if all the pumps in NZ were still using the same code as four years ago.
You put far too much confidence in software teams.
deleted by creator
Y29
D29
That’s one ticket they won’t need to mark as urgent
Classic…
The same happened at a grocery chain in my country. Not all of their stores stopped working but a lot of them.
The pay new terminals apparently didn’t like leap days.
You could apparently still pay by app at the stores that supported it though.
More falsehoods programmers believe about time; “wisdom of the crowd” edition
an updated and extended version of the original
This is the best summary I could come up with:
The outage affected suppliers, including Allied Petroleum, BP, Gull, Waitomo, and Z Energy, and has reportedly been fixed.
The gas pump breakdown sent stakeholders into a frenzy as they tried to resolve the problem caused by software being unequipped to process the bonus day.
John Scott, the CEO of Invenco Group, the provider of the self-payment terminals that malfunctioned, confirmed to Reuters that a “leap year glitch” caused the problem.
Worldline claimed that all non-Invenco terminals using its technology continued to work during the outage, per Otago Daily Times.
While some gas stations were still able to accept other forms of payments, those that relied on the broken terminals found themselves missing out on business.
As the companies involved work to issue apologies—and, in some cases, discounts—to make up for the inconvenience, there’s hope that the scale and embarrassment associated with the outage will help prevent similar events.
The original article contains 410 words, the summary contains 148 words. Saved 64%. I’m a bot and I’m open source!