swingandswirl: text 'tammy' in white on a blue background.  (Default)
[personal profile] swingandswirl
RL continues to conspire against me, but I am determined to finish this challenge, damn it. So here is #9!




Snowflake Challenge promotional banner featuring an image of a wrapped giftbox with a snowflake on the gift tag. Text: Snowflake Challenge January 1-31.


Challenge #9

Talk about your favorite tropes in media or transformative works. (Feel free to substitute in theme/motif/cliche if "trope" doesn't resonate with you.)

For this challenge, I'm going to talk about my favourite tropes in fic.

1. Genderswap, specifically M > F in specific canons/contexts.

Genderswap is one of my favourite tropes, especially in canons where it would make a massive difference. I just love seeing what the story would be if it were Rose Potter rather than Harry, Clara Kent rather than Clark, or Stephanie Rogers rather than Steve, not least because I just find women more interesting. And I'm always here for M/F romances that aren't your standard Heterosexual Nonsense, lol. As a bonus, girls are women just aren't allowed to be the same kind of stupid that boys and men are, which usually makes for a much better story. 


2. Fix-it fics

Sometimes canon is stupid, so you reject it and insert your own. I love all kinds of fix-its, whether they're canon divergence or time travel. It helps that I grew up in HP fandom and later fell into MCU, both of which canons started well and then spectacularly shat the bed, lolsob. I also enjoy fics that give characters a smoother path to happiness - this is my favourite kind of Pride and Prejudice variant. What can I say, I just want my blorbos to be happy and live easy lives!

(Important note: I do not enjoy the kind of self-proclaimed 'fix-it' endemic to the Harry Potter fandom where it's clear that the author does not understand that Harry Potter started out as a silly kids' series that got so big JKR couldn't cope. No, you're not super smart for going 'ohoho the WW is a dystopia populated by sheep'; you just don't understand how genre conventions work. And that HP shifted mid-series in the most goatfucking stupid way possible.)


3. Competence porn

Keep your hot messes, y'all, I'm enough of one already, I don't want to read about or watch them for entertainment, thanks. One of my favourite parts of fiction is watching smart, skilled people do their jobs well - I blame all the romance novels with bad-ass heroines I read as a child. Also all the HP AUs and fix-its that consumed my adolescence, and falling headfirst into Superbat, because you don't get more competent than those two. There's just something so invigorating as well as reassuring about the quiet confidence that skill brings with it. I don't have to worry - my blorbos have it. 


4. Confessions


Look, I'm a romance girlie, okay? Confessions are the best part! Especially if they come after pining, or when the characters have no idea their feelings are reciprocated. Bonus points if the confession happens in a situation of great peril, or is prompted by one or both of the characters nearly dying. 


5. Pining

Look, instalove is all well and good, but sometimes you need the happy ending to be EARNED. Especially if it's two clueless idiots who have no bloody clue and insist the other just sees them as a friend. (Never mind their lives are basically 'Friends Don't' by Maddie and Tay.) Look, Superbat is one of my OTPs for a REASON and that reason is that pining is DELICIOUS. 


6. Fake dating

The only way to make pining better? Put the blorbos in situations where they have to pretend to be a couple For Reasons. Marriage of convenience, undercover, keeping family/friends/whoever off one's back... so many ways to have them go 'but they would never like me like that' while situation after situation happens that proves the opposite, lol. 


7. Better than canon/the real world

Look, I read for escapism. Plain and simple. I don't want tooth-rotting fluffy curtain-fic, but at the same time... if it's darker than canon? NOPE. Get the behind me, Satan. I don't want a HP universe that is a sexist hellscape where Muggleborns are little better than animals, or a dystopia run by sheep that needs to be saved by the oh-so-advanced Muggles. I don't want Bruce and Clark, or Steve and Tony, at each others' throats. I don't want Darcy and Elizabeth to have to go through hell before they can have their happy ending. 


8. Geeky girl with non-intellectual-but-smart-jock who loves her brain

Look, I've been a Hermione/Viktor fan since I was fourteen. If that doesn't explain my love for this trope, I don't know what does. Hilariously, I was reminded of how much I love it by Taylor Swift and Travis Kelce. Because there's honestly nothing sexier than a guy who is secure enough in his masculinity to revel in his woman's success. Also? Just because someone isn't an intellectual, or is into sports, doesn't mean they aren't smart and capable and great partners. Much more so than Intellectual Art Boys, in many cases. 


9. Being picked over a supposedly 'better' romantic option

This is tied to my love of the previous trope. There is nothing that makes me swoon like someone telling their partner, 'No. I choose YOU, because you are a be choice for me and fuck what society/anyone else thinks.' Because at the end of the day, that's what true love is to me, more than fate or soulmates or whatever - choosing to be with someone. 


If anyone has recs with these tropes, I would love to hear them! My reading fandoms are HP (no Snape though please), Numb3rs, Superbat, Stony, Star Trek AOS, LOTR/The Hobbit, The Goblin Emperor, Hawaii 5-0, and Pride and Prejudice.

(no subject)

Feb. 9th, 2026 09:12 am
seekingferret: Two warning signs one above the other. 1) Falling Rocks. 2) Falling Rocs. (Default)
[personal profile] seekingferret
Cathedrals of Science by Patrick Coffey

I picked it up because Wikipedia says Gilbert Lewis was nominated for a Nobel Prize 41 times and never won and I was like, there's gotta be a story there. I couldn't find a bio of Lewis, but I did find this, which is a group bio of Lewis and a cohort of physical chemists who revolutionized chemistry in the early 20th century. Lewis is joined in the main cast by Arrhenius and Nernst and Langmuir and Seaborg, all names I'd heard before but didn't really know.

Lewis had some Massachusetts blue blood, but he grew up in Nebraska before returning to attend Harvard and finishing his studies in Europe. And it seems clear that he was always a bit of a social oddball, even once he established himself as the king of chemistry at Berkeley.

The book has some serious parts when it covers the intersection of chemistry and the world wars, and Lewis's strange and tragic death, but mostly it's about how amazingly petty chemists are. I loved reading about how they kept stealing credit from each other for discoveries and doing backroom deals to keep each other from winning Nobel prizes.

To be clear, because I still don't understand how Nobel Prizes are awarded, it's not that Lewis was nominated in 41 years and never won. He received nominations from 41 people over a span of something like 25 years, for multiple discoveries and theoretical advancements in the field. He also devoted those 25 years, and the 20 before, to publically trashing the science of several of the people who decided who would win the prize, or had influence on the decides. Coffey digs up amazing documentary evidence of the coordinated campaign against Lewis, but also makes you think maybe you don't blame them for it.

Anyway, a long running theme in this journal is the way science doesn't move in a sphere of pure ideas but is instead a function of imperfect personalities in collision, and this was a brilliant illumination of that theme.

And if you just think Chemistry: The Soap Opera sounds fun, this is the book for you.

six thoughts on generating c

Feb. 9th, 2026 01:47 pm
[syndicated profile] wingolog_feed

Posted by Andy Wingo

So I work in compilers, which means that I write programs that translate programs to programs. Sometimes you will want to target a language at a higher level than just, like, assembler, and oftentimes C is that language. Generating C is less fraught than writing C by hand, as the generator can often avoid the undefined-behavior pitfalls that one has to be so careful about when writing C by hand. Still, I have found some patterns that help me get good results.

Today’s note is a quick summary of things that work for me. I won’t be so vain as to call them “best practices”, but they are my practices, and you can have them too if you like.

static inline functions enable data abstraction

When I learned C, in the early days of GStreamer (oh bless its heart it still has the same web page!), we used lots of preprocessor macros. Mostly we got the message over time that many macro uses should have been inline functions; macros are for token-pasting and generating names, not for data access or other implementation.

But what I did not appreciate until much later was that always-inline functions remove any possible performance penalty for data abstractions. For example, in Wastrel, I can describe a bounded range of WebAssembly memory via a memory struct, and an access to that memory in another struct:

struct memory { uintptr_t base; uint64_t size; };
struct access { uint32_t addr; uint32_t len; };

And then if I want a writable pointer to that memory, I can do so:

#define static_inline \
  static inline __attribute__((always_inline))

static_inline void* write_ptr(struct memory m, struct access a) {
  BOUNDS_CHECK(m, a);
  char *base = __builtin_assume_aligned((char *) m.base_addr, 4096);
  return (void *) (base + a.addr);
}

(Wastrel usually omits any code for BOUNDS_CHECK, and just relies on memory being mapped into a PROT_NONE region of an appropriate size. We use a macro there because if the bounds check fails and kills the process, it’s nice to be able to use __FILE__ and __LINE__.)

Regardless of whether explicit bounds checks are enabled, the static_inline attribute ensures that the abstraction cost is entirely burned away; and in the case where bounds checks are elided, we don’t need the size of the memory or the len of the access, so they won’t be allocated at all.

If write_ptr wasn’t static_inline, I would be a little worried that somewhere one of these struct values would get passed through memory. This is mostly a concern with functions that return structs by value; whereas in e.g. AArch64, returning a struct memory would use the same registers that a call to void (*)(struct memory) would use for the argument, the SYS-V x64 ABI only allocates two general-purpose registers to be used for return values. I would mostly prefer to not think about this flavor of bottleneck, and that is what static inline functions do for me.

avoid implicit integer conversions

C has an odd set of default integer conversions, for example promoting uint8_t to signed int, and also has weird boundary conditions for signed integers. When generating C, we should probably sidestep these rules and instead be explicit: define static inline u8_to_u32, s16_to_s32, etc conversion functions, and turn on -Wconversion.

Using static inline cast functions also allows the generated code to assert that operands are of a particular type. Ideally, you end up in a situation where all casts are in your helper functions, and no cast is in generated code.

wrap raw pointers and integers with intent

Whippet is a garbage collector written in C. A garbage collector cuts across all data abstractions: objects are sometimes viewed as absolute addresses, or ranges in a paged space, or offsets from the beginning of an aligned region, and so on. If you represent all of these concepts with size_t or uintptr_t or whatever, you’re going to have a bad time. So Whippet has struct gc_ref, struct gc_edge, and the like: single-member structs whose purpose it is to avoid confusion by partitioning sets of applicable operations. A gc_edge_address call will never apply to a struct gc_ref, and so on for other types and operations.

This is a great pattern for hand-written code, but it’s particularly powerful for compilers: you will often end up compiling a term of a known type or kind and you would like to avoid mistakes in the residualized C.

For example, when compiling WebAssembly, consider struct.set‘s operational semantics: the textual rendering states, “Assert: Due to validation, val is some ref.struct structaddr.” Wouldn’t it be nice if this assertion could translate to C? Well in this case it can: with single-inheritance subtyping (as WebAssembly has), you can make a forest of pointer subtypes:

typedef struct anyref { uintptr_t value; } anyref;
typedef struct eqref { anyref p; } eqref;
typedef struct i31ref { eqref p; } i31ref;
typedef struct arrayref { eqref p; } arrayref;
typedef struct structref { eqref p; } structref;

So for a (type $type_0 (struct (mut f64))), I might generate:

typedef struct type_0ref { structref p; } type_0ref;

Then if I generate a field setter for $type_0, I make it take a type_0ref:

static inline void
type_0_set_field_0(type_0ref obj, double val) {
  ...
}

In this way the types carry through from source to target language. There is a similar type forest for the actual object representations:

typedef struct wasm_any { uintptr_t type_tag; } wasm_any;
typedef struct wasm_struct { wasm_any p; } wasm_struct;
typedef struct type_0 { wasm_struct p; double field_0; } type_0;
...

And we generate little cast routines to go back and forth between type_0ref and type_0* as needed. There is no overhead because all routines are static inline, and we get pointer subtyping for free: if a struct.set $type_0 0 instruction is passed a subtype of $type_0, the compiler can generate an upcast that type-checks.

fear not memcpy

In WebAssembly, accesses to linear memory are not necessarily aligned, so we can’t just cast an address to (say) int32_t* and dereference. Instead we memcpy(&i32, addr, sizeof(int32_t)), and trust the compiler to just emit an unaligned load if it can (and it can). No need for more words here!

for ABI and tail calls, perform manual register allocation

So, GCC finally has __attribute__((musttail)): praise be. However, when compiling WebAssembly, it could be that you end up compiling a function with, like 30 arguments, or 30 return values; I don’t trust a C compiler to reliably shuffle between different stack argument needs at tail calls to or from such a function. It could even refuse to compile a file if it can’t meet its musttail obligations; not a good characteristic for a target language.

Really you would like it if all function parameters were allocated to registers. You can ensure this is the case if, say, you only pass the first n values in registers, and then pass the rest in global variables. You don’t need to pass them on a stack, because you can make the callee load them back to locals as part of the prologue.

What’s fun about this is that it also neatly enables multiple return values when compiling to C: simply go through the set of function types used in your program, allocate enough global variables of the right types to store all return values, and make a function epilogue store any “excess” return values—those beyond the first return value, if any—in global variables, and have callers reload those values right after calls.

what’s not to like

Generating C is a local optimum: you get the industrial-strength instruction selection and register allocation of GCC or Clang, you don’t have to implement many peephole-style optimizations, and you get to link to to possibly-inlinable C runtime routines. It’s hard to improve over this design point in a marginal way.

There are drawbacks, of course. As a Schemer, my largest source of annoyance is that I don’t have control of the stack: I don’t know how much stack a given function will need, nor can I extend the stack of my program in any reasonable way. I can’t iterate the stack to precisely enumerate embedded pointers (but perhaps that’s fine). I certainly can’t slice a stack to capture a delimited continuation.

The other major irritation is about side tables: one would like to be able to implement so-called zero-cost exceptions, but without support from the compiler and toolchain, it’s impossible.

And finally, source-level debugging is gnarly. You would like to be able to embed DWARF information corresponding to the code you residualize; I don’t know how to do that when generating C.

(Why not Rust, you ask? Of course you are asking that. For what it is worth, I have found that lifetimes are a frontend issue; if I had a source language with explicit lifetimes, I would consider producing Rust, as I could machine-check that the output has the same guarantees as the input. Likewise if I were using a Rust standard library. But if you are compiling from a language without fancy lifetimes, I don’t know what you would get from Rust: fewer implicit conversions, yes, but less mature tail call support, longer compile times... it’s a wash, I think.)

Oh well. Nothing is perfect, and it’s best to go into things with your eyes wide open. If you got down to here, I hope these notes help you in your generations. For me, once my generated C type-checked, it worked: very little debugging has been necessary. Hacking is not always like this, but I’ll take it when it comes. Until next time, happy hacking!

Pineapple tart update, with recipes

Feb. 9th, 2026 01:43 pm
qian: Tiny pink head of a Katamari character (Default)
[personal profile] qian
My entire weekend got swallowed up by pineapple tarts, as I decided to make the tarts on Sunday. I made two batches of pastry, one batch with cheese and one without, following this recipe. I basically ignored the family for much of the day in order to do this, but still had to take various breaks to make lunch for the kids, eat myself, tidy up, intervene in quarrels, etc. So there were various shenanigans by way of: had to stop making tarts so put pastry in the fridge for too long and it had turned into granite by the time I returned to it; someone must have butt-dialled the oven so it wasn't the temperature I set it at and the tarts came out darker than they should be; threw away the egg wash then remembered I had 6 remaining tarts to egg-wash so they only got a milk wash and are not as pretty; etc. etc.

The cheesy batch of pastry in particular was terribly stiff and hard to work with; I couldn't roll it without it cracking all over. I think I might have overworked the dough? In any case, my pastry doesn't seem to come together the way What to Cook Today suggests it will, so I'm going to put a rewritten recipe for pineapple tarts below -- what worked for ME. Fortunately the resulting tarts all taste great. I keep eating them to try to figure out if I like cheese-free or cheesy better, but it's hard to decide!

Pineapple jam recipe )

Pineapple tarts recipe )

Just one thing: 9 February 2026

Feb. 9th, 2026 07:09 am
[personal profile] jazzyjj posting in [community profile] awesomeers
It's challenge time!

Comment with Just One Thing you've accomplished in the last 24 hours or so. It doesn't have to be a hard thing, or even a thing that you think is particularly awesome. Just a thing that you did.

Feel free to share more than one thing if you're feeling particularly accomplished!

Extra credit: find someone in the comments and give them props for what they achieved!

Nothing is too big, too small, too strange or too cryptic. And in case you'd rather do this in private, anonymous comments are screened. I will only unscreen if you ask me to.

Go!

EdText

Feb. 9th, 2026 07:34 am
[syndicated profile] nedbatchelder_feed

Posted by Ned Batchelder

I have a new small project: edtext provides text selection and manipulation functions inspired by the classic ed text editor.

I’ve long used cog to build documentation and HTML presentations. Cog interpolates text from elsewhere, like source code or execution output. Often I don’t want the full source file or all of the lines of output. I want to be able to choose the lines, and sometimes I need to tweak the lines with a regex to get the results I want.

Long ago I wrote my own ad-hoc function to include a file and over the years it had grown “organically”, to use a positive word. It had become baroque and confusing. Worse, it still didn’t do all the things I needed.

The old function has 16 arguments (!), nine of which are for selecting the lines of text:

start=None,

end=None,
start_has=None,
end_has=None,
start_from=None,
end_at=None,
start_nth=1,
end_nth=1,
line_count=None,

Recently I started a new presentation, and when I couldn’t express what I needed with these nine arguments, I thought of a better way: the ed text editor has concise mechanisms for addressing lines of text. Ed addressing evolved into vim and sed, and probably other things too, so it might already be familiar to you.

I wrote edtext to replace my ad-hoc function that I was copying from project to project. Edtext lets me select subsets of lines using ed/sed/vim address ranges. Now if I have a source file like this with section-marking comments:

import pytest


# section1
def six_divided(x):
    return 6 / x

# Check the happy paths

@pytest.mark.parametrize(
    "x, expected",
    [ (4, 1.5), (3, 2.0), (2, 3.0), ]
)
def test_six_divided(x, expected):
    assert six_divided(x) == expected
# end

# section2
# etc....

then with an include_file helper that reads the file and gives me an EdText object, I can select just section1 with:

include_file("test_six_divided.py")["/# section1/+;/# end/-"]

EdText allows slicing with a string containing an ed address range. Ed addresses often (but don’t always) use regexes, and they have a similar powerful compact feeling. “/# section1/” finds the next line containing that string, and the “+” suffix adds one, so our range starts with the line after the section1 comment. The semicolon means to look for the end line starting from the start line, then we find “# end”, and the “-” suffix means subtract one. So our range ends with the line before the “# end” comment, giving us:

def six_divided(x):

    return 6 / x

# Check the happy paths

@pytest.mark.parametrize(
    "x, expected",
    [ (4, 1.5), (3, 2.0), (2, 3.0), ]
)
def test_six_divided(x, expected):
    assert six_divided(x) == expected

Most of ed addressing is implemented, and there’s a sub() method to make regex replacements on selected lines. I can run pytest, put the output into an EdText object, then use:

pytest_edtext["1", "/collected/,$-"].sub("g/====", r"0.0\ds", "0.01s")

This slice uses two address ranges. The first selects just the first line, the pytest command itself. The second range gets the lines from “collected” to the second-to-last line. Slicing gives me a new EdText object, then I use .sub() to tweak the output: on any line containing “====”, change the total time to “0.01s” so that slight variations in the duration of the test run doesn’t cause needless changes in the output.

It was very satisfying to write edtext: it’s small in scope, but useful. It has a full test suite. It might even be done!

[syndicated profile] firefoxnightly_feed

Posted by Mozilla

149.0a1 / Changed / Bug 1949057

On Linux, Firefox will now default to the XDG portal file picker if available, rather than the GTK3 one, which is usually better integrated with the user's desktop environment, and more powerful.

Baseball!?

Feb. 9th, 2026 06:23 am
js_thrill: greg from over the garden wall (Default)
[personal profile] js_thrill
I'm always saying "why isn't this sci fi short story mostly descriptions of a game of baseball?"

This Year 365 songs: February 9th

Feb. 9th, 2026 06:11 am
js_thrill: goat with headphones (goat rock)
[personal profile] js_thrill
Today we are treated to Some Swedish Trees


I like this song a lot. The music reminds me a bit of the opening to Amy AKA Spent Gladiator, and the annotations return to Darnielle's meditations on his penchant for indirect narrative.  The lyrics here leave one with a lot of questions, if you focus on them as a narrative, but (as Darnielle notes), the tone is not one of intentional secret-keeping.  It is more like eavesdropping on bits of a story being told at a nearby table in a coffeeshop, and missing pieces as a result of only hearing the parts spoken loud enough to reach you.

[syndicated profile] firefoxnightly_feed

Posted by Mozilla

149.0a1 / Changed / Bug 2007588

Firefox 149 tightens the security requirements for the JavaScript files that can be loaded in the parent process, to provide defense in depth against security threats.

[syndicated profile] queens_eagle_feed

Posted by Jacob Kaye

Stanley Richards, the new commissioner of the Department of Correction, sat down with the Eagle for a wide-ranging interview last week. File photo by Michael Appleton/Mayoral Photography Office

By Jacob Kaye

The history of Rikers Island is unambiguous.

For nearly a century, the isolated island, connected to the city only by a narrow bridge to Queens, has been defined by violence, chaos and death.

But its future is far less clear.

To Stanley Richards, the city’s new commissioner of the Department of Correction, it may even be one filled with hope.

Though Richards inherited a department mired in dysfunction, he’ll be given a number of opportunities to enact the reforms he’s been advocating for since he was released from prison more than 30 years ago.

Richards, who will become the first formerly incarcerated person to lead the DOC when he officially gets the keys to the commissioner’s office on Feb. 17, enters the job as the city is on the cusp of major changes to its jail system.

Days before his appointment, a federal judge tapped a former CIA agent to serve as her remediation manager and assume significant responsibility over the day-to-day management of Rikers Island and the DOC in an effort to reduce the violence and dysfunction that has persisted in the jails for decades. Though Richards said he and the remediation manager, Nicholas Deml, have agreed to work in partnership, Deml’s authority will supersede Richards’ on a number of occasions. Unlike Richards, who will report to Mayor Zohran Mamdani, Deml will answer only to the judge.

The relationship between the two will likely have a major impact on whether or not the reforms both desire actually take root.

Then there’s the city’s plan to close Rikers Island, which fell years behind schedule under the tenure of former Mayor Eric Adams. Though city law mandates that the dangerous jail complex be shut down by August 2027, city officials have all but admitted the deadline has become impossible to meet.

Nonetheless, Richards said he is committed to fulfilling the plan and to opening the four borough-based jails to replace Rikers once it’s actually closed.

“We're at a moment where City Hall and our mayor are saying that accepting the status quo is unacceptable, and we need to do something about it and bring change,” Richards told the Eagle. “And so that's the work that I've been charged to do.”

Richards discussed the critical moment the city, the DOC and its jails are in, as well as his philosophical approach to leading the department, how he’ll measure his performance, how he’ll address the growing number of deaths in the jails last year, and more during a recent interview with the Eagle.

The following interview has been edited for length and clarity.

Eagle: Starting with a little bit of a philosophical question. There are a number of reactions people have to the onslaught of stories about violence and dysfunction on Rikers Island. Some are infuriated, some are apathetic, some are exasperated or resigned. Where do you land on this spectrum?

Richards: I think that's the heart of the work that I need to focus on – making sure that our jails are safe for staff, our jails are safe for incarcerated people. And it starts by making sure that we have fundamental correctional practices, and also bringing in programs, creating incentives for both staff and for incarcerated people, so that the level of frustration, distrust, and anger begins to dissipate. I'm going to build an administration that delivers that.

This is not an overnight process. Every day we need to take a critical inch that demonstrates that jails are getting safer, people are feeling valued.

When you look at Rikers, from the facilities, from the isolation of the island, from the continuous demonization and scapegoating, what that has done is just kept us entrenched in what we've seen decade after decade. What I want to do is to bring some light, to bring hope.

Eagle: You're making history as the first formerly incarcerated person to lead the DOC. Can you name one thing that's changed about Rikers since you were incarcerated there in the 1980s, and one thing that hasn't changed?

Richards: One thing that hasn't changed is the mental state from when I was there for almost a year and a half. What has changed is the process by which cases are getting adjudicated, and I think it’s gotten worse. That's something we need, as the mayor says, all of government to lean in on that.

What has gotten better is the number of people we have detained. When I was there, there were 22,000 people in the system. We're down to 6,800 right now. Although when I left the DOC in 2021, it was lower. The numbers have been going up under the last administration. But it's my hope we use this all-of-government approach to begin to bring that number down, begin to engage our community partners so that we can safely divert people to community-based services, making sure the service providers that are working in partnership with us on the island are engaging and connecting people to services and housing and mental health services upon their release. It's about using the DOC commissioner’s 6-A authority to safely release people to the community through the work release program. It's working with the state to make sure that when cases get adjudicated and they're ready for transportation to state prison, that that happens in a timely way. If we use all those strategies, we could begin to reduce the population and prepare for the borough-based jails.

Eagle: Speaking of 6-A, the DOC’s work release program: Your predecessor, Lynelle Maginley-Liddie has been criticized by advocates for failing to use the program as frequently as she could. Do you have a target number of work releases in mind?

Richards: I don’t have a number but I have two practices. We're having nonprofit program providers come back in the department and I want to set up everyone who enters our jails. I want them screened to see what Alternative to Incarceration diversion programs they are eligible for. So, as soon as they're coming in, we're identifying whether or not they're eligible for diversion, getting them connected to a service provider. That service provider will work with the judge and the district attorney to see if they could engage in a diversion program. Second, everyone that comes in will be assessed to see if they are eligible or a good candidate to be safely managed in the community under 6-A.

We have no control over who comes into our system, but we do have control what we do with them when they're with us, and I think that's where we should use every opportunity to make sure that they have connection to services, and that they have an opportunity to build a different life.

Eagle: Many past DOC commissioners come into the job in a place of control and most are committed to at least some level of reform. But the crises often pile up very quickly, and once they do, most commissioners become defensive, less transparent and less reform-minded. How do you prevent yourself from falling into that pattern?

Richards: My whole approach to management is transparency and partnership. And so I anticipate being very transparent and in partnership with advocates, community-based service providers and with the public, because I think you can't address something that's in the dark. I'm going to bring light to the role of the DOC commissioner, because Mayor Mamdani said that every New Yorker deserves to live in dignity, and that's what I'm going to do. I'm going to make sure our officers live with dignity and are valued. I'm going to make sure people in our custody live with dignity and that they are valued. We are not the judge and jury, but while we have them, we are going to do what's necessary to help them build a new life so that they don't come back. It starts with being in the light.

Eagle: The federal monitor said in December that “an entrenched culture that opposes and/or resists reform continues to hobble the department’s ability to materially improve the jail’s conditions with the necessary level of urgency.” How do you plan to address this entrenched culture and how will you measure your success in doing so?

Richards: When we stop scapegoating and demonizing, and when we can see the humanity in everybody, we can start moving the conversation in a different way. I did my first tour Tuesday and met with leadership in multiple facilities. My sense is that they want to do a good job but they feel attacked, they feel isolated, they feel scapegoated. So, part of what I am going to do, how you change the culture is you begin to live it. Everyone in my administration, we will be on Rikers Island. We will be in those facilities. We will be talking to people, we will be listening to people, and we will be making the changes that allow us to build the foundation for transformation.

I've talked to Nick Deml, who will soon serve as the remediation manager, and he sees his work in partnership with me. I think our goal is the same – safety for staff, safety for incarcerated people. When we do those things, you can begin to change culture. This isn't about blaming officers or blaming incarcerated people. This is about saying, let's fundamentally change how we want to see each other and how we change how we operate.

That's one of the reasons why I'm looking forward to the borough-based jail system and closing Rikers. Everything about Rikers, from the facilities, the officers’ locker rooms, the officers’ eating area, the incarcerated people’s housing area, the recreation area, everything about it says, “You are not valued.” Now we can build a jail that is centered on the humanity of people who are working there and the people who are entering it. You can begin to have a different way of operating.

Eagle: Going back to your conversation with Nick Deml. I imagine it might be beneficial to you both that you're each starting your new jobs around the same time.

Richards: Absolutely. And I think our values are aligned, our goals are aligned. What he said to me, and what I said to him, is that I'm looking forward to this partnership. Yes, he reports to the judge, I report to the mayor, but our goal is the same, and we're going to be working together to address the 18 contempt orders. And that’s going to be the seeding that I need to transform the way the department operates, the way the department is seen, the way officers feel and the way incarcerated people experience our department.

Eagle: The way that the receivership is laid out, Deml will craft these action plans, and then it will be on DOC to implement them. But do you foresee a situation where maybe you go to him first and say, “I want to address this issue in this way,” and that you’ll be able to?

Richards: This is something we talked about. He’s going to be out on Rikers Island next to me. We’re going to have weekly check-ins and meetings more frequently as needed. As he’s drafting his plan, he’ll be asking for input from me. When I’m moving forward with other responsibilities, I’ll be asking for feedback from him. This isn’t going to be a situation where I’m on one track and he’s on another one. This is going to be a real partnership.

This is an opportunity for this city to fundamentally change how we operate in our jails. This is an opportunity for us to move from the demonizing, scapegoating and being sort of stuck in the horror of the facilities that we currently have. This is really a watershed moment in our city, for the department, for the people incarcerated, and for our staff. And so Nick and I will be working very closely together to bring about the resolution of the 18 contempt orders and ultimately bring about the ending of the Nunez consent decree.

Eagle: DOC in-custody deaths reached a three-year high last year. We saw similar patterns leading up to many of the deaths. Officers didn’t do their tours or abandoned their posts. Detainees with severe mental health issues were left alone without supervision. Drugs were snuck into the jails. How do you plan to address these repeated failures?

Richards: We start with establishing basic correctional practices first. Second, we need to look at how many officers are leaving. I think the number of officers right now is down to 5,600. We need to fill the vacancies that we have, and we need to then make sure our officers are fully trained to deal with the population that we have right now. The training that we had was for the population we had a decade ago. Now, the majority of the people in our care are people with mental health diagnoses, and our staff are not clinicians and therapists. We need to bring about the change in the training necessary for them to be able to manage the population that we have right now. And we have to go back to correctional best practices.

Eagle: Obviously you believe in the power of programming, having worked and led The Fortune Society for as long as you did. Is there a type of programming that you think should be mandatory or highly encouraged for all detainees?

Richards: I don't think you make programming mandatory. I think you design programs to address the needs that people have, and you build in incentives for people to engage with them.

One of the things that I want to do is I want to create a model facility. Take one of our facilities and turn it into a model that would look like the borough-based facility in terms of how it operates. Every housing area would be like an honors housing area. The requirements for that would be no infractions over the last six months, a willingness to engage in programs. They would go into programs from 9 to 11 a.m., go back to the housing area, go to lunch, and then go back to programs. They could have a selection of programs to choose, from hard skills to education, to substance use groups, to trauma-informed groups. Following their afternoon programming, they would have dinner, and then we would have evening programs. I’d like to bring in colleges to offer classes in the evenings.

If they are doing what they need to do, we could have unescorted movement. If they need to go to sick call, or to a visit, we don’t need two officers to take them. Those are the incentives that you want to leverage, because that will keep the jail safe. Officers won't be assaulted. Incarcerated people will be safe. They will be engaged in something they would have for later. The curfew wouldn't be 9 p.m., it might be 11 p.m. So, there are things that we can do to encourage people not to engage in violence.

Eagle: When you and I sit down for another interview a year from now, what metrics do you hope to point to to show that conditions on Rikers are improving?

Richards: Population is down. Uses of force and violence are down. One of the things I want to be able to measure, and I'm talking to the leadership about it, is morale. I want to look at how many officers are out? What does our retention look like? All the metrics in regards to the Nunez issues. Are we coming into compliance? All those metrics will let me know that we are heading in the right direction.

Eagle: You said earlier that this is a “watershed moment” for the city’s jails. And it really is. There’s a new mayor, a new DOC commissioner and the unprecedented appointment of a remediation manager. We are a year and a half away from the deadline to close Rikers, even if many experts say that deadline can’t be met. Intellectually, how do you go about thinking about this pivotal moment?

Richards: Yes, it's a moment that we ought to seize and take action. And I think what action means is delivering results, which are going to require movement as if you were turning a battleship, not a speedboat. But movement nonetheless. And that's this moment we're at. We're at a moment where City Hall and our mayor are saying that accepting the status quo is unacceptable, and we need to do something about it and bring change. And so that's the work that I've been charged to do. That's the work that I think this moment has been calling for the city to do. And I'm looking forward to getting in here and getting to work.

[syndicated profile] thecityny_feed

Posted by Greg B. Smith

Congressional Rep. Dan Goldman (D-Manhattan) speaks outside 26 Federal Plaza alongside several colleauges after observing immigration court hearings

With the city experiencing a dangerous freeze, Congressman Dan Goldman (D-Manhattan/Brooklyn) last week proposed legislation to steer potentially tens of millions of federal dollars to the New York City Housing Authority (NYCHA) for boiler upgrades, declaring that adequate heat is a personal security issue.

Currently the U.S. Department of Housing and Urban Development (HUD), the agency that provides NYCHA with most of its funding, offers emergency safety and security grants. But HUD caps this funding at $250,000 annually per housing authority and requires that the grants pay only for security items such as cameras and door locks.

Goldman’s bill removes the cap for public housing authorities with 5,000 units or more, and expands the definition of security to include heat equipment such as boilers. The bill would also require $225 million for these emergency grants annually to be distributed proportionately among authorities based on the number of units they manage.

Since NYCHA is the biggest public housing authority in the nation with 175,000 apartments, it would qualify for a significant chunk of that funding.

“More than anything, this is really focused on safety,” Goldman told THE CITY. “And that’s what heating is all about, especially when we’re having such a cold winter.”

“NYCHA is appreciative of Rep. Goldman’s advocacy and efforts to attain additional funding for public housing authorities,” said NYCHA spokesperson Andrew Sklar/ “We explore every available tool to invest in, renovate and address mounting physical needs on our properties.”

NYCHA’s aging buildings have been prone to heat outages in recent winters, particularly when the temperature drops below freezing and stays that way.

This heat season got off to a rough start, with 36 unplanned outages in October, according to a December report by Jenner & Block, the law firm acting as federal monitor overseeing NYCHA. That’s far more than the four experienced in October 2024, and as bad as October 2020, the first year of the pandemic, when there were also 36.

Over the weekend, as the temperatures descended into the single-digits, NYCHA responded to heat and hot water outages ranging from four to 19 hours at six developments housing some 13,000 tenants, according to its online monitor.

NYCHA has so far weathered attempts by the first and second Trump administrations to drastically cut housing subsidies and limit how long tenants can collect them to two years. The House in December rejected the proposed cuts for Section 8 housing subsidies and the imposition of a two-year limit for public housing tenancy.

Our nonprofit newsroom relies on donations from readers to sustain our local reporting and keep it free for all New Yorkers. Donate to THE CITY today.

The post Rep. Goldman Proposes Bill to Steer Federal Funds to NYCHA Boiler Upgrades appeared first on THE CITY - NYC News.

The Jewish War: Preface

Feb. 8th, 2026 07:08 pm
cahn: (Default)
[personal profile] cahn
This week: All right! As a preface to Josephus Book Club, I am just reading the preface this week and we will do a bigger chunk starting this next week (see below). The preface is just a few pages long (I'm reading up until what in Oxford is paragraph 30, "All of these contents are set forth in seven books... I shall now begin my narrative as indicated at the start of my summary.")

I'm sure you all will have deeper things to say than I do about this, but wow I am just amused by how Josephus just starts out pulling no punches about how annoying and inferior he thinks the other historians are. (The footnote to The historians of this war fall into two categories... hearsay... or distort the facts namechecks Justus, who featured prominently as a frenemy in Feuchtwanger's Josephus trilogy.) I do like his logic in saying, hey, if you want to make the Romans look good, why make the Jewish side look feeble? Also his logic in saying, hey, actually, it makes more sense to be writing contemporary accounts for which one has eyewitnesses, as opposed to writing about ancient history "as if the ancient historians had failed to give their own accounts sufficient finesse," lol. (Although I guess that is what academic historians do!)

Titus Caesar is also namechecked, lookin' good.

The footnotes also say that historiographical writers generally claimed impartiality, so Josephus talking about his personal feelings of sorrow here is atypical, which I thought was interesting.

In fact, looking over the whole sweep of history, I would say that the sufferings of the Jews have been greater than those of any other nation -- and no foreign power is to blame. Oooooof. I guess that's a good tagline to pique interest in the book, though...

(I'm really glad I read Feuchtwanger's Josephus books first to orient myself, though!)

Next week: We'll start Book 1! [personal profile] selenak advised that we read up to Herod the Great's killing his favorite wife. My Oxford edition has "verse"/paragraph numbers but not chapter numbers as selenak's has, but I think (selenak, please let me know if this is incorrect) in my edition the idea is to read up to paragraph 443/444: Maddened by unbridled jealousy, Herod ordered the immediate execution of them both. Remorse quickly followed rage: his anger subsided, and his love was rekindled. The heat of his desire for her was so intense that he could not believe she was dead...

WELL ALL RIGHT THEN. I can see we have lots of sensationalistic gossip ahead of us!

An Academic Affair (McAlister)

Feb. 8th, 2026 07:05 pm
cahn: (Default)
[personal profile] cahn
[personal profile] thistleingrey mentioned that it was a solid depiction of academia and characters in academia, which immediately piqued my interest. I have read Ali Hazelwood's The Love Hypothesis and enjoyed it, and I know Hazelwood is in academia, but I sometimes thought... well, let's just say that it's a romance between a grad student and the young hotshot professor in her department, and... okay... that part... is totally realistic actually... but I feel like I kind of got stuck a lot in all my feelings about the potential deep pitfalls. Hypothesis was also, I think, much more concerned with primarily being a romance novel and secondarily a novel about academia.

Anyway, this is unabashedly a romance novel, complete with marriage-of-convenience and sometimes even the one-bed trope, but without any particular kinks like professor/student :P But the thing that makes it interesting (to me) is that it's at least as interested in both the experiences of the precariat (*) and also familial relationships as it is in the romance itself. In fact, it does not have a conventional romantic Act 3; here the Act 3, as well as the understandable but frustrating misunderstandings that prolong it, is passed squarely on to the familial relationships rather than the romantic ones. Which I personally really like!

The two main characters, Jonah and Sadie, are adorably academics. (**) I laughed out loud when Jonah said, "I'm all for radically revised gender roles in the heteronormative institution of marriage, but I should still pay for my wife's engagement ring," if only because I've never heard anyone else talk that way in a romance novel -- though if you have, please rec it to me. (Their engagement is the aforementioned engagement-of-convenience and the ring is $27.99, I hasten to append, and she pays for his ring.) (lol, I think I actually paid for my engagement ring, because it was an important transaction involving me and an important piece of jewelry -- what?)

Anyway, I rarely like romance novels, but I liked this one!

(*) I did not know the term precariat: the precarious proletariat, that insecure class of unstable work and low wages -- but I was familiar at least by reputation with the academic pre-tenure-track life that the term describes, in the sense that it is one of the many reasons why I did not pursue academia

(**) Jonah likes using footnotes; I guess your mileage may vary but I found it adorable, perhaps inevitably

Profile

brainwane: My smiling face, including a small gold bindi (Default)brainwane

December 2025

S M T W T F S
 123456
78910111213
14151617181920
2122 2324252627
28293031   

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 9th, 2026 03:49 pm
Powered by Dreamwidth Studios