"The glitch, it turns out, originated with the Pennsylvania Department of Transportation during a transfer of nearly 400,000 records to the Selective Service. A clerk working with the state’s database failed to select the century, producing records for males born between 1993 and 1997 — and for those born a century earlier, PennDOT spokeswoman Jan McKnight said Thursday. ...
The Selective Service didn’t initially catch it because the state used a two-digit code to indicate year of birth, spokesman Pat Schuback said."
So apparently they store their year field as two digits and have a separate field for century, instead of expanding the year field to four digits? Looks like their shoddy programming finally came back to bite them.
Maybe in 2016, when people born in 2000 start applying for drivers licenses, they'll be rejecting them, saying that 116-year-olds are too old to drive safely?
Well see, they wrote all this bank software, and, uh, to save space, they used two digits for the date instead of four. So, like, 98 instead of 1998? Uh, so I go through these thousands of lines of code and, uh... it doesn't really matter. I uh, I don't like my job, and, uh, I don't think I'm gonna go anymore.
The fix isn't particularly ridiculous. Updating an exisiting databases value from an 8 bit to 32 bit integer would have required quite possibly rebuilding the entire database and any software that was bound to getting an 8 bit integer as a return value (For example messages split by length rather than coupled with a label). Which might have been made harder because the hardware costs involved (say for the extra 20 hardrives to store the 20GB of data) would have been much higher than now. Much easier just to create another table that includes century and a foreign key pointing back to the database entry. Not great but it does the job and you can patch over what look like minor visual or selection errors as they pop up rather than dealing with every custom form that relies on the database throwing exceptions that stop workflow altogether.
As embarrassing as this headline is you can at least say the people who were supposed to get the communications did.
Most Y2K issues were not about 8 bits vs. 32 bits, but about storing years as two-character strings. Otherwise we might have seen problems in years like 2028 or 2156.
This story is proof that one cannot "patch over minor [...] errors as they pop up" as you say.
It's getting closer and closer to 2038, the 32-bit time_t overflow... I'd figure by now more bugs would be found with that event than Y2K bugs 14.5 years after the fact.
Right. It's essentially a ceremonial piece of paperwork, dating from a more militarized time (USSR etc) when un-computerized governments didn't have many other ways to keep track of its citizens. Nowadays, no human being really cares if you register anymore, because there's no draft, and if there ever needed to be, they could require registration again and track down the delinquents using computers.
So it'll probably be required forever. Wikipedia says the agency gets $24 million a year.
There are some consequences for not registering (can't get federal government jobs, can't get federal student aid) so it's not quite true that no one cares.
They really do care if you register. If you don't register by 26 and decide to go to college later, you'll lose a significant amount of financial aid offered to independent students. There's no way to register after 26, so you're stuck.
Two odd things about this story 1)That nobody noticed what I have to assume was a significantly larger number of selective service notices for the state of Pennsylvania being sent and 2) That any of them got actually delivered to anyone who could even respond to it. My great-grandfather fits the criteria - born in PA in the late 1800's - but he's been deceased for decades and had at least four separate addresses as an adult - none of which are places where family members live today.
The glitch, it turns out, originated with the Pennsylvania
Department of Transportation during a transfer of nearly
400,000 records to the Selective Service
Gov tech is always fun. I just remember when I had to do it I tried to register sometime late at night (2am-ish?) and was surprised to see that their system had crazy amounts of planned downtime per week. It took a few days before I remembered to do it when it was accepting registrations.
Found wayback link:
It is not operational when system maintenance is scheduled from 2 a.m. to 4 a.m. U.S. Central Time Tuesday through Saturday and from 6 p.m. Wednesday to 2 a.m. Thursday.
At first glance, I'm gobsmacked at the idea of an electronic system that hovers around 90% planned uptime, but then again, of all the services I might wish to demonstrate a total lack of efficiency, the selective service would probably be my first choice.
Even now, to look at the website, it seems like it might be running on some server dating back to covered wagon times. Here's to hoping it stays that way.
Slightly related, but Companies House, the UK's official registry of incorporated businesses, used to close up the database search function on its website every day at, ISTR, 5:30pm, then open it again the next morning. This would have been in the late 90s/early 2000s.
35 comments
[ 2.5 ms ] story [ 108 ms ] threadThe Selective Service didn’t initially catch it because the state used a two-digit code to indicate year of birth, spokesman Pat Schuback said."
So apparently they store their year field as two digits and have a separate field for century, instead of expanding the year field to four digits? Looks like their shoddy programming finally came back to bite them.
Maybe in 2016, when people born in 2000 start applying for drivers licenses, they'll be rejecting them, saying that 116-year-olds are too old to drive safely?
As embarrassing as this headline is you can at least say the people who were supposed to get the communications did.
This story is proof that one cannot "patch over minor [...] errors as they pop up" as you say.
[1]http://www.law.cornell.edu/supremecourt/text/453/57
So it'll probably be required forever. Wikipedia says the agency gets $24 million a year.
http://en.wikipedia.org/wiki/Selective_Service_System
Except no ID is its own problem.
Found wayback link: It is not operational when system maintenance is scheduled from 2 a.m. to 4 a.m. U.S. Central Time Tuesday through Saturday and from 6 p.m. Wednesday to 2 a.m. Thursday.
(https://web.archive.org/web/20011101001831/http://www4.sss.g...)
Even now, to look at the website, it seems like it might be running on some server dating back to covered wagon times. Here's to hoping it stays that way.