let's get this party started #NBPy
-
"*Why* are users turning to chatbots as a way of dealing with loneliness? What are the gaps in existing technology?"
"Oppose *systems*
Support *people*" -
"*Why* are users turning to chatbots as a way of dealing with loneliness? What are the gaps in existing technology?"
@glyph
Isn't the obvious question what the gaps in society are that make people turn to chatbots as a way of dealing with loneliness? Technology won't address loneliness, it might fill the time that people otherwise would feel a craving for connection with living beings. -
"Oppose *systems*
Support *people*"Whew. After a short (and much needed) "emotional whiplash break" inserted into the schedule by @chrisjrn, we have @benno with "State of Exception(s)", a talk about error handling. And then as befits a lighter-hearted and more technical talk, we open with a brief reference to the historical figure of Carl Schmitt and commentary from "reactionary twit" Brian Lunduke.
Oops.
Ahem. And now, some examples of idiomatic error handling in C…
-
Whew. After a short (and much needed) "emotional whiplash break" inserted into the schedule by @chrisjrn, we have @benno with "State of Exception(s)", a talk about error handling. And then as befits a lighter-hearted and more technical talk, we open with a brief reference to the historical figure of Carl Schmitt and commentary from "reactionary twit" Brian Lunduke.
Oops.
Ahem. And now, some examples of idiomatic error handling in C…
(slide full of C code)
"Who knows the undefined behavior"
(pause for less than 30 seconds)
sometimes rhetoric is still very effective even if you know exactly how the trick works
-
(slide full of C code)
"Who knows the undefined behavior"
(pause for less than 30 seconds)
sometimes rhetoric is still very effective even if you know exactly how the trick works
-
@glyph It shouldn't be. When I was younger, the law interpreted things as "once you own or have the right to use something, any attempt by anyone to deny you use of it is illegal and you can do whatever you need to do to use your stuff". You were supposed to minimize damage to other people's stuff, but if they tried to put a lock on something you'd already bought and paid for you could just cut the lock off.
Unfortunately, these devices now take advantage of DRM or argue that they are proprietary which triggers the DMCA. This has caused a lot of headaches for everyone.
I wrote a research paper on this here:
Written: April 25, 2024
The Paradox of Ownership in the Digital Age: How DMCA and DRM Limit Access and Undermine Preservation Efforts The digital age has ushered in a revolution in how we access and intera...
autumn (pen.waltuh.cyou)
-
"Exception handling requires runtime code"
- C++ requires a runtime (sometimes: if you're writing kernel code or some other no-runtime context you might have to write C++ in a dialect that is missing runtime-requiring language features)
- Python obviously in its own runtime
- Rust… has no runtimeSo: rust has no exceptions.
Rust has result types.
-
"Exception handling requires runtime code"
- C++ requires a runtime (sometimes: if you're writing kernel code or some other no-runtime context you might have to write C++ in a dialect that is missing runtime-requiring language features)
- Python obviously in its own runtime
- Rust… has no runtimeSo: rust has no exceptions.
Rust has result types.
Benno carefully emphasizes that he doesn't want to be engaging in language wars, and in the spirit of honoring that I won't over-emphasize this, but he has the same feelings (bad) that I have about the way that Go halfheartedly encourages you to handle errors with tuple returns, by allowing you to easily forget to handle them.
-
Benno carefully emphasizes that he doesn't want to be engaging in language wars, and in the spirit of honoring that I won't over-emphasize this, but he has the same feelings (bad) that I have about the way that Go halfheartedly encourages you to handle errors with tuple returns, by allowing you to easily forget to handle them.
Love to see @dreid getting an (implicit) shout-out from the stage as well, via a website you should all be familiar with, https://how.complexsystems.fail
-
Love to see @dreid getting an (implicit) shout-out from the stage as well, via a website you should all be familiar with, https://how.complexsystems.fail
-
Kattni recites a litany of reasons that @freakboy3742 is an open-source maintainer role model for me. The BeeWare sprint at PyCon 2024 was filled with joy, constant recognition of contributors' achievements, rewards (challenge coins, and I just failed a coin check). Achieving this sort of social milieu with the degree of intentionality that Russell does is really something to aspire to, and it is not easy.
-
Kattni recites a litany of reasons that @freakboy3742 is an open-source maintainer role model for me. The BeeWare sprint at PyCon 2024 was filled with joy, constant recognition of contributors' achievements, rewards (challenge coins, and I just failed a coin check). Achieving this sort of social milieu with the degree of intentionality that Russell does is really something to aspire to, and it is not easy.
Apropos of the conclusion of the previous talk — "Human practitioners are the adaptable element of complex systems." — we are introduced to a way that Russell recovered from an error, i.e.: the review process created some pretty severe and unpleasant code review anxiety, and he immediately apologized and adjusted his style as soon as he was made aware.
Setting up good processes is important but the *meta*-process being responsive to human input is even moreso.
-
"Exception handling requires runtime code"
- C++ requires a runtime (sometimes: if you're writing kernel code or some other no-runtime context you might have to write C++ in a dialect that is missing runtime-requiring language features)
- Python obviously in its own runtime
- Rust… has no runtimeSo: rust has no exceptions.
Rust has result types.
@glyph I'd say that this is a bit of an over-simplification. Maybe a useful one for the purpose of discussion, but Rust does have a runtime, just a relatively small one that is designed to not get in the way of integrating with other languages.
I mean, a memory allocator is part of a runtime. And you have panics in Rust, which are normally implemented as unwinding, which can be caught and handled (effectively exceptions). And you have a few other runtime like things like stack guards, the Any type, threads, etc.
However, in Rust panics are truly intended for exceptional situations, while Results are intended for error cases that you expect to handle.
It's possible to write Rust with no (or maybe should say even smaller than usual) runtime, with no_std, panic=abort, etc. And Rust's Result based error handling does continue to work there. But I would say that Rust, as normally written on a std-supporting platform, does have a runtime, albeit a minimal one.
-
Extremely valuable reminder about "simply" and "just": this language (along with its pals; "basically" "obviously", "of course") isn't merely stylistic noise; it sends a specific message:
"This should be easy"
or, in other words:
"If this isn't easy, it's your fault"
This is implicitly an attack on the reader.
@glyph Yes. It's a difficult habit to break. But important if you don't want to belittle your audience.
-
Apropos of the conclusion of the previous talk — "Human practitioners are the adaptable element of complex systems." — we are introduced to a way that Russell recovered from an error, i.e.: the review process created some pretty severe and unpleasant code review anxiety, and he immediately apologized and adjusted his style as soon as he was made aware.
Setting up good processes is important but the *meta*-process being responsive to human input is even moreso.
Kattni describes a pretty intense process of recovering from trauma around code review, with the BeeWare team's help, that is complex enough that it's hard to capture in some quick notes here, but it really emphasizes that OSS governance *is* the process of nurturing contributor relationships. And that process worked, because where it lead to was:
"Obviously the response to discovering trauma around contribution is to take on a massive complex contribution, right?"
-
Kattni describes a pretty intense process of recovering from trauma around code review, with the BeeWare team's help, that is complex enough that it's hard to capture in some quick notes here, but it really emphasizes that OSS governance *is* the process of nurturing contributor relationships. And that process worked, because where it lead to was:
"Obviously the response to discovering trauma around contribution is to take on a massive complex contribution, right?"
Kattni emphasizes that this is not a simple story of having a problem and then fixing it and then it's fixed. Trauma responses don't just go away with a little bit of empathy. Trust is not permanent; it can be broken, it needs to be repaired:
"I went through being convinced that I couldn't do this, several more times…over time, though, the ups have begun to outnumber the downs.…This is a hard fought improvement. It came through both repeated successes and multiple mistakes."
-
Kattni emphasizes that this is not a simple story of having a problem and then fixing it and then it's fixed. Trauma responses don't just go away with a little bit of empathy. Trust is not permanent; it can be broken, it needs to be repaired:
"I went through being convinced that I couldn't do this, several more times…over time, though, the ups have begun to outnumber the downs.…This is a hard fought improvement. It came through both repeated successes and multiple mistakes."
"You have to consciously and deliberately maintain it, or it will dissipate."
-
Good morning! Up now: "An Economy of Empathy" by @pythonbynight . We are starting off … extremely dark … with some descriptions of the grisly reality of content-moderation work in the global south at a company called "Sama" (on behalf of Meta, née Facebook) and moving directly to eugenics, including from the founder of "AI", and creator of Lisp, John McCarthy. Oooooooof.
"Are these biases still present in the tech industry?"
Not exactly a surprise, but, again: oof. #NBPy
@glyph @pythonbynight Ha, just yesterday I was watching the documentary Ghost In The Machine, and it talks about similar things: Pearson developing the core tools of statistics for eugenics, about clustering techniques also originating from that, about McCarthy, about Sama, etc.
goatcheese (@goatcheese@eldritch.cafe)
Watched the "AI" documentary Ghost in the Machine today (streamed on [kinema](https://kinema.com/films/ghost-in-the-machine-pvxg4p), no showings in my neck of the woods). It was Excellent. It connects the dots between eugenics as a byproduct of colonization, to the advent of computers, of Silicon Valley, and all the way to current day "AI" companies.
Eldritch Café (eldritch.cafe)
Lots of awful discoveries for me in that doc. Highly recommend if you haven't seen it.
Are the NBPy talks recorded? I couldn't find a mention of it on the website.
-
@glyph @pythonbynight Ha, just yesterday I was watching the documentary Ghost In The Machine, and it talks about similar things: Pearson developing the core tools of statistics for eugenics, about clustering techniques also originating from that, about McCarthy, about Sama, etc.
goatcheese (@goatcheese@eldritch.cafe)
Watched the "AI" documentary Ghost in the Machine today (streamed on [kinema](https://kinema.com/films/ghost-in-the-machine-pvxg4p), no showings in my neck of the woods). It was Excellent. It connects the dots between eugenics as a byproduct of colonization, to the advent of computers, of Silicon Valley, and all the way to current day "AI" companies.
Eldritch Café (eldritch.cafe)
Lots of awful discoveries for me in that doc. Highly recommend if you haven't seen it.
Are the NBPy talks recorded? I couldn't find a mention of it on the website.
@goatcheese @glyph I also have a review of this excellent documentary on my site!
Ghost in the Machine Review
Ghost in the Machine details the eugenic and techno-fascist underpinnings of the AI industry.
Python By Night (pythonbynight.com)
And yes, the talks are recorded. Unsure of release schedule but it's usually pretty quick. I'll update once posted.
-
M mttaggart@infosec.exchange shared this topic