-
We can all agree that coding harnesses are absolutely ABSURDLY effective, and when trying to get things done quickly - are the way to go.
HOWEVER I think that chat interfaces are underrated: for one key reason - they make you learn.
If an agent takes your prompt, adds a feature, sees that it errors, then fixes it - you didn’t learn anything from the debugging. Nor did you learn anything from the implementation.
A chat interface necessitates a bunch of annoying copy pasting, manual debugging, and pain. But I think that’s a better way to learn.
-
A better RPG data system for mass entities
I was reading through fluent python today, and I was looking at the chapter involving sets. For those not in the know, sets are a programming data structure (and mathematical topic, you might’ve heard of 'set theory') and they’re used when you want to quickly find if something EXISTS in a certain category. It’s like searching up if a user has an account, vs pulling up their account and returning an error (the former is faster than the latter).
I was thinking, because I’ve been working on a rogue-like recently, and one of the things that’s on my mind is the quick iteration over multiple entities. I want to create a game with 10,000 characters (representing a country), and have each of them with their own goals and personalities. Of course, a complete simulation done turn-by-turn is going to be computationally expensive. I want to find a way to do it quicker.
One of the key fields in the game is the "temporary emotion" struct - which has an array of tags (happy, fearful, jealous, etc. etc.). So, when we iterate over each character, we’d use an if statement to see what tags are present - then apply behavior.
Instead - we can utilize data oriented design and set-based design. So, we’d iterate through an array of happy[Character], sad[Character] instead of doing the tags (I hope that makes sense). We can do simple existence checks to see if the character is in that specific personality array, and if they are, we perform the behavior and adjust the goals. No if statements.
Just a thought.
-
Weirdness points
I recently read this blog post today and I wanted to repost it.
Weirdness Points posit that the ability to convince people to believe, do, or respect something that sounds weird is a limited resource.
Someone with dozens of unconventional beliefs and habits will seem too eccentric to be worth paying attention to, but someone who pushes one weird thing while otherwise being respectable has a shot at convincing the people around them to take it seriously too.
— LessWrong.com Multicore - reccomendationsforjuniors
-
Always be doing something
I grew up playing Mobas. First it was Dota, then it was Smite, then I had a friend group that played League. I took a break - but it wasn’t really a break - you know how it is. These games are absurdly addictive, and I got obsessed with them. For a while I fell in love with deadlock, but I aged out.
Anyway - the number one rule at getting good at mobas is is:
Always be hitting something
Downtime is BAD. Like, really bad. You must always be farming, or positioning, or fighting. These games aren’t just based on skill - there’s a whole economic element to it as well. You can win every single fight except the last one - and lose horribly.
Mobas have a whole micro vs macro divide, and macro matters a lot more.
Anyway - the point I’m making is that these games are extremely active. And I’ve brought the same logic to life.
Always be doing something.
One of the things about hustle culture that i agree with is the perspective that doing nothing is bad. I’m always reading articles, trying to think about my work outside of work, and ways to improve myself.
I find this seems to be a big cultural gap between some of the people I speak to. A lot of people give technical people advice like "Slow down you’re doing fine" or something along those lines. I find that patronizing.
- Rolling my own static site generator
-
Sometimes I feel like I finish one project, and a dozen more catch my attention. I’m always busy.
That’s a good thing, I feel. I’m always learning something. But I don’t ever feel "done".