(I suggest reading the whole sequence before deciding what you want to do about it.)
The basic issue
New updates to LJ code are posted to the
changelog community. A recent addition would have forced new users to pick a gender (male or female, no 'unspecified' option as currently available.) and a subsequent commit would have forced a choice of male or female if the user profile were edited at a later date. They've pulled the code for now, but there's more worth talking about - namely how code gets pushed live in the first place, and a particular aspect of the response from LJ's US general manager.
[I am assuming that my reading list gets why forcing binary gender is Not Cool, and why I think it's a damn stupid move, even though I personally am perfectly comfortable self-IDing as female without me going into that bit, right?]
synecdochic has a lengthy post about the basics here: http://synecdochic.dreamwidth.org/366609.html and
elf has linkspam at http://elf.dreamwidth.org/288498.html .
There's fairly good reason to believe that the motivation for this change is better advertising targetting - obviously, not easy to prove, but it's about the only logical motivation for making this particular kind of change in this particular way.
Where does new code come from?
(I welcome additional notes/correction on this in comments because so not a coder.)
- There's a decision to create a new bit of code. This might come from a suggestion post, it might be a bug fix, it might be a decision from someone in the site heirarchy to add a feature or change. Generally, this involves an entry in Bugzilla, which is used for tracking these things, and who's working on them.
- Someone writes the code.
I am told by someone with reason to know that while these two steps of the process used to be a lot more public/transparent on LJ, it is now much more private: there's no public bugzilla, code submission, or review process outside of paid staff.
- Code is pushed to the repository (basically a working clone of the existing code with the new changes), which automatically makes an entry in the changelog community.
- People can comment on the changelog post with queries/concerns/etc.
- Assuming nothing breaks or the code is not rolled back, code is made live on LJ in a subsequent code push. In other words, anything that appears on changelog is very likely (and intended) to go live, it's not just "Hey, we might maybe like this code some day." or "Hey, let's play with this thing."
Code does not write itself
As is obvious from the above, someone has to a) decide the code needs to be written and b) actually write it. (These are, generally, two different people.)
Likewise, as noted in
zvi's comment on
synecdochic's post over here, "
Still, you do not write error messages that say "You need to specify a gender" by accident."
Yeah. That.
So, someone decided to write this code, someone decided to force a binary gender requirement (removing, in fact, functionality currently present in the code), and this code was pushed to testing. All of those involve some deliberate decisions in there, by people.
It's also worth noting that there are previous promises out there that LJ would continue to maintain the Unspecified option. (see this post from 2006)
An actual TOS issue
In addition to the idea that people should be able to determine their own identification, etc., there's also another slight glitch with forcing a binary answer: as noted by
elf over here
"During registration, all users are required to provide accurate, complete and current information about themselves in all required fields....Should LiveJournal suspect that your personal information is not complete, current, or accurate, your account may be subject to suspension or termination"
Responses from LJ's US General manager
This is the one that actually irritates me about as much as the actual code change, which is saying something.
synecdochic notes the answer she got back in her post, but the subsequent answers other people have gotten back include an interesting additional line.
Now, pause a moment, and look at the date stamp on that changelog entry. One would presume that someone on the LJ side was reviewing these posts to make sure the code was, in fact, worth adding to the server. Note that the post was made on 12/10. Note that the first comments are on 12/14, *after*
synecdochic and various others started boosting signal on this. In other words, no one from LJ actually looked at this and rolled it back during that time.
There's also the fact that Anjelika's response to people other than
synecdochic has been including the statements:
"We were going to add a gender field to the sign up user flow, which is fine, but by mistake it became a mandatory "female/male" field for everyone. This is why this is not going live. And this is what beta releases are for, to see problems and solve them before any user faces a problem.
I would appreciate if you share this information with your friends that are also concerned. I am sorry that you were misinformed."
(from various posts, but you can see a range of comments on page 5 of the much referenced post.)
Now, let's look at this for a moment. These statements presume:
- that people can't read what code is supposed to do for themselves. I am not a coder, but I can read enough to recognise a) binary code choice being forced and b) an error message that indicates you have to choose (as opposed to just not answering that question.)
- are being lead astray by someone without reviewing it for themselves
- and that code designed to add a (mandatory) gender field to the sign up user flow can't actually manage to provide the options already in the code (and readily available for anyone who's designing the code to review as currently in use.)
Personally, that reads a lot to me like backpedaling on an unpopular action by throwing blame, and I am not fond of that particular move to cover a bad decision in the first place (and I think it's lousy customer service). I'm particularly unfond of the implication that the person passing on accurate information about the process is misinformed.
Either that, or *really* poor code-review practices are in place, and are not being addressed well. Which is a whole other problem in the first place, and suggests Dire Things in the long-term, especially given that the LJ codebase is large, clunky, and sometimes held together by chewing gum and string in places, so that badly planned changes could have particularly complex ripple effects.
Me, myself, and I
I've been an early and active supporter of Dreamwidth as a project in large part because I strongly prefer to invest most of my time and money in a site that's got as open and transparent a management process as possible. In contrast to LJ, proposed code changes are accessible to the public on DW, and there are regular and frequent requests for feedback on any significant new feature or change (and explanations of their eventual decision, whatever it is.)
I've got a permanent account on LJ through volunteer work (in other words, I'm spending money on my DW account rather than just using LJ), and I'm unlikely to ever totally abandon LJ. (And I don't see ads, so targetting data to me doesn't make a difference to me personally.) But things like this make sticking around a harder and harder decision. I want to hang out in places that respect their users, y'know? Or that have a clue about code design and review. In this case, one of those two is a major failure, and they're both pretty serious ones.
I have DW invite codes for anyone else who'd like to check it out.
The basic issue
New updates to LJ code are posted to the
[I am assuming that my reading list gets why forcing binary gender is Not Cool, and why I think it's a damn stupid move, even though I personally am perfectly comfortable self-IDing as female without me going into that bit, right?]
There's fairly good reason to believe that the motivation for this change is better advertising targetting - obviously, not easy to prove, but it's about the only logical motivation for making this particular kind of change in this particular way.
Where does new code come from?
(I welcome additional notes/correction on this in comments because so not a coder.)
- There's a decision to create a new bit of code. This might come from a suggestion post, it might be a bug fix, it might be a decision from someone in the site heirarchy to add a feature or change. Generally, this involves an entry in Bugzilla, which is used for tracking these things, and who's working on them.
- Someone writes the code.
I am told by someone with reason to know that while these two steps of the process used to be a lot more public/transparent on LJ, it is now much more private: there's no public bugzilla, code submission, or review process outside of paid staff.
- Code is pushed to the repository (basically a working clone of the existing code with the new changes), which automatically makes an entry in the changelog community.
- People can comment on the changelog post with queries/concerns/etc.
- Assuming nothing breaks or the code is not rolled back, code is made live on LJ in a subsequent code push. In other words, anything that appears on changelog is very likely (and intended) to go live, it's not just "Hey, we might maybe like this code some day." or "Hey, let's play with this thing."
Code does not write itself
As is obvious from the above, someone has to a) decide the code needs to be written and b) actually write it. (These are, generally, two different people.)
Likewise, as noted in
Still, you do not write error messages that say "You need to specify a gender" by accident."
Yeah. That.
So, someone decided to write this code, someone decided to force a binary gender requirement (removing, in fact, functionality currently present in the code), and this code was pushed to testing. All of those involve some deliberate decisions in there, by people.
It's also worth noting that there are previous promises out there that LJ would continue to maintain the Unspecified option. (see this post from 2006)
An actual TOS issue
In addition to the idea that people should be able to determine their own identification, etc., there's also another slight glitch with forcing a binary answer: as noted by
"During registration, all users are required to provide accurate, complete and current information about themselves in all required fields....Should LiveJournal suspect that your personal information is not complete, current, or accurate, your account may be subject to suspension or termination"
Responses from LJ's US General manager
This is the one that actually irritates me about as much as the actual code change, which is saying something.
Now, pause a moment, and look at the date stamp on that changelog entry. One would presume that someone on the LJ side was reviewing these posts to make sure the code was, in fact, worth adding to the server. Note that the post was made on 12/10. Note that the first comments are on 12/14, *after*
There's also the fact that Anjelika's response to people other than
"We were going to add a gender field to the sign up user flow, which is fine, but by mistake it became a mandatory "female/male" field for everyone. This is why this is not going live. And this is what beta releases are for, to see problems and solve them before any user faces a problem.
I would appreciate if you share this information with your friends that are also concerned. I am sorry that you were misinformed."
(from various posts, but you can see a range of comments on page 5 of the much referenced post.)
Now, let's look at this for a moment. These statements presume:
- that people can't read what code is supposed to do for themselves. I am not a coder, but I can read enough to recognise a) binary code choice being forced and b) an error message that indicates you have to choose (as opposed to just not answering that question.)
- are being lead astray by someone without reviewing it for themselves
- and that code designed to add a (mandatory) gender field to the sign up user flow can't actually manage to provide the options already in the code (and readily available for anyone who's designing the code to review as currently in use.)
Personally, that reads a lot to me like backpedaling on an unpopular action by throwing blame, and I am not fond of that particular move to cover a bad decision in the first place (and I think it's lousy customer service). I'm particularly unfond of the implication that the person passing on accurate information about the process is misinformed.
Either that, or *really* poor code-review practices are in place, and are not being addressed well. Which is a whole other problem in the first place, and suggests Dire Things in the long-term, especially given that the LJ codebase is large, clunky, and sometimes held together by chewing gum and string in places, so that badly planned changes could have particularly complex ripple effects.
Me, myself, and I
I've been an early and active supporter of Dreamwidth as a project in large part because I strongly prefer to invest most of my time and money in a site that's got as open and transparent a management process as possible. In contrast to LJ, proposed code changes are accessible to the public on DW, and there are regular and frequent requests for feedback on any significant new feature or change (and explanations of their eventual decision, whatever it is.)
I've got a permanent account on LJ through volunteer work (in other words, I'm spending money on my DW account rather than just using LJ), and I'm unlikely to ever totally abandon LJ. (And I don't see ads, so targetting data to me doesn't make a difference to me personally.) But things like this make sticking around a harder and harder decision. I want to hang out in places that respect their users, y'know? Or that have a clue about code design and review. In this case, one of those two is a major failure, and they're both pretty serious ones.
I have DW invite codes for anyone else who'd like to check it out.