Trouble exporting P3D via PGraphics recording (OpenGL error 1282) :blobcatsad:
Dear @doctormo@doctormo, I’m a great admirer of your work in general and hopefully I won’t creep you out by telling everyone I’m your fan!
As a creator of digital vector-based art I find the color management stuff (trying to figure how to generate things to print “in CMYK”) mind boggling. I slowly try to read and acquire the concepts and vocabulary to understand more about this. I’m grateful for your work in this area. Thank you!
Como o Kanye West destruiu uma casa do #TadaoAndo. É surreal:
#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.
#BolhaPreguiçosa Qual o equivalente brasileiro do Fourthwall / redbubble que permite fazer uma lojinha com camisetas, cacarecos, adesivos, etc. customizados com os seus desenhos?
Sometimes it’s a small thing, it’s a bit jarring when orgs that want to pose as international/global publish some copy/event based on US school terms/seasons. That’s a reminder of how other people are at the periphery and will be probably ignored most of the time. Isn’t it obvious we have different school year arrangements & seasons around the world? I guess @melissawm@melissawm will share my sentiments about this.
I only learned about the .envelope
object/propriety in #shapely yesterday, before that I used .bounds
(a min/max of points tuple), but envelope is good to know because it provides an easy way of getting the centroid and the area of the bounding box, which can be very useful.
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)
James Gleick: “The lie of AI”
https://around.com/the-lie-of-ai/
Long read, it starts with Claude Shannon and Markov chains…
#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
@clima@clima SĂŁo Paulo
“Cave of the Hands”
A very good one:
“Whatever AI Looks Like, It’s Not”
(notice the photo by Thomas Schmitt that illustrates the article)
Uma irritação cada vez mais frequente:
Gente fumando no ponto de Ă´nibus!
Poxa, vá fumar no seu canto e não incomode que precisa esperar o ônibus.
Uma irritação cada vez mais frequente:
Gente fumando no ponto de Ă´nibus!
Poxa, vá fumar no seu canto e não incomode quem precisa esperar o ônibus.
Oi @claromes@claromes, acredito que você manja desses paranauês, dei umas buscas e não encontrei…
Queria saber se as fotos que as pessoas mandam pro Instagram mantém os metadados, se podem conter localização e tal… (desconfio que a Meta guarda a sua localização no momento da postagem e os metadados das fotos para os fins nefastos deles mas publicam uma foto com os metadados removidos, mas não consegui confirmar essa informação)
Se tivesse uma tabela pra eu mostrar pros meus alunos sobre quais serviços fazem o quê com os metadados das fotos ia ser lindo…
@clima@clima SĂŁo Paulo
In order to publish my personal projects/pages (and most of my teaching materials, hundreds of pages) on #Codeberg, I need to convert #markdown files into #HTML and sprinkle some CSS & JS from a layout template, like #GitHub’s Pages #Jekyll does, but I dread the complexity of installing and tending to Jekyll or Hugo or other static site generators, and I can’t even imagine going near Forejo Actions or any sort of CI intergration.
Should I be brave and do the Jekyll /static generator thing? Any other ideas for poor, overworked, stressed out, clumsy people? :(
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):
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):
Help needed… can the #CodebergPages of #codeberg repos become subdirs of the “main” custom domain?
Currently https://villares.lugaralgum.com is published from a pages
repo on https://codeberg.org/villares/pages
Can my /villares/other_repo/
page (from a pages branch I suppose) be published at villares.lugaralgum.com/other_repo
?
(this is how GitHub Pages work by default, can it be replicated on Codeberg?)
Help needed… can the #CodebergPages of #codeberg repos become subdirs of the “main” custom domain?
htts://villares.lugaralgum.com is published from a pages
repo on codeberg.org /villares/pages
Can my /villares/other_repo/
page (from a pages branch I suppose) be published at villares.lugaralgum.com/other_repo
?
(this is how GitHub Pages work by default, can it be replicated on Codeberg?)
Uma frase que meu pai costumava dizer:
«Muito faz quem não atrapalha!»
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:
@clima@clima SĂŁo Paulo
A library to help use the #Beholder system of webcam detected markers with #p5js
A library to help use the #Beholder system of webcam detected markers with #p5js (made by https://enric.llagostera.com.br/)
What is a #GameEngine for you? Is there a gray area between game engines and graphics frameworks? You can make games with SDL, RayLib, Processing (and py5…), p5js, d3js, but would you consider them game engines?
Maybe I should ask my students to make a game engine purist-neutral-radical alignment chart ? 🤡
I’m using #Filen (@filen@filen) for a while now and I’m very pleased with it!
«Affordable zero-knowledge end to end encrypted cloud storage made in Germany.» Works on #Linux, nice well thought features.
So I’m going to share a referral link because «For every friend you invite to Filen you receive 10 GB - and your friend also receives 10B. It’s that easy»:
I have been using #Filen (@filen@filen) for a while now and I’m very pleased with it!
«Affordable zero-knowledge end to end encrypted cloud storage made in Germany.» Works on #Linux, nice well thought features.
So I’m going to share a referral link because «For every friend you invite to Filen you receive 10 GB - and your friend also receives 10B. It’s that easy»:
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.com
seems 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.com
seems 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.com
seems 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.
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.com
seems 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.
Meu amigo caiu na notĂcia falsa de que o Paul McCartney foi visitar o Phil Collins no hospital :(
#GitHub is becoming unusable! Images on discussions no longer load for me most of the time, posts keep loading infinitely and it breaks the reply feature… I’m really pissed by this. Is it just me? Does it think I’m a bloody AI scraper bot or something? What the hell.
#Pillow #PIL #Python
On Image.fromarray()
:
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”)
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”)
#GitHub #GitHubPages #fail This is driving me mad…
Images randomly deciding not to load on all my pages.
Is it just me? Is it my browser’s fault? Is it just in Brazil?
I was working on this #shapely + #trimesh page… and I can only see the last image (the animated gif)!
https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/shapely-e-trimesh.html
#GitHub #GitHubPages #fail This is driving me mad…
Images randomly deciding not to load on all my pages.
Is it just me? Is it my browser’s fault? Is it just in Brazil?
I was working on this #shapely + #trimesh page… and I can only see the last image (the animated gif)!
https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/shapely-e-trimesh.html
Update: On this exact page I have bungled the image URLs (I blame Marktext for being stupid and not using a relative reference). But I swear loading problems have been going on other well formed pages.
So 429: Too Many Requests
on my GitHub hosted images, breaking my tutorials etc… Not good!
July will be gone and my escape to Codeberg.org has not even started (I have to finish my PhD…)
This is your friendly reminder that you could be making #PaperObjects with #Python and #py5, you know?
https://github.com/villares/Paper-objects-with-Processing-and-Python/
(Mind you that GitHub images are mostly failing to load here today for some unknown reason)
If you like this, support my work:
https://www.paypal.com/donate/?hosted_button_id=5B4MZ78C9J724
https://liberapay.com/Villares
https://wise.com/pay/me/alexandrev562
#Processing #CreativeCoding
Chamada aberta pro encontro brasileiro de programação criativa - Compoética 2025 … https://compoetica.github.io/links/
I wish I could watch this (maybe they’ll record it… but I’m not sure):
“From #Fortran to #Python: A Conversation Across Generations of #ScientificComputing” #PyOhio
https://www.pyohio.org/2025/program/talks/from-fortran-to-python/
“Explicando Dados #Geoespaciais em #Python”
The command line version is here:
https://github.com/villares/sketch-a-day/blob/main/admin_scripts/pngs_to_gif.py
I should add a “public domain dedication” to both scripts…
I have this very simple #Python script that uses #imageio to convert all PNG files on a folder into a #GIFAnimation, and this is a #FreeSimpleGUI version of it (I usually run a command line version).
As I usually run #gifsicle on the command line after creating a GIF, I decided to update it to add #pygifsicle to do it for me and save a step.
https://github.com/villares/sketch-a-day/blob/main/admin_scripts/make-gif.py
«Using data from Morgane Laouenan et al., the map is showing birthplaces of the most “notable people” around the world. Data has been processed to show only one person for each unique geographic location with the highest notability rank. Click below to show people only from a specific category.
Made by Topi Tjukanov.»
https://tjukanovt.github.io/notable-people
via @mekaru@mekaru
#wikidata #cartography
“Brett Cannon on #Python humans… and packaging”
https://www.bitecode.dev/p/brett-cannon-on-python-humans-and
Um exemplo mĂnimo de como usar #Python para ler dados de uma planilha #Excel com a biblioteca #openpyxl e como modificar um arquivo #Word com a biblioteca #docx
https://gist.github.com/villares/560e231da78cd1b8f5701c5a6897348f
Another hacky #Python script using the #HackMD API… this one is to change the write permissions… you might want to adapt it or check out the other API helper methods:
Impossible Linux things in my to-do list:
- Fix erratically jumping mouse wheel scrolling on a Dell
- Make a “SysRq key” work so I can do “REISUB” or something, when my computer freezes
I must have spent days (multiples of 24 hours) trying to solve these things and maybe I should just give up.
I suppose that if I had a “Linux experienced” friend by my side these could be solved in minutes, maybe?
Pessoas da comunidade brasileira de #ProgramaçãoCriativa por muitos anos fizeram encontros sob o nome promovido pela Fundação Processing, os chamados #ProcessingCommunityDay, fizemos encontros em várias cidades e então depois de 2020, com a pandemia do COVID-19, fizemos três eventos nacionais muito inspiradores em 2021, 2022 e 2023 (vide https://compoetica.github.io/links/)
Ano passado não conseguimos fazer e este ano pretendemos retomar, só que usando outro nome: #Compoética. Vamos aos poucos divulgar mais sobre o encontro brasileiro de programação criativa em https://compoetica.github.io/CP2025/
Meus agradecimentos profundos ao @guilhermesv@guilhermesv que dedica generosamente um enorme esforço para organizar esses eventos da comunidade e cria o design e peças de comunicação sempre emocionantes de lindos.
Lazy-fedi-question… I have a “working”(?) code example of TF-IDF #tfidf using #scikitlearn and I know the main concepts, but all the tutorials I find are a bit — I don’t want to be harsh but —crappy… Can someone point me to some nice open resource on it?
Serasa Experian Ă© uma empresa tĂŁo pilantra mas tĂŁo pilantra que agora estĂŁo descaradamente fazendo spam a partir de emails coletados do registro brasileiro de domĂnios (Registro.BR) Ă© muito irritante.
“Layer: In conversation with Casey Reas”
“Can you see circles or rectangles [on the experiment’s image]?
And does the answer depend on where you grew up?” — Anil Seth
https://www.theguardian.com/commentisfree/2025/jul/05/optical-illusions-see-world-perception #perception
I’m watching #TheOrville. Some ideas are interesting but the sense of humor isn’t really to my taste. Maybe a bit on the nose, could I phrase it that way? And the clumsy stuff makes me feel nervous instead of making me laugh.
#TheStrokes 🎸
#LGM #LibreGraphicsMeeting 2025 - “The State of #Processing: How We’re Bringing a Creative Coding Icon Back to Life”
https://www.youtube.com/watch?v=ngQwedwFyOY
#Processing4 #CreativeCoding @processing@processing @processingorg@processingorg
Cheers @danzin@danzin, was it you who added a PR to core #Python about pprint?
(listening to #corepy #podcast)
Update: Thank you so much for improving Python @danzin@danzin !
core.py: PyCon US 2025 Recap
Starting from: 01:32:45 https://podcasters.spotify.com/pod/show/corepy/episodes/PyCon-US-2025-Recap-e347dc3
https://anchor.fm/s/eb6edc3c/podcast/play/104100675/https%3A%2F%2Fd3ctxlq1ktw2nl.cloudfront.net%2Fstaging%2F2025-5-13%2Fb281ac3a-b0ec-49b9-b31d-7a90031e910d.mp3#t=5565
HistĂłrias do #Python & #FLOSS no Brasil
Entrevista com o @gwidion@gwidion
https://www.youtube.com/live/ia8aOZsDYOM
cc @apyb@apyb
Stories from Python History - #TalkPythonToMe Ep. 513
“For learning, #genAI is a forklift at the gym.” — @glyph@glyph
https://blog.glyph.im/2025/06/i-think-im-done-thinking-about-genai-for-now.html
#TVCultura Mundo da Lua 2
I’m hoping @geofft@geofft can fix this 2022 issue on #uv built #Python binaries that breaks #tkinter, wishing him best of luck!
https://github.com/astral-sh/python-build-standalone/issues/129#issuecomment-3016695658
Do you edit posts endlessly? Also messages, when the platform allows it, trying to fix typos and to clarify things, did I say endlessly?
Updating my “how install and use #py5” pages, check them out if you want to “… draw and experiment some #CreativeCoding with #Python …”
EN: https://abav.lugaralgum.com/como-instalar-py5/index-EN.html
ES: https://abav.lugaralgum.com/como-instalar-py5/index-ES.html
Thumbnail novo para a minha página sobre compreensão de listas… #Python
https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/comprehension.html
(preciso dar uma melhoradinha na página, por umas imagens, arrumar links quebrados)
This is so good…
https://innig.net/teaching/liberal-arts-manifesto
by Paul Cantrell (@inthehands@inthehands)
“The only way to learn is to try. The best way to learn is to have fun.” —@ucodery@fosstodon.org
#python Alguém tem o contato do Juan Lopes? @gwidion@gwidion ?
Acho que ele ia gostar de ver isso aqui: