It doesn't matter how many ethics courses are offered and taken.
The only thing I ever retweeted on my otherwise completely empty and unused Twitter account so that I could copy and paste it when needed:
"For evil to triumph, all that is required is for good men to respond rationally to incentives."
You learn all your basic ethics during early childhood, not in university courses. Most of the rest is the quote above. University classes talk to and train parts of the brain whose involvement in the ethics of your decisions is minimal.
>You learn all your basic ethics during early childhood.
The ethical questions a software engineer (or almost any professional) faces are not "basic". More specifically, the "basic" ethics we learn as children relate to direct interpersonal relations and small group dynamics (including excessive deference to authority, which "good" ethics must unlearn).
These lessons to not prepare us to deal with questions that involve millions of people whom we know very little about.
Truth. Most people I have worked with know how not to be dicks. And if you put them in a situation where the human impact of something is obvious, they'll have the right reactions.
The challenge is to have the right reactions when you are sitting in a comfortable office and the moral dilemmas inherent in your work are entirely hidden by metrics, and all your bosses ask you to do is to drive the graph up and to the right.
> The challenge is to have the right reactions when you are sitting in a comfortable office and the moral dilemmas inherent in your work are entirely hidden by metrics, and all your bosses ask you to do is to drive the graph up and to the right.
And that is where I refer back to my comment: Pretty much nobody will become the whistleblower or the guy who prevents their company (or their country) from landing that billion dollar arms sale or from raising drug prices to levels unaffordable to many sick people even if they are perfectly well aware of how bad it is. There is one Snowden outlier for a million other people. "If I don't do it somebody else will" is just one of numerous rationalizations (and it even is actually correct).
Statistically speaking the impact of ethics education vs. incentives is like 1 : 1 billion or worse.
> "For evil to triumph, all that is required is for good men to respond rationally to incentives."
This is a great insight. Where does it come from? Your thought or someone else?
I pretty much agree with this perspective on ethics, but I think there is an important component missing. An individual person doesn't have fixed ethical responses; you'll find a huge amount of variation based on the person's estimate of what they lack at the moment. Take someone with poor ethics who's sated and they'll behave better than someone with excellent ethics who's starving.
This has an impact on your quote because the urgency with which one pursues these rational incentives is going to depend on that person's estimate of their need (i.e. how much they perceive themselves to be lacking, in a very broad sense which includes needs of kin, emotional needs, etc.).
I take your point, but not everyone learns the same lessons in childhood; furthermore, ethical analysis is not always so simple as it appears. You may intuitively know that one course is right while another is wrong, but lack the vocabulary to articulate why to someone else. Politicians and other social technologists profit from such conceptual illiteracy.
I've never taken an ethics course myself, but we discussed ethical problems extensively when I was in high school and I've read numerous books on the subject. It's taken me until middle age to be able to easily recognize and debunk unethical rhetorical strategies and philosophical positions, and I'm sure than in 10 and 20 years I'll bemoan my present lack of sophistication.
Whenever a police officer beats someone up of shoots an unarmed guy there quickly are the "they need more training" comments. Pretty much all of these stories including the one here is about basic decency, not about complex matters, and that is what I address. You can always invent some complex outlandish scenario, but this isn't what this is about right here.
Phrases like 'basic decency' and 'human nature' are what people fall back on when they can't articulate why a particular ethical position is desirable. This makes you vulnerable in an argument, because when your terms are vague your opponent can project different meanings onto those phrases and you won't have a comeback. Intuition is an excellent guide for your own actions, but it's not by itself persuasive. You need to dig deeper and figure out what are the bases of 'basic decency.' Don't worry, it won't stop working for taking it apart and putting it back together again. Go back to Plato and look how Socrates keeps peeling back layer after layer of unstated assumptions to reveal the core truths.
The problem isn't the rational response. It's the incentives. Poor incentives are created by misguided policy or a lack of policy in many areas.
Most of the troubles we have with Healthcare in the US is due to very poor incentive structures. I'll never understand why people were surprised when investors realized they could buy niche lifesaving drugs and raise their prices by 6,000% since insurance providers would pay for them regardless.
Obviously they would do that. The system was never designed to reduce the incentive to not do that (ie. making it illegal). The problem isn't "unethical" people. Trusting people to act ethically without any disincentives (ie. Jail/fines/social stigma/etc) is like trusting your toddler to run safely around a busy intersection.
> Why is thinking and responding rationally a bad thing?
The question is, why do you invent stuff I didn't say? Is this show you get your highs? People like you are one of the major annoyances of online discussion.
The question is, why do you invent stuff I didn't say? Is this show you get your highs? People like you are one of the major annoyances of online discussion.
I didn't say anything about my childhood. Stop making stuff up, troll.
> The idea that doctors ... are somehow immune to those effects defies logic.
That claim was never made by OP. Can we have a discussion without attacking a straw man, please? You yourself acknowledge you only know one side of equation. If the other components are larger it would not matter that you have shown one aspect - that nobody disputes, incl. OP! - to be negative.
> A new [...] study [...] showed allowing surgical residents the flexibility to work longer hours in order to stay with their patients through the end of an operation or stabilize them during a critical event did not pose a greater risk to patients.
> “It’s counterintuitive to think it’s better for doctors to work longer hours,” said principal investigator Dr. Karl Bilimoria [...]. “But when doctors have to hand off their patients to other doctors at dangerous, inopportune times, that creates vulnerability to the loss of critical information, a break in the doctor-patient relationship and unsafe care.”
I have no doubt that overall the long hours are bad, I only respond because you attack a position OP didn't take. Also, the long hours may still be a logical conclusion and even beneficial - within the twisted logic of dysfunction in the larger system: "For evil to triumph, all that is required is for good men to respond rationally to incentives."
> Also, on what basis do you say that longer hours with fewer tradeoffs don't improve patient outcomes? You frame it as though it's obvious but is there any evidence to back that up? My wife and most other doctors I know all claim they'd rather have longer hours with fewer handoffs.
I responded with evidence.
And yeah, I've seen the FIRST study. The control group, in this case, is working a 16 hour shift. Even if they only need one hour on either side of that shift to go from asleep to work and then back to asleep (which is not what I have seen), that control group is maxing out at 6 hours of sleep, well below the level where all but a tiny percentage of the population starts to see serious performance declines. https://hbr.org/2015/08/the-research-is-clear-long-hours-bac.... A more useful study would look at residents who are actually well-rested - who have gotten the consistently required eight plus hours of sleep over a significant enough period of time to have eradicated their existing sleep debt - and then compare their performance going forward while they continue to get enough sleep to residents working 16 or 28 hour shifts.
Google has a lot of content, for example "Chrome DevTools => Analyze Runtime Performance =>
Get Started With Analyzing Runtime Performance" [0].
But an important piece of advice is at the bottom of one of their pages [1]: "Avoid micro-optimizing your JavaScript". Apart from their argument there, keep in mind you are programming for a number of very different runtime environments. An optimization that gives you a big boost in one implementation may slow you down on another one. That is true not just between various vendors but also among runtime versions from the same vendor.
Ya but that's like a get out jail free card.
I have been through their stuff. It's very superficial. JavaScript has all kinds of implementation dependent mechanics when it comes to promises/async calls/recursion. And when they are happening together, all I want are two numbers at the end of the process. How long did this take and how much memory did this take.
But then you are looking at the wrong thing: You are no logger profiling/debugging Javascript but the Javascript runtime. Those tools do tell you the Javascript part, why do you say "superficial"?
What is missing there, I can see how long each function took, even more so when I combine it with the flame chart?
I assume you are still talking about the Javascript part. What the C++ based subsystem does can be examined using tools for that language on the respective platform.
Yes I know asking for an explanation causes a lot more nasty voting. This is ridiculous, the site is getting more and more like reddit, and I blame the site's maintainers: There are soooo many things that could be done for a more civilized discussion culture. Like making votes public, meta-voting, requiring explanations for downvotes, a very small downvote pool (e.g. no more than three downvotes per day), etc.
How about somebody would tell me what exactly is missing from those tools I linked to, or what is supposed to be wrong that I wrote? It's not like I insulted anyone. The guy I responded to had a lot less substance in his (short) comments. "It's very superficial" - what is superficial? What is missing? Also, "all I want are two numbers at the end of the process. How long did this take and how much memory did this take." -- well, he gets those number with the DevTools! So what exactly is the complaint? For someone with a question he doesn't seem to try very hard to get an answer. Then someone downvotes posts that try to get more out of him.
Superficial as in all I want is the two numbers to be printed out at the end. Why do I have to go look at flame charts and timelines? Boggles the mind.
If you look at the documentation of what I am actually interested it is time-timeEnd or profile-profileEnd. With profile end I just don't get output on console and have to jump back and forth between these views looking at a ton of crap I am not interested in. With timeEnd I get the number I want but would like to see a "safe" approved way of where to place the timeend while dealing with async/promises/recursion separately and together.
I am used to testing different approaches within a function. Running the approaches overnight and just getting the 2 numbers printed out for each. Only if these deviate from expectations does the timeline and flamechart etc become useful. But Google debugging implementation seems to assume perf optimization is done in the opposite direction.
> With timeEnd I get the number I want but would like to see a "safe" approved way of where to place the timeend while dealing with async/promises/recursion separately and together.
Measuring asynchronous code? You are not measuring your code. Your code is only the synchronous parts, the time spent in asynchronous parts are "environmental factors". Your code doesn't run during those times, it sits in the event loop waiting for an event so that it can continue.
It also is reasonable to know about cache misses so that you can do something about that if you decide that's possible. Do you think because it is not always valuable information, maybe even rarely (when you average over all programmers worldwide, most of whom do web stuff) that it never is, for anyone ever?
This is a gross misrepresentation of the article. It is in your own head that he solely focuses on this one thing. When somebody says "this soup needs more salt" you start talking about how there always is too much salt in processed food these days? The article is a about a concrete narrow subject, not about "performance" (the entire field).
Can't some people read an article without extrapolating to the end of the known universe and just stick to just the article's actual narrow subject?
Take my criticism as being on the chosen title and framing.
It is a neat subject. Just as knowing different ways of measuring car utilization and power transfer. Framing it as a take down of how people commonly do it is extreme and at major risk of throwing out the baby with the bath water.
Revolutions require organisation - very good organisation. All you'll get from ordinary workers is, possibly, a riot, quickly subdued.
You are also up against an extremely well-organised and well-armed government, but that may not even be the most salient point:
A lot of people for very good reasons do not want to see the government overthrown. They know the result will only be worse. Our societies are far too organised and interconnected over large distances, with all their widely distributed and interconnected creation of everything from basic food to almost all goods except for the most primitive ones.
Only if you can fully replace a government with a new one could you have a "revolution". So, elections and parties still are the best option. I think they actually work too, it's just that there is very little successful effort in organizing something better. Yes of course there have been plenty of attempts, but they all fail even more than the current system: None of those attempts manages to get enough people "on board", and they scream and insult everybody they don't like - so they are no improvement at all (not even mentioning the wild and unrealistic ideas they usually have).
For example, I think an alternative new movement would have to start calmly instead of yelling loudly. The latter only attracts the crazies, while the thinking people are pushed away. So, no mass demonstrations against this or that, "being against" is not a good start for the alternative. Instead work on what and how things should/could work instead of working on how to best insult and score points against the "political opponent". Or, if you start talking about revolutions I will assume your main goal is destruction.
By the way, I would posit that many people who are "greedy" are that way because of the environment, not because "that's what they are". Soooo many people, with advancing age, grow disillusioned. In particular, I know quite a few medical doctors who got into the profession with idealism - but now they actually sell "BS" to people who want it. From homeopathy to network marketing stuff like (branded) vitamins or "energy mats". Of course they don't believe in any of it, it's just that they have given up and now go with the flow.
Those are all good points. I should say that I don't really believe in "greedy people," or more broadly, I don't believe that people have stable personalities that can be described in that sort of way. I was talking about greed as a, let's say, institution.
That said, I was talking about revolution specifically as a failure state of unbounded greed. It has been bad enough for that in the past, and revolutions have been successful at deposing governments, even if they don't always produce the best follow-on state. The postwar era has generally seen western governments be successful at economic stability, but that's becoming less true over time. That said, there are some vestiges of economic control still in effect (that is, "stabilizers" like unemployment and Social Security) that stopped the global financial crisis from getting unbearably bad. But keep in mind, the last time we saw overthrows of major western governments was the Great Depression, so the more economic policy looks like the conceits pre-Keynes "Classicals," the less your moderating arguments work out.
> There's practically _zero_ of these mega-successful people (Gates, Buffett, Zuckerburg, Musk, etc.) who don't read
Citation needed, as well as a definition of "don't read".
For example, for several years now I have been reading a lot less books than ever before in my life, almost zero. However, I took several dozens of courses on edX and Coursera and read a lot of documents on the Internet. Just no books, and a lot less newspaper and magazine articles.
The only thing I ever retweeted on my otherwise completely empty and unused Twitter account so that I could copy and paste it when needed:
"For evil to triumph, all that is required is for good men to respond rationally to incentives."
You learn all your basic ethics during early childhood, not in university courses. Most of the rest is the quote above. University classes talk to and train parts of the brain whose involvement in the ethics of your decisions is minimal.