slambast's recent activity

  1. Comment on A Vermont border agent’s death was the latest violence linked to the cultlike Zizian group in ~news

    slambast
    Link
    This is related and I found it very interesting: https://aiascendant.substack.com/p/extropias-children Chapter 2 covers Ziz specifically, but a broader picture of rationalism is probably helpful here

    This is related and I found it very interesting: https://aiascendant.substack.com/p/extropias-children

    Chapter 2 covers Ziz specifically, but a broader picture of rationalism is probably helpful here

    6 votes
  2. Comment on What programming/technical projects have you been working on? in ~comp

    slambast
    Link Parent
    Good catch! Now player count is loaded for future weeks as well, and loads data for a week when you show it.

    Good catch! Now player count is loaded for future weeks as well, and loads data for a week when you show it.

    4 votes
  3. Comment on What programming/technical projects have you been working on? in ~comp

    slambast
    Link
    It's not that recent but I haven't posted it before. A while ago, I made https://whendnd.com/ for helping my D&D group schedule times. The pitch is that it's good at scheduling for a group with...

    It's not that recent but I haven't posted it before. A while ago, I made https://whendnd.com/ for helping my D&D group schedule times. The pitch is that it's good at scheduling for a group with very low friction. There's no login required and it's totally anonymous. For an example game, see https://whendnd.com/g/tildes

    I did this project partly to learn about SolidJS, which I've found that I like quite a bit. I still have gripes with it, but less so than Svelte 5 and SvelteKit (I used to use Svelte wherever I could). Recently, though, I turned the whole thing into an Astro site, and was impressed! Astro lets you add in components with SSR support, which is very handy, and the site got a lot faster with Astro than as only a SolidJS SPA. I'm leaning towards using Astro+Solid in other projects - we'll see how it goes...

    3 votes
  4. Comment on AI is creating a generation of illiterate programmers in ~tech

    slambast
    Link Parent
    Yep, I run into that a lot with Go packages and pkg.go.dev. They can be great, especially when you can get some information about a field or method inline with autocomplete. But you gotta have...

    Yep, I run into that a lot with Go packages and pkg.go.dev. They can be great, especially when you can get some information about a field or method inline with autocomplete. But you gotta have some sort of "orientation" at the package level, and ideally some examples. Without some context, and common entry points, it can be really hard to figure out where to start; I wouldn't begrudge someone for using AI for that.

    7 votes
  5. Comment on AI is creating a generation of illiterate programmers in ~tech

    slambast
    Link
    Okay, this is going to be a bit of a rant. Oh boy do I have a bone to pick with this. Of course it's realistic to work without AI. Why wouldn't it be? If your workflow has comprised of acting as a...
    • Exemplary

    Okay, this is going to be a bit of a rant.

    I’m not suggesting anything radical like going AI-free completely—that’s unrealistic.

    Oh boy do I have a bone to pick with this. Of course it's realistic to work without AI. Why wouldn't it be? If your workflow has comprised of acting as a feedback mechanism for Cursor for the last year, of course you're gonna be rusty on, like, actually writing code. Or reading documentation. Or reading code. Or even thinking about how to solve problems, maybe. But you've done it before, and you can do it again. I mostly worry about the people who started programming in this environment, and may never reach the lofty goal of "being able to write code independently" as a programmer. The people who are learning how to code now and have sworn off LLMs are the people I want to hire.

    I'm eternally salty about this subject because I've already felt for a long time that a lot of people I've worked with had a sort of vague relationship with correct code. Well before AI coding, I worked with software engineers who would routinely produce code that only roughly approximated their actual goal. Then coding LLMs came on the scene and turned this trickle into a flood. Great.

    First, I stopped reading documentation. Why bother when AI could explain things instantly?

    This one sends me. I've worked with several codebases where

    • The docs say X on this page
    • The docs say Y in their machine-readable spec (e.g. JSON schema)
    • The actual API does Z

    Adding an AI to this mix only makes things worse. It will either give you an incorrect answer from the docs, or make up a whole new thing. And when the docs are better, and correct, why not just... read them? Before running them through a summarizer that MAY introduce incorrectness and WILL reduce detail?

    I used to write docs for internal enterprise software, and still do a fair bit of technical writing. And refining it is summarizing! The goal is always to give the reader exactly the information they need, no more and no less, and the idea of readers just wood-chipping it through an AI feels insulting. Not all docs are examples of good technical writing, certainly, but at least use AI for situations like "these docs are really dense, and I just have a couple high level questions", instead of "I can't be bothered, what do you think Claude?"

    Robot, experience this tragic irony for me!

    101 votes
  6. Comment on Dungeons & Dragons shows that modish guff doesn’t serve diversity and inclusion in ~games.tabletop

    slambast
    Link Parent
    I bounced off of Foundry when I tried it out, unfortunately. My impression was that it's very powerful, but requires a lot of effort to become proficient with it. Imagine being a brand-new player...

    I bounced off of Foundry when I tried it out, unfortunately. My impression was that it's very powerful, but requires a lot of effort to become proficient with it. Imagine being a brand-new player and joining to see a UI like this - it's overwhelming! Still such an impressive product though.

  7. Comment on Dungeons & Dragons shows that modish guff doesn’t serve diversity and inclusion in ~games.tabletop

    slambast
    Link Parent
    Not a whole lot of details yet, but my main focus is actually on the software side. I have a couple of D&D groups that I play with remotely using dndbeyond and roll20, which I find disappointing...

    Not a whole lot of details yet, but my main focus is actually on the software side. I have a couple of D&D groups that I play with remotely using dndbeyond and roll20, which I find disappointing for several reasons, and I've wanted to make my own version of sites like those for a long time.

    The TTRPG itself is mostly happening because I can't use the D&D IP in my own software. Plus, I think there are a lot of opportunities to improve on the D&D ruleset, and I have a couple friends that are helping with that part. The big bet is that we can have extremely flexible character growth and customization, letting players do crazy stuff, while still making it easy for new players to get started by being thoughtful with the software.

    I'm currently working on a config language that we can define the rules in. I'm hoping to make something that (1) my friends can use to write rules, and (2) something that allows players to add their own house rules, homebrew items, etc - even fully custom rulesets.

    An example of the language
    feature "Basic Armor" {
      require_level: 0
      require_features: none
    }
    
    item "Light Armor" {
      item_type: Armor
      equippable: true
      requires: feature "Basic Armor"
      grant_status: status "Basic Armor" {
        set_armor_class: source.dex + 11
      }
    }
    
    3 votes
  8. Comment on Dungeons & Dragons shows that modish guff doesn’t serve diversity and inclusion in ~games.tabletop

    slambast
    Link Parent
    Clade is a very cool word! It might add yet more terminology for new players to learn when they're already overloaded with information, but I like the flavor it adds.

    Clade is a very cool word! It might add yet more terminology for new players to learn when they're already overloaded with information, but I like the flavor it adds.

    6 votes
  9. Comment on Dungeons & Dragons shows that modish guff doesn’t serve diversity and inclusion in ~games.tabletop

    slambast
    Link
    https://archive.is/RK85d This is an interesting read. This has been on my mind recently as I'm working on my own TTRPG. My thoughts boil down to: "Species" is such an awkward word. It's more...

    https://archive.is/RK85d

    This is an interesting read. This has been on my mind recently as I'm working on my own TTRPG. My thoughts boil down to:

    • "Species" is such an awkward word. It's more accurate when you're talking about goblins vs halflings or something, but I keep trying to think of a better word that doesn't have the connotations of "race."
    • Calling them species to highlight how these are big differences between them, and then also removing the differences, is strange as the article points out
    • "Session Zero" is a great convention, I wish I had done it with my group, and I'm glad it's called out more explicitly in the handbook
    15 votes
  10. Comment on Thousands of Americans see their savings vanish in Synapse fintech crisis in ~finance

    slambast
    Link Parent
    You're referring to Plaid? They're still around and AFAIK doing fine, somehow. I agree that it's bonkers; I've used several services that assumed I would be fine giving away my bank credentials...

    I remember not too long ago there was a startup that was trying to bypass banks not offering an API by asking users to give them their online banking usernames and passwords

    You're referring to Plaid? They're still around and AFAIK doing fine, somehow. I agree that it's bonkers; I've used several services that assumed I would be fine giving away my bank credentials via Plaid. It continuously astonishes me that everyone seems fine with it.

    17 votes
  11. Comment on What the hell is a Typescript or: Creation ideas above my skill level in ~tech

    slambast
    Link Parent
    If you're comfortable with sharing, I would love to check out the design document! Yeah, this definitely seems doable. Some notes: PictoCash feels to me like something that should be done later,...

    If you're comfortable with sharing, I would love to check out the design document!

    Yeah, this definitely seems doable. Some notes:

    • PictoCash feels to me like something that should be done later, and skipped for v1. (I like the idea, I just mean you can do a v1 without it, then add it afterwards.)
    • You may have already considered this, but you're probably going to need some kind of control panels. I'm sure moderation will be required; are there buttons that let moderators make decisions on what/who to kick? And some kind of admin panel; how do you appoint moderators, and set checkpoint dates?
    • Image uploading/hosting is actually very easy, but it costs money and usually comes with moderation overhead
    • It sounds like you're comfortable making changes in the code, especially if they're just content changes. That's good news, because it means you don't need a whole content management system/dashboard!

    Do you have opinions or preferences on the languages and frameworks involved? I'm a big fan of Go on the server-side, using Postgres as the database, sqlc for queries, and twirp for the API. I'm a fan of Svelte, but also fine with NextJS since it's something of a lingua franca.

    1 vote
  12. Comment on What the hell is a Typescript or: Creation ideas above my skill level in ~tech

    slambast
    Link
    One question, since I'm not familiar with Art Fight: how would timing work in PICTOCLASH? I see there's a "next checkpoint in 4 hours..." line; is there a 24-hour window in which to submit...

    One question, since I'm not familiar with Art Fight: how would timing work in PICTOCLASH? I see there's a "next checkpoint in 4 hours..." line; is there a 24-hour window in which to submit strikes, or something? Does any of that happen in real time?

    This seems very doable, mind shooting me a PM? No promises, but I might be able to get the basics set up. (And would be happy to walk you through the code, open-source it, etc.) I'm a backend engineer, but I've done quite a bit of frontend stuff as well.

  13. Comment on What have you been eating, drinking, and cooking? in ~food

    slambast
    Link Parent
    Not really! I mostly just heat it up so that the sugar and salt will dissolve. To be clear, I'm not shooting for shelf-stability or anything, just something I can keep in the fridge for the week.

    Not really! I mostly just heat it up so that the sugar and salt will dissolve. To be clear, I'm not shooting for shelf-stability or anything, just something I can keep in the fridge for the week.

  14. Comment on What have you been eating, drinking, and cooking? in ~food

    slambast
    (edited )
    Link
    I've made several condiments? garnishes? recently that I absolutely love! The easiest is picked onions: halve one red onion, and slice. Bring to a boil on the stove: ~1 cup red wine vinegar, 0.5-1...

    I've made several condiments? garnishes? recently that I absolutely love!

    The easiest is picked onions: halve one red onion, and slice. Bring to a boil on the stove: ~1 cup red wine vinegar, 0.5-1 cup water, black peppercorns, slivered garlic, red pepper flakes, some salt, and a spoonful of sugar. Put the red onion slices in jars, and then pour the vinegar mixture over them. Refrigerate, they last about a week.

    My favorite salad dressing, a caramelized balsamic vinaigrette:

    • Bring to a boil 1 cup sugar + 4 tablespoons of water, stirring frequently. Boil until it turns light golden, then turn off the heat.
    • Whisk in 5 tablespoons balsamic vinegar
    • Whisk in (slowly) 1 cup olive oil
    • Add 2 more tablespoons of water
    • Add garlic, salt, and black pepper
      (Refrigerate) I like to use this in salads with pear slices and goat cheese, maybe with some walnuts too.

    But the best of the best is chili crisp. Fantastically good on just about any rice dish, sandwiches, whatever.

    • In a large metal bowl (that can handle hot oil being poured into it): 1.5 tbsp ground arbol chili, 3 tbsp gochugaru, 2 tbsp grated/minced ginger, 4 tsp sugar, 4 tsp ground sichuan peppercorn, 2 tsp MSG, 2 tsp sesame seeds, 1 tsp cumin, 1 tsp salt, 1 tsp ground cloves, a 3-inch cinnamon stick, several whole cardamom pods, several star anise.
    • Thinly slice 4 shallots, and a ton of garlic. I aim for a half-cup of sliced garlic.
    • Heat up 2 cups of any oil on the stove (basic vegetable oil works). Fry the shallots. Remove them, then fry the garlic, then remove that.
    • Let the oil get back up to temp, then pour it into the bowl with the dry ingredients, and stir. Let that sit for 30 minutes, then add the fried shallots, garlic, and 1/4 cup of cashews or peanuts.

    You should get about 2 12-oz jars out of it. If you don't like spicy, maybe cut the arbol and gochugaru in half, or replace with a milder chili powder. It should keep for quite a while, but needs to be refrigerated.

  15. Comment on Tesla Cybertruck owners shocked that tires are barely lasting 6,000 miles in ~transport

    slambast
    Link Parent
    Pretty much! If top speed in top gear is around the redline (max RPM for the engine), then going half that speed will be a much lower RPM, which is better for fuel consumption, noise, etc. Also,...

    Pretty much! If top speed in top gear is around the redline (max RPM for the engine), then going half that speed will be a much lower RPM, which is better for fuel consumption, noise, etc.

    Also, not a car, but I previously had a motorcycle which had a top speed of around 90mph—well above legal speeds anywhere on US public roads. And yet, add a headwind and an uphill on a 70mph highway, and suddenly it's not possible to keep up with traffic... Not to mention that holding it at 9000 rpm was not comfortable! Quite a lot of noise and vibration.

    6 votes
  16. Comment on Whistleblower who accused Boeing supplier of ignoring defects dies in ~transport

    slambast
    Link Parent
    John Barnett was 62, but Joshua Dean was 45.

    John Barnett was 62, but Joshua Dean was 45.

    4 votes
  17. Comment on The await event horizon in Javascript in ~comp

    slambast
    Link Parent
    Yes - there's nothing stopping you from constructing a function like this: func TotallyConformantFunction(ctx context.Context) { newCtx := context.Background() doTaskThatShouldBeCancelable(newCtx)...

    a top-level deadline should be passed along with each remote call, which in turn gets added to a child operation’s context. I believe this is best-effort, though, rather than a guarantee?

    Yes - there's nothing stopping you from constructing a function like this:

    func TotallyConformantFunction(ctx context.Context) {
    	newCtx := context.Background()
    	doTaskThatShouldBeCancelable(newCtx)
    }
    

    ...and lo, the original context's CancelFunc does nothing. Not only can it be escaped on purpose, it requires a bit of discipline to remember to handle cancellations. You might, for some god-forsaken reason, want to have a function like this:

    func WaitFor3Seconds(_ context.Context) error {
    	time.Sleep(3 * time.Second)
    	return nil
    }
    

    But this will ignore context cancellation. What you have to do instead is:

    func WaitFor3Seconds(ctx context.Context) error {
    	timer := time.NewTimer(3 * time.Second)
    	select {
    	case <-timer.C:
    		return nil
    	case <-ctx.Done():
    		timer.Stop()
    		return ctx.Err()
    	}
    }
    
    4 votes
  18. Comment on Nobody warned electric vehicle owners how quickly they would burn through tires in ~transport

    slambast
    Link Parent
    I do :) my car (3,200lb, 250hp Focus) came with Goodyear Eagle F1 Asymmetric summer tires, which were worn out after about 20,000 miles. I replaced them with Yokohama Advan Sport A/S+ all-season...

    I do :) my car (3,200lb, 250hp Focus) came with Goodyear Eagle F1 Asymmetric summer tires, which were worn out after about 20,000 miles. I replaced them with Yokohama Advan Sport A/S+ all-season tires which have a 55,000 mile treadwear warranty. I've been on those for ~25,000 miles and they look basically new. They have noticeably less grip in warm and dry conditions, but are better in the wet/cold, and obviously last much longer. My driving trends towards spirited as well. 6,000 miles is ridiculous - that's motorcycle territory.

    1 vote
  19. Comment on I have an issue with the 3 Body Problem in ~tv

    slambast
    Link Parent
    This is explained in the book: one message from earth is not enough to pinpoint its location, but two messages would be. It doesn't matter if other Trisolarians/San-Ti hear it. The message in the...

    This is explained in the book: one message from earth is not enough to pinpoint its location, but two messages would be. It doesn't matter if other Trisolarians/San-Ti hear it.

    The message in the book was: This world has received your message.

    I am a pacifist in this world. It is the luck of your civilization that I am the first to receive your message. I am warning you: Do not answer! Do not answer!! Do not answer!!!

    There are tens of millions of stars in your direction. As long as you do not answer, this world will not be able to ascertain the source of your transmission.

    But if you do answer, the source will be located right away. Your planet will be invaded. Your world will be conquered!

    Do not answer! Do not answer!! Do not answer!!!

    2 votes
  20. Comment on The end of the MrBeast era in ~tech

    slambast
    Link Parent
    I just watched one linked in the article for the first time, and it definitely validated my feelings about that genre of content ("pop-youtube"?). It felt like I was being smacked in the face with...

    I just watched one linked in the article for the first time, and it definitely validated my feelings about that genre of content ("pop-youtube"?). It felt like I was being smacked in the face with an entertainment bat.

    29 votes