Live data from Hacker News

Phrases in computing that might need retiring

sicpers.info

261–270 of 291 posts

Re: Phrases in computing that might need retiring

#261
post #237
post #215

Earlier quoted context omitted.

> Even though the etymologies of the words don't describe them as being based on race / racial judgments Then why should we change them? I know you said: > Setting aside the historical context, they also help reenforce the idea of "white is good, black is bad" But if we can't trust people to infer a word's meaning based on the context, we have a much bigger problem imo. Another example of this is the word gentleman.…

First, because there often isn't a context where the word has the correct meaning in the first place. If you have a list of disallowed curse word substrings and Dr. Theodore Fucknuckett gets upset at not being allowed to login, then adding "Fucknuckett" to something called a "whitelist" is using a somewhat tenuous connection to the meaning of whitelist. "Allowlist" is more direct. Also, I just made it up, and I gotta…

> First, because there often isn't a context where the word has the correct meaning in the first place.

In this case, there's an unequivocally correct meaning to the term blacklist and whitelist that has nothing to do with race. Take the popular show The Blacklist[0], which goes so far as to title itself Blacklist, and I'm assuming it's because blacklist is such a well known term that immediately tells you what the show will be about.

> (I don't actually have a problem with "master copy".)

Isn't this exactly what a "master" branch is supposed to indicate? I was under the assumption that this is exactly why the name "master" branch was chosen. We don't have a master branch commanding slave branches how to code themselves. We have a master source of truth that all the sub branches derive from and eventually merge back into.

> A master/slave database setup gets its meaning from the master telling the slaves what to do

Fortunately I've never run into this naming schema for databases. Typically its a production, development, QA, etc for databases.

> Third, relying on the cultural meaning of colors is problematic for the very reasons you cite

Well this is the whole point of language. Of course I'm not going to understand the subtle cultural references in South Korean culture, because I'm not South Korean. Likewise I wouldn't expect people from different cultures to understand my cultural nuances. That's why good communicators tailor their speech to their audience.

This doesn't mean you can't use cultural references though. And it certainly doesn't mean that one culture can impose arbitrary language constructions on another culture because their offended by the meaning. Mature people will usually tell the offender that they've been offended. Then the offender should be able to explain they meant no offense, in my culture this term means this. And if the offended person understands different cultures have different contexts, then they can happily move on with their life and understand that specific subtlety.

My biggest complaint is nobody is asking to change these terms because they've suddenly been deemed inadequate at explaining the concept. People are trying to change these terms in the name of "social justice". If people can't understand that language evolves over time, and they can't separate their emotions from simply understanding the context of the situation, then we have much bigger problems.

How are we supposed to study earlier works of literature that have ugly things in it? As we've seen with To Kill a Mockingbird, people are trying to tear everything down, even though the book is about the evil of racism! [1]

This author writes a more nuanced article on why changing language for social justice is a bad idea [2]. All in all, we need to stop injecting racism into everything. It's getting to the point where we can't say black because that my offend somebody, and that my friend, is insane lol.

[0]: https://en.m.wikipedia.org/wiki/The_Blacklist

[1]: https://www.nbcnews.com/think/opinion/why-are-we-still-teach...

[2]: https://seattlecollegian.com/op-ed-blacklist-and-whitelist-a...

Re: Phrases in computing that might need retiring

#264

Earlier quoted context omitted.

For women online in particular I'm pretty sure lots of them would rather enjoy less attention on them personally. Too much it not pleasant for _them_. I'm thinking in particular about friends who are content creators, minding her own business and receive comments on her look, insults, sexist comments, unsolicited dick pics, rape and death threats,... I'm sure sexism has nothing to do with that. OK I'm done on this to…

My followup question is why you felt the need to claim that the answer to an empirical question is something that you haven't verified empirically?

100% you are a dude.

Re: Phrases in computing that might need retiring

#265
post #244

Earlier quoted context omitted.

OOP is pretty well defined. 99% of the time it means type dependent namespaces. Class A.foo and Class B.foo both represent separate namespaces in which a field or method foo can be defined, the name space is directly tied to a type. In Haskell every function is defined in what amounts to be a global namespace. This is particularly annoying when you have records that share the same attribute names. You might argue tha…

By that, then, you mean undefined. It once meant that three features appeared: encapsulation, inheritance, and constrained runtime binding. Any time it is used without implying those, it is just more or less noise. That said, OO has become a niche technique: it fits certain problem spaces well, others very badly. Any big enough system will have some parts that could meaningfully be described as mostly OO. But there i…

I think we have to look to Alan Kay for an original definition, since he invented the term, and according to him, inheritance is not a necessary part of object orientation. In Smalltalk (and various Lisps), inheritance is something that is created from objects and messages, not a fundamental feature of the language. In [one place](http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay...) he defines it as "OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things."

Re: Phrases in computing that might need retiring

#266
post #237
post #215

Earlier quoted context omitted.

> Even though the etymologies of the words don't describe them as being based on race / racial judgments Then why should we change them? I know you said: > Setting aside the historical context, they also help reenforce the idea of "white is good, black is bad" But if we can't trust people to infer a word's meaning based on the context, we have a much bigger problem imo. Another example of this is the word gentleman.…

First, because there often isn't a context where the word has the correct meaning in the first place. If you have a list of disallowed curse word substrings and Dr. Theodore Fucknuckett gets upset at not being allowed to login, then adding "Fucknuckett" to something called a "whitelist" is using a somewhat tenuous connection to the meaning of whitelist. "Allowlist" is more direct. Also, I just made it up, and I gotta…

> Dr. Theodore Fucknuckett gets upset at not being allowed to login

This is known as the "Scunthorpe Problem".

https://en.wikipedia.org/wiki/Scunthorpe_problem

Re: Phrases in computing that might need retiring

#267
post #96

Object-Oriented Programming: "Luckily the industry doesn’t really use this term any more" Wait really? What world are they living in? Am I just out of touch or something?

I've observed the same for at least the past 20 years: most people who are working as programmers can't or won't write object-oriented code, nor will they write functional code. For whatever reason, even if they're working in a language like Java that's fundamentally object oriented, they'll write primarily procedural code (mostly static functions accessing datatypes with no functionality besides getters and setters)…

I'm a functional guy myself, so I think OO is a downgrade from plain ol' procedural code. Regardless, the procedural soup model gets applied because it's the end result of too many hands touching any given codebase. Elegant abstractions take time to grok, and are opinionated. If you start a project with a UML diagram, I'm going to be disgusted. If I start a project by defining the whole thing as a left fold over an infinite stream, someone else is going to be appalled. Abstractions have a target audience, and that rarely aligns with corporate hiring practices.

If you're working on a given project for a long time, you'll appreciate the abstractions. If you just want to monkeypatch in a quick fix/feature because your boss told you to, you find where it fits, you hammer it into place, and call it a day.

Rinse repeat for a few years, and all corporate code becomes procedural.

Re: Phrases in computing that might need retiring

#268
post #129

Hard agree on AI, hard disagree on Tech Debt. The sheer force of opinion saturated into so few words made me smile :) My highlights: - OOP 'modules, but using the word class' - Agile 'It used to mean “not waterfall” and now means “waterfall with a status meeting every day and an internal demo every two weeks' - AI 'an algorithm pushed to production by a programmer who doesn’t understand it'

I like defining AI as a catch-all for higher-order solutions. Rather than defining a specific process for taking in input and producing the desired output, you define a process for taking in input to produce a process that takes in input and produces the desired output. That ends up including a lot of boring applications, like SAT solvers, Bayesian statistics engines, as well as the more hip deep learning stuff.

ML is the specific case where the inputs to both the higher level and base level processes are similar, and the goal is for the application to identify patterns to apply to specific cases.

Re: Phrases in computing that might need retiring

#269
post #94
post #3

Perhaps "API" could be added to this list. I've been jobhunting this week, and first I heard recruiters use "API" to refer to what I'd call a "service", then heard other quite senior developers do the same thing.

APIs, frameworks & libraries are so often being used interchangeably & its getting confusing for us too, specially if planning for a new feature to integrate "is it a framework? is it a library? is it a API" whenever I have a cursory glance at a product on HN/Github or likewise

APIs are simply a property of any system you want a program to interact with. The confusion comes from the synecdoche of referring to web applications that are only interacted with via their API as APIs.

The more interesting one is frameworks and libraries. There's a gradient between them based, IMO, on how opinionated they are. Working with a framework means filling in the blanks, e.g. "When we recieve an http request to this endpoint, this application code should run" in contrast to a library which is just a barrel of functions to call. But that's a fuzzy line.

Re: Phrases in computing that might need retiring

#270
post #8

Strong disagree on "technical debt" Rather, the entire world is built on it and there's some level of acceptance required, but we definitely need a shorthand phrase for "we're doing something stupid that will save us time now and make us hate ourselves a year from now" Edit: thinking on it, also "devops". It's really job title for "sysadmin but paid and owned by the software department to keep ITs fingers out of ever…

I like the term technical debt but people forget what debt is.

Everything has a cost. If the value added is more than the cost then it is not debt. Technical debt are areas where the costs exceed the value added.

Post reply on HN