Comment Re:Not a programmer's problem, a managerial one (Score 1) 183
man, I would LOVE to work somewhere that has an actual legal department. The best I've seen is "the CEO-owner's brother, who got a law degree at a fly-by-night university".
man, I would LOVE to work somewhere that has an actual legal department. The best I've seen is "the CEO-owner's brother, who got a law degree at a fly-by-night university".
Scenario: You're writing firmware for a "smart" chargeable battery. Multiple cellphone manufacturers will use your company's batteries. Also, you can reasonably expect that several non-cellphone uses will arise. The battery has a high energy density, and therefore a nonzero chance of fire / explosion if improperly charged. Shortcuts were taken in hardware safety because "we can just make the software not allow those situations". Some of those situations are difficult-to-impossible to disallow without compromising some of the battery's key marketing features. You know there will be edge cases where someone will do something plausible, but not-technically-correct, with your battery - and you know that in a few of those edge cases, they will get a face full of hot intercalated lithium. Your boss has misrepresented your capability to find solutions to impossible problems, so now you're on the spot.
Who do you "call personally" in that scenario? Each of the five million or so end users? Or each of the cellphone and RC quad copter manufacturers on your boss's boss's marketing VP's supply-chain list?
You know what's funny? I've fought THAT battle, too. I used to twitch every time I had to call what I did "Computer Science", or talk about "paradigms", or "cloud-based solutions", or whatever.
At a certain point, I just gave up. People will call things whatever they want to call them, and I do not have the political power to enforce accurate terminology. So I either get with the program, or get constantly corrected by PHBs.
And apparently, even when I DO get with the program, I STILL get corrected - but by pedantic programmers, instead.
Well, here's the thing:
I've gone ahead and walked. A few times, in fact.
The employer always just finds someone else to do the job, and I wind up with a reputation of "difficult to work with".
I've literally starved for my ethics. Have you?
And when you know for a fact that those instructions will be handled by a department that is not interested in communicating honestly with the customer, especially if doing so might convey a sense that the product is dangerous?
It's not a fallacy, because we use words and correlations between words to convey nuance. Otherwise things get so slippery that you can claim you meant anything.
To a computer programmer, ethics is dead code, and I mean that in a good way. It takes effort to do wrong, and money to add the ethically problematic features -- and the only person who makes that happen is your boss.
Not necessarily - imagine software that controls a physical device, which has safety concerns. There's a simple and elegant check that can be performed that catches 90% of the dangerous use-cases, or there's a really hideously complex set of layered checks that will catch 99% of them. You have two days to ship or you're fired. Which do you include?
Other way around, actually. 'Morals' -> 'mores', which is about customs and expected public behaviors; 'ethics' -> 'ethos', which is about internal guiding principles.
And every employer I've developed code for has told me the same thing: shut up and get back to work.
Ultimately, in order to address the ethical considerations of programming, we would need a work culture that supports it. Otherwise it simply becomes another "know which side your bread is buttered on" lesson.
Okay, well, the root post of this discussion - the one I first responded to, said:
Conway's game of life creatures became sentient.
They discovered they are made of cells.
They said "Look, THE INFINITESIMAL CELL is always created from NOTHING. If things happens FROM NOTHING, there is NO NEED FOR A CREATOR, so THERE IS NO CREATOR, and besides NOBODY ever witnessed something different THAN THE DETERMINISTIC APPLICATION OF RULES. How smart are we?"
So the guy at the PC said to himself "Thank you for nothing, guys" and went making himself coffee.
My response was to that scenario. If you're going to stop engaging with that scenario, do so explicitly, rather than trying to sneak in assumptions that are impossible in that scenario just to score points.
Warning: you're just going to make people double down on their previously-held belief:
What if your concept of absolute determinism as implied here is actually not absolute and has limitations?
Then it wouldn't be Conway's Game of Life, would it?
Hmm. Overly-cynical thought:
Convict him, put him in prison, let him start serving out his sentence, vacate conviction based on venue.
Re-charge him in the proper venue, put him in jail without bail, let him stew for a few years. Then try him again, convict him again, put him in prison for a year or so again. Then vacate THAT conviction based on another technicality.
Then re-charge him again, put him in jail without bail again, let him stew for a few more years while you set up a third trial. Then try him again, convict him again, put him in prison for awhile again, then vacate THAT conviction...
I wonder how long you could play judiciary ping-pong with someone you REALLY didn't like?
Not if he gave them free willl, meaning even the ability to do things that were "outside" of the creator's will/temperament.
Can you explain what that means within the context of "THE DETERMINISTIC APPLICATION OF RULES", please? Because otherwise you are making zero sense whatsoever.
So the guy at the PC said to himself "Thank you for nothing, guys" and went making himself coffee.
Well, what else were they supposed to do? They're DETERMINISTIC. Their entire existence is based on THE DETERMINISTIC APPLICATION OF RULES, right?
So if the guy at the PC is butthurt, maybe he should have picked different rules or different initial conditions, right? Because once you hit 'run' you can't really blame the process for giving you its output.
For God's sake, stop researching for a while and begin to think!