Skip Navigation
"Progress"
  • Sweetie did you read the part about being transfem? I dodrink coke, not beer ;)

  • [image] Cars are an incredibly inefficient way to move people
  • You make some good points.

    try to use public transport as primary means, but use the car instead if it's not viable or the difference would be big

    I agree with you, thanks for improving my 'rule' :)

  • [image] Cars are an incredibly inefficient way to move people
  • Really the only justification for a car is when you have kids. I have 3 of them, and a car is super super useful. But yeah, for everyone else, use public transport.

  • "Progress"
  • Why scare quotes? I lived in DĂĽsseldorf back in '90 (go alts - that was the name of my school team, and yes it was sponsored by Alt bier 🍺... different times), it's always been one of Germany's more clean cut, upmarket cities, but this picture makes me want to go back and check it out again.

    Then again, I'm a queer transfem and I'm in BERLIN, THE QUEER CAPITAL OF THE WORLD. DĂĽsseldorf is in the last instance just meh.

  • How do you keep beating me!
  • For the first time?

  • It's good to take a moment to relax every now and then.
  • Really bugs me too. It's vulgar and mean-spirited. I say this as a transfem who is an explicit target of discriminatory republican policies.

    Making fun of someone because they're old is unacceptable. That's civility 101, if you claim to be a democrat and do this kind of thing you're a fraud imho

  • Italy begins stripping lesbian mothers of their parental rights
  • The same people who've been complaining for four decades about things like erosion of due process and weak and unpredictable property rights go ahead and change birth certificates retroactively, creating chaos, confusion, and bureaucracy.

    How these lunatics think they're serving the interests and needs of the kids is beyond me. It's so mean-spirited and eigenharming.

  • HP is the worst
  • Who needs color anyway? A black laser printer is the way to go :)

  • How would I use std::lock_guard when using asynchronous callbacks?
  • A few points:

    1. you should (strictly) prefer std::scoped_lock over std::lock_guard.
    2. your scope locked takes an std::mutex, not a map (ie in its constructor)
    3. the lambda passed to foo is called a completion handler; one way to thread a bunch of (related) handlers without needing explicit locks is to use so-called strands. As long as all the operations which have to be performed serially are coroutines, spawned within strand in question, you can actually have a thread pool of executors running, and asio will take care of all the locking complexity for you.
    4. you're using p in the block as a whole, and within the completion handler, so be aware that the p outside has to be well-defined, and that the interior one (in the lambda) shadows the outer one. (I'm a fan of shadowing, btw, the company I used to have lint settings which yelled when shadowing happens, but for me it's one of the features I want, because it leads to more concise, uniform, clear names -- and that in turn is because shadowing allows them to be reused, but in the specific context... anyyyyway)
    5. modern C++ tends to favour async style code. Instead of passing a completion handler to foo, you make foo an awaitable functor which co_yields an index (p, above), one which we can co_await as in:
      // note: the below has to run in a coroutine 
      ...
      my_map[q].insert(10); // renamed outer p to q to avoid collision now that async-style leaves p in the same scope as outer code!
      const auto& p = co_await foo(bar1);
      // use p
      
    6. If you want to do 5 on existing code, follow the guidelines here to wrap legacy callback code into something that works with C++20 awaitables.
    7. If I may be so bold, you're describing something intrinsically async, so you may want to consider using boost::asio, then you get access to all this.
    8. and nowadays, all this is dead easy to install using conan
  • __mk__ adhd michelle @lemmy.blahaj.zone

    yet another transfem programmer from berlin

    I use PGP, here's my signature

    Posts 0
    Comments 9