#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”)
#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”)
#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.
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
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”
I have a Python script that transforms the original YouTube channel Atom feed into a more useful Atom feed by removing the spam description and replacing it with the video duration, filtering out videos by title, duration, etc. I just updated it to exclude the damn Shorts garbage more efficiently. Finally, YouTube updated their Atom feed generation, so that the video URL contains /short/ if it’s of this useless kind. Never thought that they ever actually will improve their Atom feeds. Thank you, much appreciated!
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
“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:
@movq@www.uninformativ.de I’d love to have a Python script pushing my local CSV, too. But that’s never gonna fly, not in a thousand years. I can’t imagine that ever becoming reasonably stable without having to fix everything after the reverse-engineered API changes again.
@lyse@lyse.isobeef.org I do my timetracking in a little Python script, locally. Every now and then, I push the data to our actual service. Problem solved – but it’s a completely unpopular approach, they all want to use the web site. I don’t get it. Then, of course, when it’s down, shit hits the fan. (Luckily, our timetracking software is neither developed nor run by us anymore. It’s a silly cloud service, but the upside is that I’m not responsible anymore. 🤷)
Some of our oldschool devs tried to roll out local timetracking once, about 15 years ago. I don’t remember anymore why they failed …
This is developed inhouse, I’m just so glad that we’re not a software engineering company. Oh wait. How embarrassing.
Oh to be anonymous on the internet. That must be nice. 😅
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
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
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)
#python Alguém tem o contato do Juan Lopes? @gwidion@gwidion ?
Acho que ele ia gostar de ver isso aqui:
Security updates for Tuesday
Security updates have been issued by Debian (python-django), Fedora (krb5), Mageia (cockpit, golang, kernel, and kernel-linus), SUSE (augeas, go1.23, go1.24, iputils, libwebp, transfig, and xen), and Ubuntu (amd64-microcode, apport, linux-azure, linux-azure, linux-azure-4.15, linux-azure-fips, linux-raspi, systemd, and tomcat). ⌘ Read more
Crafting Standalone Python Proof of Concept Exploits
Creating standalone proof of concept exploits implementing a zero-to-hero method, requiring a single action to run.
[Continue reading on InfoSec Write-ups »](https://infosecwriteups.com/craf … ⌘ Read more
Security updates for Monday
Security updates have been issued by AlmaLinux (golang, nodejs22, thunderbird, and varnish), Debian (gimp, modsecurity-apache, python-tornado, and roundcube), Fedora (chromium, coreutils, fcgi, ghostscript, krb5, libvpx, mingw-gstreamer1-plugins-bad-free, mingw-libsoup, mod_security, and samba), Mageia (php-adodb, systemd, and tomcat), Red Hat (buildah, firefox, glibc, grafana, kernel, libsoup, libxslt, mod_security, perl-FCGI, podman, python-tornado, and skopeo), Slackware (libvp … ⌘ Read more
Security updates for Friday
Security updates have been issued by AlmaLinux (go-toolset:rhel8, golang, nodejs:20, nodejs:22, openssh, and python36:3.6), Debian (edk2, libfile-find-rule-perl, and webkit2gtk), Fedora (emacs, libvpx, perl-FCGI, and seamonkey), Mageia (cifs-utils), Red Hat (containernetworking-plugins, go-toolset:rhel8, golang, gvisor-tap-vsock, krb5, mod_auth_openidc:2.3, protobuf, and thunderbird), Slackware (seamonkey), SUSE (gimp, gnutls, haproxy, opensaml, openssh, openvpn, python-crypto … ⌘ Read more
Security updates for Tuesday
Security updates have been issued by AlmaLinux (varnish), Debian (asterisk and roundcube), Fedora (systemd), Mageia (golang), Red Hat (ghostscript, perl-CPAN, python36:3.6, and rsync), SUSE (govulncheck-vulndb, libsoup-2_4-1, and postgresql, postgresql16, postgresql17), and Ubuntu (mariadb, open-vm-tools, php-twig, and python-tornado). ⌘ Read more
Security updates for Monday
Security updates have been issued by Debian (espeak-ng, kitty, kmail-account-wizard, krb5, libreoffice, libvpx, net-tools, python-flask-cors, symfony, tcpdf, thunderbird, and twitter-bootstrap3), Fedora (chromium, dropbear, firefox, gstreamer1-plugins-bad-free, python-tornado, systemd, and thunderbird), Mageia (coreutils, deluge, glib2.0, and redis), Oracle (firefox, kernel, and systemd), Red Hat (firefox, kernel, kernel-rt, varnish, varnish:6, and zlib), SUSE (bind, curl, dnsdist, … ⌘ Read more
Security updates for Friday
Security updates have been issued by AlmaLinux (.NET 8.0, .NET 9.0, firefox, ghostscript, gstreamer1-plugins-bad-free, libsoup3, mingw-freetype, perl, ruby, sqlite, thunderbird, unbound, valkey, and xz), Debian (chromium, firefox-esr, libavif, linux-6.1, modsecurity-apache, mydumper, systemd, and thunderbird), Fedora (coreutils, dnsdist, docker-buildx, maturin, mingw-python-flask, mingw-python-flit-core, ruff, rust-hashlink, rust-rusqlite, and thunderbird), Red Hat (pcs), SUSE (augeas, … ⌘ Read more
Security updates for Thursday
Security updates have been issued by AlmaLinux (kernel and kernel-rt), Debian (firefox-esr, libvpx, net-tools, php-twig, python-tornado, setuptools, varnish, webpy, yelp, and yelp-xsl), Fedora (xen), Mageia (cimg and ghostscript), Oracle (gstreamer1-plugins-bad-free, kernel, libsoup, thunderbird, and unbound), Red Hat (firefox, mingw-freetype and spice-client-win, pcs, and varnish:6), Slackware (curl and mozilla), SUSE (apparmor, containerd, dnsdist, go1.23-openssl, go1.24 … ⌘ Read more
Security updates for Wednesday
Security updates have been issued by AlmaLinux (gstreamer1-plugins-bad-free and kernel), Arch Linux (bind and varnish), Debian (glibc and syslog-ng), Fedora (microcode_ctl, mozilla-ublock-origin, nodejs20, and nodejs22), Mageia (firefox, nss, rootcerts, open-vm-tools, sqlite3, and thunderbird), Oracle (gstreamer1-plugins-bad-free, kernel, libsoup, nodejs:22, php, php:8.2, php:8.3, python-tornado, redis, and redis:7), Red Hat (libsoup, pcs, and python-tornado), Slackware … ⌘ Read more
Extracting saved passwords in Chrome using python ⌘ Read more
Security updates for Tuesday
Security updates have been issued by AlmaLinux (gstreamer1-plugins-bad-free, libsoup, and python-tornado), Debian (libavif and pgbouncer), Red Hat (gstreamer1-plugins-bad-free, mingw-freetype and spice-client-win, and webkit2gtk3), SUSE (firefox, govulncheck-vulndb, and python310-setuptools), and Ubuntu (flask, intel-microcode, openjdk-17-crac, tika, and Tomcat). ⌘ Read more
MITM HTTPS Payload with Python
A lightweight MITM tool for monitoring encrypted traffic and detecting threats powered by AI and built in Python
[Continue reading on InfoSec Write-ups »](https://infosecwriteups.com/mitm-https-payload-with-python-499ebf8e933f?source=rss—-7b722bfd1b8d— … ⌘ Read more
How to Build a Secure Password Manager in Python ⌘ Read more
Ollama-OCR:基於 Ollama 多模態大模型的端到端文檔解析和處理
基本介紹Ollama-OCR 是一個 Python 的 OCR 解析庫,結合了 Ollama 的模型能力,可以直接處理 PDF 文件無需額外轉換,輕鬆從掃描版或原生 PDF 文檔中提取文本和數據。根據使用的視覺模型和自定義提示詞,Ollama-OCR 可支持多種語言,並且能把文檔轉換爲特定的格式進行輸出。支持多種視覺模型———–可以從 Ollama 上選擇最新的視覺模型: ● gem ⌘ Read more
@prologic@twtxt.net interesting that ruby is so low on the list, i find it the easiest to learn! hell i struggle with python more than ruby and i’ve been told that python is like ruby but better lol. maybe it’s just my weird brain!
One of the nicest things about Go is the language itself, comparing Go to other popular languages in terms of the complexity to learn to be proficient in:
- Go:
25keywords (Stack Overflow); CSP-style concurrency (goroutines & channels)
- Python 2:
30keywords (TutorialsPoint); GIL-bound threads & multiprocessing (Wikipedia)
- Python 3:
35keywords (Initial Commit); GIL-bound threads,asyncio& multiprocessing (Wikipedia, DEV Community)
- Java:
50keywords (Stack Overflow); threads +java.util.concurrent(Wikipedia)
- C++:
82keywords (Stack Overflow);std::thread, atomics & futures (en.cppreference.com)
- JavaScript:
38keywords (Stack Overflow); single-threaded event loop &async/await, Web Workers (Wikipedia)
- Ruby:
42keywords (Stack Overflow); GIL-bound threads (MRI), fibers & processes (Wikipedia)
@bender@twtxt.net Here’s a short-list:
- Simple, minimal syntax—master the core in hours, not months.
- CSP-style concurrency (goroutines & channels)—safe, scalable parallelism.
- Blazing-fast compiler & single-binary deploys—zero runtime dependencies.
- Rich stdlib & built-in tooling (gofmt, go test, modules).
- No heavy frameworks or hidden magic—unlike Java/C++/Python overhead.
Security updates for Friday
Security updates have been issued by Fedora (dotnet9.0, dropbear, ghostscript, nbdkit, openssh, python-watchfiles, rpm-ostree, yelp, yelp-xsl, and zsync), Oracle (firefox and kernel), Red Hat (osbuild-composer), Slackware (aaa_glibc and mozilla), SUSE (chromedriver, open-vm-tools, postgresql14, python-cryptography, and thunderbird), and Ubuntu (linux-aws, linux-hwe-5.4, python, and sqlite3). ⌘ Read more
Security updates for Thursday
Security updates have been issued by AlmaLinux (kernel, kernel-rt, and webkit2gtk3), Fedora (mozilla-ublock-origin and sudo-rs), Oracle (.NET 8.0, compat-openssl10, grafana, osbuild-composer, redis:6, ruby:2.5, and webkit2gtk3), SUSE (dante, firefox-esr, gnuplot, govulncheck-vulndb, grype, postgresql13, postgresql14, postgresql15, postgresql16, postgresql17, python-tornado6, python314, thunderbird, ucode-intel, and xen), and Ubuntu (bind9, libfcgi-perl, linux-ibm-5.4, linux-oracle-5.4 … ⌘ Read more
[$] Recent disruptive changes from Setuptools
In late March, version 78.0.1 of Setuptools — an important
Python packaging tool — was released. It was scarcely half an hour before
the first bug\
report came in, and it quickly became clear that the change was far
more disruptive than anticipated. Within only about five hours [78.0.2 was\
published to roll back the change](https://setuptools.pypa.io/e … ⌘ Read more
Security updates for Wednesday
Security updates have been issued by AlmaLinux (.NET 8.0, avahi, buildah, compat-openssl10, compat-openssl11, expat, firefox, gimp, git, grafana, libsoup, libxslt, mod_auth_openidc, nginx, nodejs:22, osbuild-composer, php, redis, redis:7, skopeo, thunderbird, vim, webkit2gtk3, xterm, and yelp), Arch Linux (dropbear, freetype2, go, nodejs, nodejs-lts-iron, nodejs-lts-jod, python-django, webkit2gtk, webkit2gtk-4.1, webkitgtk-6.0, and wpewebkit), Debian (mongo-c-driver), Fedora (openssh, … ⌘ Read more
The Battle for Python’s Soul: How uv is Challenging pip’s Championship Reign
The stadium lights flicker on. The crowd falls silent. In the blue corner, weighing in with over a decade of dominance and … ⌘ Read more
Security updates for Tuesday
Security updates have been issued by Debian (firefox-esr, openjdk-11, openjdk-17, and wireless-regdb), Fedora (iputils, open-vm-tools, sfnt2woff-zopfli, and woff), Red Hat (postgresql:12), SUSE (apache2-mod_auth_openidc, brltty, helm, python-maturin, and rubygem-rack), and Ubuntu (linux-azure-fips). ⌘ Read more
Golang 業務邏輯 WASM 化實踐指南
爲什麼選擇 WASM 邊緣計算?在物聯網和 5G 加速普及的當下,邊緣計算對低延遲和離線能力的需求暴增。傳統容器方案(如 Docker)在邊緣設備上面臨三大痛點:資源消耗大:x86 容器鏡像通常超過 100MB,ARM 設備運行效率低下 冷啓動慢:Node.js/Python 等解釋型語言啓動時間超過 500ms 安全風險:系統級隔離存在逃逸風險 WebAssembly(WASM ⌘ Read more
Golang 業務邏輯 WASM 化實踐指南
爲什麼選擇 WASM 邊緣計算?在物聯網和 5G 加速普及的當下,邊緣計算對低延遲和離線能力的需求暴增。傳統容器方案(如 Docker)在邊緣設備上面臨三大痛點:資源消耗大:x86 容器鏡像通常超過 100MB,ARM 設備運行效率低下 冷啓動慢:Node.js/Python 等解釋型語言啓動時間超過 500ms 安全風險:系統級隔離存在逃逸風險 WebAssembly(WASM ⌘ Read more
以 StreamableHTTP 爲例,對 MCP 進行總結與實踐
引言近日,MCP 迎來更新,StreamableHTTP 從 3 月 26 日協議發佈,到這禮拜進行落地,從 python 的 sdk 上來看,更新的代碼量並不大,但畢竟是一個協議,從 github 上的幾百條 discussion 中,可以看到還是有非常多褒貶不一的聲音:本篇就以更新後的 StreamableHTTP,做了一個實踐測試。從 stdio 到 StreamableHTTP最初,標準輸 ⌘ Read more
autogenlib - Python lib for “vibe importing”, generates the code based on its call site
Comments ⌘ Read more
Excel MCP: 自動讀取、提煉、分析 Excel 數據並生成可視化圖表和分析報告
最近,一款 Excel MCP Server 的開源工具火了,看起來功能很強大,咱們今天來一探究竟。基礎環境—-Python 3.10 or higher Python 3.10或更高版本需要提前安裝uvpip istall uv安裝 MCP SERVER————-下載服務包git clone https://github.com/haris-musa/excel-mcp-se ⌘ Read more
tar and find were written by the devil to make sysadmins even more miserable
@kat@yarn.girlonthemoon.xyz @prologic@twtxt.net Given that all these programs are super old (tar is from the late 1970ies), while trying to retain backwards-compatibilty, I’m not surprised that the UI isn’t too great. 🤔
find has quite a few pitfalls, that is very true. At work, we don’t even use it anymore in more complex scenarios but write Python scripts instead. find can be fast and efficient, but fewer and fewer people lack the knowledge to use it … The same goes for Shell scripting in general, actually.
Security updates for Monday
Security updates have been issued by Debian (libbson-xs-perl, postgresql-13, redis, and simplesamlphp), Fedora (chromium, deluge, epiphany, golang-github-nats-io-nkeys, libxmp, nodejs22, perl-Compress-Raw-Lzma, php-adodb, python-h11, and xz), Gentoo (firefox, NVIDIA Drivers, Orc, PAM, and thunderbird), Mageia (libreoffice, python-django, and transfig), Red Hat (emacs, firefox, python39:3.9, and thunderbird), SUSE (bird3, freetype2, ldap-proxy, libmosquitto1, and ruby3.4-rubygem-rack … ⌘ Read more
I made a Vim Game in Python ⌘ Read more
Security updates for Friday
Security updates have been issued by Debian (fossil, libapache2-mod-auth-openidc, and request-tracker4), Fedora (thunderbird), Mageia (firefox and thunderbird), SUSE (389-ds, apparmor, cargo-c, chromium, go1.24, govulncheck-vulndb, java-1_8_0-openjdk, kanidm, libsoup, mozjs102, openssl-1_1, openssl-3, python-Django, sccache, tealdeer, tomcat, transfig, wasm-bindgen, and wireshark), and Ubuntu (libreoffice and python-h11). ⌘ Read more
Thanks, @movq@www.uninformativ.de! That seems to be much easier. It’s already implemented in the Python docs as examples of recvmsg(…) and sendmsg(…):
- https://docs.python.org/3/library/socket.html#socket.socket.recvmsg
- https://docs.python.org/3/library/socket.html#socket.socket.sendmsg
I looked at them sooo many times in order to figure out why my SCM_CREDENTIALS sending code didn’t work. :-D
Security updates for Thursday
Security updates have been issued by Debian (chromium, libapache2-mod-auth-openidc, mariadb-10.5, and openssh), Red Hat (osbuild-composer), Slackware (mariadb), SUSE (apache2-mod_auth_openidc, glib2, ImageMagick, libsoup, libsoup2, libva, openvpn, sqlite3, and weblate), and Ubuntu (libsoup3, php-horde-css-parser, and python-django). ⌘ Read more
uv:統一的 Python 包管理
花下貓語:uv 項目自發布起就大受歡迎,目前 Github star 52.6 K,遠超過它的同類競品們。前不久,它的創始人在 X 上披露了一組驚人的數據:uv 曾佔據了 PyPI 超過 20% 的流量,用戶每天通過它發起約 4-5 億次下載請求!我在去年翻譯過 uv 首發時的新聞文章 [1],根據博客後臺不完整的統計,從 Google 搜索進入的訪問量已經超過 3000,妥妥成爲了我博客的搜索訪 ⌘ Read more
Secure your Python applications: Best practices for developers
Practical security tips every Python developer should know — from dependency safety to protecting against injection attacks and securing…
[Continue reading on InfoSec Write … ⌘ Read more
Nobody want to be a shitty programmer. The question is: Do you do anything not to not be one?
Reading blogs or social media and watching YouTube videos is fun. After them, your code may be a little better, of course. But you need a lot. You need to study! Read good books and study the code of other programmers, for example. Maybe work with a new language, architectures and paradigms. You need break the routine.
If you know Object-oriented programming, you learn functional programming.
If you know Model-View-Controller, you learn Model-View-ViewModel.
If you don’t know anything about architectures, you learn Clean Architecture, Hexagonal Architecture, etc.
If you know Python, you learn Ruby or Go.
If you know Clojure or Lisp… you don’t need to learn anything else. You are already a good programmer. Just kidding. You can learn Elixir or Scala.
Be a good programmer my friend.
Security updates for Friday
Security updates have been issued by Debian (chromium, nodejs, openjdk-17, and thunderbird), Fedora (firefox, golang-github-nvidia-container-toolkit, and thunderbird), Mageia (kernel), Oracle (ghostscript, glibc, kernel, libxslt, php:8.1, and thunderbird), SUSE (cmctl, firefox-esr, govulncheck-vulndb, java-21-openjdk, libxml2, poppler, python-h11, and redis), and Ubuntu (docker.io, ghostscript, linux-xilinx-zynqmp, and micropython). ⌘ Read more
Enforcing Artifact Security with Trivy and OPA
In cloud-native development, ensuring the integrity and security of software artifacts (such as Docker images, Python wheels, and Helm charts) is a fundamental challenge. With the growing adoption of continuous integration and delivery pipelines, there’s a… ⌘ Read more
Security updates for Tuesday
Security updates have been issued by AlmaLinux (glibc, php:8.1, and thunderbird), Debian (libreoffice), Fedora (caddy), Mageia (chromium-browser-stable), Red Hat (php:8.1), SUSE (glow), and Ubuntu (kicad, linux-aws-5.15, linux-azure-nvidia, linux-gcp-5.15, mistral, python-mistral-lib, tomcat8, and trafficserver). ⌘ Read more
We’re all old farts. When we started, there weren’t a lot of options. But today? I’d be completely overwhelmed, I think.
Hence, I’d recommend to start programming with a console program. As for the language, not sure. But Python is probably a good choice
That’s what I usually do (when we have young people at work who never really programmed before), but it doesn’t really “hit” them. They’ve seen so much, crazy graphics, web pages, it’s all fancy. Just some text output is utterly boring these days. ☹️ And that’s my problem: I have no idea how I could possibly spark some interest in things like pointers or something “low-level” like that. And I truly believe that you need to understand things like pointers in order to program, in general.
Wrote some serious Python for the first time in like 10 years 😱 I feel so dirty 🤣
@movq@www.uninformativ.de I started with Delphi in school, the book (that we never ever used even once and I also never looked at) taught Pascal. The UI part felt easy at first but prevented me from understanding fundamental stuff like procedures or functions or even begin and end blocks for ifs or loops. For example I always thought that I needed to have a button somewhere, even if hidden. That gave me a handler procedure where I could put code and somehow call it. Two or three years later, a new mate from the parallel class finally told me that this wasn’t necessary and how to do thing better.
You know all too well that back in the day there was not a whole lot of information out there. And the bits that did exist were well hidden. At least from me. Eventually discovering planet-quellcodes.de (I don’t remember if that was the original forum or if that got split off from some other board) via my best schoolmate was like finding the Amber Room. Yeah, reading the ITG book would have been a very good idea for sure. :-)
In hindsight, a console program without the UI overhead might have been better. At least for the very start. Much less things to worry about or get lost.
Hence, I’d recommend to start programming with a console program. As for the language, not sure. But Python is probably a good choice, it doesn’t require a lot of surrounding boilerplate like, say Java or Go. It also does exceptionally well in the principle of least surprise.
GitLab CI for Python Developers: A Complete Guide
Automating Testing, Linting, and Deployment for Python projects using GitLab CI/CD
[Continue reading on InfoSec Write-ups »](https://infosecwriteups.com/gitlab-ci-for-python-developers-a-complete-guide-83794cb91 … ⌘ Read more
revisitando um projeto de há 2 anos
erro no build
python do meu OS é agora uma versão mais recente
incompatível com uma das bibliotecas
keeptryingkeepfailing.mp3
a esperança vã de meter um issue no tracker do projeto
má disposição por acabar o dia com prob não resolvido
horas depois à noite, ping
o developer respondeu ao issue
e fez grande commit pra resolver o problema
fuck yeah software livre :szterminal:
Security updates for Tuesday
Security updates have been issued by AlmaLinux (java-1.8.0-openjdk, kernel, libxslt, mod_auth_openidc:2.3, and webkit2gtk3), Fedora (c-ares, giflib, jupyterlab, perl, perl-Devel-Cover, perl-PAR-Packer, prometheus-podman-exporter, python-notebook, python-pydantic-core, rpki-client, ruby, rust-adblock, rust-cookie_store, rust-gitui, rust-gstreamer, rust-icu_collections, rust-icu_locid, rust-icu_locid_transform, rust-icu_locid_transform_data, rust-icu_normalizer, rust-icu_normalizer_data … ⌘ Read more
Exciting new for Python 3.14!
t-string, not to be confused with f-string, to avoid malicious code and make life easier for web developers.
https://davepeck.org/2025/04/11/pythons-new-t-strings/
#python
Template strings accepted for Python 3.14
The Python Steering Council
accepted PEP 750
(” Template Strings”) on April 10. LWN
covered the discussion around the proposal, including the
substantial revisions to the idea that were needed for it
to be accepted. Template strings (t-strings) are a new kind of string that produces
structured data instead o … ⌘ Read more
Security updates for Monday
Security updates have been issued by Debian (erlang, fig2dev, shadow, wget, and zabbix), Fedora (chromium, jupyterlab, llama-cpp, prometheus-podman-exporter, python-notebook, python-pydantic-core, rpki-client, rust-adblock, rust-cookie_store, rust-gitui, rust-gstreamer, rust-icu_collections, rust-icu_locid, rust-icu_locid_transform, rust-icu_locid_transform_data, rust-icu_normalizer, rust-icu_normalizer_data, rust-icu_properties, rust-icu_properties_data, rust-icu_provider, rust-icu\ … ⌘ Read more
si4er3q. See https://twtxt.dev/exts/twt-hash.html, a timezone offset of +00:00 or -00:00 must be replaced by Z.
@eaplme@eapl.me you wrote:
“That PHP snippet could be merged into https://twtxt.dev/exts/twt-hash.html”
Why, though? AFAIK @andros@twtxt.andros.dev’s client is on Emacs, @lyse@lyse.isobeef.org’s is on Python (and Golang, for tt2), @movq@www.uninformativ.de’s is on Python, and @prologic@twtxt.net’s is on Golang. All the client creator needs to know is in the documentation already, coding language agnostic.
si4er3q. See https://twtxt.dev/exts/twt-hash.html, a timezone offset of +00:00 or -00:00 must be replaced by Z.
Scratch that, no bug in jenny. There’s actually a test case for this. Python normalizes -00:00 to +00:00, so the negative case never happens.
Security updates for Thursday
Security updates have been issued by Debian (chromium and libapache2-mod-auth-openidc), Oracle (expat, freetype, glibc, grub2, gvisor-tap-vsock, and kernel), Red Hat (grub2 and webkit2gtk3), and SUSE (apache2-mod_auth_openidc, cosign, gitoxide, govulncheck-vulndb, GraphicsMagick, haproxy, hauler, mozjs52, oci-cli, pam, perl-Data-Entropy, poppler, python-lxml-doc, python311-aiohttp, rekor, rubygem-rexml, and webkit2gtk3). ⌘ Read more
If you are familiar with Python and want to learn Vim9 language, take a look here. ⌘ Read more