People working on platforms like the Web often have to figure out ways to get people to use new APIs or stop using old ones. That got me thinking – can we borrow those strategies for propagating linguistic change in a social context? I ended up writing about it!
I have a pet theory (in development) about how the internet and the protocols that enable it are abstractions that naturally emerge from human communication – one example is how HTTPS requires a mutually trusted certificate authority to establish trust between two communicators. Real life analogy – you’re far more likely to trust someone who is introduced to you by someone you already trust, than you are to trust a stranger on the street. In other words, internet protocol design is governed by many of the same philosophies of truth, subjectivity, yadda yadda that govern human communication.
That was just for context! The other day, I was perusing a proposal to implement something called “feature policy control” over an existing Web API called
document.domain. The tl;dr is that
document.domain is a troublesome API and browser vendors want to drive down its usage. “Feature policy control” means that consumers will be required to declare their intent to use the API (or not). The proposal suggests that feature policy control for
document.domain be implemented so that it remains supported by default at first, which preserves compatibility with existing consumers, and this can hopefully be changed to opt-in later on if usage of
document.domain in the wild goes down eventually.
I think that this is a great example of how the Web platform (among others) is essentially a language, and that API designers and working groups are involved in the business of evolving it. It got me thinking about whether any of the strategies used to drive adoption or rejection of APIs might be applicable to the intentional evolution of English and other human languages at any scale. I know that I frequently apply abstractions I learn from software engineering and internet protocols in my own life.
Here’s a simplified example to illustrate the analogy:
Consider a scenario in which a person is trying to transition their gender pronoun within their Twitter community. One approach to transition might be to broadcast their new pronoun (e.g. by including it in their bio), but not actively enforce it. Eventually, people catch on and start using the new pronoun. After a while, once the new pronoun has been established, it may be time to start actively correcting people – enforcing the new pronoun – and perhaps stop broadcasting it in their bio.
The story isn’t perfectly realistic, but the analogy here is that the gender pronoun is the “API”, and the transition technique is the “feature policy control” – initially it is opt-in, but eventually it is enforced.
I’m intrigued by the possibility of finding more of these analogies and maybe finding inspiration for new strategies. Usually network protocols are well specified and edge cases are thought out – it might be interesting to feed that rigor back into a social context.