Most everyone reading this is familiar with the Y2K crisis where lots of computer systems simply weren’t going to work after December 31, 1999. Many conspiracy theorists believe it was a scam to earn more money and that there never was a crisis. The theorists are wrong. IT workers put in millions and millions of hours fixing things incompetent management was too greedy to fix. They were all too busy laying off workers they needed trying to cash in on an honest to God criminal scam called “Rightsizing” and sometimes “Right Sizing.” That was and still is a financial fraud of biblical proportions where many pushing it should have went to prison just like the heads of banks whose deliberate criminal activity gave us “The Great Recession.”
Well, we have a new IT crisis looming. We all knew about these past and upcoming date problems. Management has been ignoring them for years if not decades. What we didn’t see coming was Gender Fluid.
To some of you this is just a distant brew-ha-ha over who can use what bathroom, but it is a whole lot more than that. I don’t care who is right and wrong. What I care about is the fact some states have allowed people to choose genders other than male or female on their driver’s license. Every company doing business with anyone in that state in such a way as to require driver’s license gender information now has to hack their system.
Worse yet, as other states start approving such measures you can be certain there will be less than zero consistency in values. Just wait for some nincompoop to decide female should now be “E” and fluid “F.” This is being done via committee folks so it will happen.
For COBOL programmers with extensive copylibs this won’t be much of a problem. COBOL never had the concept of a boolean, or at least it didn’t in the early standards versions. All you had was PIC X or 9 and a bunch of 88 levels.
05 GENDER-FLAG PIC X. 88 GENDER-MALE VALUE 'M'. 88 GENDER-FEMALE VALUE 'F'.
You poor bastards using a database though. How many of you have that stored in a boolean column? How many stored procedures are you going to have to try and find both in production and development? Not just in the database, but where they are actually called, tracking back to fix every data type along the way?
You poor bastards using BASIC, FORTRAN or some other language where some fool decided bit-flags should be used to store boolean values. That’s all over your system. You cannot even hope to search by name through the code because not everyone will have used the named mask.
You poor bastards doing screen and forms design. How many of you have something which looks like this:
scattered all over the place? The old “green screens” most likely have a single underlined input character which needs a validation fix, you have to redesign and then someone has to code all of that.
Oh, you XML geeks didn’t escape this one either. Did you create validation rules? Gotta go find all of those now. Too bad there are old copies of that shit laying around every place your firm ever sent data to and it could come back in at any point in time with the validation schema at the top, most likely bypassing your internal validation rules, at least until you completely change message handling.
At this point in our culture there is no way to avoid The Gender Fluid IT Crisis. Even if the states which have already allowed changes for driver’s license were to reverse their decision tomorrow, historical record keeping/archival use requires our systems support it.
The real question now is will we get a Federal standard or will we eat it 50+ times as each state rolls this out just slightly different that other states and then some states go back and “revise” their rules. Y2K wasn’t anywhere near the train wreck this crisis is. Dealing with historical 2 digit years was easy. Dealing with a continually changing list of valid values based on a standards date makes handling/viewing historical a real PITA. For a single state we face allowable value lists like this:
Standard date | Allowable list |
Prior to June 2017 | M, F |
June 2017 – July 2018 | M, F, U |
July 2018 – August 2020 | M, T, L, F |
You get the picture. When we start having to consider the driver’s license date lots of forms will have to start including both the driver’s license number and date. I’m thinking along the lines of medical forms and job applications where they ask for that Equal Opportunity information. The driver’s license number was/is typically on the background check form, not the primary application, especially when the job application is on-line.
Oh yeah, you didn’t think about that did you. Even if you have some “make it local” company and don’t do any business with these states, your on-line job application form has to be changed now. If someone sees your add from one of these states and the add directs them to your application screen, you could find yourself in a discrimination lawsuit because your form wouldn’t let them enter their gender.
Hopefully the people are a bit more understanding. States just started issuing these licenses and nothing else around the country has had time to get fixed. Most CEOs and IT directors probably didn’t think about fixing their on-line application system until they read this post.