Show newer

Just to be clear: I don’t mind that async block get the same constraints as thread. That seem logical (sort of).

My main issue is that now I have thread issues without thread (in tokio everything acts of the main thread).

Show thread

Maybe I should try to get out the big guns and put the mastodon variable inside a Arc<Mutex<>> (so now it really will be unreadable !).

Show thread

So now about scootaloo (with an async branch).

Elefren (Mastodon’s API for Rust) is not async, so I can’t do much on this.

Media are downloaded in an async loop (good), but I cannot push them to Mastodon in the same loop (remember : everything needs to be owned by the async block so no reference to a global here) so I have to push their local path through a comm channel to be catched by another loop that blocks (!) to upload them.

Feeling a bit nasty…

Show thread

Rust Async Rant.

So transforming scootaloo in an async app (for fun and headache).

My main issue with async is now this: because Rust, async blocks have the same constraint as threads.

Meaning, they need to own everything they do, meaning you need to do a lot of clones of things to make them owned by the async block.

And if you want to get a result from you async block, guess what? Yep, that’s right mpsc with multi-channel comms…

mortal boosted

Je viens de passer un peu plus d'une heure pour voir si ça valait le coup de transformer scootaloo pour tout faire en async.

Deux obstacles :
* mastodon ne permet pas de choisir une date de publication, éventuellement dans le passé -> traiter de manière asynchrone les tweets en entrée ne sert donc à rien
* on pourrait télécharger tous les médias d'un tweet en async (ça s'y prête bien) mais on ne gagne rien ou presque en terme de perf

Conclusion : :shrug:

mortal boosted
mortal boosted

@mortal bah voilà, bien d'accord, j'adore python mais j'ai toujours eu des problèmes au déploiement ! C'est pas pour rien que je me mets doucement à #rust (ouais et aussi parce que python est devenu trop mainstream...Et p'tetre encore plus parce que je suis sysadmin et pas dev 😂)

Python vs. Rust :
Python -> read the docs, find the correct lib, write your shit, build a venv, build a pex
Total time coding: 1h
Total time figuring out how to deploy: 3h

Rust -> read the docs, find the correct lib, write your shit, get bullied by the compiler, write more shit, get the compiler to work properly, build

Total time coding: 4h
Total time deploying: 1m

mortal boosted

Bring back that thing where cell phones had usable FM tuners

mortal boosted

« J'ai tout lêché tes crevettes piquantes c'est pas bon je préfère mes croquettes »
𝐿𝑒 𝑐ℎ𝑎𝑡 𝑝𝑜𝑖𝑙𝑢

mortal boosted
mortal boosted

RT @BertrandUsclat@twitter.com

Télétravailler avec des enfants, est-ce vraiment possible ? 🧒

🐦🔗: twitter.com/BertrandUsclat/sta

Pendant ce temps, Amazon continue de se rincer…

Chine : Alibaba écope d'une amende de 2,78 milliards de dollars pour pratiques monopolistiques
francais.rt.com/economie/85521

mortal boosted

Dilemne. Je peux :
a. faire un script en Python en quelques lignes mais galérer derrière pour le déployer de manière propre
b. faire le même script en Rust et en chier un peu plus pour l’écrire mais derrière le déployer en deux doigts dans le nez

Sachant que dans a., y’a une librairie qui fait à peu près ce que je veux alors que dans b. elle est relativement datée et va nécessiter de réécrire le truc.

mortal boosted

[POLL] You and :thumbs_up: emojis reactions on Slack.

👍👍🏻👍🏼👍🏽👍🏿

mortal boosted

C'est vendredi, donc c'est un nouvel épisode de l'#OctetVert, le podcast sur le climat, le numérique et qui file la pêche ! j'y reçois Maël Thomas développeur, et on parle de l'excellent service nosgestesclimat.fr/standblog.org/blog/post/2021/0

mortal boosted
Show older

mortal's choices:

NintendojoFR

Ceci est l'instance du site NintendojoFR. Elle est réservée aux membres de la rédaction et à nos chers lecteurs qui souhaitent avoir un compte.