[$] Progress on defeating lifetime-end pointer zapping
Paul McKenney gave a remote presentation at
Kangrejos 2025 following up on the
talk he gave last year about the
lifetime-end-pointer-zapping problem: certain common patterns for multithreaded code are
technically undefined behavior, and changes to the C and C++ specifications
will be needed to correct that. Those changes could also impact code that uses
unsafe Rust, such as the kernel’s Rust bindings. Progress on the p … ⌘ Read more
The 10 Best Apple Deals Under $100 for Prime Day
As Prime Big Deal Days continues, we’re highlighting all of the best Apple deals you can get for under $100 on Amazon. This includes AirPods, Apple Pencil Pro, AirTags, iPhone cases, USB-C chargers, and more.
Tiny RISC-V Development Board with WCH CH32V317WCU6 Available from $6.80
The nanoCH32V317 is a compact development board created by MuseLab to simplify prototyping and embedded system development. It integrates USB connectivity, Ethernet support, and a straightforward programming interface through USB Type-C, providing an accessible platform for engineers and hobbyists working with RISC-V microcontrollers. The board is powered by the WCH CH32V317WCU6, a RISC-V microcontro … ⌘ Read more
How to get LSP semantic highlighting working for C++ ⌘ Read more
Sou eu que já estou muito cansado, ou este texto no DN deve ter sido escrito por IA e não faz sentido nenhum?
“Se uma greve geral chegar a acontecer, será a primeira vez nos últimos 12 anos, pois a última paralisação convocada por ambas as centrais sindicais ocorreu em junho de 2023.”
@itsericwoodward@itsericwoodward.com, hi there! Welcome to the twtverse! It seems you have a typo on your site address, an extra “c”.
Video: C Programming on System 6 - VCFMW, CMaster ⌘ Read more
^C
Está a chegar ao fim a 15ª edição do #ZigurFest, o festival em #Lamego onde inclusão, acessibilidade e diversidade são valores centrais.
Ficam aqui fotos do último dia, e interesse em saber as datas para 2026!
37C3 and New Year’s Eve 2023
Another one from the vaults. The 37C3 conference took place in
December, 2023. This report was mostly written in January, 2024.
Mostly finished it at night in my cottage between 28 and 29th
December, then edited and added some stuff in July, 2025. So… Only
1.5 years late?
It was a little ironic, and a little sad, that I was finishing the
37C3 report during 38C3. I didn’t manage to get any tickets for me and
#3 for 38C3 and had to make do with watching the stream.
The links to the talks go to [C … ⌘ Read more
Here’s an example of X11/Xlib being old and archaic.
X11 knows the data type “cardinal”. For example, the window property _NET_WM_ICON
(which holds image data for icons) is an array of “cardinal”. I am already not really familiar with that word and I’m assuming that it comes from mathematics:
https://en.wikipedia.org/wiki/Cardinal_number
(It could also be a bird, but probably not: https://en.wikipedia.org/wiki/Cardinalidae)
We would probably call this an “integer” today.
EWMH says that icons are arrays of cardinals and that they’re 32-bit numbers:
https://specifications.freedesktop.org/wm-spec/latest-single/#id-1.6.13
So it’s something like 0x11223344
with 0x11
being the alpha channel, 0x22
is red, and so on.
You would assume that, when you retrieve such an array from the X11 server, you’d get an array of uint32_t
, right?
Nope.
Xlib is so old, they use char
for 8-bit stuff, short int
for 16-bit, and long int
for 32-bit:
That is congruent with the general C data types, so it does make sense:
https://en.wikipedia.org/wiki/C_data_types
Now the funny thing is, on modern x86_64
, the type long int
is actually 64 bits wide.
The result is that every pixel in a Pixmap, for example, is twice as large in memory as it would need to be. Just because Xlib uses long int
, because uint32_t
didn’t exist, yet.
And this is something that I wouldn’t know how to fix without breaking clients.
Music discovery made easy
With the YouTube Music web player, you get new releases, covers, and hard-to-find songs
st tries not to redraw immediately after new data arrives:
https://git.suckless.org/st/file/x.c.html#l1984
The exact timings are configurable.
This is the PR that changed the timing in VTE recently (2023):
https://gitlab.gnome.org/GNOME/vte/-/issues/2678
There is a long discussion. It’s not a trivial problem, especially not in the context of GTK and multiple competing terminal widgets. st dodges all these issues (for various reasons).
We covered quite some ground in the two and a half hours today. The weather was nice, mostly cloudy and just 23°C. That’s also why we decided to take a longer tour. We saw four deer in the wild, three of which I managed to just ban on film, quality could be better, though. My camera produced a hell lot of defocused photos this time. Not sure what’s going on with the autofocus. https://lyse.isobeef.org/waldspaziergang-2025-07-10/
When the sun came out, colors were just beautiful:
Just realized: One of the reasons why I don’t like “flat UIs” is that they look broken to me. Like the program has a bug, missing pixmaps or whatever.
Take this for example:
https://movq.de/v/8822afccf0/a.png
I’m talking about this area specifically:
https://movq.de/v/8822afccf0/a%2Dhigh.png
One UI element ends and the other one begins – no “transition” between them.
The style of old UIs like these two is deeply ingrained into my brain:
https://movq.de/v/8822afccf0/b.png
https://movq.de/v/8822afccf0/c.png
When all these little elements (borders, handles, even just simple lines, …) are no longer present, then the program looks buggy and broken to me. And I’m not sure if I’ll ever be able to un-learn that.
@movq@www.uninformativ.de @kat@yarn.girlonthemoon.xyz It’s awful, “just” 32°C here. When I rode my bike into town I came across some spots where the heat was stationary built up and really intense. The airflow felt like the sauna attendant poured water over the heated rocks and severely fanned the hot air with his towel.
@prologic@twtxt.net … or just bullshit.
I’m Alex, COO at ColdIQ. Built a $4.5M ARR business in under 2 years.
Some “C-level” guy telling people what to do, yeah, I have my doubts.
@prologic@twtxt.net I’m trying to call some libc functions (because the Rust stdlib does not have an equivalent for getpeername()
, for example, so I don’t have a choice), so I have to do some FFI stuff and deal with raw pointers and all that, which is very gnarly in Rust – because you’re not supposed to do this. Things like that are trivial in C or even Assembler, but I have not yet understood what Rust does under the hood. How and when does it allocate or free memory … is the pointer that I get even still valid by the time I do the libc call? Stuff like that.
I hope that I eventually learn this over time … but I get slapped in the face at every step. It’s very frustrating and I’m always this 🤏 close to giving up (only to try again a year later).
Oh, yeah, yeah, I guess I could “just” use some 3rd party library for this. socket2 gets mentioned a lot in this context. But I don’t want to. I literally need one getpeername()
call during the lifetime of my program, I don’t even do the socket()
, bind()
, listen()
, accept()
dance, I already have a fully functional file descriptor. Using a library for that is total overkill and I’d rather do it myself. (And look at the version number: 0.5.10
. The library is 6 years old but they’re still saying: “Nah, we’re not 1.0 yet, we reserve the right to make breaking changes with every new release.” So many Rust libs are still unstable …)
… and I could go on and on and on … 🤣
Nothing makes you feel better than mowing a wet lawn, while rain falls, under 33°C temperature, with 80% humidity. I loved every step I took!
Having some fun with SIRDS this morning.
What you should see: https://movq.de/v/dae785e733/disp.png
And the tutorial I used for my C program: https://www.ime.usp.br/~otuyama/stereogram/basic/index.html
Anzeige: Programmierjobs für Softwareprofis
Ob C#, ABAP oder Angular: In diesen sechs Positionen erwarten Devs spannende Aufgaben in Forschung, Produktentwicklung oder der Versicherungsbranche - mit Perspektive und Gestaltungsspielraum. ( Golem Karrierewelt, Betriebssysteme)
Anzeige: 5-in-1 USB-C-Hub von Anker für nur 15,99 Euro sichern
Der USB-C-Hub von Anker ist derzeit im Angebot und ergänzt fehlende Anschlüsse bei modernen Laptops um praktische Funktionen. ( Technik/Hardware, USB-C)
glibc 堆內存管理:原理、機制與實戰
在內存管理領域,glibc(GNU C Library)通過 brk 和 mmap 兩大系統調用,構建了一套高效的堆內存管理機制。這種設計大幅減少了系統調用的頻次,顯著提升內存利用率。在 glibc 的管理架構中,堆內存以層級化的方式組織,包含分配區(Arena)、堆(Heap)和內存塊(Chunk)。其中,主 Arena 依賴 brk 系統調用實現內存分配,而子 Arena 則通過 mmap 完 ⌘ Read more
Use Your iPhone As a Webcam for Nintendo Switch 2
The Nintendo Switch 2 includes a new built-in social feature called GameChat that allows up to 12 users to engage in video chats simultaneously, even if they’re playing in different games. To facilitate this, Nintendo offers an official Switch 2 Camera that connects via USB-C, but it turns out that an iPhone does the job just as well, if not better.
Niles Mitchell has thoughtfully shared a demo of the Switch-iPho … ⌘ Read more
分佈式事務的解決方案—Seata TCC 模式
在分佈式事務解決方案中有 Seata AT 模式,但是 AT 模式要求是關係型數據庫(因爲 undolog 表需要和業務保持原子性),此時如果事務中存在非關係型數據庫(如 Redis、ES 等),那麼 AT 模式就無法滿足要求了,如下圖所示: 此時我們就需要 Seata TCC 模式來幫助我們解決這種場景下的分佈式事務問題。1、認識 Seata TCC 模式 TCC(Try-C ⌘ Read more
Anzeige: C-auf-A-USB-Adapter von Ugreen für unter 2 Euro pro Stück
Kein USB-A-Kabel mehr nötig: Amazon verkauft drei USB-Adapter für USB-C auf USB-A von Ugreen zum Tiefstpreis. ( Technik/Hardware, Amazon)
Glasfaser: O2 Telefónica ist gegen eine schnelle DSL-Abschaltung
Ein C-Level-Manager von O2 Telefónica findet kaum ein gutes Wort für eine Kupferabschaltung. Man verdient da weiter viel Geld. ( Anga Com, DSL)
Windows 11: Microsoft fordert einheitliche USB-Ports bei Windows-Laptops
Kunden sollen sicher sein können, dass sie bei allen USB-C-Buchsen ihres Windows-PCs alle Features verlässlich nutzen können. ( PC & Notebooks, Notebook)
[$] Glibc project revisits infrastructure security
The GNU C Library
(glibc) is the core C library for most Linux distributions, so it is a
crucial part of the open-source ecosystem—and an attractive
target for any attackers looking to carry out supply-chain
attacks. With that being the case, securing the project’s
infrastructure using industry best practices and improving the
security of its development practices are a frequent topic among glibc
developers. A recent discussion suggests that improveme … ⌘ Read more
Apple Working on Studio Display 2: Here’s What the Latest Rumors Say
Apple released the Studio Display in March 2022, alongside the first Mac Studio, and it has not received any hardware upgrades since.
The current Studio Display features a 27-inch LCD screen with a 5K resolution, a 60Hz refresh rate, up to 600 nits brightness, a built-in camera and speakers, one Thunderbolt 3 port, and three USB-C ports. In the U.S … ⌘ Read more
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:
25
keywords (Stack Overflow); CSP-style concurrency (goroutines & channels)
- Python 2:
30
keywords (TutorialsPoint); GIL-bound threads & multiprocessing (Wikipedia)
- Python 3:
35
keywords (Initial Commit); GIL-bound threads,asyncio
& multiprocessing (Wikipedia, DEV Community)
- Java:
50
keywords (Stack Overflow); threads +java.util.concurrent
(Wikipedia)
- C++:
82
keywords (Stack Overflow);std::thread
, atomics & futures (en.cppreference.com)
- JavaScript:
38
keywords (Stack Overflow); single-threaded event loop &async/await
, Web Workers (Wikipedia)
- Ruby:
42
keywords (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.
Review: Eve Cam Gets USB-C and Better Night Vision, But Still Has 1080p Resolution
If you’re looking for an indoor security camera that takes advantage of Apple’s HomeKit Secure Video functionality, the Eve Cam from smart home maker Eve is worth taking a look at.
Priced at $150, the Eve Cam has been updated over the years with a handful of features that make it better than the original 2020 model. The 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
Flutter 與 Rust 跨界聯手:打造跨平臺開發新紀元
使用 Rust 與 Flutter 的理由假設我們需要獲取當前設備的電池電量。如果沒有任何插件提供這種功能,那就必須解決兩個問題:如何在本地代碼和 Flutter 之間傳輸數據,以及如何處理不同平臺的特定語言(如 C++/Kotlin/Swift 等)。數據傳輸挑戰——在 Flutter 應用和本地代碼之間傳輸大量數據時,創建綁定以實現在兩者間的數據交換是必要的。這個過程涉及到大量的樣板代 ⌘ Read more
Deals: iPad mini 7 for $399
iPad mini 7 is a powerful miniature tablet that features the A17 processor with Apple Intelligence support, 8″ LCD display, a 12mp front and rear camera, 128 GB storage, USB-C charging, and support for optional Apple Pencil Pro. iPad mini is offered in multiple color options at this 20% discount price, taking $100 off the … Read More ⌘ Read more
Security updates for Monday
Security updates have been issued by Debian (dropbear, firefox-esr, intel-microcode, net-tools, openafs, thunderbird, and xrdp), Fedora (chromium, micropython, syslog-ng, webkitgtk, and xen), Mageia (dropbear and openssh), Oracle (.NET 9.0, kernel, libjpeg-turbo, and yelp and yelp-xsl), Red Hat (compat-openssl11, git-lfs, grafana, kernel, and osbuild and osbuild-composer), Slackware (mozilla), SUSE (cargo-c, gimp, iputils-20240905, kernel, libraw, microcode_ctl, openssh, pnpm, … ⌘ Read more
Zum Entsetzen aller Beteiligten, wie auch umstehender Personen und einiger schamfreier Gaffer, welche sich an jenem tosenden Unheil zu ergötzen vermochten, folgte nun des Wochensortiments schrecklichste Geißel: 𝕯𝖊𝖗 𝕸𝖔𝖓𝖙𝖆𝖌.
Und es sollten sich die Wolken teilen, um über ihnen nimmer endende Irrungen und Wirrungen an bovinem Fäkal und fremdgetriebener Lethargie zu erbrechen, auf dass sie zu erkennen gezwungen wären, welche Urkraft der irrealen Zusammenkunft letztlich Herrschaft über sie darstellen sollte: 𝕯𝖆𝖘 𝕭𝖎𝖑𝖉𝖙𝖊𝖑𝖊𝖋𝖔𝖓.
So zogen sie alsbald hin, zu tun wie ihnen geheißen, wohlgleich sie – diesem Schauerspiel trotzend – Trost suchten im einzigen ihnen sicher geglaubten Elixir, das dem Abgrund unter ihnen gleichend tiefschwarz glitzernd Erlösung oder mithin als Mindestmaß Linderung versprach, lag jenes doch in unmittelbarer Nähe befindlich hoffnungsschürend bereit:
K̸͓͙͖̥͗͛ä̷̯̼̤͔̈́f̵̧̿̋͒̈f̷̫̝̖̾̓c̸̛͔̀ḣ̶̳͋̓͊ë̷̫̟́͜͝͝n̵̨̳̬̒?̴̩̈́̄ ☕
Satechi X1 Slim
I bought a Satechi X1 Slim for dad’s iPad about a year ago. It’s a 60%
scissor switch Bluetooth keyboard that you can use wired (USB-C), too
(Fn + Eject). The feel is rather close to the Apple Magic Keyboard.
Yeah, not even mechanical! I know, I know.
For reasons dad’s not using this keyboard so when I recently visited I
brought it back with me. It’s decent enough but in the ISO version
some keys on the right side, close to the return key, are … ⌘ Read more
@kat@yarn.girlonthemoon.xyz You don’t need to change the directory first in line 11, you can just create the directory, that’s sufficient since you’re having an absolute path.
The echo
in line 13 is useless, you can simplify this to: newdir="$WD/$now"
If you reversed this line with the previous one, you could make use of the variable in the directory creation: mkdir "$newdir"
.
In line 16, pull the directory change out of the loop upfront. The loop body doesn’t modify the working directory, so no need to reset it with each cycle. In fact, you could even spare the cd
altogether when you simply tell find
where to look: find "$basedir" -type f…
.
I didn’t try it, but if I read the manpage correctly, you should be able to simplify line 19 as well:
-C Change to DIR before performing any operations. This option is order-sensitive, i.e. it affects all options that follow.
Hence, remove the cd
and put the -C "$WD"
as the first argument to tar
. Again, I didn’t try it. Proceed with caution.
Finally, you don’t need to specify the full path to rm
in line 21. I bet, /bin
is in your PATH
. When you removed the previous cd
from my last suggestion, the relative path that follows won’t work anymore. So, just use the absolute path that you already have in a variable: rm -rf "$newdir"
I hope you find this tiny review a wee bit useful. :-)
TCP 與 UDP 協議的 socket 通信
剛剛有同事問我,tcp 是怎麼進行 socket 通訊的,udp 能進行 socket 通信嘛,想想這些基礎的知識竟一下子語塞,不知道怎麼回答了,在此,我整理了一下相關知識點,以公衆號文章的形式發表一下,個人粗淺的理解,如有不當之處,請各位大佬多多指點修正。 現在進入正文,咱們先了解一下 socket, 說到 socket, 就得說到互聯網的一個架構,c/s 架構,c/s 是客戶端和服 ⌘ 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
精通 SOLID 原則在 Go 中的應用:編寫乾淨且可維護的代碼
在軟件開發中,構建可維護、可擴展和健壯的代碼是最終目標。SOLID 原則由 Robert C. Martin(也稱爲 Uncle Bob)提出,爲實現這一目標提供了基礎。這些原則如何應用於 Go 語言呢?Go 以其簡潔和務實著稱,讓我們來探討 Go 的慣用風格如何與 SOLID 原則對齊,從而生成乾淨、高效的軟件。單一職責原則(SRP)———–“一個類應該只有一個改變的原因。”在 G ⌘ Read more
精通 SOLID 原則在 Go 中的應用:編寫乾淨且可維護的代碼
在軟件開發中,構建可維護、可擴展和健壯的代碼是最終目標。SOLID 原則由 Robert C. Martin(也稱爲 Uncle Bob)提出,爲實現這一目標提供了基礎。這些原則如何應用於 Go 語言呢?Go 以其簡潔和務實著稱,讓我們來探討 Go 的慣用風格如何與 SOLID 原則對齊,從而生成乾淨、高效的軟件。單一職責原則(SRP)———–“一個類應該只有一個改變的原因。”在 G ⌘ Read more
Security updates for Tuesday
Security updates have been issued by Fedora (chromium and kappanhang), Red Hat (osbuild-composer and thunderbird), SUSE (chromedriver), and Ubuntu (c-ares, corosync, mysql-8.0, mysql-8.4, openjdk-17, openjdk-21, openjdk-24, openjdk-8, and openjdk-lts). ⌘ Read more
Arduino Uno Gets Upgraded with Integrated Ethernet and USB Type-C
The UnoNet is a microcontroller board based on the ATmega328PB, designed with the same form factor and pin layout as the Arduino Uno Rev 3. It integrates Ethernet via a W5500 controller and includes a USB Type-C port, RJ45 connector, DC barrel jack, ICSP header, and reset button. The ATmega328PB is clocked at 16 MHz […] ⌘ Read more
Security updates for Monday
Security updates have been issued by Debian (ansible, containerd, and vips), Fedora (chromium, java-17-openjdk, nodejs-bash-language-server, nodejs-pnpm, ntpd-rs, redis, rust-hickory-proto, thunderbird, and valkey), Mageia (apache-mod_auth_openidc, fcgi, graphicsmagick, kernel-linus, pam, poppler, and tomcat), Red Hat (firefox, libsoup, nodejs:20, redis:6, rsync, webkit2gtk3, xmlrpc-c, and yelp), and SUSE (audiofile, ffmpeg, firefox, libsoup-2_4-1, libsoup-3_0-0, libva, libxml2, and … ⌘ Read more
@movq@www.uninformativ.de @bender@twtxt.net 28°C right now, but luckily, just 20°C tomorrow and rain. Even a thunderstorm at night. On Sunday we’re down to 12°C. What a ride. Oh boys!
So, we’re at roughly 30°C now and my brain is in lala land. 🥵☹️
I visited a good mate after a day in the office and went for a stroll in the evening. It still was really hot, phew, about 24°C. Must have been the aftermath of the fire in the morning! For sure! The firealarm went off during a meeting and we all had to leave the building. Anyway, I only managed to take one lizard photo, all the other ones we came across immediately vanished in the brush or cracks in the vineyard walls. The kestrels were way more cooperative:
[$] Cache awareness for the CPU scheduler
The kernel’s CPU scheduler has to balance a wide range of objectives. The
tasks in the system must be scheduled fairly, with latency for any given
task kept within bounds. All of the CPUs in the system should be kept busy
if there is enough work to do, but unneeded CPUs should be shut down to
reduce power consumption. A task should also run on the CPU that is most
likely to have cached the memory that task is using. [This patch\
series](https://lwn.net/ml/all/cover.1745199017.git.yu.c.chen@in … ⌘ Read more
Security updates for Monday
Security updates have been issued by AlmaLinux (thunderbird), Debian (distro-info-data, imagemagick, kernel, libsoup2.4, and poppler), Fedora (chromium, java-1.8.0-openjdk, java-1.8.0-openjdk-portable, java-17-openjdk, java-17-openjdk-portable, java-latest-openjdk, pgadmin4, thunderbird, and xz), Mageia (haproxy and libxml2), Oracle (bluez, firefox, gnutls, libtasn1, libxslt, mod_auth_openidc:2.3, ruby:3.1, thunderbird, and xmlrpc-c), Red Hat (delve and golang, glibc, mod_auth_o … ⌘ Read more
I went on a small hike, just 12-13km this time. The weather was great, blue sky, sunny 18°C, but with the wind it felt colder. Leaves and other green stuff is exploding like crazy. It looks super beautiful right now.
I came across an unfortunately dead salamander on the forest road, some fenced in deer, heaps of sheep, some unmagnetic cows (some were aligned very roughly north-south, but mainly with the axis of the best view I believe), a maybeetle and finally an awesome sunset. Not too shabby! The sheep were mehing all the time, that was really lovely to hear. And the crickets were already active, too. Didn’t expect them to hear yet. I tried to record the concert, but the wind messed it all up. Oh well.
Can you automate the drawing with a script? On X11, you can:
#!/bin/sh
# Position the pointer at the center of the dot, then run this script.
sleep 1
start=$(xdotool getmouselocation --shell)
eval $start
r=400
steps=100
down=0
for step in $(seq $((steps + 1)) )
do
# pi = 4 * atan(1)
new_x=$(printf '%s + %s * c(%s / %s * 2 * (4 * a(1)))\n' $X $r $step $steps | bc -l)
new_y=$(printf '%s + %s * s(%s / %s * 2 * (4 * a(1)))\n' $Y $r $step $steps | bc -l)
xte "mousemove ${new_x%%.*} ${new_y%%.*}"
if ! (( down ))
then
xte 'mousedown 1'
down=1
fi
done
xte 'mouseup 1'
xte "mousemove $X $Y"
Interestingly, you can abuse the scoring system (not manually, only with a script). Since the mouse jumps to the locations along the circle, you can just use very few steps and still get a great score because every step you make is very accurate – but the result looks funny:
🥴
GCC 15.1 released
Version 15.1 of the GNU
Compiler Collection has been released. Changes include implementing the
C23 dialect by default, a number of new C++26 features, experimental
support for unsigned integers in Fortran, a new COBOL front end, and
more. See the GCC 15\
changes page for details. ⌘ Read more
:term and C-w ⌘ Read more
Security updates for Thursday
Security updates have been issued by Debian (haproxy and openrazer), Fedora (c-ares and mingw-poppler), Red Hat (thunderbird), SUSE (epiphany, ffmpeg-6, gopass, and libsoup-3_0-0), and Ubuntu (erlang, haproxy, libapache2-mod-auth-openidc, libarchive, linux, linux-aws, linux-azure, linux-azure-5.15, linux-azure-fde, linux-azure-fde-5.15, linux-gcp, linux-gke, linux-gkeop, linux-hwe-5.15, linux-ibm, linux-intel-iotg, linux-kvm, linux-lowlatency, linux-lowlatency-hwe-5.15, linux-nvidia, … ⌘ Read more
Security updates for Wednesday
Security updates have been issued by AlmaLinux (bluez, expat, and postgresql:12), Fedora (chromium, golang, LibRaw, moodle, openiked, ruby, and trafficserver), Red Hat (bluez, expat, gnutls, libtasn1, libxslt, mod_auth_openidc, mod_auth_openidc:2.3, ruby:3.1, thunderbird, and xmlrpc-c), and Ubuntu (linux, linux-aws, linux-gcp, linux-hwe-6.11, linux-lowlatency, linux-lowlatency-hwe-6.11, linux-oem-6.11, linux-oracle, linux-raspi, linux-realtime, linux-azure, linux-azure-6.11, linux-gc … ⌘ Read more
Video Review: The AirPods Max in 2025
Apple hasn’t introduced a major update for the AirPods Max since the headphones came out in 2020, but last year there was a minor refresh with new color options and an upgrade to USB-C charging. With no additional new features on the horizon, we thought we’d take a look at whether the AirPods Max are worth picking up in 2025.
_[Subscribe to the MacRumors YouTube channel](https://www.youtube.com/user/macrumors?sub_con … ⌘ Read more
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
@bender@twtxt.net Thanks! The rain rapidly cooled off the 17°C to just 10°C. I certainly appreciated that. The weather is coming from the west here, so I thought you’ve sent it our way. Let me try to return it. :-)
A mate and I had an amazing but also exhausting hike to the highest of the Three Emperor Mountains yesterday with perfect weather conditions. Sunny 18°C, blue sky with barly a cloud and a little welcoming breeze, just beautiful.
Mt. Stuifen is 757 meters above sea level, has a small shelter and a barbie area and is still the most boring one of the three. It’s also the one farthest away from me. Not sure why it has two summit crosses, but both aren’t at the summit. The third, makeshift one at the real summit was gone by now. Four years ago, somebody had cobbled one together and put it up.
We bought our tucker at a local bakery on our way. This was the first time I tried a Teufelsbrezel (lit. devil’s pretzel), a lye pretzel with pepper. Haven’t come across that anywhere else. But I can certainly recommend that, it’s yummy.
We were glad when we were finally back home after some 26 or 27km. I won’t do much today and let my feet rest. Another friend called for a much, much shorter hike tomorrow.
Enjoy the 92 photos: https://lyse.isobeef.org/wanderung-auf-den-stuifen-2025-04-19/
C 😈
Atomic DTU LoRaWAN Base Modules Offer Programmable Wireless Communication for US, EU, and CN Bands
The Atomic DTU LoRaWAN Base is a compact, programmable unit for low-power, long-range IoT communication. Based on the STM32WLE5CC chip, it supports LoRaWAN Class A, B, and C modes and comes in US915, EU868, and CN470 variants to meet regional frequency standards. Each module supports both LoRaWAN and LoRa P2P modes, allowing for deployment either [… … ⌘ Read more
用 Go 語言打造高併發 MCP 服務器:理論、實戰與 AI 應用全景探索
在這個 AI 與大數據時代,構建一個高性能、可擴展的 MCP(Modular/Model Context Protocol)服務器已成爲打通應用與 AI 模型之間數據孤島的重要橋樑。本文將帶你深入瞭解 MCP 協議的設計理念、使用 Go 語言實現 MCP 服務器的詳細流程,以及 MCP 如何爲 AI 應用提供類似 USB-C 接口般的統一連接能力。 “MCP 提供統一的數據交換框架,幫助企業實 ⌘ Read more
@david@collantes.us If I run
printf '%s\n%s\n%s' 'https://aelaraji.com/twtxt.txt' '2025-04-16T22:49:11+00:00' "Am I tripping or `rsync` is actually THIS effing faster than `scp`!!? 🫨" | b2sum -l 256 | awk '{ print $1 }' | xxd -r -p | base32 | tr -d '=' | tr 'A-Z' 'a-z' | tail -c 8
I have xqfsv6a
. It is raw text
But… If I change de date to 2025-04-16T22:49:11Z
I have si4er3q
.
@lyse@lyse.isobeef.org I walked under 25°C during my lunch hour today, but with a sunshine that could fry an egg if dropped on the asphalt. I told a friend in Manila about it, and she told me that 25°C is Winter/Christmas temperatures for them. I felt cooler right away. :-)
We had some nice 22°C today. But after work, it got rather windy and cloudy, temps rapidly dropped so just 14°C. Still a nice stroll to our backyard mountain. https://lyse.isobeef.org/waldspaziergang-2025-04-16/
Security updates for Monday
Security updates have been issued by Debian (glib2.0, jinja2, kernel, mediawiki, perl, subversion, twitter-bootstrap3, twitter-bootstrap4, and wpa), Fedora (c-ares, chromium, condor, corosync, cri-tools1.29, exim, firefox, matrix-synapse, nextcloud, openvpn, perl-Data-Entropy, suricata, upx, varnish, webkitgtk, yarnpkg, and zabbix), Mageia (giflib, gnupg2, graphicsmagick, and poppler), Oracle (delve and golang, go-toolset:ol8, grub2, and webkit2gtk3), Red Hat (kernel and kernel-rt), **S … ⌘ Read more
Amazon Discounts USB-C AirPods Max to $479.99 ($69 Off)
Amazon today has the USB-C AirPods Max on sale for $479.99 in every color, down from $549.00. This beats the price we tracked last week by about $20, and it’s an overall second-best price on the headphones.
@anth@a.9srv.net Hahaha, for a second I thought that you implemented word splitting according to Swiss (.ch
) rules. :-D
Btw, both manpage links string(2)
and getields(2)
(it’s missing an f
) point into nothingness: http://a.9srv.net/src/wordwrap.2.html
I can’t help but notice line 9: http://a.9srv.net/src/wordwrap.c
And I reckon your finger slipped one key to the right for quore
: http://a.9srv.net/src/litclock.1.html
Cool stuff! :-)
Malcolm: 6 usability improvements in GCC 15
Over on the Red Hat Developer site, David Malcolm has an article\
about improvements in GCC 15, specifically focusing on the diagnostic
information that the compiler emits. This includes ASCII art with a “⚠️”
warning emoji to display the execution path when it detects a problem (like
an infinite loop in one of his examples), better C++ template errors,
machine-readable diagnostics using [Static\
Analysis R … ⌘ Read more
@lyse@lyse.isobeef.org that’s such a beautiful shot! If I were you I would use the full “original” one; it will do better justice to the shots. Oh, and I gladly take your 15°C! 😍
Hit by the arvo sun rays behind the window I was convinced that it is t-shirt weather. Deep blue sky, yeah, for sure! It turned out to be just 15°C and declining, though. So, I had to wear my jacket on today’s windy stroll. Pretty nice. Didn’t take many photos, but there you go: https://lyse.isobeef.org/waldspaziergang-2025-04-10/
Go 語言新版的迭代器是怎麼個事
很多流行的編程語言中都以某種方式提供迭代器,其中包括 C++、Java、Javascript、Python 和 Rust。Go 語言現在也加入了迭代器。iter 包是 Go 1.23 新增的標準庫,提供了迭代器的基本定義和相關操作。爲什麼需要迭代器——–在 Go 1.18 引入泛型之後,便可以很方便的定義一些泛型容器類型來提升編碼效率。例如我們可以基於 map 類型定義了一個集合類型—— ⌘ Read more
Ctrl C + Ctrl V… ⌘ Read more
golang 每日一庫之高性能無鎖隊列 bruceshao-lockfree
bruceshao/lockfree 是一個基於 Go 語言實現的高性能無鎖隊列庫,旨在通過無鎖(Lock-Free)算法提升多線程環境下的併發性能。其設計靈感來源於 Java 的 Disruptor 框架,但針對 Go 語言的特性進行了優化,適用於高吞吐量、低延遲的場景,如實時數據處理、高頻交易系統等。以下是該庫的核心特性、實現原理、性能對比及使用場景的詳細分析:核心特性無鎖設計基於 CAS(C ⌘ Read more
And we’re back to the regular landscape! Not only in subject but also photo orientation. No more silly portrait. I can’t recall it exactly, but I reckon that was one of ~20°C days. The evening sun was really crazy that day, made a great combination with the puddles: https://lyse.isobeef.org/waldspaziergang-2025-04-02/
CalDigit Launches New Thunderbolt 5 Docks
CalDigit today announced the upcoming launch of two new Thunderbolt 5 docks, the TS5 and the TS5 Plus. Both docks support transfer speeds of up to 80Gb/s with a speed boost feature when paired with Apple’s Thunderbolt 5 Macs.
The TS5 has a total of 15 ports, including four Thunderbolt 5 ports, two USB-A ports, three USB-C ports (including tw … ⌘ Read more
Complete multiple path components with instead of just one. ⌘ Read more
Top Stories: iOS 18.4 Released, New AirPods Max Features, and More
We’re just two months away from WWDC where we’ll get our first glimpses of iOS 19 and related updates, but this week saw the public release of iOS 18.4 with a number of changes and improvements including some audio improvements for the USB-C AirPods Max.
This week also saw the first beta of iOS 18.5, a new rumor about iOS 19 compatibility, and Apple’s w … ⌘ Read more
c++ auto comment slash ⌘ Read more
@movq@www.uninformativ.de @xuu@txt.sour.is That sounds like kat! :-)
Is there some Makefile shenanigans going on maybe? $V
and $C
being swallowed by the Makefile. I fell in that trap again the other day.
@lyse@lyse.isobeef.org Thanks for taking a look, and for pointing out the mixture of tabs and spaces.
I think I’ll leave reachability.c alone, since my intention there was to use an indent level of one tab, and the spaces are just there to line up a few extra things. I fixed reachability_with_stack.cc though.
Go 1-25:工具鏈優化與運行時改進
Go 語言自誕生以來,始終保持着穩定的迭代節奏。2025 年 8 月即將發佈的 Go 1.25 版本在工具鏈、運行時、編譯器及標準庫等方面都帶來了值得關注的改進。本文將從實際開發角度出發,詳細解析這些變化的技術細節及其對開發者產生的實際影響。工具鏈增強—–構建系統優化go build命令的-asan選項在 1.25 版本中默認啓用了內存泄漏檢測機制。該功能會在程序退出時自動檢查未釋放的 C ⌘ Read more
Microchip PolarFire-Powered TinyBeast FPGA Delivers Real-Time Performance with DDR4 and PCIe
CrowdSupply recently introduced the TinyBeast FPGA, a compact platform based on Microchip’s PolarFire FPGA technology. It stands out for its ability to offload computationally intensive tasks from the central processor, enabling real-time data processing in space-constrained environments like automation, measurement, and robotics. TinyBeast FPGA comes in two c … ⌘ Read more
構建可維護的 Go 項目:整潔架構實踐指南
在快速迭代的軟件開發過程中,如何構建長期可維護的代碼庫始終是開發者面臨的重大挑戰。本文將以 Go 語言爲例,深入探討整潔架構(Clean Architecture)的核心思想及其在工程實踐中的具體實現方式。通過系統性分層、接口隔離和依賴管理,我們將展示如何打造具備高可測試性、低耦合度的現代化 Go 項目。 整潔架構的核心設計原則———–整潔架構由 Robert C. Martin 提 ⌘ Read more
FET536-C SoM Carrier with High-Speed Interfaces and GPIO Expansion
The FET536-C System on Module, based on the Allwinner T536 processor, is designed for applications that require reliable performance and flexible connectivity. It is intended for use in fields such as data concentrators, DTUs, EV charging systems, transportation, robotics, and industrial control. The module integrates a 1.6GHz quad-core Cortex-A55 CPU and a 64-bit Xuantie E907 […] ⌘ Read more
Although, most software I use is decentish in that regard.
Is that because you mostly use Qt programs? 🤔
I wish Qt had a C API. Programming in C++ is pain. 😢
@lyse@lyse.isobeef.org (I think of pointers as “memory location + type”, but I have done so much C and Assembler by now that the whole thing feels almost trivial to me. And I would have trouble explaining these concepts, I guess. 😅 Maybe I’ll cover this topic with our new Azubis/trainees some day …)
also friends i started a patreon to support my one woman website stuff :) i’m nervous about it so i only have a single $3 tier but i might add more if i can think of more stuff to offer
Golang 網絡編程:像 C 語言一樣操作 Socket
在 C 語言中,進行網絡編程通常使 socket()、bind()、listen()、accept() 等系統調用,而在 Golang 中,我們既可以使用 net 庫提供的高級封裝,也可以直接使用 syscall 庫進行底層操作。本篇文章將簡單的介紹 Golang 如何像 C 語言一樣進行網絡編程。使用 net 庫進行 TCP 編程(推薦方式)Golang 的 net 包對 socket 進行了封 ⌘ Read more
We had a very sunny day, peaking at 19°C. This not only decoyed me out, but also plenty motorcycle terrorists. Eh fuckwits, nobody wants to listen to your bloody engine and exhaust noise, keep it quiet for fuck’s sake! Many of your rider collegues can manage it, too, so should you.
I had some sore muscles after yesterday’s waste paper collection with the scouts. So, I only went for a short trip to my closest backyard mountain. Watching two rock climbers was interesting. That’s not something I see very often.
@movq@www.uninformativ.de Did you place it in the sun? We only got 15°C today.
Boom. 24°C. No spring? I think my thermometer is wrong.
MayQueen Introduces a 2.13″ Four Color E-Paper Display for Embedded Applications
MayQueen has introduced the PIXPAPER-213-C, a 2.13-inch prototype electronic paper display developed with Triangle Alien Studio. Featuring a four-color display and an SPI interface, it is designed for low-power, high-contrast embedded applications. The PIXPAPER-213-C supports black, white, yellow, and red colors with a resolution of 250×122 pixels and a density of 130 DPI. The active … ⌘ Read more
I went on a 5:30 hours long hike to my second backyard mountain. About 12km to get there and roughly 9km on the way back. It was super nice, sunny all day long, 12°C and luckily just a little bit of wind. Great scenery. I managed to capture one great spotted woodpecker hammering along. There was also a kestrel hovering over a meadow and then landing on a sports field light pole. At the castle ruin I could watch 10-12 gliding red kites (with the V-shaped tail) and other raptors, maybe bussards, I don’t know, for about five minutes. That was fascinating. Unfortunately, my camera doesn’t too well with moving targets.
86 more photos: https://lyse.isobeef.org/wanderung-auf-den-hohenrechberg-2025-03-03/
We went up our backyard mountain again right after lunch. The sun peaked through the clouds sometimes. The 6°C felt much, much cooler with the northeast wind. We got lucky, though, it was dead calm at the summit. At least on the southwestern side, which is a few meters lower than the very top to the east. That was shielded absolutely perfectly from the wind (we were extremely surprised), so we sat down on a bench and could really enjoy the sun heating us up. Apart from the haze, the view was really nice.
There were even patches of snow left up top, that was unexpected. Also, somebody created a cool rock art piece on a tree stump. That one rock absolutely looked like a face. Crazy!
@falsifian@www.falsifian.org Neat, I got the principle, so mission accomplished. :-)
I have configured my vim to use a tab width of four. So, I noticed that especially https://www.falsifian.org/blog/2021/06/04/catalytic/reachability_with_stack.cc (but also partially the other C++ file) mixes tabs and spaces for indentation. :-)
It was mostly cloudy, but every now and then the sun peaked through. With very little wind, the 12°C felt quite nice. Especially for a hike. With the sun completely hidden and more wind, the lunch break at the summit was a bit chilly, though.
There’s a bad looking crack in the climbing rock in 10. When you have eagle eyes, you might be able to see the hooks in the cliff for the climbing ropes. I haven’t seen this one before. Also, it looked like several cubic meters of earth, grass and rock fell off the top.
On the way home, it got much more sunny. I found yet another skyrocket stick. That was pretty neat. And we saw the first field of snowdrops. With some bees checking them out. In total we walked a bit over 15km.
More pics: https://lyse.isobeef.org/waldspaziergang-2025-02-23/