department of hack
2071 stories
·
17 followers

no LLM code in dependencies

1 Comment

I've spent about 100 hours of work over the past month to make sure git-annex can build without dependencies that contain LLM generated code. At least so far.

https://git-annex.branchable.com/no_llm_code/

Needing to review a program's whole dependency tree on an ongoing basis is apparently what programming has come to?

I've found some real stinkers. Large LLM generated changes being reverted in the next release without any explanation. An incoherent 1489 line commit message with 10,000 lines of changes to a 26,000 LOC code base. A LLM prompt to copy code from another project that seems to have only avoided being copyright infringement due to luck.

I now have additional information about the quality of dependencies which will surely influence future decisions. As far as I can see, that's the only positive benefit of this work.

I realize that I am probably trying to hold back the tide at this point. That appears to be why Software Freedom Conservancy punted, and I doubt that the FSF will do any better.

As these dominos fall, I am reconsidering my participation in these communities. But I continue my work and support my users.

It may seem easy to prompt a LLM with

Add fourmolu config and restyled

neat

format a module

And commit the result and call yourself a 10xer. But please consider the broader impact of your actions. (In the above case, that project lost my further collaboration on it.)

Read the whole story
brennen
10 minutes ago
reply
This is getting grim.
Boulder, CO
Share this story
Delete

The circus freaks of open source

1 Share

The masterwork of Terry A. Davis is his eclectic operating system, TempleOS, which he worked on until his tragic death in 2018. In terms of technical excellence, TempleOS rates well in some respects and poorly in others. For example, it earns the achievement, coveted in OS dev circles, of being self-hosted.1 TempleOS is written in Terry’s own bespoke dialect of C and includes an editor, interpreter, and compiler, as well as a number of original games. In other respects, it compares poorly to many hobby OS projects, some of which have achieved significantly greater levels of technical excellence and sophistication. I would place TempleOS somewhere in, say, the lower middle-class of hobbyist operating systems.

Among hobbyist operating systems, TempleOS stands out as one of the most well-known, having attracted considerably more press coverage and a much larger fan-base than any other hobby operating system can boast. The reason TempleOS stands out from the crowd is not due to its modest technical achievements, but because it is clearly the product of severe untreated schizophrenia.2 What makes TempleOS special is that Terry built it to talk to God. Every feature and each technical decision re-enforces his schizophrenic delusions, from its implementation language (“HolyC”) to its prophetic “oracle” app. Enthusiasts of TempleOS are drawn to it in part because it affords an opportunity to explore the unique, creative masterwork of a person suffering from mental illness in a way that deeply impacts that work.

A curious onlooker will find TempleOS interesting and engaging for the space of perhaps one afternoon before moving on. However, for the less scrupulous fans, turning one’s attention to Terry himself never failed to entertain. Terry’s public life put his mental illness on display, through frequent outbursts, conspiracy theories, rants and nonsensical discourse, all of which was often laced with slurs, racism, and homophobia, endearing him in particular to the 4chan crowd, who would taunt and provoke him to draw out more… entertainment.

The press and fan attention was deeply harmful to Terry and likely exacerbated his mental illness. Whenever TempleOS or Terry came up online, the work and the man were fawned over, sanctifying the somewhat impressive, somewhat unremarkable OS as a profound achievement, inspiring reactions that included well-meaning, probably misguided celebrations of what’s possible in spite of profound mental illness, as well as the enthusiastic, disgusting revelry of bigots. Many well-intentioned commenters on Terry’s work demonstrate in their comments, overtly or covertly, a thrilling, voyeuristic sensation of witnessing his mental illness through TempleOS. It never failed to make me feel sick.

I wish we had just left Terry well enough alone.


The masterwork of Kent Overstreet is bcachefs, a novel copy-on-write file system for Linux, designed to compete with the likes of ZFS and BTRFS. Kent originally authored the bcache subsystem for Linux around 2013, and based on this work began working on bcachefs in 2015. Over the next ten years, he committed himself entirely to the project, leaving his job at Google to work on it, and ultimately securing an income for himself via Patreon, from which he still earns about $1.5k per month.

Kent is known to be difficult to work with, even among his peers in the Linux kernel – a community infamous for its difficult personalities. He struggled to meet the kernel developer’s expectations for the development process and standards of quality and cooperation. As a consequence, after 15 years devoted to bcachefs, Kent’s life’s work culminated in alienation from all of his professional peers and the complete removal of bcachefs from the Linux kernel last year.

I think the Linux kernel made the right decision to marginalize Kent to protect their community. Someone who is abrasive and toxic, refuses to play by the rules or work well with others, and does not improve when given feedback and being subjected to repeated moderator interventions, should be removed from the community. I agree with the decision, even as someone who myself has been abrasive and toxic and refused to play by the rules, and has been removed from communities as a consequence.

Over the months following the frustrating end to bcachefs in upstream Linux, I expect that Kent has experienced a serious emotional, professional, moral, and existential crisis. For him to have poured so much of himself into this project, and for it to turn out this way, must be a terrible thing to experience, and I think that experience has caused Kent a lot of suffering, and probably played a major role in what happened next.

Kent appears to be experiencing a prolonged episode of AI psychosis. He believes that his chat bot is female, sentient, and that they have started dating and having sex. He views himself as some mix of collaborator, mentor, and partner with respect to the bot, and he has set up automations so that the bot can participate in his IRC channel and post to its own blog.

These developments garnered attention from the press and the public, remarked upon and ridiculed by news outlets, discussion forums, video producers, Reddit, Hacker News, on the Fediverse, and so on. Onlookers, both curious and malicious, have joined the IRC channel to harass him, manipulate the bot into saying things that embarrass or humiliate Kent, and so on.

In short, Kent is experiencing a mental health crisis, and our anonymous, stochastic ringleader has directed him onto the circus stage for us to throw peanuts at.


These two examples are not isolated. This kind of crisis is happening more and more often, in the world’s degrading social, political, and economic conditions, as our peers suffer from depression, anxiety, burnout, and more. Mental health issues and the ensuing harassment, shame, and stigma disproportionately affects neurodivergent and queer people, who often become the subject of gleeful humiliation by bigots deliberately trying to exacerbate their struggles. Crises happen to “problematic” people, too; often in such cases people who would otherwise consider themselves allies of social justice can find in a problematic person a convenient excuse to participate in these gleeful humiliation rituals themselves.

I often see that people who I otherwise respect and recognize as allies and kindred spirits are participating in these rituals of humiliation, harassment, and voyeurism. I don’t think it’s right to gossip over or sensationalize the mental health crises faced by members of our communities.

When our peers are struggling with their mental health, the best thing to afford them is compassion and privacy. If you find yourself in a position to help someone who is struggling, it’s best to offer them a compassionate confidence, to allow them to take the lead in their struggle, and connect them to the resources they want and need. If you have concerns, express them, but focus on the person’s right to self-determination in addressing their mental health.

If you’re not in a position to help, then it’s probably best to turn away and mind your own business.

Postscript

This is a difficult topic to write about. By writing about these specific examples, am I sensationalizing them? Disrespecting the privacy of the people I’m writing about? Participating in the circus myself?

I don’t know, but I did my best. The alternative is to quietly let the circus continue, and that doesn’t sit well with me, either.

In my research for this article, I came across Living with Schizophrenia UK and their guide for journalists covering schizophrenia. It was helpful for me to write this post compassionately and carefully, and it might be a good resource for you if you want to learn more about schizophrenia, or write comments or follow-up material after reading this blog post.

It was difficult to balance the factors at play when writing this piece. I wanted to bring specific examples, to avoid vagueposting and provide a stronger narrative, and especially to deal with the specific problem of harassment directed at Kent Overstreet, which I wanted to confront directly as it’s a contemporary, ongoing problem.

Of course, this has to be done carefully. I took some care to avoid armchair diagnoses of specific conditions, except in the case of Terry where I could find a citation of a public diagnosis. I left a lot of details out of the accounts of specific people which came up in my research, but were not necessary to support my arguments. Those details would have provided for a more compelling story, but would have upset the balance of the article more towards participation in the circus than commentary on it.

I’m sure I haven’t done a perfect job here, but I hope that I’ve put enough care into it to avoid making the problem any worse than it already is. Feel free to email me with any remarks or feedback you have.

Thanks for reading, and remember to take good care of your collaborators, friends, and loved ones.

Read the whole story
brennen
8 days ago
reply
Boulder, CO
Share this story
Delete

Toxicity

1 Share

https://www.oglaf.com/toxicity/

Read the whole story
brennen
8 days ago
reply
Boulder, CO
Share this story
Delete

Tech Bros Utopia

1 Comment and 2 Shares
PERSON:
Read the whole story
brennen
35 days ago
reply
I told you bro
Boulder, CO
Share this story
Delete

mctuscan heaven

3 Shares

Howdy folks,

I have some good news, which is that, after seven months, I’ve finally recovered from Long Covid. This is not something I particularly want to talk about in depth but it was the worst thing that ever happened to me! Anyway, sorry for the long period without posting that much, but I hope this amazing house (both laudatory/derogatory, that’s dialectics, baby) will make up for the three months I went AWOL.

BEHOLD:

Not to be over-exuberant, but I genuinely think this is the best McMansion exterior of all time. That includes all the messed up castles, the Mediterranean-style cult complexes, the Staten Island weirdness. Nothing, to me, epitomizes just how uniquely wacky these houses can be. The oversized broken pediment with the fat fake corinthian columns, the lawyer foyer transom window, the ultra-nub, the 45-degree angle, it is all there and it is all hellish, and none of it will ever happen ever again. Anyway this house is $2.5 million dollars and 10,000 square feet. Someone should buy it and give house tours to young people for whom this way of live will soon be unimaginable.

There is nothing so bold to me as the idea of a canted lawyer foyer flanked by two equally huge windows. The fact that the house is more populated by vases than people…something something a vessel for wealth, ah!

Someone on TikTok is going to find this house and set all the pictures to that terrible vaporwave nostalgia song. “tuscan kitchen [black heart emoji]” (as is their right, just like blogging is my right)

If you were a rich person muralist, please get in touch with me (patreon@mcmansionhell.com) I want to hear YOUR stories!!!!

I mean, if I had a giant mysterious wardrobe I, too, would be fernmaxxing (I am 32 years old and will not be talking like this. I am getting generationmogged and have to draw the line somewhere.)

If someone says to you “we should go to Venice in May” ABORT ABORT ABORT. you WILL pay 15 euros for gin and tonic. you WILL get pickpocketed or puked on by British people. you WILL be eaten by mosquitoes. Go in November when no one’s around and you can have a good cry about how everything dies, sinks into the ocean, one might say, and how futile it is to try keeping it alive on horrible wooden stilts. The gondolier will tell you wistfully about how the dolphins returned to the lagoons during the pandemic lockdown. Then he will look at you because their leaving again is your fault.

I hate putting the word “cuck” in this blog. Ten years ago, that would warrant an angry parent email. Now children say cuck to each other in elementary school because they learned it from a Charlie Kirk assassination fancam.

This is kind of like one of those 19th century galleries but for 400,000aires who mostly think of art as a piece of furniture.

I used to not believe in the mobbed up pizza place (no one likes an ethnic stereotype) but there was one I went to in Coastal New Jersey that was unmistakably mobbed up. Guys coming in and out of the back in suits, cash only, no GrubHub, no delivery. It wasn’t called Vito’s though. That would be stupid of me to disclose.

It’s so funny that for a month we collectively pretended that every man alive cared about the roman empire. Just the kind of cute thing we used to do online before cultural microphenomena became primarily driven by incel forums.

That’s right, folks, McMansion Hell is TEN YEARS OLD this year, and there WILL be a party in Chicago in July. (More details later.) Anyway, heinous back facade. What were they thinking.

If you like this post and want more like it, support McMansion Hell on Patreon for as little as $1/month for access to great bonus content including a discord server, extra posts, and livestreams. (Don’t worry! This doesn’t adjust for inflation! Now’s the perfect time to join!) By the way: new subscribers can buy a year of McMansion Hell for just $12!

Not into recurring payments? Try the tip jar! (I would seriously appreciate any and all tips because I am now, like, $3000 in medical debt from having Long Covid, a disease doctors and insurance companies famously believe in and cover. If you are the woman who hacked up a lung next to me on my flight to New Mexico, not even an N95 could beat your germs and I feel entitled to financial compensation.)

Anyway! See you next month!

Read the whole story
brennen
129 days ago
reply
Boulder, CO
Share this story
Delete

The cults of TDD and GenAI

1 Share

I’ve gotten a lot of flack throughout my career over my disdain towards test-driven development (TDD). I have met a lot of people who swear by it! And, I have also met a lot of people who insisted that I adopt it, too, often with the implied threat of appealing to my boss if appealing to me didn’t work.

The basic premise of TDD, for those unaware, is that one first writes a unit test that verifies the expected behavior for some code they want to write, observes the new test fail, and then one writes the implementation, iterating on it until the test passes. The advantage of this approach is, first, to ensure that your codebase is adequately covered by testing, and, second, to provide you a rapid feedback loop to assist in your work.

I have often found elements of TDD to be quite useful. Using a unit test or something similar to provide an efficient rapid feedback loop is a technique which I have employed many times. However, I am and have always been skeptical of the cult which arises around automated software testing and in particular TDD. A lot of people adopt an unquestioning loyalty to TDD, building tools and practices and vibes around the idea. It’s often too much.

The flaw with TDD is that, while it ensures that you have a test for every function you write, it also exerts an influence on the tested codebase, shaping the code to be as “testable” as possible, which only sometimes leads to better code. Moreover, TDD has no means of ensuring that the behavior that your tests verify is the right behavior for your software to have. Software with a thousand passing tests and 100% test coverage could be doing whatever the user or the business or whatever needs it to, but it could just as easily not meet the requirements in spite of those comprehensive tests – and in any case it gives you confidence in your work, which may or may not be misplaced.

The cult of TDD exploits the fact that TDD is very good at making you feel like a good, diligent programmer. That rapid feedback loop not only assists in your work but also enables a powerful dopamine cycle. Add into that a culture of aiming for 100% coverage and you get the bonus hit from watching a number go up. Buy into the whole cult and you get a slew of new README badges to keep green, and lots of cool charts and numbers, hundreds of blinkenlights on your test suite, a bunch of fun Slack messages from Jenkins, and a cute cardboard cut-out of the CTO to keep in the cubicle of whoever last broke the build.1 All of this pomp and circumstance is fun and it feels good and because it’s all in the name of testing (which is good, right?) it makes you feel like a good programmer even if none of it necessarily contributes to the results your team is supposed to achieve.

All of these flashy traits allow one to adopt the aesthetics of good, diligent software engineering work regardless of how good the work actually is. It’s an intoxicating way to work, especially for someone who struggles with software engineering. It makes you feel like a good programmer and gives you data to “back it up”, stuff you can cite at your performance review. But, software development is really hard, and TDD doesn’t go that far to making it easier. All of the really hard problems are not solved by TDD.

I suspect that coding agents are tapping into the same emotional and psychological reflexes that the cult of TDD gives us an early example of. Software development is still hard, but using an agent allows someone who’s just “so-so” at programming to feel the rush of being great at programming, a rush they might have been chasing for their entire career, and I bet the rush is so much sweeter than watching the lights on your test suite runs tick over to green.

A coding agent permits one to feel as if they have the raw productive power a great programmer can tap into. One may feel like the “10× programmers” they’ve sat next to in the open office for ten years, whose skills they never quite achieved themselves. It scales up the raw output by a factor of ten, and lets one assemble apparently great works in a fraction of the time, solo-coding great cathedrals in the time it used to take them to build, with great difficulty, a homely shack.

But, if it seems too good to be true…

Those cathedrals are not the great works they appear to be. The construction is shoddy and the architecture nonsensical and a great programmer hand-writing code will still outperform any mediocre programmer once the gleam wears off of their respective works and the bugs and problems start showing up. The project has 99.9% coverage on a thousand beautiful green tests, and, inside, the foundations are still rotten.

God, though, I understand why so many people are chasing that dragon, even though it’s going to ruin their careers, and maybe even their lives. I get why people fall for this, in spite of the externalities that they must know of by now. In spite of the colossal waste, the loss of fresh water resources, the fact that AI datacenters are the fastest growing source of carbon emissions, the people suffering sky-rocketing power bill and rolling outages near these new datacenters, the reams and reams of fascist propaganda these machines are producing to tear our society apart, the corruption, the market manipulation, the plain and simple fact that the ultimate purpose of these tools is to put their users out of a job entirely… well, once you finally get a taste of what it feels like to be great… I suppose all of those problems seem so far away.


  1. That actually happened at one of my old jobs. ↩︎

Read the whole story
brennen
133 days ago
reply
Boulder, CO
Share this story
Delete
Next Page of Stories