10 Replies - 501 Views - Last Post: 09 July 2020 - 05:03 AM

#1 Skydiver   User is online

  • Code herder
  • member icon

Reputation: 7462
  • View blog
  • Posts: 25,113
  • Joined: 05-May 12

Inclusive coding terminology

Posted 07 July 2020 - 05:19 AM

I was reading this today: Linux developers propose inclusive terminology coding guidelines.

Yesterday I was writing a lot of code that involved checking for whitespace. It's got me thinking: What's will be the new term for whitespace? Non-printing space?
Is This A Good Question/Topic? 0
  • +

Replies To: Inclusive coding terminology

#2 DarenR   User is offline

  • D.I.C Lover

Reputation: 713
  • View blog
  • Posts: 4,593
  • Joined: 12-January 10

Re: Inclusive coding terminology

Posted 07 July 2020 - 05:42 AM

i call it white space--- everything else is just meh
Was This Post Helpful? 0
  • +
  • -

#3 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11993
  • View blog
  • Posts: 20,326
  • Joined: 19-March 11

Re: Inclusive coding terminology

Posted 07 July 2020 - 07:26 AM

Honestly, I think the fact that we are in a historical moment that is very concerned with language and implication gives us a really good opportunity to replace opaque language with better language. A lot of the terminology that we're looking at here was poorly chosen from the start and persists only because of a sort of cultural inertia, like the metasyntactic variables foo, bar, and baz. Foo, bar, and baz are pretty harmless and easy to pick up, and their meaninglessness is actually the whole point of their existing, but terms that are supposed to have semantics attached to them should probably be considered carefully and not adopted by reflex.

For example, when you have multiple databases, set up so that only one accepts writes and the others mirror the data written there and provide read access, the terms "master" and "slave" are not useful ones to describe this configuration unless you've already committed yourself to them. "Primary" and "replica" are actually much more useful terms in terms of descriptive accuracy. "Blacklist" and "whitelist" are similarly opaque, unless you happen to have access to the etymology. What we really mean there is usually something like "exclusions" and "inclusions". We only write "blacklist" because that's the language that someone used in code we learned from, which is a terrible reason to use a name.
Was This Post Helpful? 0
  • +
  • -

#4 Skydiver   User is online

  • Code herder
  • member icon

Reputation: 7462
  • View blog
  • Posts: 25,113
  • Joined: 05-May 12

Re: Inclusive coding terminology

Posted 07 July 2020 - 09:01 AM

So if the changes are not just about inclusiveness, but also removing opaqueness, does that mean that "wheel" and "root" will be renamed to things which are much more descriptive? Perhaps "superusers" and "sysadmin"?
Was This Post Helpful? 0
  • +
  • -

#5 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11993
  • View blog
  • Posts: 20,326
  • Joined: 19-March 11

Re: Inclusive coding terminology

Posted 07 July 2020 - 10:00 AM

Those seem like very reasonable changes.

I think it's still true that inclusiveness is the motivation for this, I'm just hopeful that we'll end up with better jargon going forward. Which honestly is the really inclusive step. Opaque jargon is a real lock-out factor for a lot of people, and there's no reason for that.
This isn't a couple of nerds in Building 20 anymore.
Was This Post Helpful? 0
  • +
  • -

#6 jimblumberg   User is offline

  • member icon

Reputation: 5864
  • View blog
  • Posts: 17,837
  • Joined: 25-December 09

Re: Inclusive coding terminology

Posted 07 July 2020 - 02:27 PM

Quote

Perhaps "superusers" and "sysadmin"?

But can we really have something like "superusers" doesn't that put down the millions of users?

Looks like a slippery slope if taken too far.

This post has been edited by jimblumberg: 07 July 2020 - 02:28 PM

Was This Post Helpful? 0
  • +
  • -

#7 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11993
  • View blog
  • Posts: 20,326
  • Joined: 19-March 11

Re: Inclusive coding terminology

Posted 07 July 2020 - 02:36 PM

If you don't like "superuser", what would you suggest instead?

I'm not greatly moved by "slippery slope" arguments in general, they always strike me as arguments for inertia, and inertia seems to manage pretty well on its own.
Was This Post Helpful? 0
  • +
  • -

#8 jimblumberg   User is offline

  • member icon

Reputation: 5864
  • View blog
  • Posts: 17,837
  • Joined: 25-December 09

Re: Inclusive coding terminology

Posted 07 July 2020 - 03:41 PM

I'm not talking about inertia, but a little common sense. I agree that rethinking things like slave, blacklist, whitelist, and many others is a good thing. However it can be taken too far, the example I posted is one of these far out things.
Was This Post Helpful? 0
  • +
  • -

#9 Skydiver   User is online

  • Code herder
  • member icon

Reputation: 7462
  • View blog
  • Posts: 25,113
  • Joined: 05-May 12

Re: Inclusive coding terminology

Posted 07 July 2020 - 08:45 PM

"superuser" --> "MoreEqual" as a reference to the Orwellian phrase "some are more equal than others". :) Or would assuming someone has read George Orwell be not inclusive either? :)
Was This Post Helpful? 0
  • +
  • -

#10 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11993
  • View blog
  • Posts: 20,326
  • Joined: 19-March 11

Re: Inclusive coding terminology

Posted 07 July 2020 - 10:57 PM

I think, in all seriousness, that names relying on references to literature are not ideal. Partly because they assume a shared cultural context, when we have no basis for that assumption. I work on a team that is evenly split between Massachusetts and East Africa - trying to work out what is and is not in the shared context there is not a load of extra work I want to sign up for. Beyond that, I'm pretty sure my Boston-born team lead has not read Orwell, and I know for a fact he has not read Douglas Adams and has no interest in doing so. I also know that our former intern Sherry, who was an MIT undergrad from China, would have none of that context. And I certainly don't want to be stopped up trying to figure out the meaning of some cultural reference from, say, the Tale of Genji or some African writer that I have not yet got around to reading.

More important, such names, like your "MoreEqual", are basically puns. They work by not communicating what they say, part of their meaning is precisely located in what they conceal. Funny, yes, but a terrible quality in a name.

Personally, I don't have a big problem with "superuser" as a name, or even "root", but if we wanted to replace it I would look at what the name actually means. It means a maximally empowered user, a user with all of the privileges. "Root" is a reference to the bottom node of a tree, so if we're thinking of the "root user" as the ur-user, the user from which all privileges spring, then that's okay, but maybe we could say instead "user zero". This would imply "the first created", and "the bottom of the hierarchy", but it would also imply that this is a distinct user, and perhaps one that we should never aspire to be (ie, not a "super" user). I don't particularly love this name, but it seems like a good example of the way I want to think about names.

Quote

I'm not talking about inertia, but a little common sense


I don't want to press this too hard, but that's kind of what I'm getting at. "A little common sense" sounds a lot like "let's not start until we know where we want to stop". And the point of exploring ideas like this is you actually don't know where they will stop, and that's okay.
Was This Post Helpful? 1
  • +
  • -

#11 Skydiver   User is online

  • Code herder
  • member icon

Reputation: 7462
  • View blog
  • Posts: 25,113
  • Joined: 05-May 12

Re: Inclusive coding terminology

Posted 09 July 2020 - 05:03 AM

So no more use of the term "code monkey"...but I love that song. He hit everything about my life and job.
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1