Skip Navigation
What technology purchase felt like a major upgrade in your life?
  • The second part sounds like a thing phones should already be capable of, if it weren't for trying to charge for something. Or snoop on me. Or something worse I just haven't thought of.

    Enshittification is such a downer. Oh, well, guillotines will fix it eventually, I guess.

  • What technology purchase felt like a major upgrade in your life?
  • So close! Get one that does poached eggs. It's basically like an ice-cube tray, but the cells are bigger so they fit a whole egg. Only downside is that you need to be quite precise when filling the water. (We use a kitchen scale and measure it to the gram, but it's perfect every time)

    The exact model we have is the Cuisinart CEC-10, but I'm sure there are others.

  • Google loses DOJ’s big monopoly trial over search business
  • Yesss... You're not wrong, but I really do believe the solution we want is to be found somewhere in that direction. Considering the Google graveyard, the faang crowd isn't all that reliable either.

  • AI models fed AI-generated data quickly spew nonsense
  • Sounds reasonable, but a lot of recent advances come from being able to let the machine train against itself, or a twin / opponent without human involvement.

    As an example of just running the thing itself, consider a neural network given the objective of re-creating its input with a narrow layer in the middle. This forces a narrower description (eg age/sex/race/facing left or right/whatever) of the feature space.

    Another is GAN, where you run fake vs spot-the-fake until it gets good.

  • What are you working on this week? (May. 26, 2024)
  • Well, Rust has a lot of string flavors, and I like utf-8 being the norm, but there are a bunch of cases where enforcing utf-8 is a nuisance, so getting string features without the aggro enforcement is nice.

    There's probably some fruity way to make this a security issue, but I care about ascii printables and not caring about anything else. This is a nice trade off: the technical parts are en-US utf-8, the rest is very liberal.

  • How do you holistically document microservices in a multi-repo setup?
  • Backstage has become quite misaligned to what we were originally trying to do. Originally, we were trying to inventory and map the service eco-system, to deal with a few concrete problems. For example, when developing new things, you had to go through the village elders and the grape vine to find out what everyone else was doing. Another serious problem was not knowing / forgetting that we had some tool that would've been very useful when the on-call pager went off at fuck you dark thirty.

    A reason we could build that map in System-Z (the predecessor of Backstage) is that our (sort of) HTTP/2 had a feature to tell us who had called methods on a service. (you could get the same from munging access logs, if you have them)

    Anyway, the key features were that you could see what services your service was calling, who was calling you, and how those other systems were doing, and that you could see all the tools (e.g. build, logs, monitoring) your service was connected to. (for the ops / on-call use case)

    A lot of those tool integrations were just links to "blahchat/#team", "themonitoring/theservice?alerts=all" or whatever, to hotlink directly into the right place.

    It was built on an opt-in philosophy, where "blahchat/#team" was the default, but if (you're John-John and) you insist that the channel for ALF has to be #melmac, you can have that, but you have to add it yourself.

    More recently, I've seen swagger/openapi used to great effect. I still want the map of who's calling who and I strongly recommend mechanicanizing how that's made. (extract it from logs or something, don't rely on hand-drawn maps) I want to like C4, but I haven't managed to get any use out of it. Just throw it in graphviz dot-file.

    Oh, one trick that's useful there: local maps. For each service S, get the list of everything that connects to it. Make a subset graph of those services, but make sure to include the other connections between those, the ones that don't involve S. ("oh, so that's why...")

  • Am I going fucking crazy? (Regarding explicit songs being censored on various music streaming services.)
  • Could 'push', yes, as in, "we mentioned it in passing when rock and roll grandpa wasn't paying attention, so he wouldn't throw a hissy fit and withdraw from the service". Oh, you meant to the labels? Ha ha ha, NO. The labels have basically nuclear option veto powers.

    As for changes, well, updates get delivered all the time, for various reasons. (The scratched Turbonegro album being one frequent flyer.) I think a lot of those are bullshit SEO-like reasons, but it is what it is.

    Which artist appears in most frequent releases? I forget, but I think it's Elvis. Possibly Johnny Cash. Why? Because some material has gone out of copyright in some jurisdictions, and so people have the idea to upload them again in 'new' compilations. (The content team don't even beat these down personally -- that's machine work)

  • Am I going fucking crazy? (Regarding explicit songs being censored on various music streaming services.)
  • I worked on exactly this for a while, a long, long time ago. It turns out to be an annoyingly difficult bag of problems. The record companies don't really care, they sell (sold, I guess) pieces of plastic. (Idk if they fixed it yet, but the same Turbonegro album kept getting sent with the same scratches, kept getting taken down a while later, for years.) So, good luck trusting them to label anything.

    Puritans are so much more aggressive than sane people that making mistakes one way is much more expensive than the other way.

    Anyway, we ended up trying to work out which tracks are actually the same song, (Easy for you, harder for friend computer, yes?) and then if one of them is marked explicit, they all are, unless marked "radio edit" or "clean", or whatever. If you think about this for a minute, if one track is labeled "radio edit", maybe the other ones should be marked explicit...

    It's a deep rabbit hole, is what I'm saying.

    And the people with the pitchforks are never happy.

  • Linking parts of the codebase such that changing one forces reviewing the other ?
  • Ok, TIL there's a thing called Required, but otherwise, one way to do this is to rename the other part/field/key(s), so that old code reveals itself in much the same way as using a deleted field (because it does, actually)

    Another way is explicitly have a separate type for records with/without the feature. (if one is a strict subset, you can have a downgrade/slice method on the more capable class.

    Lastly, I would say that you need static typing, testing, both. People from static-land get vertigo without types, and it does give good night sleep, but it's no substitute for testing. Testing can be a substitute for static typing in combination with coverage requirements, but at that point you're doing so much more work that the static typing straight jacket seems pretty chill.

  • What are you reading??
  • They come in groups, in a way, but they also refer back any which way, anyway. I recommend just the order they were written, it's worked well so far. (about half way through, I think)

  • What have you changed your mind about?
  • Yeah, but they didn't serve 'fresh' coffee, the whole point was to make a giant urn of coffee and sell coffee from that all day. I don't know what the boundaries of those rules were, it's entirely possible it's different if you serve it in an open steaming cup, but this was Styrofoam take away cups.

    Their customers had had problems before, but they didn't care. I think that's what got them in the end.

  • What have you changed your mind about?
  • There's a safety regulation, but the mcd manual almost said outright to ignore it. And there had been numerous incidents before, and even court cases. They were finally fined something like half a days' profit from the sale of coffee. Only the scale of of mcd makes it seem like more than what the paperwork costs anyway. Personally, I think someone in the C-suite should get jail time for 'gross bodily harm', or whatever.

  • InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)AE
    aes @programming.dev
    Posts 0
    Comments 35