> it doesn’t go very deeply into e.g. garbage collection and data representation.
> I like to blog about cool techniques that are undiscussed nowadays.
> For example implementing weak references and how to GC them efficiently.
I had the same complaints about the books! They're always so high level. Stuff like garbage collection is simply taken for granted. In a real lisp, it's a core part of the virtual machine.
The blog posts about the chicken garbage collector and data representation are excellent. I really want to read about how chicken's continuations are compiled, hope to see an article there about it someday.
I too have taken up blogging in order to fill those gaps.
> Other stuff I rarely see discussed is how to do FFI and cross-module optimizations
Yeah. Those subjects are deeply interesting but I've never been able to find much material about them.
Wingolog has a post about cross-module partial evaluation in guile.
The partial evaluator cannot penetrate foreign functions, which prevents optimizations. It's an argument against FFIs!
> The biggest positive I see right now is the push for digital sovereignty.
> I sincerely hope this will change how people deploy tech, maybe in a more mindful manner.
> But vested interests and inertia will be hard to overcome and really bum me out.
Always nice to find more people who care! If you find a way to avoid feeling bummed out, please share. Things only seem to get more difficult for us...
AIs make short work of proprietary code as well. Reverse engineering has become trivial. Not releasing any code whatsoever is the only possible defense now. I've made my peace with that.
What worries me is the fact AIs render licenses irrelevant. What's the point of starting an AGPLv3 project when AIs can just study it and make a proprietary equivalent? The free software movement no longer has any leverage.
I also don't feel any sense of accomplishment anymore. Software is so trivial now. Even if I make some unique thing, others can just have an AI copy it. Nothing is special anymore. Feels like there's no point.
Indeed. I specifically decided to open-source my AI coding agent harness (coming later this month) because I felt like I was never going to be able to protect any the trade secrets due to how easy reverse engineering is now.
Easy doesn’t mean legal, and the fact that the law hasn’t caught up doesn’t mean that it won’t. And if both public sentiment and LLM feedback loops trend in the directions I fear they will, retribution may be swift and not easily reversed.
> AIs make short work of proprietary code as well. Reverse engineering has become trivial. Not releasing any code whatsoever is the only possible defense now. I've made my peace with that.
This is a false equivalence. Reverse engineering my binary is not the same thing as training on my code. When you RE a binary, what comes out the other side is not the code that I wrote, its some machine-generated code that can reproduce the behavior of the binary. The result can't even be described as 'similar' to the original, because the compilation process is pretty much 100% lossy.
Reverse engineering my binary doesn't concern me too much, as I'm sure there are legal avenues I could take to protect my business were it to become a real problem. And if it comes down it, there's zero competitive advantage someone would have in that scenario, as all they'd have is undifferentiated AI slop.
Taking my work, putting it into your commercial product, and selling it without my permission is what I have a problem with. That's exactly what AI companies are doing with very little push back, and why I won't release my hand-written human code anymore.
> I also don't feel any sense of accomplishment anymore. Software is so trivial now. Even if I make some unique thing, others can just have an AI copy it. Nothing is special anymore. Feels like there's no point.
Software is certainly not 'trivial' now. The only people who believe this are those that have gotten caught up in the AI marketing blitz, or have completely detached/warped perspective on software. I.e. non-engineers wowed by novelty, finance execs wowed by the idea of being able to fire a bunch of people, or oligarchs wowed by the idea of being able to monopolize an entire industry.
Yes, it does. It's exactly what I want my real life city to be like.
No plants growing everywhere completely out of control and invading perimeters they aren't supposed to be in. No cracked pavement that's just a rainfall away from being replaced with potholes.
Apparently, "soul" means a city that looks like it's unmaintained and teetering on the edge of a precipice, just about to be reclaimed by nature, a few years away from turning into the green urbanscape of The Last of Us.
You're rejecting the behavior of both human nature and earthly nature in a naively idealistic manner.
From the moment an object is constructed it is being pulled into the ground. Maintenance has a far higher cost than initial construction. Relative perfection is inversely proportionate to complexity.
This is the exact same mentality that drives suburban lawn guys crazy when their grass has a brown spot. You are not fully in control.
Speaking of naivete, you can actually live in a city where the sidewalks are maintained, not sinking into the ground, and where the buildings are washed/painted, where cables are buried, where there is no trash on the street, no graffiti, and where there aren't derelict boarded up buildings with overgrown weeds. Nice areas do exist.
It's unpleasant to accuse someone of being naive in a paternalistic fashion that implies "you're wrong, because you don't know any better, but if you knew better you'd agree with me".
The post you replied to embodied a preference. You responded that they were wrong and naive for not wanting to depict cities constantly "being pulled into the ground". Some people playing a simulator do not want the simulator to force unavoidable decay everywhere. This is something for which there is room for a breadth of preferences, not something for which there is a correct and incorrect answer.
Who would choose to live in a decaying city? Broken down buildings, screwed up roads?
This is stuff you grit your teeth and put up with because it can't be helped. Who would choose to design a city with this decay literally built into it? That's mind boggling.
> Who would choose to live in a decaying city? Broken down buildings, screwed up roads?
Decay is a never-ending process, as are the changing architectural tastes of city residents. Only through a continual process of demolition and rebuilding can they be kept at bay.
You see this in real cities everywhere: districts of shiny, antiseptic, newly-built towers, side-by-side with decaying warehouses and brownstones from a hundred years ago. The former are modern, the latter are charming, to be desirable a city needs a balance of the new and the old.
Literal millions of people live in New York, Athens, London, Berlin, Rome, and tons of other places with various grades of decay visible everywhere. That’s what we usually call a place having a soul.
I don't get what your point is. Are you saying people don't fix and improve their homes?
Leave cracks and potholes on the pavement for long enough, allow some dilapidated building to stand for long enough, and it just becomes part of the identity of the city and the people who live in it? It turns into the city's "character" ?
It's very interesting to observe the different perspectives in this thread, which seem to be mutually exclusive. When talking about urban decay, some people think of an artist's loft in a run-down brick factory from the 19th century with Graffiti on the walls and exposed steel beams, others of potholes, trash, and overdue maintenance.
You make a bit of weed overgrowing a bit of pavement that's slightly broken sound like that scene in Idiocracy when the protagonist looks out of a window for the first time, come on.
The extreme opposite of that would hordes of people (or robots) with nail clippers patrolling everything 24/7. When any tile is even just chipped (or when when the scan shows the wind carried away a few molucules from the surface), it gets replaced. When tiles in that exact same color aren't available anymore, they all get replaced. Heck, when the sun was out and faded the color of something slightly more than areas that were in shade, the whole area has to be rebuilt.
Or take cutting your fingernails: do it once a week, do it daily, or why not every second? Every moment they're growing a bit, and they don't remain in the shape determined as well cut by their owner for even an hour! Unless you keep cutting/filing them. But while you are cutting your nails, you can't be cutting your hair, so that's gross. And even if you could, you cannot cut all strands of hair at the same time, it'll always be screwed up.
So of course the answer is somewhere in between, it has to be, and it's probably not the same for everybody.
> The extreme opposite of that would hordes of people (or robots) with nail clippers patrolling everything 24/7.
Hordes of robots constantly and meticulously maintaining entire cities sounds awesome, actually. That's the post scarcity society I dream of.
> Or take cutting your fingernails: do it once a week, do it daily, or why not every second?
We only need to choose because we lack the technology. Maybe one day we'll have Deus Ex style nanobot pills we can swallow. They will invisibly and continuously maintain our bodies for us. Nails are just one of countless things they will maintain.
Every single building is a rejection of entropy. We're literally carving out a secure and comfortable space for ourselves to exist inside. It's literally built to withstand and reject the elements, the chaos of the outside universe. Even the stereotypical jungle survivalists create structures to bend the surrounding environment to their benefit instead of allowing them environment to bend them. Structure is the antithesis of entropy.
This is entirely orthogonal to economically efficient concentration. In fact, cities are an extension of it. We want to be safe and comfortable when we leave the buildings too. We don't want the cities to just look nice, we want architecture that makes our very souls feel safe and protected. We want facilities like well maintained sidewalks and roads so we can walk and drive with ease. This leads to economic efficiency.
> Every single building is a rejection of entropy.
No?
It’s just a building. I’d doubt there’s more than a handful of buildings that were made by hands that were explicitly rejecting entropy and just doing what they needed/wanted in the moment.
Do you think the builders of any randomly selected building, built said building as a rejection of entropy?
Like otherwise if we get down to philosophical bones then life is a rejection of entropy as it orders matter and energy, in which case the discussion is pointless if we’re at that level.
I'm just addressing the point about entropy that you made.
> Do you think the builders of any randomly selected building, built said building as a rejection of entropy?
I don't know. I'm just saying that every single building adds to the organization within the system, as does every single life form.
Entropy is a measure of the disorder and disorganization within a system. Any form of structure reduces entropy by definition.
You should probably engage with the second paragraph of my original reply:
> We want to be safe and comfortable when we leave the buildings too. We don't want the cities to just look nice, we want architecture that makes our very souls feel safe and protected. We want facilities like well maintained sidewalks and roads so we can walk and drive with ease.
>I don't know. I'm just saying that every single building adds to the organization within the system, as does every single life form.
No, you didnt. You said
> > You're rejecting the behavior of both human nature and earthly nature
Absolutely.
> The whole point of a city is to reject all that.
Saying the "point" of a city implies intent. You cant motte and bailey back and forth between intent and happenstance.
> You should probably engage with the second paragraph of my original reply:
If I am going to engage with your _second comment's_ _second paragraph_ (cause were skipping over your first comment I replied to and the first paragraph of your second comment apparently) that I was replying to, I would probably quibble over you trying to entwine souls and economic efficiency
Absolutely the second version. The first version looks unrealistic and gets boring fast. Assuming the amount of degradation can be adjusted it's a no brainer to make use of it. In the real world the elements will degrade everything over time..
There's sets where the second photo includes a huge amount of litter (10+ piles, each multiple objects).
There's one where the author explicitly says they want run down buildings, and shows an example of a clean wall -vs- a dirty wall, and a clean wall -vs- one where the paint is decaying.
But there are definitely others where it's lived-in, where it's adding trees and plants and even just parked cars.
The second set of photos just have more detail. For example, the sidewalks are more detailed instead of just being flat rectangles.
The glorification of disrepair and decay is still very much present though. "Soul" means decayed paint on houses, visible bricks and a huge hole on the pavement that no doubt spread its own unique flavor of disrepair to the car that just drove past it.
Adding more detail is absolutely fine, but this glorification of breakdown doesn't sit well with me at all. I see far too much of it in real life on a daily basis and it seriously made me cringe. It's a problem to be solved, not something to be added in deliberately.
"Soul" means something has a story to tell. It was created for a purpose, it was useful, it may be near its end. There are very clear and obvious dimensions to it that help to immerse you into the game. Details to pick up on, some obvious and some not so obvious.
The opposite, where everything is very clearly manicured, created, is so far from reality that the immersion is more difficult to achieve, or is quickly lost. You never stray far from the fact that you're playing a city game with very rigid rules.
I think this is what the author means by "Soul": objects with details to show something lived, was paid attention to, has story, depth, and scars to prove it.
That's not soul, that's just... History. Of neglect.
Detail is fine, but deliberately adding disrepair and actually calling it nice is something else entirely. It implies this is desirable.
Real "soul" would have been adding urban decay as a gameplay mechanic. Players would be stretched thin trying to keep up and some areas would naturally decay as a result. That's the realistic city story: I had limited time and resources, and couldn't afford to care about every part of the city, so the neglected ones decayed.
This is the real story, the realistic one. Adding decay just because you like the aesthetic of it is something else. It's like adding CRT filters to modern games.
However you want to label it: you don't get a sense that anything living ever touched the little pixels you're moving around on the screen. There is no 'emotional tug' to help immerse you into the game.
I do like your gameplay mechanic idea, but others may not. A quick filter may not add "soul" for you, but it might for others. It's about emotions and immersion, but it's all obviously illusion.
+1. Some of the added detail (e.g. more realistic-looking brick) looked great. Some of it was the kind of thing that better depicts "areas you've failed to maintain", iff you want your simulator to have those bits of verisimilitude.
I'd be all for separating "better, more lifelike, more realistic rendering, with interesting variation" from "decay".
big flat rectangles isnt less detail. ive seen plenty of lots that look exactly like that with the surface being sort of a grippy stucko. adding detail would be texturing it to show the grit better
breakdown and maintenance is a part of life, and if you want a city to look like it spends a million a month per block on maintenance, thats fine to have as a fantasy for a game. Youre playing a game, entropy doesnt have to apply.
the post is right though, city games always put a layer of fantasy over one of the major costs that a city has - maintenance.
i havent played one since sim city 3k, but i expect theres still no setting up snow clearance routes and how changing the order or amount of plows affects traffic, along with the associated costs to the city.
I think it could be tastefully done. Even well–maintained objects age in real life, and that is often part of the charm.
Consider the 115 year old brick building in a town I used to live in, with the faded remnants of a 50 year old replica of the sign painted on the side by the butcher’s shop that originally owned the building.
I think it's just a matter of what people want from a city builder. Some people play the game to build the city they wish they had. While others play the game to build the city they've already got.
> No plants growing everywhere completely out of control and invading perimeters they aren't supposed to be in. No cracked pavement that's just a rainfall away from being replaced with potholes.
Fwiw this would certainly strike me as soulless. Haven't you ever seen pleasantville or don't worry darling? "Soul" to my ear implies imperfection.
I'm so glad I finally encountered neighborhoods with all natural yards right in the middle of cities that make them so much nicer to walk through, apart from the bees.
Instead we have to beg most big cities to install trees at $40k/pop so you aren't getting melted in the texas sun walking your dog.
If my memory serves me right, according to other papers, they cause a loss of gender identity, also a gender change during pregnancy, and then people wonder why there are so many homosexuals. This too should be terrifying if true.
How do you know the other humans you interact with in real life are conscious? They might be biological automatons, golems. You will never know. It's not something that can ever be proven. Only human empathy allows anyone to believe otherwise.
You know you're conscious because your soul is staring out at the world through your eyes. Generalizing from your own experience and concluding that other humans are conscious is a logical jump, a spiritual belief. Humans even extend it to animals. There is no reason why it can't be extended to AIs.
The internet will always route around censorship in principled western nations.
It's a politico-technological arms race. They make their laws. We make technology that completely nullifies their laws. They need to increase their tyranny in order to enjoy the same level of control they had before. The end state is either a totalitarian government or an uncontrollable population.
I used to think that we'd find some kind of equilibrium along the way, that we'd eventually discover the government's limits: some principle they refuse to break, some line they refuse to cross...
But the truth is these tyrants have no limits whatsoever. They'll stop at nothing in their quest to control the flow of information.
The way I see it is that if more countries become autocratic, then Russian autocracy becomes normalized and they will become less of a pariah in the global world order. The more they can normalize themselves, the more the Russians can evade restrictions and sanctions. This is their end goal.
And just to add, the US end goal after WWII was to normalize democracy across the globe. Hoping that as more countries became democratic, more countries and populations would demand the same. We saw this a bit in the 90's after the fall of the Soviet Union.
> What do those Lisp books lack?
> it doesn’t go very deeply into e.g. garbage collection and data representation.
> I like to blog about cool techniques that are undiscussed nowadays.
> For example implementing weak references and how to GC them efficiently.
I had the same complaints about the books! They're always so high level. Stuff like garbage collection is simply taken for granted. In a real lisp, it's a core part of the virtual machine.
The blog posts about the chicken garbage collector and data representation are excellent. I really want to read about how chicken's continuations are compiled, hope to see an article there about it someday.
I too have taken up blogging in order to fill those gaps.
> Other stuff I rarely see discussed is how to do FFI and cross-module optimizations
Yeah. Those subjects are deeply interesting but I've never been able to find much material about them.
Wingolog has a post about cross-module partial evaluation in guile.
https://www.wingolog.org/archives/2021/05/13/cross-module-in...
The partial evaluator cannot penetrate foreign functions, which prevents optimizations. It's an argument against FFIs!
> The biggest positive I see right now is the push for digital sovereignty.
> I sincerely hope this will change how people deploy tech, maybe in a more mindful manner.
> But vested interests and inertia will be hard to overcome and really bum me out.
Always nice to find more people who care! If you find a way to avoid feeling bummed out, please share. Things only seem to get more difficult for us...
reply