Iâm trying to help a friend using #GoogleDocs and it looks like the enshitification mill destroyed the end-notes feature?
My friendâs document would benefit from the automatically numbered superscript links for Vancouver style referencesâŚ
git, curl and a web server of some kind.
For the curious, this is fully documented with roleplay Alice/Bob. I was going to test this with @david@daiwei.me but we both got busy, but now Iâm on holidays from work for a month so đ¤ˇââď¸ đ¤Ł
@itsericwoodward@itsericwoodward.com Wrote it up đ Single-user twtd API is now documented (plain JSON, one bearer token) â posting, uploads, profile, followers + WebFinger: https://git.mills.io/yarnsocial/twtd/src/branch/main/API.md đ Shout if anythingâs unclear for TwtKpr đ
Hurray, I can now press gg instead of g to go to the top in tt. Much better! :-) Other multi-key combinations are also easily possible now.
I should probably write a real article about this at some point, but here we go. The only downside with my new key binding system is that it breaks tviewâs established pattern. Youâve got an InputHandler(), that is implemented using WrapInputHandler(âŚ). It typically then directly implements the switching logic depending on the key press. Something like this:
func (w *Widget) InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
// WrapInputHandler allows for intercepting key events with SetInputCapture(âŚ)
// from the outside for customization. This handles the default key bindings.
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
switch event.Key() {
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'k':
w.scrollUp()
return // we already handled the event, stop processing
case 'j':
w.scrollDown()
return
}
}
}
// We didn't handle the key event. Maybe the parent
// widget knows what to do with it.
if handler := w.parent.InputHandler(); handler != nil {
handler(event, setFocus)
}
})
}
From the outside, you can intercept and either stop or continue the widgetâs original key handling with a potentially rewritten key event using SetInputCapture(âŚ):
w := NewWidget()
// customized or additional key bindings
w.SetInputCapture(func(event *tcell.EventKey) *tcell.EventKey {
switch event.Key() {
case tcell.KeyUp:
// Rewrite the event, so the "cursor up" key is an alias
// for the vim key binding "k", that is handled by the
// wrapped input handler above. (I know, I know, this is a
// completely unrealistic example, why would anyone use
// cursor keys when there are vim key bindings available?!)
return tcell.NewEventKey(tcell.KeyRune, 'k', tcell.ModNone)
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'q':
app.Stop()
// we already handled the event, do not pass it
// to the wrapped input handler above
return nil
case 'r':
toggleMessageReadStatus()
return nil
}
}
}
// we didn't handle the event, pass it to the wrapped
// input handler above
return event
}
Since they all expect a single key, Iâve noticed that using multiple dedicated KeyBindings of mine on these different levels kinda breaks multi-key handling with common prefixes. The outer-most KeyBinding captures the prefix, but it canât transfer it to the inner one if not handled by the outer one. At least not without some more (potentially ugly) changes. So, I now have to work with just a single KeyBindings object for the entire widget chain (if it consists of multiple other widgets or the regular input handler and input capture are in the game). The outside needs to register all its key bind customizations or extensions at the same level that the original widget handles its default ones. Doable by exposing the widgetâs KeyBindings instance, but not pretty. You always have to keep this in mind.
With the KeyBindings, it will look like that:
type Widget struct {
parent tview.Primitive
// make it available to children or the outside either by
// direct field access or by providing a getter method
KeyBindings *bind.KeyBindings
}
func NewWidget() *Widget {
w := &Widget{KeyBindings: &bind.KeyBindings{}}
w.KeyBindings. // default key bindings
Bind0(bind.KeySequence('k', w.scrollUp).
Bind0(bind.KeySequence('j', w.scrollDown)
return w
}
func (w *Widget) InputHandler() InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
// also note the missing support for focus transfer at the moment
event = w.KeyBindings.Capture(event)
if event == nil {
return
}
if handler := w.parent.InputHandler(); handler != nil {
handler(event, setFocus)
}
}
}
And then from the outside, or in a child widget:
w := NewWidget()
w.KeyBindings. // additional or customized key bindings
Bind1(bind.KeySequence(tcell.KeyUp), func(*tcell.EventKey) *tcell.EventKey {
return tcell.NewEventKey(tcell.KeyRune, 'k', tcell.ModNone)
}).
Bind0(bind.KeySequence('q'), app.Stop).
Bind0(bind.KeySequence('r'), toggleMessageReadStatus)
When directly working with tview primitives that are not part of custom widget implementations, the following works well so far:
textView := tview.NewTextView().
SetWordWrap(true).
SetText("âŚ")
SetScrollable(true)
textView.SetInputCapture((&bind.KeyBindings{}).
Bind0(bind.KeySequence('q'), app.Stop).
Bind1(bind.KeySequence('g', 'g'), func(*tcell.EventKey) *tcell.EventKey {
return tcell.NewEventKey(tcell.KeyHome, 0, tcell.ModNone)
}).
Capture)
I need to sleep on this some more.
Also, writing very long messages like this one is really not all that fun in ttâs editor. I should absolutely provide a way to shell out to vim.
(Took me about one and a half hours to compose, holy crap. But not only because of not using vim. Although, that might have saved me a quarter hour or so for sure. Proof-reading this message also uncovered quite a few bugs in my real documentation. So, thatâs a big win!) Good night!
@movq@www.uninformativ.de I just ran across another thing. At least I personally couldnât care less about CI infrastructure changes. Whether theyâre using github action a or b or c or version v or w, it is not of my interest. At all. (It might be useful to estimate the supply chain attack risk, though.) If the maintainers want to include them in the changelog â and there are probably people to whom this information is crucial â itâs probably best to document CI infrastructure changes in their own section.
@movq@www.uninformativ.de Hahaha, great timing! :-D I love your article and agree with almost all your points.
On the AI changelog part, though, Iâd rather recommend to just not have a changelog at all.
Another important thing for me is the deprecation notice section. What do I need to look out for in the future? Should I start to migrate to another API soon? Even right now? Or does it have time?
While going through these terrible GitHub release pages, I also found these âNew Project Contributorsâ sections (yeah, for that, they found the time to make a section) annoying. Donât get me wrong, sure, credit where credit is due. But come on. Soooooo much space for an inefficiently formatted (and also unsorted) list. At least it was easy enough to skip over it.
And then, there are also these changelogs or rather notice documents in general that are infested with multicolored emojis all over the place. My brainâs spam filter kicks in and shoves everything to /dev/null immediately. Itâs especially a thing at work.
In my previous work project, we also used the Keep A Changelog Format. That was great. You wouldnât believe how often I resorted back to that document. At least twice a week, often several times a day. I was very glad that we put in this effort. Of course, writing the changelog took its time, but it was worth every minute and more. Reading a many months old item, it was immediately clear. I was our best customer in that regard.
Now, itâs just the same auto shitshow with MR titles in a rolling date-versioned release scheme. Itâs just our team who has to deal with that, though. I think Iâm the only one who is not a fan of it.
U.S. Plan Is Said to Pull a Third of Fighter Jets It Provides NATO for Europe
The plan, outlined by officials and in a written document, provides rare clarity about the extent to which the Trump administration intends to reduce its commitment to NATO. â Read more
Fresh push for release of files on Brazilâs Virginha UFO incident
The case has remained a mystery for decades, prompting lawmakers to demand the release of all related documents. With the US government having already⌠â Read more
Netanyahu Aide Charged With Endangering Israeli Security Over Document Leak
Jonatan Urich, a media adviser to the Israeli prime minister, was accused of passing classified intelligence about negotiations with Hamas to a German newspaper. â Read more
A Meta Employee Who Just Lost Their Job Was Detained by Immigration Agents
Colleagues discussed the incident on internal message boards, according to documents seen by WIRED. â Read more
Identity of high-profile married man to remain suppressed for weeks
The man, known in court documents only as âMMâ and not facing any charges himself, has been named as part of an extortion case. â Read more
Programmers will document for Claude, but not for each other
Article URL: https://blog.plover.com/2026/03/09/#documentation-wins-2
Comments URL: https://news.ycombinator.com/item?id=48411510
Points: 21
# Comments: 13 â Read more
When I realize the only documentation for this project is the guy who left six months ago â Read more
Plan âabandoningâ nearly built motorway in Sydneyâs south secretly explored
Confidential documents reveal abandoning the $3.2 billion underground motorway project has been canvassed in a secret scoping study and other reports. â Read more
Alpha Schoolâs Ritzy New York City Campus Costs $65,000 a Yearâbut Isnât Actually a School
A homeschooling center in Manhattan is part of the companyâs nationwide expansion. Internal documents reveal its strategy: âOpening date > safety.â â Read more
Man allegedly caught with firebomb, knives outside John Ibrahimâs home
A man has allegedly been found lurking near the Sydney home of the former nightclub mogul with weapons and an âintentâ to harm, court documents say. â Read more
@itsericwoodward@itsericwoodward.com Excited to see twtxt tooling in the Node ecosystem! Any plans to implement the Twtxt v2 extensions? Things like Twt Hash + Subject (proper threading), Multiline, etc. â all documented at https://twtxt.dev đ
Warnings that metro rail line to Sydneyâs new airport is set to be delayed again
Confidential documents reveal the project is running late on a vast range of work, from switching on power at stations to receiving new European-built trains. â Read more
Hands-On With Gemini Spark: I Gave It Access to My Life and It Friend-Zoned My Boyfriend
Googleâs new AI agent combed through my emails, documents, and calendar to plan a birthday party and still didnât clock the person most important to me. â Read more
US Law Enforcement Warns of âAnti-Tech Extremismâ as AI Hatred Grows
As Americans stew over the looming risk of job-stealing AI and data centers in their back yards, the feds are raising the alarm about a new category of threat, documents obtained by WIRED show. â Read more
Magnifica Humanitas (Encyclical Letter)
Article URL: https://www.vatican.va/content/leo-xiv/en/encyclicals/documents/20260515-magnifica-humanitas.html
Comments URL: https://news.ycombinator.com/item?id=48265206
Points: 41
# Comments: 9 â Read more
Pentagon releases second batch of UFO videos and documents
A mere two weeks after the first files dropped, the US government had released a second wave of secretive documents. For anyone with even a passing in⌠â Read more
A âGolden Orbâ on the Ocean Floor Came From a Mysterious Animal
A fascinating, unclassifiable orb found in the Gulf of Alaska is not an alien object, as some speculated, but the remains of a poorly documented animal. â Read more
SpaceX IPO Filing Reveals Anthropic Is Paying $15 Billion a Year to Access Its Data Centers
The long-awaited documents SpaceX filed with US regulators Wednesday included details about a lucrative deal to lend GPUs to a major AI rival. â Read more
Pentagon reveals fresh update on next batch of Trumpâs UFO files
It doesnât look as though we will have too long to wait to get a look at the next wave of documents. Back on May 8th, the US government did what it ha⌠â Read more
1950s CIA document hints of mysterious âtemple under the Sphinxâ
Eagle-eyed investigators have identified a peculiar reference to something that may be hidden under the iconic statue. Back in the 1930s, American cla⌠â Read more
Hackable Robot Lawn Mower Unlocks a New Nightmare
Plus: Meta officially kills encrypted Instagram DMs, the Trump administration targets âviolent left wing extremists,â leaked documents reveal Russiaâs school for elite hackers, and more. â Read more
The Pentagon Releases New Trove of Declassified UFO Files
The Defense Department has released a new trove of declassified documents about government UFO sitings. â Read more
Trumpâs UFO files are here: Pentagon releases first batch of documents
The long-awaited release of the US governmentâs secretive files on the UFO phenomena is actually happening. After months of teasing the release of the⌠â Read more
âItâs Undignifiedâ: Hundreds of Workers Training Metaâs AI Could Be Laid Off
More than 700 people working for a Meta contractor in Ireland are at risk of losing their jobs, documents show. â Read more
Another AI rant:
One of the âkey featuresâ of LLMs is that you can use ânatural languageâ, because that is supposed to be easier than having to learn a programming language. So, when someone says to me, âI automated this process using AI!â, what they mean is: They have written a very, very large Markdown document. In this document, they list what the AI is supposed to do.
In prose.
This is a complete disaster.
Programming and programming languages have one crucial property: They follow a well-defined structure and every word has a well-defined meaning. That is absolutely brilliant, because I can read this and I can follow the program in my head. I can build a mental model. I can debug this, down to the precise instructions that the CPU executes. This all follows well-defined patterns that you can reason about.
But with these Markdown files, I am completely lost. We lose all these important properties! No debugging, no reasoning about program flow, nothing. Itâs all gone. Itâs a magic black box now, literally randomized, that may or may not do what you wanted, in some order.
People now throw these Markdown files at me ⌠and ⌠am I supposed to read this? Why? Itâs completely random and fuzzy.
Sadly, these AI tools are good enough to be able to mostly grasp the authors intentions. Hence people donât see the harm they cause, because âit worksâ.
We already have a ton of automations like this at work: Tickets get piped through an LLM and these Markdown files / prompts determine what will happen with the ticket, and maybe they trigger additional actions as well, like account creation or granting permissions. All based on fuzzy natural language â that no two humans will ever properly agree on.
Jesus Christ, weâre now INTENTIONALLY bringing the ambiguity of legal texts and lawyers into programming.
Using natural language is NOT easier than using a programming language. It is HARDER. Have you people never read a legal contract? And that stuff can STILL be debated in a court room.
I canât begin to comprehend why we, tech folks, push this so hard. What is wrong with you? Or me?
(And, once again, weâre ignoring other factors here. LLMs use a ton of energy and ressources, that we donât have to spare. Itâs expensive as fuck. It doesnât even run locally on our servers, meaning we give all these credentials and permissions to some US company. Itâs insane.)
Hmmm doesnât appear to be documented đ§ Nut ly watch reckons i climbed 242m so yhay part is right!
@lyse@lyse.isobeef.org I donât axtually k ow what the incline was we went up! Haha đ Honestly just guessing hmm must be documented somewhere đ§
@itsericwoodward@itsericwoodward.com Thanks! To be clear, my contribution was literally adding that sentence to the documentation, after other people did the work.
When I have to write âjust in caseâ documentation for a project that will be abandoned in 2 months â Read more
@itsericwoodward@itsericwoodward.com hey, link to repository on https://www.npmjs.com/package/express-twtkpr is broken. It points to https://git.itsericwoodward.com/eric/express-twtkp. Looking forward to see more documentation!
Could the infamous Majestic-12 papers have been real all along?
Documents pertaining to a shadowy UFO organization known as Majestic-12 may hold more merit than previously thought. The idea that there could be a cl⌠â Read more
Fresh calls for release of UKâs files on Rendlesham Forest UFO incident
There are still many unreleased documents pertaining to the UKâs most hotly debated and enduring UFO case. Often referred to as âBritainâs Roswellâ, t⌠â Read more
The Black Vaultâs archive wiped hours after Trumpâs UFO files pledge
The site, which offers a huge collection of declassified government documents, saw its archive disappear overnight. Founded and maintained by research⌠â Read more
Trump orders release of the US governmentâs files on UFOs
In a surprising move, President Trump has suddenly decided to release previously classified UFO documents. Trump seems to have become rather enamored ⌠â Read more
PEP 826: Python 3.16 Release Schedule
This document describes the development and release schedule for Python 3.16. â Read more
Okay, so the funniest thing that has happened at work in the realm of AI so far is this:
So this guy (that holds a certain position of power) wants people to use more AI, meaning people are expected to install a set of AI tools on their laptops. But, of course, he doesnât want to write proper documentation for this, because that would be silly monkey work, right? So he conjures up some AI prompts that are intended to make the AI agent install all this stuff by itself.
Do you see where this is going? Can you see the punchline?
Thatâs right! Since none of this AI stuff is deterministic, every setup is different. đ¤Śââď¸ Like, 10, 20 systems, all set up a little different and people wonder why this or that doesnât work as expected.
Okay, itâs not funny.
I built Audiofern to make it simple to turn PDFs into audiobooks. Upload a document, get clean, chapterized narration with natural voices, and share it via a hosted playerâor download M4A/M4B and keep it forever. Files are private by default, and pricing is transparent: pay once by audio hour or subscribe to build a listening library.
FBI publishes new 686-page dossier on the DB Cooper mystery
The new documents include some intriguing new information and insights into the hunt for the infamous crook. One of the most notorious unsolved crimes⌠â Read more
Bizarre conspiracy theory claims Earthâs gravity will stop for 7 seconds
The idea seems to have stemmed from claims of a leaked NASA document known as âProject Anchorâ. Weâve heard a lot of âout thereâ conspiracy theories o⌠â Read more
@lyse@lyse.isobeef.org The thing is thatâs hard to avoid if TYPE_CHECKING, but documentation tools such as pdoc donât support that ⌠so itâs either type hints or API docs. đ¤ˇ
I hope I can eventually find a way out of this mess âŚ
@movq@www.uninformativ.de Well, just a very limited subset thereof:
- inline and multiline code blocks using single/double/triple backticks (but no code blocks with just indentation)
- markdown links using using
[text](url)
- markdown media links using

And thatâs it. No bold, italics, lists, quotes, headlines, etc.
Just like mentions, plain URLs, markdown links and markdown media URLs are highlighted and available in the URLs View. Theyâre also colored differently, similarly to code segments.
I definitely should write some documentation and provide screenshots.
Pentagon officials reopen âYankee Blueâ memo search after FOIA appeal
The documents concern an alleged directive to halt a notorious hazing ritual involving claims of alien technology. Back in September, we reported on t⌠â Read more
@lyse@lyse.isobeef.org Yeah, well, given that I didnât need this for such a long time, itâs probably not an essential tool. đ
Iâve often wanted to have an outline of text documents, though, and tagbar/ctags can do that as well:
This isnât as powerful as the âNavigatorâ tool in StarOffice/LibreOffice (which can be used to rearrange the document), but still pretty useful:
https://www.uninformativ.de/blog/postings/2024-05-23/0/so31.mp4
When we hand the app over to users without giving them any documentation â Read more
Gootosocial to a Pleroma one. While GTS is kinda cute (lightweight and easy to manage) of a software, the inability to fetch/scroll through people's past toots when visiting a profile or having access to a federated timeline and a proper search functionality ...etc felt like handicap for the past N months.
@bender@twtxt.net yeah, Iâve been reading through the documentation last night and it felt overwhelming for a minute⌠+1 point goes to GTSâs docs. but hey, Iâll be taking the easy route: podman-compose up -d they provide both a container image and an example compose file in a separate git repo but Iâm wondering why that is not mentioned anywhere in the docs, (unless it is and I havenât seen it yet)
Gootosocial to a Pleroma one. While GTS is kinda cute (lightweight and easy to manage) of a software, the inability to fetch/scroll through people's past toots when visiting a profile or having access to a federated timeline and a proper search functionality ...etc felt like handicap for the past N months.
@aelaraji@aelaraji.com good luck with that! Their installation requirements, and install document in general give me headache. While on the contemplating topic, I too am contemplating shutting down my ActivityPub altogether. No GoToSocial, no nothing. I am mostly a lurker, so will not miss it much.
The Bigfoot Files: FBI publishes cryptid case file on its website
Genuine FBI documents concerning the lab testing of alleged Bigfoot hair samples are now available to view. It turns out that Bigfoot isnât just some ⌠â Read more
All my newly added test cases failed, that movq thankfully provided in https://git.mills.io/yarnsocial/twtxt.dev/pulls/28#issuecomment-20801 for the draft of the twt hash v2 extension. The first error was easy to see in the diff. The hashes were way too long. Youâve already guessed it, I had cut the hash from the twelfth character towards the end instead of taking the first twelve characters: hash[12:] instead of hash[:12].
After fixing this rookie mistake, the tests still all failed. Hmmm. Did I still cut the wrong twelve characters? :-? I even checked the Go reference implementation in the document itself. But it read basically the same as mine. Strange, what the heck is going on here?
Turns out that my vim replacements to transform the Python code into Go code butchered all the URLs. ;-) The order of operations matters. I first replaced the equals with colons for the subtest struct fields and then wanted to transform the RFC 3339 timestamp strings to time.Date(âŚ) calls. So, I replaced the colons in the time with commas and spaces. Hence, my URLs then also all read https, //example.com/twtxt.txt.
But that was it. All test green. \o/
When I find out the documentation was last updated before I joined â Read more
@movq@www.uninformativ.de I think I now remember having similar problems back then. Iâm pretty sure I typically consulted the Qt C++ documentation and only very rarely looked at the Python one. It was easy enough to translate the C++ code to Python.
Yeah, the GIL can be problematic at times. Iâm glad it wasnât an issue for my application.
I used Gemini (the Google AI) twice at work today, asking about Google Workspace configuration and Google Cloud CLI usage (because we use those a lot). Youâd think that itâd be well-suited for those topics. It answered very confidently, yet completely wrong. Just wrong. Made-up CLI arguments, whatever. It took me a while to notice, though, because itâs so convincing and, well, you implicitly and subconsciously trust the results of the Google AI when asking about Google topics, donât you?
Will it get better over time? Maybe. But what I really want is this:
- Good, well-structured, easy-to-read, proper documentation. Google isnât doing too bad in this regard, actually, itâs just that they have so much stuff that itâs hard to find what youâre looking for. Hence âŚ
- ⌠I want a good search function. Just give me a good fuzzy search for your docs. Thatâs it.
I just donât have the time or energy to constantly second-guess this stuff. Give me something reliable. Something that is designed to do the right thing, not toy around with probabilities. âAI for everythingâ is just the wrong approach.
@prologic@twtxt.net Letâs go through it one by one. Hereâs a wall of text that took me over 1.5 hours to write.
The criticism of AI as untrustworthy is a problem of misapplication, not capability.This section says AI should not be treated as an authority. This is actually just what I said, except the AI phrased/framed it like it was a counter-argument.
The AI also said that users must develop âAI literacyâ, again phrasing/framing it like a counter-argument. Well, that is also just what I said. I said you should treat AI output like a random blog and you should verify the sources, yadda yadda. That is âAI literacyâ, isnât it?
My text went one step further, though: I said that when you take this requirement of âAI literacyâ into account, you basically end up with a fancy search engine, with extra overhead that costs time. The AI missed/ignored this in its reply.
Okay, so, the AI also said that you should use AI tools just for drafting and brainstorming. Granted, a very rough draft of something will probably be doable. But then you have to diligently verify every little detail of this draft â okay, fine, a draft is a draft, itâs fine if it contains errors. The thing is, though, that you really must do this verification. And I claim that many people will not do it, because AI outputs look sooooo convincing, they donât feel like a draft that needs editing.
Can you, as an expert, still use an AI draft as a basis/foundation? Yeah, probably. But hereâs the kicker: You did not create that draft. You were not involved in the âthought processâ behind it. When you, a human being, make a draft, you often think something like: âOkay, I want to draw a picture of a landscape and thereâs going to be a little house, but for now, Iâll just put in a rough sketch of the house and add the details later.â You are aware of what you left out. When the AI did the draft, you are not aware of whatâs missing â even more so when every AI output already looks like a final product. For me, personally, this makes it much harder and slower to verify such a draft, and I mentioned this in my text.
Skill Erosion vs. Skill EvolutionYou, @prologic@twtxt.net, also mentioned this in your car tyre example.
In my text, I gave two analogies: The gym analogy and the Google Translate analogy. Your car tyre example falls in the same category, but Geminiâs calculator example is different (and, again, gaslight-y, see below).
What I meant in my text: A person wants to be a programmer. To me, a programmer is a person who writes code, understands code, maintains code, writes documentation, and so on. In your example, a person who changes a car tyre would be a mechanic. Now, if you use AI to write the code and documentation for you, are you still a programmer? If you have no understanding of said code, are you a programmer? A person who does not know how to change a car tyre, is that still a mechanic?
No, youâre something else. You should not be hired as a programmer or a mechanic.
Yes, that is âskill evolutionâ â which is pretty much my point! But the AI framed it like a counter-argument. It didnât understand my text.
(But what if thatâs our future? What if all programming will look like that in some years? I claim: Itâs not possible. If you donât know how to program, then you donât know how to read/understand code written by an AI. You are something else, but youâre not a programmer. It might be valid to be something else â but that wasnât my point, my point was that youâre not a bloody programmer.)
Geminiâs calculator example is garbage, I think. Crunching numbers and doing mathematics (i.e., âcomplex problem-solvingâ) are two different things. Just because you now have a calculator, doesnât mean itâll free you up to do mathematical proofs or whatever.
What would have worked is this: Letâs say youâre an accountant and you sum up spendings. Without a calculator, this takes a lot of time and is error prone. But when you have one, you can work faster. But once again, thereâs a little gaslight-y detail: A calculator is correct. Yes, it could have âbugsâ (hello Intel FDIV), but its design actually properly calculates numbers. AI, on the other hand, does not understand a thing (our current AI, that is), itâs just a statistical model. So, this modified example (âaccountant with a calculatorâ) would actually have to be phrased like this: Suppose thereâs an accountant and you give her a magic box that spits out the correct result in, what, I donât know, 70-90% of the time. The accountant couldnât rely on this box now, could she? Sheâd either have to double-check everything or accept possibly wrong results. And that is how I feel like when I work with AI tools.
Gemini has no idea that its calculator example doesnât make sense. It just spits out some generic âargumentâ that it picked up on some website.
3. The Technical and Legal Perspective (Scraping and Copyright)The AI makes two points here. The first one, I might actually agree with (âbad bot behavior is not the fault of AI itselfâ).
The second point is, once again, gaslighting, because it is phrased/framed like a counter-argument. It implies that I said something which I didnât. Like the AI, I said that you would have to adjust the copyright law! At the same time, the AI answer didnât even question whether itâs okay to break the current law or not. It just said âlol yeah, change the lawsâ. (I wonder in what way the laws would have to be changed in the AIâs âopinionâ, because some of these changes could kill some business opportunities â or the laws would have to have special AI clauses that only benefit the AI techbros. But I digress, that wasnât part of Geminiâs answer.)
tl;drExcept for one point, I donât accept any of Geminiâs âcriticismâ. It didnât pick up on lots of details, ignored arguments, and I can just instinctively tell that this thing does not understand anything it wrote (which is correct, itâs just a statistical model).
And it framed everything like a counter-argument, while actually repeating what I said. Thatâs gaslighting: When Alice says âthe sky is blueâ and Bob replies with âwhy do you say the sky is purple?!â
But it sure looks convincing, doesnât it?
Never againThis took so much of my time. I wonât do this again. đ
Exxon funded thinktanks to spread climate denial in Latin America, documents reveal â Read more
China intimidated UK university to ditch human rights research, documents show â Read more
@movq@www.uninformativ.de Yeah, give it a shot. At worst you know that you have to continue your quest. :-)
Fun fact, during a semester break I was actually a little bored, so I just started reading the Qt documentation. I didnât plan on using Qt for anything, though. I only looked at the docs because they were on my bucket list for some reason. Qt was probably recommended to me and coming from KDE myself, that was motivation enough to look at the docs just for fun.
The more I read, the more hooked I got. The documentation was extremely well written, something Iâve never seen before. The structure was very well thought out and I got the impression that I understood what the people thought when they actually designed Qt.
A few days in I decided to actually give it a real try. Having never done anything in C++ before, I quickly realized that this endeavor wonât succeed. I simply couldnât get it going. But I found the Qt bindings for Python, so that was a new boost. And quickly after, I discovered that there were even KDE bindings for Python in my package manager, so I immediately switched to them as that integrated into my KDE desktop even nicer.
I used the Python KDE bindings for one larger project, a planning software for a summer camp that we used several years. Itâs main feature was to see who is available to do an activity. In the past, that was done on a large sheet of paper, but people got assigned two activities at the same time or werenât assigned at all. So, by showing people in yellow (free), green (one activity assigned) and red (overbooked), this sped up and improved the planning process.
Another core feature was to generate personalized time tables (just like back in school) and a dedicated view for the morning meeting on site.
It was extended over the years with all sorts of stuff. E.g. I then implemented a warning if all the custodians of an activitiy with kids were underage to satisfy new the guidelines that there should be somebody of age.
Just before the pandemic I started to even add support for personalized live views on phones or tablets during the planning process (with web sockets, though). This way, people could see their own schedule or independently check at which day an activity takes place etc. For these side quests, they donât have to check the large matrix on the projector. But the project died there.
Hereâs a screenshot from one of the main views:
This Python+Qt rewrite replaced and improved the Java+Swing predecessor.
PEP 8107: 2026 Term Steering Council election
This document describes the schedule and other details of the 2025 election for the Python steering council, as specified in PEP 13. This is the steering council election for the 2026 term (i.e. Python 3.15). â Read more
The Confidential Communication from UKâs Ofcom to 4Chan
The lawyer representing 4chan has provided documents sent by the UKâs Office of Communications (marked CONFIDENTIAL). â Read more
Newscast
Trump and regional leaders sign document to cement Gaza ceasefire deal. â Read more
Leaked documents from Boris Johnsonâs private office, have exposed how the former PM has sought to enrich himself since leaving office â Read more
Gregg Wallace claims BBC caused him âdistress and harassmentâ
The former MasterChef presenter is seeking up to ÂŁ10,000 in damages from the BBC, court documents show. â Read more
Gregg Wallace claims BBC caused him âdistress and harassmentâ
The former MasterChef presenter is seeking up to ÂŁ10,000 in damages from the BBC, court documents show. â Read more
Client ID Metadata Document Adopted by the OAuth Working Group
The IETF OAuth Working Group has adopted the Client ID Metadata Document specification! â Read more
Notes from the 2025 Git Contributorâs Summit
Taylor Blau has posted an\â¨extensive set of notes from the recently concluded Git Contributorâs
Summit. Covered topics include the SHA-256 transition, Rust, Change-ID
headers, Git 3.0, and many more. The note are also available on\â¨Google Docs for those who prefer that format. â Read more
U-Boot v2025.10 released
Version 2025.10 of the U-Boot boot loader
has been released with new features, including Python tooling improvements,
cleanups for implicit header inclusions, better support for numerous Arm
platforms, support for new RISC-V platforms, better documentation, and
more. Maintainer Tom Rini also reports on some project news:
As I mentioned with the v2025.07
release, I was looking for a few people to step up and help with the
overall organization and management of the project. To that ⌠â Read more
The driverâs license documents in Germany now have an expiration date. You have to renew them every 15 years. (Not the license itself, just the documents.)
I just got my renewed documents. Their expiration date says something like 01.09.40. Huh? That looks super weird to me, like an error. But no, itâs 2040 ⌠Just 15 years away.
@zvava@twtxt.net And yes yarnd does have a well documented API and two clients (CLI and unmaintained Flutter App)
⌠It all went well until 1980 or so, when Ronald Reagan appointed a new head of the EPA. The lady didnât like her stationery we had designed and with a simple âI want my daisy backâ undermined the overall graphic system. If the Queen doesnât like it, we donât like it became the attitude, and the program began to crumble. The old logo was fully reinstated and the graphic system was abandoned. A decade later, nobody at the EPA could find a copy of the Graphic Standards System, except a bunch of legalese that you will find on its website.
Iâm a fan of the EPA and all its efforts and hope that we helped in some small way for this agency to communicate within itself, to other government agencies, and with the American people. Iâm very grateful and appreciative that Jesse Reed and Hamish Smyth of Standards Manual, and Julie Anixter of AIGA, brought this document to life again. Have fun revisiting.Âť
(from the introduction by Steff GeissbĂźhler)
Hmm, gnu.org is slow as heck. Shorter HTML pages load in about ten seconds. This complete AWK manual all in one large HTML page took a full minute: https://www.gnu.org/software/gawk/manual/gawk.html Is there maybe some anti AI shenanigans going on?
In any case, I find the user guide super interesting. My AWK skills are basically non-existent, so I finally decided to change that. This document is incredibly well written and makes it really fun to keep reading and learning. Iâm very impressed. So far, I made it to section 1.6, happy to continue.
@dce@hashnix.club No worries đ Itâs all documented in our soecs, itâs not such a common thing that weâve felt the great need to really solve, weâre aware folks want to sometimes have their feed on several protocols, and thatâs totally fine⢠đ
#DiĂĄtaxis and #Python #documentation
https://discuss.python.org/t/diataxis-and-python-documentation/41836
@movq@www.uninformativ.de having to go to a gopher proxy to see a text document better served on readily available web servers⌠đ¤, but I digress. Verbatim text:
What's Missing from "Retro"
~softwarepagan
------------------------------------------------------------------
You know, often, when I say I miss older ways of computing or
connecting online, people tell me "there's nothing stopping you
from doing that now!" and they are technicay correct in most cases
(though I can't, for example, chat with friends on MSN ever
again...) However, let me explain that while this type of thing can
*sort of* fill that hole in my heart, it isn't *the same.*
Say, for example, I wanted to connect with others over a BBS. This
wouldn't offer the same types of connections it used to. While
there are BBSes around with active users, they're no longer there
to discuss movies, Star Trek, D&D, games, etc. They're there to
discuss *BBSes.* The same can be said for Gopher, old-school forums
and all sorts of revival projects (such as Escargot, Spacehey,
etc.) Retrocomputing enthusiasts, while they have a variety of
interests, are often in these spaces to discuss the medium itself
and not other topics. This exists at a stark contrast from how
things were in the past, where a non-tech-inclined person may learn
the tech to connect with likeminded others (as I did as a
Zelda-obsessed kid.)
The same can be said of old media. People will say "well, nobody is
stopping you from watching old shows/movies now!" Again, they are
technically correct. I can go home right now and watch *Star Trek:
The Next Generation* to my heart's content. It will never again,
however, be current, or new. When something is new, it serves as a
shared cultural experience. Remember how "Game of Thrones* felt in
the mid-to-late 2010s? Yeah, that.
It's sad. I sustain myself on a mixed diet of old things, new
things, and new things intended for old millenials like me who like
old things. It can be bittersweet.
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â)
/short/ if it's of this useless kind. Never thought that they ever actually will improve their Atom feeds. Thank you, much appreciated!
@kat@yarn.girlonthemoon.xyz @movq@www.uninformativ.de Sorry, I neither finished it nor in time. :-( Thatâs as good as itâs gonna get for the moment: https://git.isobeef.org/lyse/gelbariab/-/tree/master/rss-proxys?ref_type=heads
The README should hopefully provide a crude introduction. The example configuration file is documented fairly well, I believe (but maybe not). You probably still have to consult and maybe also modify the source code to fit your needs.
Let me know if you run into issues, have questions, wishes etc.
How to Mount a Balcony Awning
Hi Kris,
Iâve been reading your website for quite a while. Itâs one of my favourite blogs. Thank you for what you are doing!
We are currently experiencing a heat wave in Germany, so I drew inspiration from Low-tech Magazineâs article â How to Dress and Undress your Homeâ and built an awning on my balcony. I documented the process so that other readers can install one themselves.
The ov ⌠â Read more
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.
Russian intelligence document calls China âthe enemyâ, leak exposes Moscowâs deep fear | Today News â Read more
[$] Improving Fedoraâs documentation
At Flock,
Fedoraâs annual developer conference, held in Prague from June 5
to June 8, two members of the Fedora\â¨documentation team, Petr BokoÄ and Peter Boy, led a\â¨session on the state of Fedora documentation. The pair covered a
brief history of the projectâs documentation since the days of [Fedora Core 1](https://lwn.net/Articles/56036/ ⌠â Read more
Hamas documents reportedly show deep ties, coordination between Qatar, terror group â Read more
JPs âkeep the world tickingâ but are clocking off in larger numbers
Authorised to certify documents such as birth certificates, statutory declarations and wills, justices of the peace provide an important service free of charge. But Victoria does not have enough. â Read more
Terrier-sized âwoollyâ rat caught on camera for first time
A species of giant rat, the size of a small terrier, has been documented in New Guineaâs highlands for the first time. â Read more
[$] The importance of free software to science
Free software plays a critical role in science, both in research and in
disseminating it. Aspects of software freedom are directly relevant to
simulation, analysis, document preparation and preservation, security,
reproducibility, and usability. Free software brings practical and specific
advantages, beyond just its ideological roots, to science, while
proprietary software comes with equally specific risks. As a practicing
scientist, I would like to help othersâscientists or notâsee the ⌠â Read more
Trump Disappeared Them to El Salvador. Now, Theyâre Being Erased by Immigration Courts.
Isabela Dias,  Reporter -  Mother Jones
_Stephan: The Trump Gestapo shipped hundreds of men, mostly innocent of any crime except being in the United States without proper documentation, to concentration camps maintained by other countries. Now, the Trump immigration courts are âdisappearingâ them permanently. Will they ever be released? Maybe when the U. ⌠â Read more
Colorado terror attack suspect charged with hate crime
FBI documents allege Mohamed Sabry Soliman used a makeshift flamethrower and threw Molotov cocktails at a pro-Israel group in an attack he says he planned for more than a year. â Read more
Massive Leak of Russian Nuclear Documents Exposes a Crumbling Security Apparatus â Read more
Apple Raises iCloud+ Prices in Three Countries
Apple recently raised prices for its iCloud+ plans in Brazil, Chile, and Peru, according to a support document updated last Thursday.
The table below outlines the price changes in each country.
CountryOld PricesNew PricesBrazil50GB: R$ 4.90
200GB: R$ 14.90
2TB: R$ 49.90
6TB: R$ 149.90
12TB: R$ 299.90
⌠â Read more
Kristi Noem tells Congress she doesnât have to follow the Constitution
Oliver Willis,  Staff Writer -  Daily Kos
Stephan:Â Almost every day, aspiring dictator Trump and the obedient servants who make up his administration tell America that neither Congress nor the courts has any power over Trump. The Constitution is just a historical document.
_Homelan ⌠â Read moreInstagram API Documentation: Key Concepts Explained for Developers â Read more
Documentation done right: A developerâs guide
Learn why and how you should write docs for your project with the DiĂĄtaxis framework.
The post Documentation done right: A developerâs guide appeared first on The GitHub Blog. â Read more
Introducing vim-dan Plugin âDocuments And Notesâ â Read more