modulus

joined 2 years ago
[–] modulus@lemmy.ml 7 points 3 weeks ago (2 children)

Get your DeepSeek3 and r1 weights before it's illegal!

[–] modulus@lemmy.ml 9 points 3 weeks ago

One of the things you're missing is the same techniques are applicable to multimodality. They've already released a multimodal model: https://seekingalpha.com/news/4398945-deepseek-releases-open-source-ai-multimodal-model-janus-pro-7b

[–] modulus@lemmy.ml 3 points 4 weeks ago

Advertising, cryptocoin shit, pay to play... This is an awful idea.

[–] modulus@lemmy.ml 9 points 1 month ago (1 children)

Haha, I was just going to post that. It's such a cliché:

Made in China 2025 has, then, achieved most of its aims. But at what cost?

And of course the cost is... not enough consumer spending and services. Right. (with a tiny nod towards healthcare.)

[–] modulus@lemmy.ml 4 points 2 months ago (1 children)

From the link:

We are very excited to announce that we have made our self-research agent demo open source, you can now try our agent demo online at demo for instant English chat and English and Chinese chat locally by following the docs.
You should mention that the content is released under a CC BY-NC-SA 4.0 licence.

So which is it, open source or CC-BY-NC-SA? NC restrictions are not compatible with either the free software or the open source definitions.

[–] modulus@lemmy.ml 6 points 2 months ago (1 children)

At a guess, it's following older British norms, whereby a billion is what it is in other European languages (a million million) and a thousand million is a thousand million or, more pretentiously, a milliard. You'd have to ask the authors though.

[–] modulus@lemmy.ml 10 points 2 months ago (5 children)

Mmm, China perfidiously stealing the hard-earned talent of Western engineers? I know just the solution! They should build an anti-communist self-defence wall:

We no longer wanted to stand by passively and see how doctors, engineers, and skilled workers were induced by refined methods unworthy of the dignity of man to give up their secure existence in the GDR and work in West Germany or West Berlin. These and other manipulations cost the GDR annual losses amounting to 3.5 thousand million marks.

Some fine historical irony. Of course, given the way the university system works in places like the US, there's not even a good argument that this imposes costs on the public, who trains personnel only for them to leave and benefit some other state.

Maybe this is what Trump's wall is for.

[–] modulus@lemmy.ml 5 points 3 months ago

I liked poppy wars but it was a bit too relentlessly nihilist for me. I thought Babel was, if anything, better balanced in terms of presenting empire as a system where people who are not inherently out to harm others end up doing so anyway.

[–] modulus@lemmy.ml 5 points 3 months ago (1 children)

I read it, and I really enjoyed it. I will give a few reasons.

There are tons of spoilers here, by the way, you were warned.

References to the themes the work relates to including some specific events.

  1. Focus on language. The entire conceit of translation means there's lots of careful language in the book, which I enjoy reading.
  2. Theme. There are two major themes I can see that I enjoyed: on one hand, the theme of imperialism, with the British Empire making use of its power to oppress people abroad. This is certainly central. On the other hand, the operation of empire doesn't even help most British people themselves, hence the uprising. These themes are interesting to me.
  3. Subthemes. But there are a lot of subthemes, issue that make you think when reading the book. Just a couple of examples: brain drain, the way translators are plucked off their societies to serve empire; the interaction of relative privilege with relative oppression, in the way that the foreign-looking translators get treated at the party; the notion of language itself as an exploitable resource (more relevant in connection to AI and the use and exploitation of corpora); the weaknesses of imperial centralisation, which could also be a critique of the cloud (the way the silver bars are connected to teach other); and the whole thorny issue of white feminism, which is very sharply demonstrated by one particular character.

I also think there are very poignant situations in the book: the two brothers at odds, the reluctance to violence, the scene where the professor beats his pupil, the attempt to follow Muslim ethics and law while having to handle practical reality...

So in short, it was one of my favourite books in the last few years. It also illuminates the opium wars in a way that hasn't often been done before.

[–] modulus@lemmy.ml 23 points 4 months ago (4 children)

It's interesting how NATO is "forced" to take action by Chinese military build-up, doesn't leave any room for China being forced to take action by NATO's military build-up. Reminds me of that recent video of previous NATO's head complaining about China placing bases close to NATO, when any NATO country is thousands of km away and China is deploying near its own coast.

[–] modulus@lemmy.ml 52 points 4 months ago (24 children)

I kept giving Mozilla the benefit of the doubt and telling myself things weren't so bad.

I was wrong.

I'll continue using Firefox because it's the least bad option, but I can't advocate for it in good faith anymore, and I don't expect it to last long with this orientation.

So it goes.

[–] modulus@lemmy.ml 5 points 4 months ago

Unfortunately this came conveniently too late.

7
submitted 11 months ago* (last edited 11 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?

 

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?

 

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.

view more: next ›