apt manpage of Ubuntu recently, which, for some reason, uses blue text in one place:
Ah, so apparently they don’t like writing manpages anymore and instead use XML:
https://salsa.debian.org/apt-team/apt/-/blob/main/doc/apt.8.xml
And then they use XSLT on top and what not:
https://salsa.debian.org/apt-team/apt/-/blob/main/doc/manpage-style.xsl.cmake.in
It’s not even explicitly blue:
https://salsa.debian.org/apt-team/apt/-/blob/main/doc/apt.ent?ref_type=heads#L17
Abstractions upon abstractions upon abstractions.
@movq@www.uninformativ.de According to this screenshot, KDE still shows good old application icons:
And GNOME used to have them, too:
I like the looks of your window manager. That’s using Wayland, right? The only thing on this screenshot to critique is all that wasted space of the windows not making use of the full screen!!!1 At least the file browser. 8-)
This drives me nuts when my workmates share their screens. I really don’t get it how people can work like that. You can’t even read the whole line in the IDE or log viewer with all the expanded side bars. And then there’s 200 pixels on the left and another 300 pixels on the right where the desktop wallpaper shows. Gnaa! There’s the other extreme end when somebody shares their ultra wide screen and I just have a “regularish” 16:10 monitor and don’t see shit, because it’s resized way too tiny to fit my width. Good times. :-D
Sorry for going off on a tangent here. :-) Back to your WM: It has the right mix of being subtle and still similar to motif. Probably close to the older Windowses. My memory doesn’t serve me well, but I think they actually got it fairly good in my opinion. Your purple active window title looks killer. It just fits so well. This brown one (
) gives me also classic vibes. Awww. We ran some similar brownish color scheme (don’t recall its name) on Win95 or Win98 for some time on the family computer. I remember other people visting us not liking these colors. :-DHere’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.
@lyse@lyse.isobeef.org @kat@yarn.girlonthemoon.xyz I spent so much time in the past figuring out if something is a dict or a list in YAML, for example.
What are the types in this example?
items:
- part_no: A4786
descrip: Water Bucket (Filled)
price: 1.47
quantity: 4
- part_no: E1628
descrip: High Heeled "Ruby" Slippers
size: 8
price: 133.7
quantity: 1
items is a dict containing … a list of two other dicts? Right?
It is quite hard for me to grasp the structure of YAML docs. 😢
The big advantage of YAML (and JSON and TOML) is that it’s much easier to write code for those formats, than it is with XML. json.loads() and you’re done.
萬字解讀:8 種常見框架,選擇哪一種來開發 MCP 呢?
模型上下文協議 (Model Context Protocol,MCP) 是一個新標準,用於以統一的方式將 AI 助手 (如 llm) 與外部數據源和工具連接起來。自從 MCP 引入以來,出現了各種各樣的框架來幫助開發人員更容易地構建 MCP 服務器。關於 MCP 的更多介紹,可以參考拙作——在本文中,嘗試評估 8 種常見的 MCP 服務器開發框架,每種框架的語言或生態系統存在不同,並對其易用性、 ⌘ Read more
Gin 框架深度分析
Gin 是一個採用 Go 語言實現的 HTTP web 框架,提供了類似 Martini 的 API,但是性能遠強於 Martini,峯值性能是 Martini 的 40 倍。如果我們的項目需要高性能,毫無疑問採用 Gin。Gin 官網列舉了該項目的 8 個如下關鍵特性:高性能 中間件支持 防崩潰機制 JSON 校驗 路由分組 錯誤管理 內容渲染 示例 D ⌘ Read more
Gin 框架深度分析
Gin 是一個採用 Go 語言實現的 HTTP web 框架,提供了類似 Martini 的 API,但是性能遠強於 Martini,峯值性能是 Martini 的 40 倍。如果我們的項目需要高性能,毫無疑問採用 Gin。Gin 官網列舉了該項目的 8 個如下關鍵特性:高性能 中間件支持 防崩潰機制 JSON 校驗 路由分組 錯誤管理 內容渲染 示例 D ⌘ Read more
@prologic@twtxt.net Yeah, this really could use a proper definition or a “manifest”. 😅 Many of these ideas are not very wide spread. And I haven’t come across similar projects in all these years.
Let’s take the farbfeld image format as an example again. I think this captures the “spirit” quite well, because this isn’t even about code.
This is the entire farbfeld spec:
farbfeld is a lossless image format which is easy to parse, pipe and compress. It has the following format:
╔════════╤═════════════════════════════════════════════════════════╗
║ Bytes │ Description ║
╠════════╪═════════════════════════════════════════════════════════╣
║ 8 │ "farbfeld" magic value ║
╟────────┼─────────────────────────────────────────────────────────╢
║ 4 │ 32-Bit BE unsigned integer (width) ║
╟────────┼─────────────────────────────────────────────────────────╢
║ 4 │ 32-Bit BE unsigned integer (height) ║
╟────────┼─────────────────────────────────────────────────────────╢
║ [2222] │ 4x16-Bit BE unsigned integers [RGBA] / pixel, row-major ║
╚════════╧═════════════════════════════════════════════════════════╝
The RGB-data should be sRGB for best interoperability and not alpha-premultiplied.
(Now, I don’t know if your screen reader can work with this. Let me know if it doesn’t.)
I think these are some of the properties worth mentioning:
- The spec is extremely short. You can read this in under a minute and fully understand it. That alone is gold.
- There are no “knobs”: It’s just a single version, it’s not like there’s also an 8-bit color depth version and one for 16-bit and one for extra large images and one that supports layers and so on. This makes it much easier to implement a fully compliant program.
- Despite being so simple, it’s useful. I’ve used it in various programs, like my window manager, my status bars, some toy programs like “tuxeyes” (an Xeyes variant), or Advent of Code.
- The format does not include compression because it doesn’t need to. Just use something like bzip2 to get file sizes similar to PNG.
- It doesn’t cover every use case under the sun, but it does cover the most important ones (imho). They have discussed using something other than RGBA and decided it’s not worth the trouble.
- They refrained from adding extra baggage like metadata. It would have needlessly complicated things.
Saw this on Mastodon:
https://racingbunny.com/@mookie/114718466149264471
18 rules of Software Engineering
- You will regret complexity when on-call
- Stop falling in love with your own code
- Everything is a trade-off. There’s no “best” 3. Every line of code you write is a liability 4. Document your decisions and designs
- Everyone hates code they didn’t write
- Don’t use unnecessary dependencies
- Coding standards prevent arguments
- Write meaningful commit messages
- Don’t ever stop learning new things
- Code reviews spread knowledge
- Always build for maintainability
- Ask for help when you’re stuck
- Fix root causes, not symptoms
- Software is never completed
- Estimates are not promises
- Ship early, iterate often
- Keep. It. Simple.
Solid list, even though 14 is up for debate in my opinion: Software can be completed. You have a use case / problem, you solve that problem, done. Your software is completed now. There might still be bugs and they should be fixed – but this doesn’t “add” to the program. Don’t use “software is never done” as an excuse to keep adding and adding stuff to your code.
fn sub(foo: &String) {
println!("We got this string: [{}]", foo);
}
fn main() {
// "Hello", 0x00, 0x00, "!"
let buf: [u8; 8] = [0x48, 0x65, 0x6C, 0x6C, 0x6F, 0x00, 0x00, 0x21];
// Create a string from the byte array above, interpret as UTF-8, ignore decoding errors.
let lossy_unicode = String::from_utf8_lossy(&buf).to_string();
sub(&lossy_unicode);
}
Create a string from a byte array, but the result isn’t a string, it’s a cow 🐮, so you need another to_string() to convert your “string” into a string.
- https://doc.rust-lang.org/std/string/struct.String.html#method.from_utf8_lossy
- https://doc.rust-lang.org/std/borrow/enum.Cow.html
I still have a lot to learn.
(into_owned() instead of to_string() also works and makes more sense to me, it’s just that the compiler suggested to_string() first, which led to this funny example.)
Hmmm 🧐 Not what I thought was going on… No bug…
time="2025-06-14T15:24:25Z" level=info msg="updating feeds for 8 users"
time="2025-06-14T15:24:25Z" level=info msg="skipping 0 inactive users"
time="2025-06-14T15:24:25Z" level=info msg="skipping 0 subscribed feeds"
time="2025-06-14T15:24:25Z" level=info msg="updating 80 sources (stale feeds)"
Na krídlach piesní – deti rozozvučali Petrovec
V Slovenskom vojvodinskom divadle v Báčskom Petrovci sa v nedeľu 8. júna 2025 niesli detské hlásky v pestrých tónoch slovenských populárnych piesní. Už po piatykrát sa tu uskutočnil Festival slovenských populárnych piesní pre deti Na krídlach piesní, ktorý usporiadal Komorný zbor Musica viva pod vedením Marieny Stankovićovej Krivákovej. ⌘ Read more
V Kulpíne sa konala jubilejná 10. Biblická olympiáda
V sobotu sa v priestoroch evanjelického cirkevného zboru v Kulpíne uskutočnila jubilejná 10. Biblická olympiáda. Podujatie sa nieslo v duchu Božieho slova, radosti a tvorivosti. Deň bol naplnený milosťou – milosťou poznania, priateľstva a duchovného povzbudenia. Aj v tomto roku sa do súťaže zapojili stredoškoláci a žiaci 5. až 8. ročníka z viacerých slovenských evanjelických prostredí na území Srbska. Pred zač … ⌘ Read more
Run Classic MacOS & NeXTSTEP in Your Web Browser
If you’ve been a reader of OSXDaily for a while you almost certainly have seen us mention some of the fun web apps that allow you to run full fledged versions of operating systems in your web browser, from Mac OS 9, Mac OS 8, or Mac OS 7, to even Windows 1.0. Many of … Read More ⌘ Read more
Download Borderlands 2 for Mac FREE This Weekend on Steam
If you’re a Mac gamer and you love free games, you won’t want to miss out on this deal; Borderlands 2, the classic popular first-person action RPG shooter, is free to download this weekend on Steam (until the morning of June 8 at 10am PDT). And because it’s on Steam, you’ll be able to play … Read More ⌘ Read more
Run Classic MacOS & NeXTSTEP in Your Web Browser
If you’ve been a reader of OSXDaily for a while you almost certainly have seen us mention some of the fun web apps that allow you to run full fledged versions of operating systems in your web browser, from Mac OS 9, Mac OS 8, or Mac OS 7, to even Windows 1.0. Many of … Read More ⌘ Read more
Ice-T 2.8.0 released: a VT-100 terminal emulator for the Atari 8-bit
Ice-T is a terminal emulator, allowing Atari computers with extended memory (128KB or more) to connect to remote dialup and Telnet hosts, such as Unix shells and BBSs. A limited version for machines without extended memory is also available. ↫ Ice-T 2.8.0 release announcement Version 2.8.0 was released a few days ago, the first new release in almost twelve years. It comes with a ton of improvemen … ⌘ Read more
Tilde Games: Exploiting 8.3 Shortnames on IIS Servers ⌘ Read more
Tertulia de Dieter: Feijóo convoca una manifestación el 8 de junio en Madrid contra el Gobierno de Sánchez
Esmeralda comenta junto a Pablo Planas, Alejandro Vara y Luca Costantini el reto de Feijóo a los socios de Pedro Sánchez. ⌘ Read more
3 Months vs. 8 Years ⌘ 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:
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)
U.S. reports cases of new COVID variant NB.1.8.1 behind surge in China ⌘ Read more
6.14.8: stable
Version:6.14.8 (stable)Released:2025-05-22Source:linux-6.14.8.tar.xzPGP Signature:linux-6.14.8.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-6.14.8 ⌘ Read more
Pasting with putty showing different behavior (vim 7.4 vs vim 8.0) ⌘ 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
Go 語言中字符串四種拼接方式的性能對比,哪個更勝一籌?
在 Go 語言開發中,字符串拼接是最常見的操作之一。不同的拼接方式在性能上可能有數量級的差異,特別是在高頻調用或大數據量處理的場景下。本文將使用標準基準測試,全面對比四種主流字符串拼接方式的性能表現。測試環境與方法測試環境Go 版本:1.20+ 操作系統:macOS/Windows/Linux CPU:8 核 測試方法我們創建了一個完整的基準測試文件echobenchtest.g ⌘ Read more
Go 語言中字符串四種拼接方式的性能對比,哪個更勝一籌?
在 Go 語言開發中,字符串拼接是最常見的操作之一。不同的拼接方式在性能上可能有數量級的差異,特別是在高頻調用或大數據量處理的場景下。本文將使用標準基準測試,全面對比四種主流字符串拼接方式的性能表現。測試環境與方法測試環境Go 版本:1.20+ 操作系統:macOS/Windows/Linux CPU:8 核 測試方法我們創建了一個完整的基準測試文件echobenchtest.g ⌘ Read more
STARPro64 Brings 32GB LPDDR5 and 20 TOPS NPU to RISC-V SBC Platform
The STARPro64 is one of the latest RISC-V single-board computers from PINE64, based on the ESWIN EIC7700X system-on-chip. Now in stock, the board offers key features such as dual Gigabit Ethernet ports, PCIe Gen3.0 expansion, and wireless connectivity. Originally previewed in October 2024, the board integrates a quad-core 64-bit SiFive P550 processor, an Imagination AXM-8-256 […] ⌘ Read more
Buying a TV these days, means trying to avoid endless enshitification:
-Spyware and adware
-Shitty AI upscaling/ frame interpolation
-HW that breaks after 2 - 3 years
-One off OS, dead on arrival
-Android OS, that starts lagging after the third update
-8 buttons worth of ads, on your remote
You probably have to make some kind of a compromise. I thought that was buying from some other brand like Hyundai, but that one also felt into some of those categories and just broke, after less than 3 years of use. At this point I’ll probably go back to LG and hope their HW is still reliable and the rest manageable… It has AI bullshit and knowing LG, probably some spyware you have to try your best to get rid of, can buy a remote with “only” 2 ads on it, some web-based OS shared between all their TVs, that usually gets 4 - 5 years worth of updates and works decently enough afterwards.
At this point, I’ll probably settle for anything that doesn’t literally fall apart, not even 3 years in, like the Hyundai did.
Nicolas, 35 ans, clashe du boomer
Un article à 4 mains écrit par h16 & Citronne Ah, voilà que se présente un week-end agréable pour Nicolas, 35 ans, marié et deux enfants (de 8 et 5 ans) : ses parents viennent lui rendre visite dans la maison nouvellement acquise ! C’est un samedi matin qui s’annonce guilleret mais alors que Nicolas est en […] ⌘ Read more
pt-online-change 工具這麼多,哪一個是你的菜?
前言–今天在 ② 羣看到有位同志提到了這樣一個問題: 把 numeric(20,2) 改成 numeric(20,4) 會鎖表嗎?首先會鎖表肯定是毋庸置疑的,並且是最重的 8 級鎖,其次我們關心的重點應該是,表是否會發生重寫?即改類型是否會導致全表重寫?廢話不多說,一圖勝千言!在 PostgreSQL 中,大多數操作都是 online 的,不會發生重寫,只會獲取短暫的 8 級鎖,但是始終還是有 ⌘ Read more
Top 8 Best Vulnerability Scanning Tools (2025 Guide) ⌘ Read more
A brief history of the numeric keypad
The title is a lie. This isn’t brief at all. Picture the keypad of a telephone and calculator side by side. Can you see the subtle difference between the two without resorting to your smartphone? Don’t worry if you can’t recall the design. Most of us are so used to accepting the common interfaces that we tend to overlook the calculator’s inverted key sequence. A calculator has the 7–8–9 buttons at the top whereas a phone uses the 1–2–3 format. Subtle, but … ⌘ Read more
**The Hidden Language: Exploiting GraphQL for Unauthorized Data Dump **
Free Link🎈
[Continue reading on InfoSec Write-ups »](https://infosecwriteups.com/the-hidden-language-exploiting-graphql-for-unauthorized-data-dump-8 … ⌘ Read more
Ján Bulík medzi ocenenými v Martine
V Martine sa 8. mája odohralo podujatie, ktoré spojilo historickú reflexiu s kultúrnou spomienkou – Matica slovenská si pripomenula 80. výročie oslobodenia Slovenska a ukončenia druhej svetovej vojny. V sídle tejto najstaršej slovenskej kultúrnej ustanovizne sa uskutočnila slávnosť venovaná osobnostiam, ktoré v čase vojny so cťou a odvahou vzdorovali fašizmu. Medzi ocenenými bol aj Ján Bulík (1. januára 1897 Kovačica – 30. januára 1942 Mauthause … ⌘ Read more
Ça y est ! Nicolas, 35 ans, achète une maison !
Un article à 4 mains écrit par h16 & Citronne Enfin ! Après moults péripéties, d’incessants allers-retours pour des visites et des discussions sans fin avec sa femme autour des “points non-négociables”, Nicolas, 35 ans, marié, et père de deux enfants (de 5 et 8 ans) a enfin trouvé la maison idéale pour la petite famille. […] ⌘ Read more
Jubileá Obecnej organizácie Červeného kríža Báčsky Petrovec
Dnes si pripomíname Svetový deň Červeného kríža a Červeného polmesiaca – 8. mája, narodeniny Henriho Dunanta, zakladateľa najväčšieho a najstaršieho humanitárneho hnutia na svete. Tento dátum je príležitosťou vzdať hold miliónom dobrovoľníkov a zamestnancov na celom svete, ktorí, poháňaní ľudskosťou, nezištne a neúnavne poskytujú pomoc tým, ktorí ju najviac potrebujú. Dnešný deň zároveň označuje za … ⌘ Read more
** I Slashed My Spring Boot Startup Time to 1.8**
When people complain about Spring Boot being slow, it’s not entirely wrong — but it’s often misunderstood. Out of the box, Spring Boot is…
[Continue reading on InfoSec Write-ups »](https://infosecwriteups.com/i-sl … ⌘ Read more
Pinellas County Running - Long run: 8.00 miles, 00:09:07 average pace, 01:12:50 duration
last long run of the training plan. legs were heavy again today. first half hour had a nice sprinkling going on but that humidity crept right in afterwards. more tired than i should be and need to try and keep these next few runs light
#running
Confession:
I’ve never found microblogging like twtxt or the Fediverse or any other “modern” social media to be truly fulfilling/satisfying.
The reason is that it is focused so much on people. You follow this or that person, everybody spends time making a nice profile page, the posts are all very “ego-centric”. Seriously, it feels like everybody is on an ego-trip all the time (this is much worse on the Fediverse, not so much here on twtxt).
I miss the days of topic-based forums/groups. A Linux forum here, a forum about programming there, another one about a certain game. Stuff like that. That was really great – and it didn’t even suffer from the need to federate.
Sadly, most of these forums are dead now. Especially the nerds spend a lot of time on the Fediverse now and have abandoned forums almost completely.
On Mastodon, you can follow hashtags, which somewhat emulates a topic-based experience. But it’s not that great and the protocol isn’t meant to be used that way (just read the snac2 docs on this issue). And the concept of “likes” has eliminated lots of the actual user interaction. ☹️
Nicolas, 35 ans, veut s’acheter une maison
Un article à 4 mains écrit par h16 & Citronne Il faut se résoudre à l’évidence : Nicolas, 35 ans, marié, et père de deux enfants (de 5 et 8 ans) manque de place dans l’appartement qu’il loue depuis 7 ans. C’est donc décidé : la famille va enfin réaliser l’achat d’une maison. Après quelques années passées […] ⌘ Read more
There are other tasks LLM(s) are far better suited for, which are also its downsides, and gawd so expensive and unrealistic to run yourself 🤦♂️ Do you know what one of these NVIDIA H100’s cost? 💲 That’s right! 🤣 > $50k USD 😱 And many of the models out there require 8 of these suckers 🤣 Each one consumes around ~400W of power each (not including the machine that houses them!)
Pinellas County Running - 8 miles: 8.09 miles, 00:09:00 average pace, 01:12:47 duration
another great run although i know i was going a bit hard
#running
@bmallred@staystrong.run I just realized I was only suppose to do 5 miles at pace and not 8.
Pinellas County - 8 miles: 8.01 miles, 00:08:43 average pace, 01:09:49 duration
felt so light today (minus the last hill) but i knew i was probably going a bit too fast for the workout.
#running
MacSSL: a port of Mbed-TLS for the classic Mac OS 7/8/9
Yesterday we had SDL2 for the classic Mac OS, today we have modern SSL/TLS for the classic Mac OS. This is a C89/C90 port of MbedTLS for Mac System 7/8/9. It works, and compiles under Metrowerks Codewarrior Pro 4. This is a basic app that performs a GET request on whatever is in api.h, and prints the result out to the text box (with a lot of debug information, of course). The idea of this project was to build an ‘app’ of … ⌘ Read more
Nicolas, 35 ans, découvre les urgences à la française
Un article à 4 mains écrit par h16 & Citronne Nicolas, 35 ans, marié, et père de deux enfants (de 5 et 8 ans), vit un quotidien familial plutôt paisible et des week-ends rythmés par les activités extra-scolaires des deux marmots. Cette année, alors qu’Emma pratique la danse, pour Léo, la question se pose encore : […] ⌘ Read more
Alachua County Running - 8 miles at pace: 8.03 miles, 00:08:33 average pace, 01:08:39 duration
rolling hills really did not phase me as much as i expected.
#running
Nicolas, 35 ans, désespère de l’Éducation Nationale
Un billet à 4 mains par Citronne et h16 Nicolas, 35 ans, marié, et père de deux enfants (de 5 et 8 ans) apprécie plus que tout sa petite routine. Le matin, après un bon petit déjeuner, il emmène ses enfants à l’école et se rend au travail ; il apprécie sa petite pause-déjeuner avec ses […] ⌘ Read more
Pinellas County Running - 8 miles: 8.04 miles, 00:09:24 average pace, 01:15:35 duration