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)
#Python #cbers4a #satelite #SensoriamentoRemoto
https://cbers4asat.readthedocs.io/pt-br/latest/
cc @elmoneto@elmoneto (você viu isso? eu não manjo nada mas já fiquei animado…)
https://villares-shop.fourthwall.com (International)
https://umapenca.com/villares (BR)
#Python #CreativeCoding #Processing #py5 #TShirt #GenerativeArt #SupportArtists
You can still help sponsor the Brazilian national #Python conference!
You can also donate a ticket so that a student can attend!
#PythonBrasil2025
Should I make more T-shirts?
https://villares-shop.fourthwall.com/
https://umapenca.com/villares/
#Python #Processing #py5 #CreativeCoding #FLOSS #numpy #shapely #trimesh
Cheers @mkennedy@mkennedy & @brianokken@brianokken , listening late to @pythonbytes@pythonbytes episode 446, great as usual!
Listening to the JetBrains survey thing I always worry about the sampling bias… All the cool scientists using Python, all the journalists doing data journalism, the urban planners and geospace people, the blender people, the people doing movie post-production pipelines, all the hobbyists… I think the survey doesn’t reach or represent a large chunk of Python users.
“A Better Default #colormaps for #Matplotlib | #SciPy 2015 | Nathaniel Smith and Stéfan van der Walt”
“A Better Default #Colormap for #Matplotlib | #SciPy 2015 | Nathaniel Smith and Stéfan van der Walt”
More stuff!
https://www.redbubble.com/i/t-shirt/Recursive-hexagons-by-villares/173676693.MV45S
Novidade no #Python 3.14 muito bem explicada pelo animado @mathsppblog@mathsppblog !
Adoro esse ponto reforçado pelo @lr, no Python Fluente! Sempre uso uma frase parecida com essa nas minhas aulas!
«Para entender uma atribuição em Python, leia primeiro o lado direito: é ali que o objeto é criado ou recuperado. Depois disso, a variável do lado esquerdo é vinculada ao objeto, como uma etiqueta colada a ele. Esqueça as caixas.»
LR in Python Fluente: Variáveis não são caixas
the code to generate this image (have you noticed it is a 3D mesh?)
is here: https://abav.lugaralgum.com/selected-work/py5band/
Folks I finally made something I wanted to make for a long time, a T-Shirt design thing.
Available at Rednubble https://www.redbubble.com/i/t-shirt/numpy-shapely-trimesh-and-py5-by-villares/173500912.7H7A9?asc=u
And also available in Brazil at Uma Penca: https://umapenca.com/villares/
You can also buy stickers and other items… soon my “Python Reading Club” and “Python is also for artists!” designs will be available. This will help support my free and open source activities. I make free and open educational resources, I teach at several places and I need to make ends meet.
#python #numpy #shapely #trimesh #py5 #creativeCoding #FLOSS
Folks I finally made something I wanted to make for a long time, a T-Shirt design thing.
Available at Redbubble https://www.redbubble.com/i/t-shirt/numpy-shapely-trimesh-and-py5-by-villares/173500912.7H7A9?asc=u
And also available in Brazil at Uma Penca: https://umapenca.com/villares/
You can also buy stickers and other items… soon my “Python Reading Club” and “Python is also for artists!” designs will be available. This will help support my free and open source activities. I make free and open educational resources, I teach at several places and I need to make ends meet.
#python #numpy #shapely #trimesh #py5 #creativeCoding #FLOSS
Folks, I finally made something I wanted to make for a long time, a T-Shirt design thing.
Available at Redbubble https://www.redbubble.com/i/t-shirt/numpy-shapely-trimesh-and-py5-by-villares/173500912.7H7A9?asc=u
And also available in Brazil at Uma Penca: https://umapenca.com/villares/
You can also buy stickers and other items… soon my “Python Reading Club” and “Python is also for artists!” designs will be available. This will help support my free and open source activities. I make free and open educational resources, I teach at several places and I need to make ends meet.
#python #numpy #shapely #trimesh #py5 #creativeCoding #FLOSS
#Pyxel is a retro inspired #GameEngine for #Python, it’s very impressive!
It’s not hard to generate a static HTML page that loads your game to run on the browser with #pyodide (WASM). And it comes with an assets editor and a #chiptune making tool.
Interactive demo of #shapely’s centroid for the triangle :)
import py5
from shapely import Polygon, Point
def setup():
py5.size(400, 400)
py5.stroke_join(py5.ROUND)
def draw():
py5.background(200)
pts = ((100, 100), (300, 100),
(py5.mouse_x, py5.mouse_y))
xs, ys = zip(*pts)
cx = sum(xs) / len(xs)
cy = sum(ys) / len(ys)
tri = Polygon(pts)
py5.no_fill()
py5.stroke_weight(1)
py5.stroke(0, 200, 0)
py5.shape(Point(cx, cy).buffer(5))
py5.stroke(0, 0, 200)
py5.shape(tri.envelope.buffer(2))
py5.shape(tri.envelope.centroid.buffer(5))
py5.stroke_weight(3)
py5.stroke(0)
py5.shape(tri)
py5.fill(0)
py5.shape(tri.centroid.buffer(2))
py5.run_sketch(block=False)
#Python is for artists too @ #SescAvPaulista
(Oficina do Clubinho Gráfico aos domingos)
#Diátaxis and #Python #documentation
https://discuss.python.org/t/diataxis-and-python-documentation/41836
Galera, minha atividade aberta (presencial) de #Python no #SescAvPaulista está rolando às terças à tarde este semestre.
Todas as pessoas são bem-vindas (não precisa ter conhecimentos prévios):
Veja um pouco do que vamos conversar (e tem alguns registros do que já conversamos):
Galera, minha atividade aberta (presencial) de #Python no #SescAvPaulista está rolando às terças à tarde este semestre.
Todas as pessoas são bem-vindas, não precisa ter conhecimentos prévios, veja no link mais detalhes, um pouco do que vamos conversar (e tem alguns registros do que já conversamos):
Queria ouvir coisas novas e dei de caras com a lista de álbuns do ano do Resident Advisor, que é boa para apanhar as pérolas que nos passaram ao lado nos últimos 20 anos:
2006: Booka Shade - Movements
2007: Burial - Untrue
2008: Shed - Shedding the Past
2009: DJ Sprinkles - Midtown 120 Blues
2010: Caribou - Swim
2011: Nicolas Jaar - Space Is Only Noise
2012: Voices from the Lake - Voices from the Lake
2013: James Holden - The Inheritors
2014: Andy Stott - Faith in Strangers
2015: Floating Points - Elaenia
2016: Babyfather - “BBF” Hosted by DJ Escrow
2019: FKA Twigs - Magdalene
2020: DJ Python - Mas Amable
2021: Space Afrika - Honest Labour
2022: D. Tiffany and Roza Terenzi - Edge of Innocence
2023: Kelela - Raven
2024: Loidis - One Day
I have a #CreativeCoding course at Domestika, teaching the first steps of #Python and #py5. The feedback from students always makes me happy!
Check out this work by a student:
https://www.domestika.org/en/projects/1841169-programacion?ttag=a_b_a_villares
And other testimonials:
I have a #CreativeCoding course at Domestika, teaching the first steps of #Python and #py5. The feedback from students always makes me happy!
Check out this work by a student:
https://www.domestika.org/en/projects/1841169-programacion?ttag=a_b_a_villares
And other testimonials:
Updating my #Processing + #Python tools table:
After some years, things changed and my opinions changed a bit too:
#py5 is going supper strong and the “new snake_case names” are not an issue for me anymore. I used to worry a lot about all the Processing Python mode examples and teaching materials out there, and some of my own, with “CamelCase Processing names” I’m not worried at all about it anymore!
For the record, Processing Python mode is just a legacy thing, no one should start anything with it.
The great pure Python Processing implementation project #p5py seems stalled, latest release in Dec. 2023 :((( Advancing it was always going to be an uphill battle…
The unrelated Brython based site
p5py.comseems to be gone, so I removed it from the table.I added a link to my own #pyp5js hack py5pjs/py5mode because this is what I’m using most nowadays.
Updating my #Processing + #Python tools table:
After some years, things changed and my opinions changed a bit too:
#py5 is going super strong and the “new snake_case names” are not an issue for me anymore. I used to worry a lot about all the Processing Python mode examples and teaching materials out there, and some of my own, with “CamelCase Processing names” I’m not worried at all about it anymore!
For the record, Processing Python mode is just a legacy thing, no one should start anything with it.
The great pure Python Processing implementation project #p5py seems stalled, latest release in Dec. 2023 :((( Advancing it was always going to be an uphill battle…
The unrelated Brython based site
p5py.comseems to be gone, so I removed it from the table.I added a link to my own #pyp5js hack py5pjs/py5mode because this is what I’m using most nowadays.
Updating my #Processing + #Python tools table:
After some years, things changed and my opinions changed a bit too:
#py5 is going super strong and the “new snake_case names” are not an issue for me anymore. I used to worry a lot about all the Processing Python mode examples and teaching materials out there, and some of my own, with “CamelCase Processing names” I’m not worried at all about it anymore!
For the record, Processing Python mode is just a legacy thing, no one should start anything with it.
The great “pure Python” (no Java required) Processing implementation project #p5py seems stalled, latest release in Dec. 2023 :((( Advancing it was always going to be an uphill battle…
The unrelated Brython based site
p5py.comseems to be gone, so I removed it from the table.I added a link to my own #pyp5js hack py5pjs/py5mode because this is what I’m using most nowadays.
Updating my #Processing + #Python tools table:
After some years, things changed and my opinions changed a bit too:
#py5 is going super strong and the “new snake_case names” are not an issue for me anymore. I used to worry a lot about all the Processing Python mode examples and teaching materials out there, and some of my own, with “CamelCase Processing names” I’m not worried at all about it anymore!
For the record, Processing Python mode is just a legacy thing, no one should start anything new with it.
The great “pure Python” (no Java required) Processing implementation project #p5py seems stalled, latest release in Dec. 2023 :((( Advancing it was always going to be an uphill battle…
The unrelated #Brython based site
p5py.comseems to be gone, so I removed it from the table.I added a link to my own #pyp5js hack py5pjs/py5mode because this is the version of pyp5js I’m using most nowadays.
** Make awk rawk **
A friend online recently replied to something I wrote about awk by saying:
[…] it’s a danged shame [awk] didn’t continue to evolve the way Ruby, Python, PHP have evolved over the decades.
I had exactly this thought while working on my slightly unhinged“lets see if I can implement a basic scheme using awk by writing an assembler and VM in awk,” skwak. Which eventually lead me to start noodling on how to layer in some modern niceties into awk, without breaking awk’s portability.
… ⌘ Read more
DeprecationWarning: 'mode' parameter is deprecated and will be removed in Pillow 13 (2026-10-15)
img1 = PIL.Image.fromarray(my_array, mode="RGB")
So I went to see the documentation:
https://hugovk-pillow.readthedocs.io/en/latest/reference/Image.html#PIL.Image.fromarray
And came out empty handed, that is, couldn’t understand what to do instead :(
And the plot thickens:
https://github.com/python-pillow/Pillow/pull/9063
(@py5coding I guess you’ll want to check this out at some point. py5_tools.animated_gif uses this)
DeprecationWarning: 'mode' parameter is deprecated and will be removed in Pillow 13 (2026-10-15)
img1 = PIL.Image.fromarray(my_array, mode="RGB")
So I went to see the documentation:
https://hugovk-pillow.readthedocs.io/en/latest/reference/Image.html#PIL.Image.fromarray
And came out empty handed, that is, couldn’t understand what to do instead :(
And the plot thickens (this affects many projects, there are some workarounds, but some argument about “reverting” this change allowing some “mode” on import):
https://github.com/python-pillow/Pillow/pull/9063
(@py5coding@py5coding I guess you’ll want to check this out at some point. py5_tools.animated_gif uses mode=“RGB”)