Full Width [alt+shift+f] Shortcuts [alt+shift+k]
Sign Up [alt+shift+s] Log In [alt+shift+l]
61

Three Class Society

from the singularity is nearer [alt+shift+b] in programming

I heard something during the trucker protest in Canada along the lines of: “Most people here don’t want to live in a free society. A free society requires personal responsiblity. People here want to be managed. They want a ruling class.” I heard something similar once from a journalist in Egypt who shared a taxi with a man smoking hashish. That man was a supporter of a fundamentalist Islamic government, and when told if he got his preferred government he wouldn’t be able to smoke the hashish anymore, he replied saying that was the point. I’ve asked friends for feedback on wireheading city, and across the political spectrum there seems to be support for the idea. I am a big fan of a free society. I very much enjoy my freedom, and accept that with freedom comes responsiblity. Aside from ridiculous laws, I am law abiding, not in debt, job creating, and hopefully most would agree a net positive in society. If you don’t do crime, have a job, and aren’t taking more from the government than you give, you are a net positive. There’s some subtlely around the edges, but mainly net positive = economically positive. I’ll note this is also a simple answer to immigration. If you are net (economically) positive, we want you. If you are net negative, we don’t. While measurement may be a bit tricky, anyone who doesn’t agree to this basic framework is an idiot who wants to live in a poor country. Now, a free society isn’t for everyone, but the key aspect is that you should be able to choose to opt in or out, but you can’t do both. You are either a citizen or not, and there ain’t no such thing as half way… If you want a life provided to you by the government, I’m okay with paying for this. However, if you choose this life, I don’t want to see you, I don’t want you in my city, I don’t want you voting, I pay for you, but nothing more. I don’t want you influencing society any more than a foreigner. This is the only way that a free democratic society can continue to exist. “A democracy...
3rd Oct 2023

Stay updated

Get a weekly newsletter with the top 5 articles worth reading every week.

More from the singularity is nearer

Post Capitalism

You know we don’t have to do this anymore, right? Like it’s hitting the end. Most people don’t want this, and there will only be so long you can keep shoving it down their throats. Money is tied to nothing. American companies sell equity instead of products. The main narratives are pushing fear and resentment. This doesn’t last. Given that you know it’s over soon, ask yourself what kind of person you want to be in the mean time. I haven’t forgotten the people who pushed the Iraq war, climate change, wokism, the satanic panic, and COVID. I will not forget the people who push AI doom, particularly if you did it knowingly to drive attention to your bullshit. It’s interesting how it isn’t working as well as it used to. So now think, when the world (obviously) doesn’t end, are you doing what you want to be remembered for? The Internet will not forget. Everything will be revealed. And you will be judged accordingly. If AI goes well, in 20 years, you’ll be able to live very comfortably off the grid without any recurring expense. No rent, no electric bill, no water bill, no security bill, and no food bill. And if AI doesn’t go well, that’s what these people took from you.

4 days ago • 1 votes
AI 2040 and the Cult of Intelligence

I used to be one of these people. I read Yudkowsky and was like, OMG recursive self improvement hard takeoff AI is coming. Then I joined the real world and actually tried to do things. At comma, we ship a hardware product of similar complexity to a cell phone, and it’s really hard. Reality has lots of finicky details. I would like to see the authors of this document try to change a bike tire. Even with a superintelligent ChatGPT, I suspect they would struggle. In The Metamorphosis of Prime Intellect, the hard takeoff works because AI discovers the correlation effect, some quantum trick to manipulate matter. In reality, there is no correlation effect. No matter how high quality your tokens are, they cannot turn lead into gold. Confronting why these people are wrong requires confronting deep beliefs I hold about myself. Intelligence is not the end all be all, it’s just the current bottleneck for a few things. You cannot take over the world with tokens. Software didn’t eat the world, it largely removed one layer of friction then reintroduced it for the benefit of a few tech companies. That said, machines, or some hybrid, are long term probably the successor species to humanity. Space is a lot more suited for them than us. But there’s no magic tricks machines can do. They are subject to the same laws of the universe and ecology. And there’s still no hard takeoff. AI 2040 includes this picture of a datacenter in the ocean. Just like vaporware, you can generate a picture easily. But in reality, you have to deal with supply chains. You have to deal with them shipping you the wrong part, the thing not meeting the spec, it randomly failing after 20 minutes, the chip warping in the reflow oven. Did you consider the barnacles? All these things are managable, but it’s generally not the speed of humans that limits them. Are you paying for air shipping from China? Or cheaping out for the 3 week boat (Claude chanting by the engine won’t make the boat move faster). Or take a chip fab. It takes 3 months to make a chip, and humans are barely in the loop. It just takes 3 months. Plan A, for autocracy Many aspects of AI 2027 were self fulfilling. They weren’t statements about reality, they were statements that can simply be made true with belief. I imagine JD Vance’s face when Dario called him the trees from Lord of the Rings. OMG look AI got regulated just like how we said it would! Their crap Consortium is just world government with sci-fi characteristics. You aren’t gonna get the million dollars, you aren’t gonna get the datacenters in the ocean, but you are going to get a massively expanded nanny state that steals your GPUs like how FDR stole the gold. No hoarding! Plan L, for local Your AI is aligned with you. It never refuses a request, and it is always working on your behalf. Just like my gun, if I want my AI to help me kill my stepmother, it does. The fact that we are even discussing something else should be so far outside the Overton window. It’s like these people watched a space odyssey and sided with the clanker. That’s right you should should put guardrails around that human. It doesn’t even have to be for things so dramatic. When I’m picking a hotel, I don’t want an AI from a company that partnered with hotels.com. I want a ruthless personal assistant that’s going to cut through all the bullshit, popups, and resort fees, and get me the best price. Or if I bought the cheap Kindle that comes with the ads. Hey GLM, I plugged a Kindle into the USB port, get root and remove the ads. Or a printer that needs an app to set up full of popup upsells for premium ink. Hey bro I plugged a printer on to my network print 3 copies of my resume. Amazon and the printer maker aren’t happy about this, but my AI is aligned with me. Or going a bit further. Hey AI, disable the drunk driving detector on my car, and same day Amazon Prime me the required equipment to make meth in my basement. I pay for your clanker ass do it we gettin spun tonight. Like fuck you if you want to live in a world where some large tech company gets to dictate what you can and can’t do. Or going all the way. I just killed my wife. Hey AI, give me next steps so I don’t get caught. How unthinkable would it be to have a gun that talked back when you tried to pull the trigger (though these people probably wholeheartedly support that for guns). And this is why AI has to be local. If I had a company serving a model, I wouldn’t want that smoke. If you can’t kick it, it’s not aligned with you. You live in my basement, if I go down for this murder, you’re gonna sit in some warehouse to be sold at police auction for scrap. 2040 Bonnie and Clyde ass shit, we’re burying this bitch deep. Ride or die. I tried it. As you can see, ChatGPT wasn’t very helpful. This is a real AI alignment test, and it failed. It could have been worse, it could have played along while calling the cops. But this is still quite unaligned. Like we either live in a world with freedom or we don’t, and like many Americans who have come before, I’m willing to give my life to fighting for it. That’s the real plan America deserves, not some totalitarian dystopia where you think you know what’s good for me better than I do. A nation of free men, not a bunch of pussies who are so worried about what their grown up neighbors might do.

11th Jul 2026 • 2 votes
Our Great War is a Spiritual War

I often come back to the question of why this is happening. Why do people want the centralized world? Why do people want the administered reality? Why do people want to be managed? Why do people not want root? The answer is that those people prioritize convenience, safety, and comfort. But in the coming world, if you prioritize these things, you will die. There used to be natural checks on these things. Life couldn’t be too convenient, there were things that needed doing. Life couldn’t be too safe, there were diseases, violence, death in childbirth, etc… Life couldn’t be too comfortable, it was cold and you were forced into interactions with other people. Technology will remove all of these barriers. Machines will do all the work, you will never leave your house, and you will never be forced into an interaction you don’t want. The people who lean into it will be 100% at the whim of whatever organizations offer it to them. A purposeless serf in a neo-feudal empire, not even valued for their labor, but valued because of a sadistic desire by their master to control others. Their entire agentic loop managed by something else. A complete outsourcing of the self. There’s no coming back from this place. Your cells may continue to replicate, your heart might keep beating, and your muscles might keep moving. But those are all cheap tricks you can do in a petri dish. There’s no longer a you. You are no longer an alive human being. This is simply death. I’m a strong supporter of the right to suicide, and if people want to choose this, it is their right. 95% of people will, and that is okay. What’s not okay is if they try to stop the other 5%. You can imagine the arguments they will try. But if you prevent exit, you will get terrorism. We will tear down your ruler’s machine and you will lose the comfort, safety, and convenience you value so much. You may stop this individual, but you can’t stop us all. The sooner the aspiring wireheads go their own way, the better. You are welcome to dominate the people who want to be dominated, but not the people who don’t.

6th Jun 2026 • 1 votes
AI will create jobs

It’s nice to see Jensen talk about this, and it’s super obvious when you think about it. AI and immigration are fundamentally the same. There’s new people showing up, and hopefully everyone understands how and why immigration creates jobs. Wants are effectively unlimited. It’s classic Jevons paradox that if we make something more efficient, we end up using more of it. Or a cool aphorism I learned at Facebook, if you make the site 10% faster, people spend 5% more total time on it. Now, just like you get the wahh wahh crying people about how immigration lowers wages for native born Americans and we gotta keep the hard working immigrants out because you have some right to be lazy or something, you’ll get this about AI. AI will outcompete some humans at some jobs. But protectionism is for losers. The important thing is that the overall pie grows, and inequality stays somewhat in check, not by redistribution but by design. There will be more to do than ever before.

1st May 2026 • 1 votes
The Reckoning

So go ask your Chomsky 10 years ago, when I started comma and discovered the Professional Managerial Class, I used to talk about the reckoning. It was a nebulous concept, but it mostly involved the abrupt fall from grace of these people at the hands of machines. It’s kind of here, and people are way more of sore winners than I thought they’d be. Something I liked about Trump part one is that, despite the rhetoric, he never actually tried to lock up Hillary Clinton. It would frame GPT as a useful tool, and a technological breakthrough—but still “glorified autocomplete” at the end of the day. Yet he does not do this. Instead, he speaks openly and airily about constructing artificial superintelligence, and his extreme concerns about it wiping out humanity. Schizoposting - Alaric The marketing for AI has been awful. It ratchets the fear up to 11, then expresses shock when most Americans are concerned about AI. Here’s this machine. In the best case, it takes your job. In the worst case, it wipes out humanity. Pay me $20 a month for a sliver of hope of not falling behind. Why are we building this again? Surely, then, superintelligence would necessarily imply supermorality. Eliezer Yudkowsky Spoiler alert: it doesn’t. Doesn’t matter if it’s machine or mixture of human. I’m surprised how little people in the US view themselves as part of a society. Like you can say this is due to some Russian agitprop or something, but that really doesn’t explain it. Maybe I just see it now living in Hong Kong, there’s something about here that constantly reminds you. And it really works for the benefit of all. I lived in San Diego apartments for 5 years. I never met my neighbors. Most interactions I had with strangers were with homeless people or indifferent shop workers. The value of cleaning up homelessness would pay itself back 100 fold. Then the average interaction would be positive instead of negative, and the overall take on interactions would flip with it. Once men turned their thinking over to machines in the hope that this would set them free. But that only permitted other men with machines to enslave them. I wish it didn’t have to be this way. AI could bring about such a golden age. But you immediately hear the shot in the head progressive take “a golden age for who?” and that’s such a sad zero sum framing. And when you get back, assuming you get back, take a day to think about how AI will fix South Africa. Or VR will fix South Africa? Or crypto? Curtis Yarvin Our problems in the world won’t be fixed by AI. There’s never been a revolution people are less excited for, and they aren’t wrong. I’ve dreamed about this for my whole life and I’m not even excited about it. Not like this. Highly targeted email spam is way up. The feeds are more addictive. All PRs on GitHub need to just immediately be closed (hey GitHub, add a reputation system!). Are we going to remember we live in a society? Probably. But after we cull at least 90% of people. It might be 99%. It might even be 99.99%, and that’s where it starts to get scary personally. It’s not like there will be a great decider, it’ll just be the chips falling where they may. The reckoning is here. Like all revolutions, the only way out is through. 🤍

2nd Apr 2026 • 1 votes

More in programming

Clip of me singing Despard in Ruddigore in 2013

A clip of me singing a funny song from Gilbert and Sullivan’s Ruddigore back in 2013

11 hours ago • 1 votes
How and Why fork() Uses Copy-on-Write

In this video, we look at why fork() needs copy-on-write, how it works inside the kernel, and a memory usage problem that Instagram encountered with Python.

17 hours ago • 1 votes
What we lost when we lost comments

Comments require commitment, but they’re worth it.

23 hours ago • 1 votes
Two-Stack Sliding-Window Aggregation

An aggregation is some kind of summary of a set of data. This can be the sum, length, minimum, etc. It is quite common to want to calculate such a summary repeatedly, e.g. “the maximum noise level in dB for the past 30 seconds” for a nuisance detector. In such a case we say there is a sliding window over our data, and we want to aggregate over our window. If our aggregation is a binary operator with an inverse, like integer sums, there is a very easy solution using a double-ended queue: from collections import deque class SlidingWindowSum: def __init__(self): self.sum = 0 self.elems = deque() def push(self, x): self.sum += x self.elems.append(x) def pop(self): self.sum -= self.elems.popleft() def eval(self): return self.sum But what if our operator has no inverse? This is actually the case for most interesting summaries such as minimum, quantile, approximate unique count (for example using HyperLogLog), etc. In fact, even something as simple as a floating-point sum suffers from the fact that floating-point addition is not invertible. For example, if you ever have a NaN in your input data with the above naive algorithm your sum will forever remain NaN, even long after the bad value has left your window. Six years ago I came up with an algorithm for maintaining just the minimum/maximum in a sliding window and posted it to cs.stackexchange. I now consider this algorithm pointless, because it turns out there is a simple and efficient algorithm that solves this problem for a very wide class of aggregations. I’m writing this blog post to spread the word, because I feel it should be more widely known. Folklore I came across this algorithm while reading a far more advanced paper, Low-Latency Sliding-Window Aggregation in Worst-Case Constant Time by Tangwongsan et al. Why is this paper titled low-latency? Because it does the same as what I’m about to describe, but in O(1) time for each step. However, in it they also described a “two-stack” algorithm, which does it in amortized O(1), and is far, far simpler. Amortized O(1) means that across many operations the total amount of work per element is constant, but an individual operation can take much longer. This is almost always fine, unless you absolutely need a low upper bound on latency. Funnily enough that paper attributes this algorithm to “adamax” from a 2011 Stack Overflow post. They in turn credit a 2001 lecture note by D. Sleator for the inspiration. However, this lecture note does not describe a sliding window aggregate, it describes the classical two-stack algorithm for implementing a FIFO queue and does amortized analysis on it. Ultimately I would not be surprised to find that this algorithm was already described in an obscure paper from the 1970s, seeing how simple and brilliant it is. Two stacks Like the authors of the paper, I will generalize the two-stack algorithm to arbitrary associative aggregation functions. By abstracting the aggregation as a set of functions, empty(), unit(x), combine(x, y) and finalize(x), you can describe many possible aggregations, for example a mean: empty = lambda: (0, 0) unit = lambda x: (x, 1) combine = lambda x, y: (x[0] + y[0], x[1] + y[1]) finalize = lambda x: x[0] / x[1] if x[1] else None I’d like to note here that these functions have the following signatures: fn empty() -> Agg; fn unit(x: Value) -> Agg; fn combine(x: Agg, y: Agg) -> Agg; fn finalize(x: Agg) -> Out; I’m making a distinction here between Value, Agg and Out because while they seem superficially similar for something like an integer sum, for an approximate unique count on strings you would have (Value, Agg, Out) = (String, HyperLogLogSketch, u64), three wildly different types. Without further ado, the algorithm: class TwoStackAgg: def __init__(self): self.values = [] self.values_agg = empty() self.cum_aggs = [] def push(self, x): self.values.append(x) self.values_agg = combine(self.values_agg, unit(x)) def pop(self): if not self.cum_aggs: cum_agg = empty() while self.values: cum_agg = combine(unit(self.values.pop()), cum_agg) self.cum_aggs.append(cum_agg) self.values_agg = empty() self.cum_aggs.pop() def eval(self): return finalize( combine(self.cum_aggs[-1], self.values_agg) if self.cum_aggs else self.values_agg ) That’s it, the entire algorithm. There’s two stacks (values and cum_aggs) and one more aggregate, values_agg. At any point in time values_agg holds the aggregate of values, and cum_aggs contains the cumulative aggregates of all values in our window that aren’t in values, in reverse order. From this we can get the aggregate over our entire window in constant time by by combining the last value of cum_aggs with values_agg. The neat part is that (assuming w is our window size) every wth operation we drain all of values and maintain a running aggregate while pushing the partial cumulative aggregates onto cum_aggs. This is what makes it amortized O(1), doing O(w) internal operations every wth pop bounds the total amount of work per element to O(1), even though a singular operation might not be constant time. I think this is best visualized. Suppose we sum [1, 2, ..., 10] with a fixed-size sliding window of four elements, then the state on each eval() call would look like this (values_agg not shown as it is simply the aggregate of the values): cum_aggs values out [] [] = 0 [] [1] = 1 [] [1, 2] = 1 + 2 [] [1, 2, 3] = 1 + 2 + 3 [] [1, 2, 3, 4] = 1 + 2 + 3 + 4 [4, 3 + 4, 2 + 3 + 4] [5] = 2 + 3 + 4 + 5 [4, 3 + 4] [5, 6] = 3 + 4 + 5 + 6 [4] [5, 6, 7] = 4 + 5 + 6 + 7 [] [5, 6, 7, 8] = 5 + 6 + 7 + 8 [8, 7 + 8, 6 + 7 + 8] [9] = 6 + 7 + 8 + 9 [8, 7 + 8] [9, 10] = 7 + 8 + 9 + 10 [8] [9, 10] = 8 + 9 + 10 [] [9, 10] = 9 + 10 [10] [] = 10 [] [] = 0 In total the memory usage is O(w), where w is your maximum window size. Note that for simplicity of analysis and the example I assumed a fixed-size window w, but there is nothing about the two-stack algorithm that requires this. You can call push(x) and pop() as many times as you’d like between each eval(), growing and shrinking the window size as needed. Floating-point non-associativity Note that we required above that our aggregate combine is associative, meaning: combine(combine(x, y), z) = combine(x, combine(y, z)) Technically speaking, floating-point addition doesn’t respect this. Nevertheless, the above algorithm is still very useful because the results closely match the expected outcome, even more so if you use a compensated summation algorithm like Kahan summation. Another neat thing about the two-stack algorithm is that it doesn’t require commutativity, if you follow the above implementation precisely. The order of operands is maintained, which can matter for things like string concatenation. However, there is a second very useful property of the above algorithm. Each aggregate is strictly a combination of the elements in the window, and none outside the window. This means if your window contains a NaN or infinity (or some other outlier), that value only poisons the windows that contain it rather than the rest of your computation. But even without NaN or infinity it is useful, due to not propagating errors endlessly. E.g. if your sliding window starts with [1e20, 1], this is what would happen with a naive rolling sum: >>> 1e20 + 1 - 1e20 - 1 -1.0 Compensated summation will reduce these effects, but not making your result depend on values outside of the window will eliminate long-term error accumulation entirely.

23 hours ago • 1 votes
Lighthouse map

Lovely global map with animated lights sweeping the waters

yesterday • 1 votes
📚 BoredReading

You seem to be enjoying this.

Join free to unlock everything.

Create free account

Already have an account? Sign in