Some thoughts on suckless.
I'll start with some of the positives, so you can understand why I might be so twisted up about the Bad Stuff I mention later.
To start, I REALLY like suckless' software paradigm. I think the static/ recompile-to-configure thing? Is genius. Before I found suckless, I didn't really like much of what I saw in open source software, and so I didn't really engage with it much. It was all things like Firefox or Thunderbird or Chromium or Zed, theoretically open-source, but also so huge and complicated that no single person could probably audit the whole thing in their lifetime. That, well, sucks!
Suckless provides a successful alternative to modern bloat: functional, individual-scaled software that a single developer can fully understand, debug, hack on, and use. Without it taking their entire lifetime to do so. This is great, and was an immediate match with my coding style. I feel strongly that programs should be extremely cleanly written, perhaps even more so than some of the other devs involved in suckless! I'll write more later on exactly why this is so great, how many downstream positive effects it has on the experience it results in, of using the computer.
And, this all appeared to me at a time when mainstream software, tragically including large-scale FOSS software, was becoming increasingly Evil. In particular thanks to AI, which is being shoehorned into every possible spot in computers at the moment. Not to mention individuals' usage of tools such as ChatGPT to offload their mental effort, which is in my country causing a massive literacy crisis and the first generation in a very long time who is less literate than the last. These problems have deep roots, that I am only beginning to untangle myself from.
I can say for sure that since I began my path into small, concise software, I have become substantially more literate: focusing on and reading text, especially technical, dry text, has become much easier. Of course it has, because it's a skill to do that and I've been getting more practice, without having to think about it! In large part thanks to my engaging with suckless software.
I think the suckless paradigm holds the keys to solving many of these problems: relying on our own faculties, like by engaging deeply with the tools we use, is only even possible when those tools are designed to encourage that. Because of all of these reasons, I'm a firm believer that when you use software, you should interact with its source code. In many of my projects, I find myself saying "to change any behavior of the program, past what the options allow, edit the source code and recompile it." This could have been the norm, if not for profit-motivation. A mantra of mine is: "it is surprising what people can get used to." Many people are resistant to adopt an inconvenient and perhaps esoteric paradigm like suckless, but I genuinely think that they would be happier, smarter, and more free if they did.
When the source code is part of the user experience, like it is in the suckless paradigm, the time you may otherwise have spent digging up the setting you're trying to change in deep, circuitous graphical menus or googling "where did they hide this stupid option?", is instead spent READING C code, building a low-level and grounded understanding of what the software is doing, and getting familiar with the patterns. And as Linus famously said (paraphrased): "Every problem is shallow to someone." The more eyes on the code, the more likely that someone thinks of a clever improvement or a cleaner/more efficient way to do things. There's a herd immunity to illiteracy that we lose by choosing software that isn't designed with source code as part of its UX.
This all to say, suckless has a special place in my heart. Sort of like a first crush or a town you grew up in. And I genuinely think their ideas have substantial merit. Their aggregate skill level at programming is unmatched (I suspect in large part because of how the paradigm engenders expertise).
But... Suckless seems to at the very least have some skeletons in its closet. There are a few things that are at least suspicious to me, that make me uneasy to fullheartedly embrace the org and take up its banner.
The accusations go:
There's a story I am reminded of with all of this, about how you have to handle Nazi Shit when cultivating a space. The addage goes: if someone comes into your bar with a vest full of Nazi Shit, you kick them out. Even if they're polite and nice and quiet. If you let one nazi hang out in your bar, they're going to bring their friends, who will bring their friends, and before long you'll wake up and realize, "Oh shit, this is a Nazi bar now." This is how things work, and why it is important to actively denounce Nazi Shit even if it has justification, if it was accidental, if it was parroted without an understanding of its origins/history, et cetera.
I do not want to frequent a Nazi bar. I do not want to advertise my software as being connected to, or inspired by, a Nazi bar. And I have concern that suckless may be, or may in the future become one. This is serious shit.
I think it is important, if the suckless project does not want to continue to be associated with Nazi Shit going forward, that those who run it openly acknowledge, and do not hide or downplay these accusations. They must acknowledge what happened, avoid justifying or rationalizing why they did it or why it shouldn't matter (because, for so many reasons, IT DOES), and denounce these corrosive political presences.
Notably this does not mean asserting their political neutrality, as they have done: It's fine to be neutral in some circumstances, but neutrality towards Nazism is support that the ideology repeatedly shows its willingness to take advantage of. The democratic party of the US is the first and most severe example of this that comes to mind: Neutrality Is Not Neutral. Doing nothing in the face of nazism or fascism is not neutral, as it works in favor of the oppressors. If one group wants to imprison, torture, and commit genocide on another group, doing nothing is not a middle ground.
I do not think that the issue is currently at this level of severity, within the suckless community... But I want it to stay that way, and I want to feel certain that this group will not become something that I will regret associating with.
One additional detail I'd like to provide, in support of the suckless' folks collective ideology: They have mentioned that they judge entirely on software quality, regardless of the race/gender/etc of the person who made it. This is close to a denouncement of nazism, but ultimately does still leave room for rationalization of discrimination, and so doesn't entirely counteract the other things here.
I'll keep engaging with them, and their software. A notable point of contrast, between my experience and that of many others I've talked to, is that everyone involved in suckless that I've interacted with, in the IRC or via one-on-one email communication, has been overwhelmingly pleasant to interact with. Helpful towards my projects, technically well-informed, and overall a positive force on me personally.
It is important to stand in harsh opposition to Nazism and Fascism in general, or else you Will wake up running a Nazi bar. I refuse to allow even a minor possibility of that happening to me.
Confused, angry, frustrated, but also resolute and hopeful; - Emma