[-] modulus@lemmy.ml 15 points 1 month ago

The usual pro-advertising take. "It's ok that we're going to experiment without your consent on how to manipulate you, because we only use aggregated data so it's not personal, it's business."

[-] modulus@lemmy.ml 22 points 2 months ago* (last edited 2 months ago)

I'd like people to STOP PRETENDING that the only plausible reason why someone doesn't agree with this is that we don't understand it. Yes, I understand what this does. The browser tracks which advertisements have been visited, the advertiser indicates to the browser when a conversion action happens, and the browser sends this information to a third-party aggregator which uses differential techniques to make it infeasible to deanonymise specific users. Do I get a pass?

Yes, this is actively collaborating with advertising. It is, in the words of Mozilla, useful to advertisers. It involves going down a level from being tracked by remote sites to being tracked by my own browser, running on my own machine. Setting aside the issues of institutional design and the possibility for data leaks, it's still helping people whose business is to convince me to do things against my interest, to do so more effectively.

[-] modulus@lemmy.ml 43 points 2 months ago* (last edited 2 months ago)

Whatever opinion you may have of advertising as an economic model, it’s a powerful industry that’s not going to pack up and go away.

Fuck that. Not if we don't make it. That's precisely the point. Do not comply. Do not submit. Never. Advertising is contrary to the interests of humanity. You're never going to convince me becoming a collaborator for a hypothetically less pernicious form is the right course of action. Never. No quarter.

We’ve been collaborating with Meta on this,

That makes it even worse.

any successful mechanism will need to be actually useful to advertisers,

And therefore inimical to humanity in general and users in particular.

Digital advertising is not going away,

Not with that attitude.

but the surveillance parts could actually go away

Aggregate surveillance is still surveillance. It is still intrusive, it still leverages aggregate human behaviour in order to harm humans by convincing them to do things against their own interest and in the interest of the advertiser.

This is supposedly an experiment. You've decided to run an experiment on users without consent. And you still think this is the right thing--since you claim the default is the correct behaviour.

I cannot trust this.

[-] modulus@lemmy.ml 27 points 2 months ago

This is bullshit. The total amount of advertising I want is zero. The total amount I want of tracking is zero. The total amount of experiments I want run on my data without consent is, guess, zero.

[-] modulus@lemmy.ml 22 points 4 months ago

For me the weirdest part of the interview is where he says he doesn't want to follow anyone, that he wants the algorithm to just pick up on his interests. It's so diametrically opposed to how I want to intentionally use social networks and how the fedi tends to work that it's sometimes hard to remember there are people who take that view.

8
submitted 5 months ago* (last edited 5 months ago) by modulus@lemmy.ml to c/rust@programming.dev

I have a struct that looks like this:

pub struct Game {
    /// A HashSet with the players waiting to play as account strings.
    lobby: HashSet<String>,
    /// capacity determines  how many people a match contains.
    capacity: u8,
    /// A vector of ongoing matches.
    matches: Vec<Match>,
    /// HashSet indicating for each player which match they are in.
    players: HashMap<String, usize>,
}

I realised that this won't work because if there are 3 matches (0, 1, 2) and I remove 1 because it ends, the players that used to point at 2 will be pointing outside the vector or to an incorrect match.

So I thought the obvious solution was to use a reference to the match: players: HashMap<String, &Match>. But this makes lifetimes very complicated.

What's a good way to deal with a case like these where data are interrelated in the same struct?

[-] modulus@lemmy.ml 18 points 7 months ago

Security and performance are hard to measure but it's at least questionable that they're behind in either.

AI has many good uses, for example the local translation capability that allows for privacy-preserving translations of websites is AI and already in Firefox, and makes it possible to translate in environments that do not allow sending data out for security reasons.

[-] modulus@lemmy.ml 36 points 10 months ago

I don't get why states do this. Lie? Yes, that makes sense. But lie so badly it's inevitable they get caught? A lot of people, I would think, will now also have qualms believing anything coming from them, even things that might be true.

[-] modulus@lemmy.ml 32 points 11 months ago

Not that hard left (I gave money to Sumar but I'm realistic that it's the best we can get, more than what we want).

I know some people who are really pissed off about the amnesty, and personally I don't get it. Like in what world is the personal fate of a few hundreds of people who, let's say for the sake of the argument, ran an illegal referendum, more important than labour rights for everyone?

9
submitted 11 months ago by modulus@lemmy.ml to c/rust@programming.dev

Hi there,

I'm trying to do some native windows rust programming. I'm using native-windows-gui and native-windows-derive to do it, but if I try to mix that with tokio, I get the following:

No entry point found error for GetWindowSubclass. On console, I get:

error: process didn't exit successfully: `C:\source\myprojectanem\target\debug\myprojectname.exe` (exit code: 0xc0000139, STATUS_ENTRYPOINT_NOT_FOUND)

If I change

#[tokio::main]
async fn main() {

to:

fn main() {

The problem goes away, but obviously I can't use tokio then.

Any clue what the problem is and how to fix it?

[-] modulus@lemmy.ml 39 points 1 year ago

There is literally no instance in which expanding the scope of copyright law is a good thing. Never.

21
submitted 1 year ago by modulus@lemmy.ml to c/rust@programming.dev

Hi there,

I'm working on a bot to do social games on the fedi, and using the mastodon-async crate for communicating with the ActivityPub server in question. At the moment I'm using tokio mt as a runtime, though I'm new at async so if you think I shouldn't let me know.

The pattern I want to implement is the following:

  • At any given time, a user sends a "play" message to the bot.
  • If the player list is empty, the player is added to it awaiting someone else.
  • Otherwise, the bot checks if there are enough players on its list (who have previously sent a play message). For some games, enough is 1, since it's a 2-player game, for some it's 3 or more.
  • If there are enough players, play commences. list is cloned for that match, then emptied so other players can get in.

What I'm not very clear is how to keep this list to assure that sequence will be respected. I.a., if two play messages come reasonably quick together, I want one to be processed, then entered on the list, or get the match to start; then the other to get processed.

My current thoughts:

  • I could use a channel that receives the player accounts. When a new player is added, it performs the logic.
  • I could use a mutex with a list (or an option player value for the degenerate case of 2-player games).

Any thoughts on what the reasonable thing to do is here? I'm very new to async and while I realise there's probably lots of ways to do this, they're not all equally ergonomic and I want to avoid myself future pain.

[-] modulus@lemmy.ml 18 points 1 year ago

The biggest issues for me are:

  1. No centralisation means there's no canonical single source of truth.
  2. Account migration.
  3. Implementation compatibility.

No single source of truth leads to the weird effect that if you check a post on your instance, it will have different replies from those on a different instance. Only the original instance where it got posted will have a complete reply set--and only if there are no suspensions involved. Some of this is fixable in principle, but there are technical obstacles.

Account migration is possible, but migration of posts and follows is non-trivial, Also migration between different implementations is usually not possible. Would be nice if people could keep a distinction between their instance, and their identity, so that the identity could refer to their own domain, for example.

Last, the issue with implementation compatibility. Ideally it should be possible to use the same account to access different services, and to some extent it works (mastodon can post replies to lemmy or upvote, but not downvote, for example).

[-] modulus@lemmy.ml 18 points 1 year ago

Worth considering that this is already the law in the EU. Specifically, the Directive (EU) 2019/790 of the European Parliament and of the Council of 17 April 2019 on copyright and related rights in the Digital Single Market has exceptions for text and data mining.

Article 3 has a very broad exception for scientific research: "Member States shall provide for an exception to the rights provided for in Article 5(a) and Article 7(1) of Directive 96/9/EC, Article 2 of Directive 2001/29/EC, and Article 15(1) of this Directive for reproductions and extractions made by research organisations and cultural heritage institutions in order to carry out, for the purposes of scientific research, text and data mining of works or other subject matter to which they have lawful access." There is no opt-out clause to this.

Article 4 has a narrower exception for text and data mining in general: "Member States shall provide for an exception or limitation to the rights provided for in Article 5(a) and Article 7(1) of Directive 96/9/EC, Article 2 of Directive 2001/29/EC, Article 4(1)(a) and (b) of Directive 2009/24/EC and Article 15(1) of this Directive for reproductions and extractions of lawfully accessible works and other subject matter for the purposes of text and data mining." This one's narrower because it also provides that, "The exception or limitation provided for in paragraph 1 shall apply on condition that the use of works and other subject matter referred to in that paragraph has not been expressly reserved by their rightholders in an appropriate manner, such as machine-readable means in the case of content made publicly available online."

So, effectively, this means scientific research can data mine freely without rights' holders being able to opt out, and other uses for data mining such as commercial applications can data mine provided there has not been an opt out through machine-readable means.

[-] modulus@lemmy.ml 18 points 1 year ago

Welcome back!

There were points at which Firefox was difficult to stick with, especially after the extension apocalypse, but I think it's evolving pretty well at this point.

-1
submitted 1 year ago by modulus@lemmy.ml to c/europe@lemmy.ml
1
submitted 1 year ago by modulus@lemmy.ml to c/socialism@lemmy.ml
view more: next ›

modulus

joined 1 year ago