Gender again. Sorry!

Page may contain affiliate links. Please see terms for details.

icowden

Legendary Member
What you describe as a bug doesn't make sense. What is more likely is inadvertent bias in the programming. This is the more likely cause of the problem.
Do you work in data? I work in software design and database management. The programming would not have been biased. That would be utterly pointless. There will be a mapping and there will likely be something which ensures that no null data can be recorded. That something is probably the reason that if "no title" was selected then line 2 incorrectly got a title. The logic for women is a little more complex than that for men for obvious reasons.

What we can take away from this? That gender markers and titles are unnecessary, since the prevalence of titles is variable with their being an option not to have one anyway, and gender markers are coded so that only those people who read blogs know that they are there.
The reason that gender is captured and coded on the driving license isn't for fun. It will be used for statistical analysis. It may also be used as a way of validating that a driving license is genuine.

Al Gore Rhythms (sorry) can make processing and decisions faster, but they can create unintended bias that has the appearance at least of sexism or racism. See here ...
That article is entirely about highly complex AI training, not logic programming. These are chalk and cheese. Programming is "if this, then that".
I can assure you that the DVLA is not using AI. Government agencies have not progressed beyond bog standard.
 

multitool

Shaman
I see that Lord Coe has just announced that the IOC has banned something that isn't happening anyway.

So pretty much in line with the entire anti-trans "debate".
 

monkers

Guru
Do you work in data? I work in software design and database management. The programming would not have been biased. That would be utterly pointless. There will be a mapping and there will likely be something which ensures that no null data can be recorded. That something is probably the reason that if "no title" was selected then line 2 incorrectly got a title. The logic for women is a little more complex than that for men for obvious reasons.

No I don't work. My other half is a senior developer. She says you are talking nonsense. It's utterly pointless because it serves no purpose. She also says that bias is often present in software, though it is often unintentional, and her work has required her to remove bias from programmes used by public services in the past even those written in code as old as C.

She also says that logic for women is not more complex and demonstrates that you have the kind of bias that she has been employed to remove in the past.

The reason that gender is captured and coded on the driving license isn't for fun. It will be used for statistical analysis. It may also be used as a way of validating that a driving license is genuine.

My other half says that even it is necessary (and her view is that it isn't) for DVLA to hold this data, that still does not support your assertion that it needs to be encoded in the driver number on the card. She worries that you do not understand the proper use of data and the requirements of data protection.

That article is entirely about highly complex AI training, not logic programming. These are chalk and cheese. Programming is "if this, then that".
I can assure you that the DVLA is not using AI. Government agencies have not progressed beyond bog standard.

She just shrugged at this and said, 'whatever'; because the processing is different, it doesn't mean that the requirements for correct data handling and data protection are different. The legal requirements are the same and either system can handle the requirements.
 
Last edited:

matticus

Guru
Do you work in data? I work in software design and database management. The programming would not have been biased. That would be utterly pointless. There will be a mapping and there will likely be something which ensures that no null data can be recorded. That something is probably the reason that if "no title" was selected then line 2 incorrectly got a title. The logic for women is a little more complex than that for men for obvious reasons.

The programmers are human. Therefore they can have bias.
 

icowden

Legendary Member
The programmers are human. Therefore they can have bias.
The programming isn't, therefore it can't. It is just programmed to be logical.
Why would anyone want to program the system to deliberately put in "mrs" if "no title" was selected? It would make no sense.
The system just takes "title" and "first name" and possibly "middle names" and builds them into a string.

The most likely error scenario is that if "title" is null then that will null the whole string as null plus anything is null.
A null first name is not permitted so a default is put in as a fallback.
 

monkers

Guru
The programming isn't, therefore it can't. It is just programmed to be logical.
Why would anyone want to program the system to deliberately put in "mrs" if "no title" was selected? It would make no sense.
The system just takes "title" and "first name" and possibly "middle names" and builds them into a string.

The most likely error scenario is that if "title" is null then that will null the whole string as null plus anything is null.
A null first name is not permitted so a default is put in as a fallback.

How do you 'know' how the programme is written? My guess is you don't. I know nothing about programming, but even I can see the nonsense of this. The driving licence application form has a required field for gender (though the drop down offers binary sex options - isn't that a form of bias?)

How hard would it be for a programmer to write ...

If gender field is *male* leave title field blank, set 7th digit of driver number to *0*

If gender field is *female* fill title field as specified, set 7th digit of driver number to *5*

I don't know how to write that in code (my other half would know), but it's chicken shoot easy logic.

Oh goody other half just home from work. I'll let her explain ...

Firstly almost all my colleagues are male (& cis & hetrosexual & white), & in fact through for my 30 year career its been all men most of time.
Its just right now we have one other female developer (on contract) . I work at a company that at least says it values diversity despite having little. It is very well-documented that this lack of diversity in people writing software leads to biases in computer systems.

Technical nit picking, a string value would never be 'null' - it may be nul (i.e. contains a single character of value 0 & treated as empty), and yes strings of text / characters are stored/processed as strings of numbers. A string value is never "null", only a pointer can be null i.e. contain address 0. Only an idiot / dinosaur would use a null pointer for an empty value because of potential for crashes.

Where a data field is one of multiple choices it would never be stored as a string but as a numeric value (an enumeration).
Title & sex/gender would be two separate independent fields.

But regardless its entirely possible to have different default values dependant on another selected value i.e. male/female setting defaults for titles & likely changing the list of possible titles.

As to why someone would do it that way ? Carelessness is the most likely explanation & its a fair bet the female selection was tested far less.
 
Last edited:

multitool

Shaman

View: https://twitter.com/ICanSeeForever1/status/1639396662287257601?s=20



FsBbuzpaAAAcF24.jpeg.jpg
 

icowden

Legendary Member
How do you 'know' how the programme is written? My guess is you don't.
I don't but I can posit a guess.

How hard would it be for a programmer to write ...
If gender field is *male* leave title field blank, set 7th digit of driver number to *0*
If gender field is *female* fill title field as specified, set 7th digit of driver number to *5*
Not very , but it would be very poor coding and would be in answer to a specific requirement to code it that way, which seems unlikely.

Technical nit picking, a string value would never be 'null' - it may be nul (i.e. contains a single character of value 0 & treated as empty), and yes strings of text / characters are stored/processed as strings of numbers. A string value is never "null", only a pointer can be null i.e. contain address 0. Only an idiot / dinosaur would use a null pointer for an empty value because of potential for crashes.
I presume your partner is working with C or C++ rather than SQL. In SQL a string can be (and often is) null - i.e. contains no data. To be fair, the calculation could be carried out at the application level or at the server level, but the building of the string is more likely to be done by the database server than the front end application.


Where a data field is one of multiple choices it would never be stored as a string but as a numeric value (an enumeration).
Title & sex/gender would be two separate independent fields.
Title, sex and gender are often three separate fields. Title is usually a string and, yes gender and sex would be an integer with a lookup for the description. In the case of DVLA they have a lookup with 9 different options:-

  1. Mr
  2. Mrs
  3. Miss
  4. Female with no prefix e.g. Jane Jones
  5. Male with no prefix e.g. David Jones
  6. Female with a different title to number 2 and 3 e.g. Dr, Lady or Ms
  7. Male with a different title to number 1 e.g. Dr, Rev or Sir
  8. Female without a surname e.g. Lady Clydach or Duchess of Swansea
  9. Male without surname e.g. Lord Pontardawe or Duke of Swansea
This massively overcomplicated and pointless process does suggest to me that coding for it was a pain in the proverbials and that the coding wasn't tested that well. Although to be fair, most testing looks at what is there and checks that it is OK. It's much harder to look for something that isn't there. So you might test to see that the title and forenames are coming out but miss that the forenames are not coming out without a title, just because you have the expectation of a title.

As to why someone would do it that way ? Carelessness is the most likely explanation & its a fair bet the female selection was tested far less.
We agree. I also agree with you that the whole title coding thing is absolutely pointless.
 

monkers

Guru
I don't but I can posit a guess.


Not very , but it would be very poor coding and would be in answer to a specific requirement to code it that way, which seems unlikely.


I presume your partner is working with C or C++ rather than SQL. In SQL a string can be (and often is) null - i.e. contains no data. To be fair, the calculation could be carried out at the application level or at the server level, but the building of the string is more likely to be done by the database server than the front end application.

My partner does not agree with technical observations of this, but doesn't wish to be drawn in further, and as she is not on the site, I don't think it would proper. She has worked in C, C++ and C sharp, and others. She currently does work in SQL which she says is a database and not a programming language. I might not communicate what she rattled off, but if I remember it anything like correctly - the on-line application form will not directly fill the SQL database, but interface through something like Java or maybe C sharp.

It's good that the two of you found agreement at some point, but she would still say that there is scope in the system to create bias.
 
Top Bottom