Episode 8, with Mojdeh Rastgoo:
https://pypodcats.live/episodes/ep-8/
«We interviewed Mojdeh Rastgoo, the newest member of PyPodcats!
Since discovering Python and the open-source community, Mojdeh has been actively involved in the Python ecosystem. She gave her first tutorial in 2018 at EuroSciPy and has since contributed in many ways. She is a member of the PSF Code of Conduct Working Group, a co-organizer of PyLadies Paris, and now a host of PyPodcats!
In this episode, Mojdeh shares more about herself and her passion for the community. We also take a look back at 2024, discuss our plans for 2025, and introduce a few new changes, including our Open Collective account, where you can support us.
Be sure to listen to the episode to hear about our plans and get to know your new host Mojdeh!»
begin
and end
blocks for if
s or loops. For example I always thought that I needed to have a button somewhere, even if hidden. That gave me a handler procedure where I could put code and somehow call it. Two or three years later, a new mate from the parallel class finally told me that this wasn't necessary and how to do thing better.You know all too well that back in the day there was not a whole lot of information out there. And the bits that did exist were well hidden. At least from me. Eventually discovering planet-quellcodes.de (I don't remember if that was the original forum or if that got split off from some other board) via my best schoolmate was like finding the Amber Room. Yeah, reading the ITG book would have been a very good idea for sure. :-)
In hindsight, a console program without the UI overhead might have been better. At least for the very start. Much less things to worry about or get lost.
Hence, I'd recommend to start programming with a console program. As for the language, not sure. But Python is probably a good choice, it doesn't require a lot of surrounding boilerplate like, say Java or Go. It also does exceptionally well in the principle of least surprise.
I came across an unfortunately dead salamander on the forest road, some fenced in deer, heaps of sheep, some unmagnetic cows (some were aligned very roughly north-south, but mainly with the axis of the best view I believe), a maybeetle and finally an awesome sunset. Not too shabby! The sheep were mehing all the time, that was really lovely to hear. And the crickets were already active, too. Didn't expect them to hear yet. I tried to record the concert, but the wind messed it all up. Oh well.

https://lyse.isobeef.org/waldspaziergang-2025-04-27/
I don't want to keep extra data structures to track the simulation objects to draw. I tried both extending and monkey patching either body or shape objects to be "drawable" so I can just iterate the native pymunk structures and ask stuff to draw themselves (would be nice, huh?), but there is always some snag. If I extend shape classes, I stumble on the complex objects with many shapes drawn with divisions. If I extend the Body class, the problem is static objects have shapes but share a virtual constant body, more of a flag, so I can't add anything to it, so back to keeping track of a separate list of static shapes… Then performance & serialization issues, I want to be able to easily pickle simulations, but if I add Py5Shape objects to the extended/modified classes they become unpickable...
I have bigger fishes to fry right now (the paralyzing PhD) but this is something I would like to pair with someone more experienced to work on.
É só mais um caso em que o #governo, em plena #CriseClimática, continua a optar por não ter uma política ecológica.
O @LIVRE@LIVRE escreveu sobre esta alteração, aqui: https://partidolivre.pt/comunicado/sobre-a-alteracao-do-tracado-do-tgv-e-a-construcao-de-novas-pontes-em-gaia-e-porto
#ptpol
É só mais um caso em que o #governo, em plena #CriseClimática, continua a optar por não ter uma política ecológica.
O @LIVRE@LIVRE escreveu sobre esta alteração, aqui: https://partidolivre.pt/comunicado/sobre-a-alteracao-do-tracado-do-tgv-e-a-construcao-de-novas-pontes-em-gaia-e-porto
#ptpol
É só mais um caso em que o #governo, em plena #CriseClimática, continua a optar por não ter uma política ecológica.
O @LIVRE@LIVRE escreveu sobre esta alteração, aqui: https://partidolivre.pt/comunicado/sobre-a-alteracao-do-tracado-do-tgv-e-a-construcao-de-novas-pontes-em-gaia-e-porto
#ptpol

#ADN: https://ciberlandia.pt/@marado/114387801741556979
#ND: https://ciberlandia.pt/@marado/114348377182888840
#IL: https://ciberlandia.pt/@marado/114347354072140841
#AD: https://ciberlandia.pt/@marado/114392455216165982
#PAN: https://ciberlandia.pt/@marado/114324690217343729
#Volt: https://ciberlandia.pt/@marado/114358606266556238
#PS: https://ciberlandia.pt/@marado/114287187178316531
@LIVRE@LIVRE: https://ciberlandia.pt/@marado/114359377128866906
@BlocodeEsquerda@BlocodeEsquerda: https://ciberlandia.pt/@marado/114309601123227991
#CDU: https://ciberlandia.pt/@marado/114325507241653084
#ptpol #legislativas #legislativas2025
#ADN: https://ciberlandia.pt/@marado/114387801741556979
#ND: https://ciberlandia.pt/@marado/114348377182888840
#IL: https://ciberlandia.pt/@marado/114347354072140841
#AD: https://ciberlandia.pt/@marado/114392455216165982
#PAN: https://ciberlandia.pt/@marado/114324690217343729
#Volt: https://ciberlandia.pt/@marado/114358606266556238
#PS: https://ciberlandia.pt/@marado/114287187178316531
@LIVRE@LIVRE: https://ciberlandia.pt/@marado/114359377128866906
@BlocodeEsquerda@BlocodeEsquerda: https://ciberlandia.pt/@marado/114309601123227991
#CDU: https://ciberlandia.pt/@marado/114325507241653084
#ptpol #legislativas #legislativas2025
#ADN: https://ciberlandia.pt/@marado/114387801741556979
#ND: https://ciberlandia.pt/@marado/114348377182888840
#IL: https://ciberlandia.pt/@marado/114347354072140841
#AD: https://ciberlandia.pt/@marado/114392455216165982
#PAN: https://ciberlandia.pt/@marado/114324690217343729
#Volt: https://ciberlandia.pt/@marado/114358606266556238
#PS: https://ciberlandia.pt/@marado/114287187178316531
@LIVRE@LIVRE: https://ciberlandia.pt/@marado/114359377128866906
@BlocodeEsquerda@BlocodeEsquerda: https://ciberlandia.pt/@marado/114309601123227991
#CDU: https://ciberlandia.pt/@marado/114325507241653084
#ptpol #legislativas #legislativas2025
@prologic I started to write it in order to understand better how twtxt works and I thought it could be useful for non-geek people but they like to host their own data
Message
├╴Reply 1
│ └╴Subreply
└╴Reply 2
and "Reply 2" was selected, pressing
A
to reply to the parent should have picked "Message". However, a reply to "Reply 2" was composed instead. The reason was a precausiously introduced safety guard to abort the parent search which stopped at "Subreply", because its subject didn't match "Reply 2"'s. It was originally intended to abort on a completely different message conversation root. Just in case. Turns out that this thoght was flawed.Fixing bugs by only removing code is always cool. :-)
no clue where i was going. found something called dogwood trail so just followed the arrows and tried not to stress the hills.
#running
no clue where i was going. found something called dogwood trail so just followed the arrows and tried not to stress the hills.
#running
https://yarchive.net/blog/prostate/
# type = bot
and optionally # retention = N
so that feeds like @tiktok work like they did before, and... Updated some internal metrics in yarnd
to be IMO "better", with queue depth, queue time and last processing time for feeds.
#!/bin/sh
# Position the pointer at the center of the dot, then run this script.
sleep 1
start=$(xdotool getmouselocation --shell)
eval $start
r=400
steps=100
down=0
for step in $(seq $((steps + 1)) )
do
# pi = 4 * atan(1)
new_x=$(printf '%s + %s * c(%s / %s * 2 * (4 * a(1)))\n' $X $r $step $steps | bc -l)
new_y=$(printf '%s + %s * s(%s / %s * 2 * (4 * a(1)))\n' $Y $r $step $steps | bc -l)
xte "mousemove ${new_x%%.*} ${new_y%%.*}"
if ! (( down ))
then
xte 'mousedown 1'
down=1
fi
done
xte 'mouseup 1'
xte "mousemove $X $Y"

Interestingly, you can abuse the scoring system (not manually, only with a script). Since the mouse *jumps* to the locations along the circle, you can just use very few steps and still get a great score because every step you make is very accurate – but the result looks funny:

🥴
#!/bin/sh
# Position the pointer at the center of the dot, then run this script.
sleep 1
start=$(xdotool getmouselocation --shell)
eval $start
r=400
steps=100
down=0
for step in $(seq $((steps + 1)) )
do
# pi = 4 * atan(1)
new_x=$(printf '%s + %s * c(%s / %s * 2 * (4 * a(1)))\n' $X $r $step $steps | bc -l)
new_y=$(printf '%s + %s * s(%s / %s * 2 * (4 * a(1)))\n' $Y $r $step $steps | bc -l)
xte "mousemove ${new_x%%.*} ${new_y%%.*}"
if ! (( down ))
then
xte 'mousedown 1'
down=1
fi
done
xte 'mouseup 1'
xte "mousemove $X $Y"

Interestingly, you can abuse the scoring system (not manually, only with a script). Since the mouse *jumps* to the locations along the circle, you can just use very few steps and still get a great score because every step you make is very accurate – but the result looks funny:

🥴
https://simonwillison.net/2025/Apr/26/o3-photo-locations/
https://www.aclu.org/press-releases/ice-deports-3-u-s-citizen-children-held-incommunicado-prior-to-the-deportation
As I recover from yesterday's viral episode (ugh!) I'm getting some distraction playing the wonderful (and often hard for me) #lichess puzzles: https://lichess.org/training
https://www.washingtonpost.com/technology/2025/04/25/wikipedia-nonprofit-ed-martin-letter/
$ bat https://twtxt.net/twt/edgwjcq | jq '.subject'
"(#yarnd)"
hahahahaha 🤣 Does your client allow you to do this or what? 🤔