> This is because meat-eaters tend to eat the same few species of animals over and over again – pigs, cows, chickens.
Tangential, but this is one of the things I like about eating fish. There are so many species you can eat, some of which you can only find in certain regions or have to catch yourself. My list of aquatic animals I've eaten has 47 entries on it and I've surely missed some because it's often hard to tell exactly what species you're getting at a restaurant. I'm always excited to add more to the list.
Some less common ones I've had are sickle pomfret ("monchong") and moonfish ("opah") from a fish market in Hawaii, cobia from a fishing trip in Florida, and many perch and bluegill that I've caught myself.
> Calling it "tree shaking" is web development term AFAIK.
I think that's backwards. Lars Bak and the other V8 folks came from the Smalltalk world and brought the "tree shaking" term with them as far as I know.
In any case, before the JavaScript usage, it seems that treeshaking applied to objects to be included in a runtime image. The JavaScript usage is actually more akin to the dead-code elimination and link-time symbol removal of compiled and linked languages.
The first app that lets you type in an implicit curve and get a graph of its level set is a very different claim from "For all the history of computational mathematical visualization, graphing equations has been done in binary mode".
The millions of brightly-colored fractal posters adorning walls in the 80s are a very clear counter-example to your claim.
Your app is cool and the visualization is neat. The hyperbolic claims of originality really detract from that.
I wrote both "Game Programming Patterns" and "Crafting Interpreters" largely in chunks around half an hour between work, parenting, and other life duties. Likewise lots and lots of hobby programming projects.
Context switching is a skill that gets easier the more you practice it, just like any other. There are techniques like leaving good notes to yourself to pick back up where you left off more easily, but a lot of it just mental training. You sort of learn to hold some of the context in your head all the time but keep it idle when you aren't using it.
When I'm hacking on a hobby programming project, I can often fix a bug or tweak a small feature in fifteen minutes, make a commit, and get a little serotonin hit, all while I'm waiting for the wife and kids to get ready to leave the house.
It doesn't always work for all kinds of tasks. Sometimes for more challenging stuff I really do need a larger chunk of time to load it all in my head. But you'd be surprised how easy it is to eat an elephant one tiny bite at a time if you really try.
> Context switching is a skill that gets easier the more you practice it, just like any other.
Totally agree with this!!
I learned this when I started off as a junior dev. We had some shitty machines and the project compiled for like almost 10mins. Most of the people just read the news and stuff and for some reason I started reading Clean code from Bob Martin (probabbly someone sent me a pdf of it or something). I remember reading it all in a few weeks using those breaks. Then I just kept the habit for almost a year (until we got some better workstations).
Non-political almost always means "accept the social status quo I am used to".
I think there is a reasonable argument that the default for a community with technical goals should be to accept social status quo conventions unless they conflict with the communities technical goals. But if the social default is "girls don't code and queers should hide" there is a reasonable counterargument that these conflict with the goal of making the technology (and community) available to everyone.
> But if the social default is "girls don't code and queers should hide"
Queers should hide definitely isn't any social default unless the code is exclusively developed in Gaza. "Do what you like but please stick to technical considerations" isn't "you need to hide".
You seem to have read that as literally "hide if you are queer". What I meant to encompass was also "hide that you're queer". And that's absolutely a norm that exists, and that can perfectly well hide behind "stick to technical considerations". If you say "I prefer to be referred to by these pronouns" then the reply "please stick to technical considerations" is not neutral. If someone would point out @acronym_XYZ is actually a woman when someone referred to her as he, nobody would reply with "please stick to technical considerations". "Please stick to technical considerations" as a response to any behavior that is outside some societal default is not enforcing a technical concern, it's enforcing the societal default, including when there are no technical reasons to do so.
That doesn't mean that "Please stick to technical considerations" or quite simply "that's off-topic" are never valid. They very much are. It simply means that they don't provide some clean clear demarcation line around which to organize a technical community.
I assumed you were talking about laws because the social default in places like the south of the US is definitely that visibly queer people should hide.
I'm an LGBT person with a trans partner and I find many codes of conduct to be chastising and purposefully finger pointing to conservative people.
A lot of them are basically, "your religious teachings or cultural upbringing aren't welcome here"
I don't agree with religious texts, but that's what you're wagging in their face with some of the CoCs.
Leave it at "don't be an asshole". It's that simple.
The current political climate, I feel, is a direct reaction to this.
A politically neutral space wouldn't permit religious people to harass trans or LGBT people, but it also wouldn't give anyone latitude to throw stones the other way either.
CoCs are "you're not welcome here at all".
Another thing: you always see language and project logos modified to bear the rainbow, trans, and BLM colors. You never see anything supporting Asians, white people, men, or Christians. If you did this, you would be called out as a racist. Which is so ironic.
Let's just get along and work together. Maybe we'll find more agreements amongst ourselves that way instead of trying to divide everyone into camps.
Some progressives are going to get very pissed off at this comment, but I grew up and live in the South. You can (and often must) work with people you don't agree with. It's not impossible to be friends either. You might wind up changing their mind, and they might wind up making you more tolerant as well.
I agree with you, although of course "don't be an asshole" is only simple to enforce in practice. In the current climate, I expect that people considered "conservative" will still be highly hostile to good faith (let alone not) enforcements.
No matter the person, it's really disappointing that we're still entrenched in the mentalities of tribalism, anti-intellectualism, "if you're not with us, you're against us", "an eye for an eye", "someone hurt me, so I'm going to hurt someone", and so on. And by "person", that includes me.
The Earth politics patch really can't come soon enough. How much do we pay the devs, again?
Just want to say I appreciate you publicly taking this stance (on what appears to be a non-throwaway account, no less). As a fellow LGBT person I feel so alienated from other progressive-leaning people and communities because of my belief in how those who don't share my beliefs should be treated.
When saying these things out loud can be social suicide, well, it means a lot to see someone else say it first. So thanks. I hope tolerance can come back into fashion.
This is all fun and games until a “politically neutral” decision is made by a programming language foundation to refer to all trans people using they/them. How would that make you feel?
The most politically neutral decision in this case would be to let people refer to others with whichever pronouns accord to the speaker's beliefs, without reprimand.
Morality partially stems from autonomy (in the sense that "I should be able to act as I please"). According to autonomy, a person should be able to act freely, and two people should be able to interact similarly. One person's policy will be judged by any other, who is free to act by a distinct policy. But autonomy alone doesn't make for a good person, or a good society. The other factor in morality is non-hypocrisy (in the sense that "I should act how I say I should act").
I've laid out a neutral response. Of course I have my personal beliefs, as one does, but I speak here without pretense. Believe what you will.
Yeah that's the fastest way to breed animosity in these communities. Insisting on calling someone by a name they don't use for themselves is extremely antagonistic.
r/programminglanguages has the right idea: put a pride flag in the logo and a lot of these problems just sort themselves out.
the flag logo has proven surprisingly effective at weeding out bigots. Not just in this thread or the previous one, but also in the moderator mail: we've had at least several instances of mouth breathers writing rants along the lines of "How dare you use colors in your logo!" (that's a very nice "translation" of what's actually written in those cases). Similarly, several comments in this thread have been removed and their authors banned, due to comments that boil down to "I'm not a bigot, I just hate LGBTQ+ people". This will not change, based on the simple premise that such people aren't worth having around in any community, and these people don't contribute anything of value anyway.
And it does work out well, the discussions stay on topic, LGBTQ issues aren't really a community topic despite the flag. Here's how that works out in practice, from today:
Someone says "he", they're corrected with "she", and that's the end of it. In more toxic communities where people are encouraged to use whatever pronouns they want, that simple interaction because a whole thing, where eventually one person calls the other delusional, the other calls them a bigot, and then no one is talking about programming languages. It's an eternal struggle, and for many people who build and maintain programming languages, they prefer to kick out the bigot rather than be called delusional, so everyone can get back to talking about programming languages. Still, there are plenty of online spaces, especially language spaces, where LGBTQ people are made to feel excluded. People upset with the flag or pronouns can join one of those communities, and everyone is happy.
(If anyone is wondering what kind of comments, they're usually veiled or not so veiled threats along the lines of this: https://news.ycombinator.com/item?id=45727677. If the mere presence of the flag keeps people like this out, that's fine by me.)
> Here's how that works out in practice, from today:
> Someone says "he", they're corrected with "she", and that's the end of it.
This is a good example of conversational flow in an environment where people are not reprimanded for referring to others with pronouns that accord to the speaker's personal worldview. One person says "he", another person says "she", and everyone tolerates this difference of expression whether they agree with it or not.
Essentially it's the most politically neutral stance on pronouns, as implemented in an everyday conversation.
So you can see why they put it in scare quotes. Just above your reply another says it's politically neutral to adopt whatever pronouns the speaker feels is valid, and not punish them for it. This is "neutral" in that it sides with the speaker regardless of who they are, but is clearly designed to allow bigots to misgender freely. That is the point, "neutral" is not so trivially defined, and often falls on the side of more conservative societal trends.
What would you consider to be truly politically neutral, then? Because it seems we're in agreement that a decision to "refer to all trans people using they/them" would not fit the bill. But whether it's politically neutral or not, it's unnecessarily exclusionary; that's what I take issue with.
(for the record I do realize the phrase 'politically neutral' is vague and unclear, and often used as a conservative dogwhistle, which is why I generally avoid it)
An example of the sort of Code of Conduct I personally feel is the most inclusive and 'politically neutral' in a non-scare-quotes-dogwhistle way is the Hacker News guidelines[0]. I think the moderation in general here does a good job of promoting open discussion across people from a wide variety of backgrounds.
> that's what you're wagging in their face with some of the CoCs.
I never mentioned codes of conduct in my comment.
Those are orthogonal to the observation that communities are fundamentally political.
> Leave it at "don't be an asshole". It's that simple.
Sure, and "don't be an asshole" is a political statement. The subjects and objects of that sentence are people and the intent is to affect how they interact.
If you feel that that's the kind of thing that community members should write down and say to each other, then you're implicitly agreeing with my claim that politics is what communities do.
I suspect you think you and I would disagree with what politics a community should espouse, but that's not my point at all. All I'm saying is that every community, every group of people coordinating together, is a political beast. It's true of an anarcho-syndalistic art collective from Portland who only communicate through crypto-signed commits on their self-hosted fork of Fossil, it's true of a gang of skinhead bikers meeting regularly at a dive bar, and it's true of the Rust community.
When people regularly interact with each other and communicate about how they should interact... they are politicking. "Politics" has become a bad word for some people, but it's the less bad word we have available to describe what it is people are doing when they are establishing the norms and practices of their regular repeated interactions.
> You can (and often must) work with people you don't agree with.
Life's for too short to force people to do this, and ideally we should make it as feasible as possible for as many people as possible to never have to do this.
Not quite your fault, but the framing of "people you don't agree with" juxtaposed with the implicit statement of "people who promote hate" (or similar) doesn't make for a clear discussion. To be clear, those two types are well separated. If someone is of the latter type, really truly they are, then they can be removed without further ado (and I think GP would agree). I think the situations that are less clear cut will make people in good faith fight.
This is a crazy notion. If I have to like everybody to work with them, we can't have a civilization because I don't like most people.
I like some people. Everybody else I work with if they're willing to work with me. Saying that we all have to agree with each other is basically giving up on the political project entirely, and going back to strongman rulers who organize by demanding conformity. Very relevant in these times.
> we should make it as feasible as possible for as many people as possible to never have to do this.
No, we should make it impossible to avoid so people can't sneak into adulthood without being properly socialized.
I think that many people leaning toward the latter are "merely" misguided, though I certainly don't think that to correct them would be easy. However, I genuinely think some people are taken to be hateful when they aren't. Discussion of such cases should not be taken with the presumption that the accusations of hate are true, because then truth gives way to opinion. A good cause is a good cause, but realization invites bias.
College athlete Lia Smith died by suicide last week after years of targeted harassment and attacks from the people we're talking about. At some point, when the institutions of power do everything they can to demonize your existence, strip you of your accomplishments, and vilify you publicly—across millions of people nationwide—it doesn't matter whether you call it murder or not. The deaths rack up all the same.
Imagine the flip side. We could easily wind up in that world too.
The best defense against polarization is a strong and cohesive middle ground.
If you pull to far in the other way, all the bonds break. And it's a race for each interest group to seize power, rather than having some intermediating force that serves as a buffer.
Again: look at the political climate. It's a reaction. The pendulum is swinging harder and harder because we've given up on the middle ground.
Most of the people you hate (and you do seem to dislike them at least a little bit) have honestly never had an LGBT friend. Imagine if they did how that might change them.
Instead they hear voices from the LGBT community that want to outlaw them and their way of life. That's pretty hostile. And definitely is going to be met with the same attitude you're giving them.
I'm LGBT and I have many conservative friends. They're more apt to come around to it than you believe. You're shutting down any conversation before it can even happen.
> Instead they hear voices from the LGBT community
Oftentimes, the voices are outside.
I think you're somewhat optimistic, and "the middle ground" is not a magical place. It's easy to fall into a false sense of security that comes from making (likely valid) criticisms of caricatured groups. Middle ground should not be sought for its own sake, or else it becomes useless (akin to Goodhart's law; roughly "when a measure becomes a target, it ceases to be a good measure"). People should embrace a diversity of values, but the burden is to stay true to a set of values and push for the truth.
It's both. In smaller doses, anesthetics like propofol will leave you groggy but semi-awake and able to respond to commands. But you won't be able to form long term memories so you won't remember afterwards. This is "twilight sedation" and is what you usually get when you get a procedure like an endoscopy or colonscopy. You are somewhat awake so that you can help reposition yourself and stuff if they need you to.
In larger doses, propofol will completely eliminate consciousness. This is "general anesthesia" and what you get when you go in for a major surgical procedure. You are completely unresponsive to any stimuli.
There are levels in between these too. Consciousness is a spectrum.
As far as I know, propofol doesn't make you feel particularly good or block pain. It just kind of makes you go away. So in addition, at all levels of anesthesia, they also typically give you a narcotic like fentanyl so that you aren't suffering. They aren't just letting you scream in pain and then erasing the tape afterwards.
As someone who has had a couple of procedures where they pushed the fentanyl into the IV before the propofol, I can 100% assure that pain was the absolute last thing I was feeling. Hell, I was still high as a kite after the propofol wore off when I got home. I was sitting at the kitchen table with a bunch of metal recently unscrewed from my leg bones thinking about literally nothing in the world beyond, "holy fuck this eggnog is the best beverage I've ever had in my life I wish I could drink it forever".
My recent colonoscopy used fentanyl. I wasn't loopy afterwards but we did (as directed) arrange to have someone else drive me home.
All in all, I really appreciate the loss of memory formation, since the most annoying part of these procedures for me is the boredom. Just splice all that out, thanks.
"Constant" is ambiguous. Depending on who you ask, it can mean either:
1. A property known at compile time.
2. A property that can't change after being initially computed.
Many of the benefits of immutability accrue properties whose values are only known at runtime but which are still known to not change after that point.
My understanding is that the research shows that the harm to patient care from information loss during doctor shift turnover is worse than the harm from fatigued doctors.
Yes, a tired doctor sucks. But a tired doctor who already has the patient's state loaded into their head may still be better than doctor who is completely fresh in both senses.
I have never, in my entire life, ever personally encountered a situation in which a doctor paid enough attention to anyone over a period of time exceeding two hours that I could possibly believe that keeping the doctor on shift for a long time had the slightest benefit.
I’m sure cases exist. But I’d be rather surprised if they’re common.
> My understanding is that the research shows that the harm to patient care from information loss during doctor shift turnover is worse than the harm from fatigued doctors.
This would not appear to apply to emergency surgeries. They aren't done by doctors who are familiar with the patient anyway. (Neither are non-emergency surgeries. Surgeries are done by doctors who do that kind of surgery. Familiarity with the patient is useful in deciding what surgery should be done, but not in doing the surgery.)
The answer is there’s already a doctor shortage, and the US simply does not have the capacity to effectively 2x the doctor-patient ratio.
Doctors are also unlikely to want a 50% pay cut in exchange for shorter hours. They aren’t directly exposed to the risk caused by fatigue since they will have malpractice insurance. Therefore the safer method of care would be simply too expensive, and doctors wouldn’t see an upside.
Part of the shortage is a result of artificially constrained supply as there aren’t enough med school seats to keep up with demand.
Doctors do not get along and that’s too many Drs. Each patient often has multiple speciality Drs visiting them and reviewing their case up to 3 or 4 sometimes already. Imagine being on consult and trying to figure out which guy on a team of 4 you should talk to about such and such.
Here's an anecdote that might help answer. When my wife was pregnant with our first doctor, she started hemorrhaging spontaneously ten weeks before her due date. We rushed to the ER.
1. Shortly after, a doctor A came in, asked some questions, looked at the chart, and told us she was having the baby tonight. Holy shit our life is about to get crazy and we're going to be parents 2+ months early! He leaves.
2. Several hours later doctor B comes in. We ask about delivery. "Oh, no. You're not going to have the baby now. But you will have to be on bed rest until the due date." Jesus, my wife is going to have to quit her job.
4. Even more hours later, now the next morning, doctor C arrives. "OK, you're free to go home. No bed rest needed. Just let us know if anything else happens."
My general experience with doctors is that you get as many unique opinions as there are doctors in the room. This is not an indictment of the profession. Human bodies are insanely complex, there is way more variation between them than most people realize, and doctors are operating under very very limited time and information.
Having overlapping doctors would likely cause even more patient confusion and increase the risk conflicting treatments. Also, it would obviously double the cost of care.
(My wife and baby were fine. Partial abruption. Very scary and my daughter was born five weeks early, but no other significant problems.)
Many industries have solved this issue already. Use a pilot/copilot model. First doctor drives, second one mostly observes and makes sure the first one doesn’t make mistakes.
The European Working Time Directive has requirements for rest, etc. Either Europeans have much better hand-off procedures, they don't know how to comply with the rules they make, or they're fucking idiots who are going to kill people due to information loss during shift turnover. It was proposed decades ago. I wonder what compliance is like in Germany, etc.
> Yes, a tired doctor sucks. But a tired doctor who already has the patient's state loaded into their head may still be better than doctor who is completely fresh in both senses.
AI fixes this. Imagine the boot time of loading a patient's state from dozens of labs and files vs. a summary that gets you to exactly what they're going to end up remembering anyways. And if a doctor finds something interesting that the AI doesn't flag, they should be flagging it in the chart for the next doctor anyways.
In my experience, AI summarization is a pretty lame application. I don’t really need a block of potentially wrong, rephrased text. I’ve got a feeling that the same applies to healthcare.
I don't think that logic quite holds up because when you have two NaNs that do have the same bit representation, a conforming implementation still has to report them as not equal. So an implementation of `==` that handles NaN still ends up poking around in the bits and doing some extra logic. It's not just "are the bit patterns the same?"
(I believe this is also true for non-NaN floating point values. I'm not sure but off the top of my head, I think `==` needs to ignore the difference between positive and negative zero.)
Tangential, but this is one of the things I like about eating fish. There are so many species you can eat, some of which you can only find in certain regions or have to catch yourself. My list of aquatic animals I've eaten has 47 entries on it and I've surely missed some because it's often hard to tell exactly what species you're getting at a restaurant. I'm always excited to add more to the list.
Some less common ones I've had are sickle pomfret ("monchong") and moonfish ("opah") from a fish market in Hawaii, cobia from a fishing trip in Florida, and many perch and bluegill that I've caught myself.
reply