Camiseta infantil com entrega para todo o Brasil? EstĂĄ tendo!
https://umapenca.com/villares/camiseta-infantil/aviao-290863.html
Spent basically the entire day (except for the mandatory walk) fighting with Pythonâs type hints. But, the result is that my widget toolkit now passes mypy --strict.
I really, really donât want to write larger pieces of software without static typing anymore. With dynamic typing, you must test every code path in your program to catch even the most basic errors. pylint helps a bit (doesnât need type hints), but thatâs really not enough.
Also, somewhere along the way, I picked up a very bad (Python) programming style. (Actually, I know exactly where I picked that up, but I donât want to point the finger now.) This style makes heavy use of dicts and tuples instead of proper classes. That works for small scripts, but it very quickly turns into an absolute mess once the program grows. Prime example: jenny. đ©
I have a love-hate relationship with Pythonâs type hints, because they are meaningless at runtime, so they can be utterly misleading. Iâm beginning to like them as an additional safety-net, though.
(But really, if correctness is the goal, you either need to invest a ton of time to get 100% test coverage â or donât use Python.)
Pep8 is deprecated, I think
Hmm, I donât think it is, this still says âStatus: Activeâ: https://peps.python.org/pep-0008/ đ€
rustfmt. I now use similar tools for Python (black and isort).
@movq@www.uninformativ.de @prologic@twtxt.net Thatâs what I like about Go, too. However, every now and then I really dislike the result, e.g. when removing spaces from a column layout. Doesnât happen often, but when it does, I hate it.
I think I should have a look at Python formatters, too. Pep8 is deprecated, I think, itâs been some time that I looked at it.
Since I used so much Rust during the holidays, I got totally used to rustfmt. I now use similar tools for Python (black and isort).
What have I been doing all these years?! I never want to format code manually again. đ€Łđ
Hey folks! We have recently had a wonderful new release of #py5, read about the new 3D trimesh integration feature and the matplotlib TextPath integration.
That release was quickly followed by a release to fix some small issues that surfaced this last week. Please check out py5 0.10.9a1 and join us at https://github.com/py5coding/py5generator/discussions to share your experiences!
#CreativeCoding #Processing #Python #genuary (sorry for the hashtag spamming, I couldnât resist!)
Post sobre o curso grĂĄtis na Udemy, complementar ao livro âAutomate the Boring Stuff with #Pythonâ (que tambĂ©m pode ser lido de graça no site do autor)
And now the event loop is not a simple loop around cursesâ getch() anymore but it can wait for events on any file descriptor. Hereâs a simple test program that waits for connections on a TCP socket, accepts it, reads a line, sends back a line:
https://movq.de/v/93fa46a030/vid-1767547942.mp4
And the scrollbar indicators are working now.
Iâll probably implement timer callbacks using timerfd (even though thatâs Linux-only). đ€
@movq@www.uninformativ.de Yeah, I see. Just crudely checked on my computer, with around 0.013 seconds, Python 2.7 seems a tad faster than Python 3.14âs 0.023 seconds in this little program.
The lazy imports sound not too bad, but I just skimmed over them. There are surprisingly many exceptions, but yeah, no way around them. :-)
The baseline here is about 55 ms for nothing, btw. Python ainât fast to start up.
$ time python -c 'exit(0)'
real 0m0.055s
user 0m0.046s
sys 0m0.007s
I assume you made the thing load quickly, didnât you?
Thatâs the problem with Python. If you have a couple of files to import, it will take time.
I want this to be reasonably fast on my old Intel NUC from 2016 (Celeron N3050 @ 1.60GHz) and I already notice that the program startup takes about 95 ms (or 125 ms when there are no .pyc files yet). Thatâs still fine, but it shows that Iâll have to be careful and keep this thing very small âŠ
Python 3.14 will bring lazy imports, maybe that can help in some cases.
@prologic@twtxt.net No, thatâs Python/curses on Linux. đ
Well, you girls and guys are making cool things, and I have some progress to show as well. đ
https://movq.de/v/c0408a80b1/movwin.mp4
Scrolling widgets appears to work now. This is (mostly) Unicode-aware: Note how emojis like âđ â are double-width âcharactersâ and the widget system knows this. It doesnât try to place a âđ â in a location where thereâs only one cell available.
Same goes for that weird âĂ€â thingie, which is actually âaâ followed by U+0308 (a combining diacritic). Python itself thinks of this as two âcharactersâ, but they only occupy one cell on the screen. (Assuming your terminal supports this âŠ)
This library does the heavy Unicode lifting: https://github.com/jquast/wcwidth (Take a look at its implementation to learn how horrible Unicode and human languages are.)
The program itself looks like this, itâs a proper widget hierarchy:
https://movq.de/v/1d155106e2/s.png
(There is no input handling yet, hence some things are hardwired for the moment.)
@movq@www.uninformativ.de Yeah. I had that in my Python implementation and was really missing that.
@lyse@lyse.isobeef.org Iâm toying with the idea of making a widget/window system on top of Pythonâs ncurses. Iâve never really been happy with the existing ones (like urwid, textual, pytermgui, âŠ). I mean, theyâre not horrible, itâs mostly the performance thatâs bugging me â I donât want to wait an entire second for a terminal program to start up.
Not sure if Iâll actually see it through, though. Unicode makes this kind of thing extremely hard. đ«€
@kiwu@twtxt.net Assembly is usually the most low-level programming language that you can get. Typical programming languages like Python or Go are a thick layer of abstraction over what the CPU actually does, but with Assembler you get to see it all and you get full control. (With lots of caveats and footnotes. đ )
Iâm interested in the boot process, i.e. what exactly happens when you turn on your computer. In that area, using Assembler is a must, because you really need that fine-grained control here.
Note to self: check if pygments can generate SVG, test and/or find another way to incorporate nicely formatted code into a py5 sketch⊠#python
Anteontem concretizei finalmente uma ideia de hĂĄ anos â uma pequena biblioteca #python para emitir sons com cada tecla que pressionamos. Espero logo ter energia pra gravar um pequeno vĂdeo de demo e publicar o repositĂłrio
#Processing & #py5 tip:
Remember the shapes you put on draw() will be redrawn over and over, and if they donât move (leaving a trail) you might want to either clean each frame with background(...), or stop the draw loop (noLoop() in Processing or no_loop() in py5), otherwise you kill the anti-aliasing of the lines :D
â`python
import py5
def setup():
py5.size(200, 200)
py5.stroke_weight(2)
# a line that will drawn once only
py5.line(10, 10, 190, 90)
def draw():
# you could clean the frame here with background(200)
# this other line will be redrawn many times
py5.line(10, 110, 190, 190)
def key_pressed():
py5.save('out.png')
py5.run_sketch()
â`
#Processing & #py5 tip:
Remember the shapes you put on draw() will be redrawn over and over, and if they donât move (leaving a trail) you might want to either clean each frame with background(...), or stop the draw loop (noLoop() in Processing or no_loop() in py5), otherwise you kill the anti-aliasing of the lines/strokes/edges!
Iâm posting this tip because even using these tools for years and knowing this, today I briefly thought something was odd/broken because my lines were ugly with no âsmoothingâ :D
â`python
import py5
def setup():
py5.size(200, 200)
py5.stroke_weight(2)
# a line that will drawn once only
py5.line(10, 10, 190, 90)
def draw():
# you could clean the frame here with background(200)
# this other line will be redrawn many times
py5.line(10, 110, 190, 190)
def key_pressed():
py5.save('out.png')
py5.run_sketch()
â`
I finished all 12 days of Advent of Code 2025! #AdventOfCode https://adventofcode.com â did it in my own language, mu (Go/Python-ish, dynamic, int/bool/string, no floats/bitwise). Found a VM bug, fixed it, and the self-hosted mu compiler/VM (written in mu, host in Go) carried me through. đ„ł
I just completed âPrinting Departmentâ - Day 4 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/4 â Again, Iâm doing this in mu, a Go(ish) / Python(ish) dynamic langugage that I had to design and build first which has very few builtins and only a handful of types (ints, no flots). đ€Ł
I just completed âLobbyâ - Day 3 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/3 â Again, Iâm doing this in mu, a Go(ish) / Python(ish) dynamic langugage that I had to design and build first which has very few builtins and only a handful of types (ints, no flots). đ€Ł
Ahh thatâs because I forgot to call main() at the end of the source file. mu is a bit of a dynamic programming language, mix of Go(ish) and Python(ish).
$ ./bin/mu examples/aoc2025/day1.mu
Execution failed: undefined variable readline
Using #Pythonâs #pathlib to compare two repos and get back some missing files from a ârecoveredâ version of a repo (mostly stuff in .gitignore that is handy not to discard right now).
from pathlib import Path
a = Path('sketch-a-day')
b = Path('sketch-a-day_broken')
files_a = {p.relative_to(a) for p in a.rglob('*')
if '.git' not in str(p)
if 'cache' not in str(p)
if 'checkpoint' not in str(p)
}
files_b = {p.relative_to(b) for p in b.rglob('*')
if '.git' not in str(p)
if 'cache' not in str(p)
if 'checkpoint' not in str(p)
}
missing = files_b - files_a
for p in missing:
(b / p).rename((a / p))
Alright, Advent of Code is over:
https://www.uninformativ.de/blog/postings/2025-12-12/0/POSTING-en.html
Itâs been quite the time sink, especially with the DOS games on top, but it was fun. đ„ł
In case youâre wondering: All puzzles (except for part 2 of day 10) were doable in Python 1 on SuSE Linux 6.4 and ran in a finite time on the Pentium 133. Puzzle 10/2 might have been doable as well if I had better education. đ€Ł
Ano que vem no MAM-SP vou dar dois cursos online, o que eu dei ano passado vai ser em abril, mas agora em janeiro eu vou dar um outro curso mais curtinho com 3 encontros:
https://mam.org.br/curso/arte-computacional-produzindo-imagens-reticuladas/
It was though year. I finished my PhD, yay! Now, Iâm on vacation from my main job, as educator at Sesc, and yesterday I wound down some last freelance work obligations. I really need a break.
I want to rest, make some âprintsâ of my drawings for friends, go to my local museums and have coffee/tea with friends, and thatâs it!
Today we celebrate 18 years of our local #Python users group, #GruPySP, and Iâm going to meet friends from #GaroaHackerClube, thatâs a great start :)
FWIW, day 03 and day 04 where solved on SuSE Linux 6.4:
https://movq.de/v/faaa3c9567/day03.jpg
https://movq.de/v/faaa3c9567/day04%2Dv3.jpg
Performance really is an issue. Anything is fast on a modern machine with modern Python. But that old stuff, oof, it takes a while ⊠đ
Should have used C or Java. đ€Ș Well, maybe I do have to fall back on that for later puzzles. Weâll see.
Day 2 was pretty tough on my old hardware. Part 1 originally took 16 minutes, then I got it down to 9 seconds â only to realize later that my solution abused some properties of my particular input. A correct solution will probably take about 30 seconds. đ«€
Part 2 took 29 minutes this morning. I wrote an optimized version but havenât tested it yet. I hope itâll be under a minute.
Python 1 feels really slow, even compared to Java 1. And these first puzzles werenât even computationally intensive. Weâll see how far Iâll make it âŠ
Thinking about doing Advent of Code in my own tiny language mu this year.
mu is:
- Dynamically typed
- Lexically scoped with closures
- Has a Go-like curly-brace syntax
- Built around lists, maps, and first-class functions
Key syntax:
- Functions use
fnand braces:
fn add(a, b) {
return a + b
}
- Variables use
:=for declaration and=for assignment:
x := 10
x = x + 1
- Control flow includes
if/elseandwhile:
if x > 5 {
println("big")
} else {
println("small")
}
while x < 10 {
x = x + 1
}
- Lists and maps:
nums := [1, 2, 3]
nums[1] = 42
ages := {"alice": 30, "bob": 25}
ages["bob"] = ages["bob"] + 1
Supported types:
int
bool
string
list
map
fn
nil
mu feels like a tiny little Go-ish, Python-ish language â curious to see how far I can get with it for Advent of Code this year. đ
Advent of Code 2025 starts tomorrow. đ„łđ
This year, Iâm going to use Python 1 on SuSE Linux 6.4, writing the code on my trusty old Pentium 133 with its 64 MB of RAM. No idea if that old version of Python will be fast enough for later puzzles. Weâll see.
Today during class we built a small example showing #random vs. #PerlinNoise
#Processing #Python py5
All my newly added test cases failed, that movq thankfully provided in https://git.mills.io/yarnsocial/twtxt.dev/pulls/28#issuecomment-20801 for the draft of the twt hash v2 extension. The first error was easy to see in the diff. The hashes were way too long. Youâve already guessed it, I had cut the hash from the twelfth character towards the end instead of taking the first twelve characters: hash[12:] instead of hash[:12].
After fixing this rookie mistake, the tests still all failed. Hmmm. Did I still cut the wrong twelve characters? :-? I even checked the Go reference implementation in the document itself. But it read basically the same as mine. Strange, what the heck is going on here?
Turns out that my vim replacements to transform the Python code into Go code butchered all the URLs. ;-) The order of operations matters. I first replaced the equals with colons for the subtest struct fields and then wanted to transform the RFC 3339 timestamp strings to time.Date(âŠ) calls. So, I replaced the colons in the time with commas and spaces. Hence, my URLs then also all read https, //example.com/twtxt.txt.
But that was it. All test green. \o/
âNo Fascists Allowed!â Says Trans Lesbian Python Dev
Gatekeeping. â Read more
Python Launches DEI Marketing Campaign
First Python refused to stop discriminatory policies & turned down $1.5 Million from the US Government. â Read more
Windows at work, always a fresh inconvenience:
C:\>python -m pip install ipython
Requirement already satisfied: ipython in c:\users\[...]
C:\>ipython
'ipython' is not recognized [...]
@movq@www.uninformativ.de I think I now remember having similar problems back then. Iâm pretty sure I typically consulted the Qt C++ documentation and only very rarely looked at the Python one. It was easy enough to translate the C++ code to Python.
Yeah, the GIL can be problematic at times. Iâm glad it wasnât an issue for my application.
FTR, I see one (two) issues with PyQt6, sadly:
- The PyQt6 docs appear to be mostly auto-generated from the C++ docs. And they contain many errors or broken examples (due to the auto-conversion). I found this relatively unpleasent to work with.
- (Until Python finally gets rid of the Global Interpreter Lock properly, itâs not really suited for GUI programs anyway â in my opinion. You canât offload anything to a second thread, because the whole program is still single-threaded. This would have made my fractal rendering program impossible, for example.)
Today in my #Python themed study group at the community center a young participant recommended:
https://store.steampowered.com/app/2060160/The_Farmer_Was_Replaced/
Iâm still looking for people, podcasts, events talking about #Python without assuming everyone is a software developer or a âdata scientistâ.
Why are data journalists, type designers (Guidoâs brother!), Blender wizards, FreeCAD hackers, hobbyist game makers, casual automation buffs, robot tweakers, MicroPython enthusiasts, creative coders, educators, biologists, astronomers and other scientists, consistently ignored?
Are we f*ing invisible? One of Python Brasil keynoters kind of just did that. My heart sank. Other talks, like the Art&FLOSS one, by Jim Schmitz, lessened my pain.
Where is the follow up for that 2017 keynote by Jake VanderPlas?
Iâm still looking for people, podcasts, events, talking about #Python without assuming everyone is a software developer or a âdata scientistâ.
Why are data journalists, type designers (Guidoâs brother!), Blender wizards, FreeCAD hackers, hobbyist game makers, casual automation buffs, robot tweakers, MicroPython enthusiasts, creative coders, educators, biologists, astronomers and other scientists, consistently ignored?
Are we invisible? One of Python Brasil keynoters kind of just did that. My heart sank. Other talks, like the Art&FLOSS one, by Jim Schmitz, lessened my pain.
Where is the follow up for that 2017 keynote by Jake VanderPlas?
So, when is geopolars coming?
maybe I want geonarwhals?
:blob_clown: #pandas #polars #narwhals #python #geopandas #geodata
Python Software Foundation Running Out of Money
After turning down $1.5 Million from the US Government as an act of DEI Virtue Signalling, the Python Software Foundation reveals that they have a $1.4 Million deficit, with only 6 months of money left. â Read more
https://villares-shop.fourthwall.com/
#Python is for artists too!
#CreativeCoding #py5 #Processing #LSystem
Se vocĂȘs quiserem presentear alguĂ©m com uma coisa diferente⊠Andei fazendo umas camisetas e canecas com uns desenhos meus:
https://villares-shop.fourthwall.com/ (internacional)
https://umapenca.com/villares/ (Brasil)
Tem coisa sobre as bibliotecas de #Python para computação cientĂfica e geometria que eu uso na #ProgramaçãoCriativa e tem tambĂ©m aviĂŁozinho colorido, plantas fractais e uns outros desenhos abstratos, tudo feito usando programação. #shapely #trimesh #numpy #py5 #processing
@movq@www.uninformativ.de Yeah, give it a shot. At worst you know that you have to continue your quest. :-)
Fun fact, during a semester break I was actually a little bored, so I just started reading the Qt documentation. I didnât plan on using Qt for anything, though. I only looked at the docs because they were on my bucket list for some reason. Qt was probably recommended to me and coming from KDE myself, that was motivation enough to look at the docs just for fun.
The more I read, the more hooked I got. The documentation was extremely well written, something Iâve never seen before. The structure was very well thought out and I got the impression that I understood what the people thought when they actually designed Qt.
A few days in I decided to actually give it a real try. Having never done anything in C++ before, I quickly realized that this endeavor wonât succeed. I simply couldnât get it going. But I found the Qt bindings for Python, so that was a new boost. And quickly after, I discovered that there were even KDE bindings for Python in my package manager, so I immediately switched to them as that integrated into my KDE desktop even nicer.
I used the Python KDE bindings for one larger project, a planning software for a summer camp that we used several years. Itâs main feature was to see who is available to do an activity. In the past, that was done on a large sheet of paper, but people got assigned two activities at the same time or werenât assigned at all. So, by showing people in yellow (free), green (one activity assigned) and red (overbooked), this sped up and improved the planning process.
Another core feature was to generate personalized time tables (just like back in school) and a dedicated view for the morning meeting on site.
It was extended over the years with all sorts of stuff. E.g. I then implemented a warning if all the custodians of an activitiy with kids were underage to satisfy new the guidelines that there should be somebody of age.
Just before the pandemic I started to even add support for personalized live views on phones or tablets during the planning process (with web sockets, though). This way, people could see their own schedule or independently check at which day an activity takes place etc. For these side quests, they donât have to check the large matrix on the projector. But the project died there.
Hereâs a screenshot from one of the main views: https://lyse.isobeef.org/tmp/k3man.png
This Python+Qt rewrite replaced and improved the Java+Swing predecessor.
@lyse@lyse.isobeef.org Hmmmmmmmmmmmm ⊠guess I should take a look at Qt. đ€ Thatâs the one popular toolkit that Iâve never really tried for some reason. I really donât like C++ (might as well use Rust), so Iâll also use Python.
Meus cursos no Sesc em novembro!
@movq@www.uninformativ.de Donât you worry, this was meant as a joke. :-D
There was a time when I thought that Swing was actually really good. But having done some Qt/KDE later, I realized how much better that was. That were the late KDE 3 and early KDE 4 days, though. Not sure how it is today. But back then it felt Trolltech and the KDE folks put a hell lot more thought into their stuff. I was pleasantly surprised how natural it appeared and all the bits played together. Sure, there were the odd ends, but the overall design was a lot better in my opinion.
To be fair, I never used it from C++, always the Python bindings, which were considerably more comfortable (just alone the possibility to specify most attributes right away as kwargs in the constructor instead of calling tons of setters). And QtJambi, the Java binding, was also relatively nice. I never did a real project though, just played around with the latter.
Python Says Discriminatory DEI Policies More Important Than $1.5 Million Dollars
The Python Software Foundation has turned down a $1.5 Million Dollar grant from the US government, as it would require them to cease discriminatory Diversity, Equity, & Inclusion practices. â Read more
@lyse@lyse.isobeef.org (⊠I am making a Zalgo Generator in Python right now, because I need it for something else ⊠đ€Ł)
This is Python Brasil #PythonBrasil2025 #Python #PyCon
Muito feliz de ver ontem o @adorilson@adorilson receber o maior prĂȘmio da comunidade brasileira de #Python na #PythonBrasil2025, muito merecido, o sujeito Ă© uma força inesgotĂĄvel para ajudar as pessoas! #TremeaFerri
More stuff for sale! Help fund by work!
More stuff for sale! Help fund my work!
Gente, ainda tinha algumas vagas nos tutoriais da #PythonBrasil2025 aqui em São Paulo, que são de graça:
https://pybr2025.eventbrite.com.br/
(esta semana de terça a quinta na #PythonBrasil, independente das palestras sexta, såbado e domingo, cujo ingresso era pago e jå esgotou) #python
Mathieu Pasquet: slixmpp v1.12
This version is out mostly to provide a stable version with compatibility with the newly released Python 3.14, there are nonetheless a few new things on top.
Thanks to all contributors for this release!
Fixes- Bug in MUC self-ping ( XEP-0410) that would create a traceback in some uses
- Bug in SIMS ( XEP-0447) where all media would be marked as inline
- Python 3.14 breakage
- Prono ⊠â Read more
Que tal vestir desenhos feitos com #Python e apoiar o seu artista-programador local ;-)
https://umapenca.com/villares
ou fora do Brasil: https://villares-shop.fourthwall.com/
Se vocĂȘ vier para a #PythonBrasil em #SĂŁoPaulo vamos estar tendo mini adesivos!
Beyond the AI Hype: Guido van Rossum on Pythonâs Philosophy, Simplicity, and the Future of Programming
Comments â Read more
Security updates for Friday
Security updates have been issued by Debian (redis and valkey), Fedora (docker-buildkit, ibus-bamboo, pgadmin4, webkitgtk, and wordpress), Mageia (kernel-linus, kmod-virtualbox & kmod-xtables-addons, and microcode), Oracle (compat-libtiff3 and udisks2), Red Hat (rsync), Slackware (python3), SUSE (chromium, cJSON, digger-cli, glow, go1.24, go1.25, go1.25-openssl, grafana, libexslt0, libruby3_4-3_4, pgadmin4, python311-python-socketio, and squid), and Ubuntu (dpdk, libhtp, v ⊠â Read more
Ubuntu 25.10 released
Ubuntu\âš25.10, âQuesting Quokkaâ, has been released. This release includes
Linux 6.17, GNOME 49, GCC 15, Python 3.13.7,
Rust 1.85, and more. This release also features Rust-based
implementations of sudo and coreutils; LWN covered the switch to the
Rust-based tools in March. The 25.10 version of Ubuntu flavors
Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu
Kylin, Ubuntu MATE, Ubun ⊠â Read more
Security updates for Thursday
Security updates have been issued by AlmaLinux (gnutls, kernel, kernel-rt, and open-vm-tools), Debian (chromium, python-django, and redis), Fedora (chromium, insight, mirrorlist-server, oci-seccomp-bpf-hook, rust-maxminddb, rust-prometheus, rust-prometheus_exporter, rust-protobuf, rust-protobuf-codegen, rust-protobuf-parse, rust-protobuf-support, turbo-attack, and yarnpkg), Oracle (iputils, kernel, open-vm-tools, redis, and valkey), Red Hat (perl-File-Find-Rule and perl-File-Find-Rul ⊠â Read more
[$] LWN.net Weekly Edition for October 9, 2025
Inside this weekâs LWN.net Weekly Edition:
Front: Kernel Rust features; systemd v258, part 2; Cauldron kernel hackers; BPF for GNU tools; 6.18 merge window, part 1; Lifetime-end pointer zapping; Robot Operating System.
Briefs: OpenSSH 10.1; Firefox profiles; Python 3.14; U-Boot v2025.10; FSF presidency; Quotes; âŠ
Announcements: Newsletters, conferences, security upda ⊠â Read more
Security updates for Wednesday
Security updates have been issued by Fedora (apptainer, civetweb, mod_http2, openssl, pandoc, and pandoc-cli), Oracle (kernel), Red Hat (gstreamer1-plugins-bad-free, iputils, kernel, open-vm-tools, and podman), SUSE (cairo, firefox, ghostscript, gimp, gstreamer-plugins-rs, libxslt, logback, openssl-1_0_0, openssl-1_1, python-xmltodict, and rubygem-puma), and Ubuntu (gst-plugins-base1.0, linux-aws-6.8, linux-aws-fips, linux-azure, linux-azure-nvidia, linux-gke, linux-nvidia-tegra- ⊠â Read more
Python 3.14.0 released
Version\âš3.14.0 of the Python language has been released. There are a lot of
changes this time around, including official support for free threading, template string literals, and much more; see
the announcement for details. â Read more
Python 3.14.0 (final) is here
This is the stable release of Python 3.14.0
Python 3.14.0, the newest major release of the Python programming language is here!
U-Boot v2025.10 released
Version 2025.10 of the U-Boot boot loader
has been released with new features, including Python tooling improvements,
cleanups for implicit header inclusions, better support for numerous Arm
platforms, support for new RISC-V platforms, better documentation, and
more. Maintainer Tom Rini also reports on some project news:
As I mentioned with the v2025.07
release, I was looking for a few people to step up and help with the
overall organization and management of the project. To that ⊠â Read more
Um dia em que vocĂȘ conta pra alguĂ©m sobre a #LiveDePython do @dunossauro@dunossauro nunca Ă© um dia perdido!
Random musing from a #Python creative coder:
I have this naĂŻve cumbersome thing for dealing with collinear vertices in a polygon (like a vertex in the middle of an edge that doesnât change the shape of the polygon, and I tried to replace it with some clever #shapely method such as .simplify(âŠ) or .buffer(0) and failed miserably. So Iâll have to keep my home made check-area-every-three-vertices thing for nowâŠ
Iâm kind of proud of my idea of representing polygons as a set of frozensets of edge vertex pairs because it eliminates all visually equivalent rotations and reverse ordered rotations (that is, if you donât have pesky collinear vertices).
I was always under the wrong impression that Tkinter is bundled with Python.
It should be. Maybe your distro splits it off. đ€
@movq@www.uninformativ.de I never programmed with Tkinter myself and itâs been ages that I ran a program which used it. I always thought that it looks awful. But maybe there are nicer themes these days. I just wanted to give the demo python3 -m tkinter a try, but this module doesnât exist. I was always under the wrong impression that Tkinter is bundled with Python.
@lyse@lyse.isobeef.org Xfce is nice, but itâs also mostly GTK. I donât really know the answer yet. For now, Iâll just avoid anything that uses GTK4.
For my own programs, I might have a closer look at Tkinter. I was complaining recently that I couldnât find a good file manager, so it might be an interesting excercise to write one in Python+Tkinter. đ€ (Or maybe thatâs too much work, I donât know yet.)
SĂĄbados de manhĂŁ em outubro e novembro no #SescAvPaulista: Grupo de estudos em #Python
https://www.sescsp.org.br/programacao/grupo-de-estudos-em-python-primeiros-passos/
Security updates for Friday
Security updates have been issued by AlmaLinux (idm:DL1), Debian (gegl and haproxy), Fedora (ffmpeg, firefox, freeipa, python-pip, rust-astral-tokio-tar, sqlite, uv, webkitgtk, and xen), Oracle (idm:DL1, ipa, kernel, perl-JSON-XS, and python3), Red Hat (git), SUSE (curl, frr, jupyter-jupyterlab, and libsuricata8_0_1), and Ubuntu (linux-aws, linux-lts-xenial, linux-aws-fips, linux-fips, linux-gcp-fips, linux-azure, linux-azure, linux-azure-6.8, linux-fips, linux-gcp-fips, and l ⊠â Read more
#py5 comes with some cool integrations with other #Python libraries, such as the ability to convert #Pillow images, #shapely and #trimesh objects.
But you can create and register your own conversion functions too!
Security updates for Thursday
Security updates have been issued by AlmaLinux (perl-JSON-XS), Debian (chromium and openssl), Fedora (bird, dnsdist, firefox, mapserver, ntpd-rs, python-nh3, rust-ammonia, skopeo, sqlite, thunderbird, and xen), Oracle (perl-JSON-XS), Red Hat (kernel, kernel-rt, and libvpx), SUSE (afterburn, cairo, docker-stable, firefox, nginx, python-Django, snpguest, and warewulf4), and Ubuntu (libmspack, libxslt, linux, linux-aws, linux-aws-5.15, linux-gcp, linux-gcp-5.15, linux-gkeop, linu ⊠â Read more
Security updates for Wednesday
Security updates have been issued by AlmaLinux (kernel, kernel-rt, mysql:8.0, and openssh), Debian (libcommons-lang-java, libcommons-lang3-java, libcpanel-json-xs-perl, libjson-xs-perl, libxml2, open-vm-tools, and u-boot), Fedora (bird, dnsdist, mapserver, ntpd-rs, python-nh3, and rust-ammonia), Oracle (kernel and mysql:8.0), Red Hat (cups, postgresql:12, and postgresql:13), SUSE (cJSON-devel, gimp, kernel-devel, kubecolor, open-vm-tools, openssl-1_1, openssl-3, and ruby3.4-ruby ⊠â Read more
Security updates for Tuesday
Security updates have been issued by Debian (python-internetarchive and tiff), Fedora (nextcloud), Oracle (kernel, openssh, and squid), Red Hat (kernel, kernel-rt, and ncurses), SUSE (afterburn and chromium), and Ubuntu (open-vm-tools, ruby-rack, and tiff). â Read more
AmanhĂŁ no #SescAvPaulista rola o Ășltimo encontro do semestre do Grupo de Estudos em #Python (https://hackmd.io/@sesc-av-paulista/estudos-em-python), se quiser participar Ă© sĂł chegar 14h para pegar uma senha grĂĄtis. A atividade Ă© das 14h30 Ă s 16h30.
Em outubro vou dar este curso quintas Ă tarde com 4 encontros:
https://www.sescsp.org.br/programacao/ilustracoes-vetoriais-para-grandes-formatos-com-programacao/
Atenção atenção!
VocĂȘs sabem que Ă© possĂvel ler de graça a versĂŁo em portuguĂȘs do Python Fluente do Luciano Ramalho, nĂŁo Ă© mesmo? (https://pythonfluente.com)
Agora, se vocĂȘ sonhava com uma edição em papel, ajude o @lr a fazer ela acontecer contribuindo no:
Atenção atenção!
VocĂȘs sabem que Ă© possĂvel ler de graça a versĂŁo em portuguĂȘs do Python Fluente do Luciano Ramalho, nĂŁo Ă© mesmo?
(https://pythonfluente.com)
Agora, se vocĂȘ sonhava com uma edição em papel, ajude o @lr a fazer ela acontecer contribuindo no:
#Python is for artists too!
I made some #Python #numpy, #shapely, #trimesh & #py5bot stickers!
PS: I asked the PSF to check if the logos were alright: âyou can change the colors and add thing inside, but not change the shape or position of the snakesâ. So I had to change my original Python reading club logoâŠ
#Python is for artists too!
I made some #Python #numpy, #shapely, #trimesh & #py5 stickers!
PS: I asked the PSF to check if the logos were alright: âyou can change the colors and add elements inside, but not change the shape or position of the snakesâ. So I had to change my original Python Reading Club logoâŠ
Salve @elmoneto@elmoneto !
Acho que quero fazer algo parecido com isso aqui, mas a minha incompetĂȘncia / inexperiĂȘncia me derrubaâŠ
Tenho um geodataframe com praças e parques, e um com massa de vegetação significativa (que peguei no geosampa), queria saber calcular o quanto de cada praça estĂĄ coberto de vegetação significativaâŠ
Eu soube fazer um overlay de instersecção, filtrar as com årea menor que 100m2 e usar o .explore() pra colorir as massas por årea, jå fiquei feliz, mas queria mais rsrsrs.
Salve @elmoneto@elmoneto !
Acho que quero fazer algo parecido com isso aqui, mas a minha incompetĂȘncia / inexperiĂȘncia me derrubaâŠ
Tenho um geodataframe com praças e parques, e um com massa de vegetação significativa (que peguei no geosampa), queria saber calcular em uma coluna o quanto cada praça estĂĄ coberta de vegetação significativaâŠ
Eu soube fazer um overlay de instersecção, filtrar as com årea menor que 100m2 e usar o .explore() pra colorir as massas por årea, jå fiquei feliz, mas queria mais rsrsrs.
«The Hudson River is flowing through the heart of Times Square this month.
Press play to hear from Marina Zurkow & James Schmitz [@hx2A@mastodon.art] the artists behind âThe River is a Circle (Times Square Edition)â - Septemberâs #MidnightMoment, a visual âcombination of live data and a matrix of researched information about the Hudson River ecology,â says Zurkow.»
Quem vem pra #PythonBrasil em #SĂŁoPaulo?
Hoje abriram as inscriçÔes para os tutoriais, gråtis, vagas limitadas!
(Aproveite e avise aquele seu amigo gringo que ele pode comprar um ingresso de estudante doação para alguém que não poderia participar do evento completo com as palestras! :D)
David Amos: #GraphTheory with #Python
https://www.youtube.com/watch?v=yXTDslxVfdM&list=PLLIPpKeh9v3ZFEHvNd5xqUrCkqLgXnekL
«Welcome to the #AutomatingGIS processes course! Through interactive lessons and hands-on exercises, this course introduces you to #GeographicDataAnalysis using the #Python programming language. If you are new to Python, we recommend you first start with the Geo-Python course (geo-python.readthedocs.io) before diving into using it for GIS analyses in this course.
Geo-Python and Automating GIS Processes (â#AutoGISâ) have been developed by the Department of Geosciences and Geography at the University of Helsinki, Finland. The course has been planned and organized by the #DigitalGeographyLab. The teaching materials are openly accessible for anyone interested in learning.»
«Welcome to the #AutomatingGIS processes course! Through interactive lessons and hands-on exercises, this course introduces you to #GeographicDataAnalysis using the #Python programming language. If you are new to Python, we recommend you first start with the Geo-Python course (geo-python.readthedocs.io) before diving into using it for GIS analyses in this course.
Geo-Python and Automating GIS Processes (â#AutoGISâ) have been developed by the Department of Geosciences and Geography at the University of Helsinki, Finland. The course has been planned and organized by the #DigitalGeographyLab. The teaching materials are openly accessible for anyone interested in learning.»
https://autogis-site.readthedocs.io/en/latest/
(via Paul Walter no linkedin)