@lyse@lyse.isobeef.org I donât do it that often, either. But when I do, I always wanted to have such a tool. :-) And since it turned out super easy to âimplementâ ⊠Why not.
Most of this insane power consumption happens during the models training, so the additional cost of prompting, is minimal. Facebook invented cool ways to exted the environmental damage far beyond the training stage, by dumping the dirty data center water into nearby water sources, but thatâs more so a Facebook problem, than a fault of AI.
I would still never waste my own money, paying for any AI subscriptions that my employer doesnât already pay for, no matter if we use them, or not.
I am also against aggressive scraping and taking everything as training data, disregarding the authors wishes and license. I allow it on my website, mostly as proof that no matter how much they scrape my stuff, the real me remains both a superior webdev and artist.
I am well aware this makes me come across really egotistical, especially after developers far better than me, embraced vibe coding, arguably way too much. To give an example, all attempts to get Microsoft Copilot, thatâs embedded into SharePoint, to generate an extension/uBlock filter to make SharePoint revert to the old superior UI failed, but I was able to do that in three lines of code ( https://thecanine.smol.pub/ublock-filters ), in half an hour, despite me never seeing the code of that page before. After a few of these comparisons, it is increasingly hard to see most of these tools, as my replacement.
I am not even going to talk about the people trying to imitate my art style with AI, until they can show me a result where all the squares are the same size, in a grid and actually square.
@movq@www.uninformativ.de @david@daiwei.me @thecanine@twtxt.net Yeah, Iâm with you. It is just a tool, but itâs a tool that burns rainforests and boils lakes when you use it, owned by some incredible awful human beings, and built on the backs of an increasing number of crippling mass-scraping campaigns. These costs are just too high.
I have to use it at work, but itâs âthe new normâ in software, so Iâm hoping to use it just enough to get by until either 1) the bubble pops (and we donât have to use it anymore) or b) I retire. And actually, 1) happened for a minute back in June when M$ increased the prices of tokens, so itâs certainly possible it could happen again.
All that having been said, I think the technology itself has some interesting uses, and Iâm looking forward to the day when I can host some open source models on local hardware. But I can wait.
And yes, the site is unreadable on mobile, which is kinda wild for 2026. đŠ
The author of the Xfce Wayland compositor on LLMs:
https://www.spurint.org/journal/2026/07/llms-and-xfwl4
He openly admits that heâs totally aware of the issues. But he simply doesnât give a fuck.
This is (part of) why this whole AI/LLM topic makes me so sad and angry: Many people in tech are such a disappointment. Youâre smart and intelligent, but you donât give a fuck about anything. âItâs just a tool.â
@david@daiwei.me Absolutely insane! For almost all the tools I always need two hands for sure. I canât imagine using just a single one. And then his stuff turns out 100 times better than I could ever do.
There are advantages with just a single hand, though. I cut myself in the finger with scissors earlier. How stupid is that! :-D
muos/amd64 that boots into a running shell, with a tiny little vfs, UNIX-like semantics, syscalls, read/write, etc. It works pretty nicely, and aside from a small Assembly "nucleus", most of the Kernel and Userspace is written in Mu.
I just taught the scc SLOC tool I use how to detect and recognize the Mu programming language. So itâs actually a bit worse than your estimate. Itâs more like ~60/30 at the moment:
>>> mu = 1445
>>> asm = 2365
>>> T = mu + asm
>>> mu / T * 100
37.9265091863517
>>> asm / T * 100
62.07349081364829
@prologic@twtxt.net Our company is paying a shitload of money for all these (different) AI tools ⊠Iâm probably not allowed to tell you the exact number, but it is a lot. The only other way would be to lay off employees, so we can pay even more for AI. (Needless to say, that would be the worst possible move.)
For a private person, $20 a month is also pretty expensive, isnât it? And then assume that you maybe need more than one AI tool. Youâre quickly up to $50 a month or much more. This isnât something that I, as a private person, will ever be willing to spend for this kind of stuff.
âAIâ is just expensive as fuck. On every level. They will have to (ab)use every possible way to squeeze more money out of it, and that includes ads and what not.
I finally built a prototype of a marking gauge with a cutter wheel out of some scraps.
https://lyse.isobeef.org/tmp/streichmassprototyp-mit-messerrad/
It had been a long time in coming, I bought some replacement cutting wheels three years ago for exactly that purpose. I also found out that I need more M3 countersink bolts for future marking gauges that I want to make (maybe two or three more). Luckily, I had exactly one. I thought I got way more than that, but M3 is very, very scarce in my collection. My M3 bolt was barely long enough to attach the cutting wheel to the bar. But itâs okay for the prototype.
I was pleasantly surprised that I managed to drill the 2.5mm diameter hole almost perfectly in center in the 8mm diameter aluminium round bar. Center finder, drill press and vise with a vertical prism for the win!
I knew upfront that the M5 steel bolt to lock the bar in place definitely needs to be replaced with a brass or aluminium one (maybe with a knurled head). Otherwise, it cuts into the aluminium bar and leaves ugly marks. These burrs might even scratch the workpiece. But, of course, I donât have any brass on hand either. Alternatively, I swap out the aluminium bar for a steel or even stainless steel one. Stainless might be tricky to precisely drill and tap, though.
I already learned a few things by making this prototype. The final wooden fence can be even a bit bigger. This round thing behind is also too short, Iâd like it to be a tad longer and thicker. The final one will be made from hardwood, not spruce. Other than that, itâs great and already more practical than my store-bought marking gauge with its round fence. This only causes the tool to roll around on the workbench. Or even roll off. Stupid design.
jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
@prologic@twtxt.net Oh, yes, just for clarity: This wasnât a âpro GitHubâ argument. đ I wonât go back there (or to another âforgeâ).
I think weâre totally on the same page: Decentralized Git hosting is good, but we havenât solved the âcollaborationâ part yet. Or rather: We have to modernize it. The tools are already there, but (many) people donât want to use them and think theyâre clunky.
I really think I should go back to Java.
Writing programs in Python is so exhausting. I want a compiler and I want static typing. No, linters and type checkers and IDEs are not good enough. Compilers catch way more errors in advance.
Rust is also exhausting. Theyâre constantly adding language features and, at the same time, the runtime library remains tiny and you need 3rd party libraries for everything. Many of those are still at version 0.x (SemVer!) and you canât rely on anything. Often times, you need the latest Rust nightly compiler.
Go is ⊠I donât like it. And huge binaries.
I like C as a language, but itâs too fragile. I want to have a proper HashMap every now and then.
None of the above have good GUI libraries, at least not on Linux.
And then thereâs Java. This is my fractal renderer that I wrote over 17 years ago:
https://movq.de/v/fcd3c4e557/vid-1784121825.mp4
Itâs fast. It has a GUI with custom widgets and those werenât even hard to make. It still works without changing a single line of code. The source code files have timestamps from 2009 and I just noticed that the JAR file Iâm using in the video was compiled in 2010.
Java as a language is relatively easy to learn and to master. There are few surprises. The source code organization with packages is good. Java API docs are clear and well written.
The JVM ramp-up times have improved considerably:
https://movq.de/v/e7314e521e/vid-1784121998.mp4
This isnât like the Dark Ages anymore. Might even be usable for some CLI tools.
The only thing where Java really sucks is anything close-ish to the kernel. Try issuing an ioctl() ⊠I couldnât have made my TUI framework in Java, but then again, I wouldnât have needed to because Swing already exists and it just works.
Windows NT 4 didnât have a Device Manager. You know, this thing right here that got introduced with Windows 95:

And thatâs super awkward in NT4.
You know what doesnât have a Device Manager, either? Linux. Why? đ€ Isnât this one of the most useful system tools? It gives you an overview of the devices in your system and tells you which driver is used for them. Linux could really use such a tool, I think? đ€
(There are programs like âhardinfoâ and I remember ancient KDE providing such a tool, but theyâre all an afterthought. Hardly integrated into the overall system.)
This is a neat tool for comparing several public DNS resolvers (some of which were new to me) on various criteria; includes a speed test. https://evilbit.de/dns-resolver-guide.html
So Iâve been working on GoNIX the last few days⊠Which is derived from ”Linux â At least itâs entire build process. GoNIX however has a 100% Go userland, including the init process, package and service management.
Now⊠As an experiment, because I was able to make much process on enhancing the build tools and package management, I decided to see if I could build a âDesktopâ Gui of sortsâŠ
I still wanted it to be fairly minimal and lightweight. So I went with wayland (of course) and labwc and yambar. So far Iâm liking the result đ 42 packages in the wayland-desktop meta port. Not too bad. Not sure if I can slim that down anymore⊠But trying to avoid Mesa/GL as that drags in far too much âcruftâ.
@movq@www.uninformativ.de Thatâs right, way harder than centrally managed. They even didnât reach concensus over the main folder: âAlle Programme, âAlle Programme (x86)â, âAll Programsâ, âAll Programmesâ, etc. Anyway.
For class 11 (or maybe already in 10, I donât remember exactly) we could choose either between traditional maths class with a graphical calculator or âMathe mit CASâ. There were two teachers in my entire school who were able to teach the latter. It was also fairly new at the time I believe. Certainly unheard of for a âallgemeinbildendes Gymnasiumâ, maybe the technical ones were already offering it for some time, not sure. It was clear to me that I would take the maths with CAS class.
Each kid had to buy their own Cassiopeia A-Something. I donât know how much that thing was (definitely more expensive than a graphical calculator) and whether the school subsidized that in any form. But it was slow and underpowered as hell. We rarely used it in class nor for homework (most if not all had already a desktop at home). Typically, when we worked with the CAS, we sat down on the desktop computers. Our class took place in one of the two computer rooms. The desktops were placed on the three sides (left, right, back, facing the walls or windows) and the regular school desks were in the middle. Since there were more pupils than desktops, we always shared. Nowadays, we call it pair programming. ;-)
For the exams we had the âmandatory partâ (Pflichtteil) without any tools. Once we finished that and handed the papers to our teacher, we were then allowed to boot up our Cassiopeias and work with them for the second part. Before the exam started, everyone had to show the teacher that they reset their small computer to factory settings. This second part was called âWahlteilâ. But you had to do it in order to pass. So, I never understood the choice of this term. Maybe itâs because the first part is the exact same for everyone (graphical calculator and CAS class), but the second part was definitely different for the two classes. Each suited to their tools.
After one or two exams, it became clear that the Cassiopeia was far from ideal. So, we took the second part at the desktop computers from then on. Our teacher unplugged the network cables himself to avoid cheating. Each computer had an âHDD Sheriffâ running that reset the disk at startup. There was also an issue that the personal user accounts were affected by that. Sometimes all your data were lost. If you were lucky, they were still there. So, we saved our Maple project to local disk (if the computer didnât crash in between, that was no problem) and at least eventually before leaving the classroom, we then also saved it on the server. For that, the teacher quickly plugged in the cable, we saved, and then the cable was unplugged again immediately. Oh, and everybody used their USB sticks, too.
All in all, this Cassiopeia A-* was quite a useless purchase. :-D Iâm not sure if I still have it. At least I thought several times about giving it to the flea market. Donât know if I did or not.
Every now and then, I think that I have carefully proof-read my message enough times and hit the âAdd messageâ button in tt. But then, in the message tree, I spot another missed typo. My process is then to go to my twtxt.txt and fix it by hand. However, I still have to clean up ttâs cache. This is rather tidious:
- Recall the
sqlitebrowser ~/.local/share/twtxt/tt2.sqlitefrom my shell history.
- Switch to the âBrowse dataâ tab.
- Go to the
messagestable and wait a second or two until itâs loaded.
- Sort by the
created_atcolumn twice, so that I get descending order.
- Select the first message, which is typically the one in question.
- Find the âRemove currently selected rowâ button in the tool bar.
- Commit the changes.
- Close sqlitebrowser.
So, I finally implemented the removal of messages from the cache in tt. I can now hit d and confirm the removal. Bam! Should have done that ages ago!

Next up is the search, I think.
The concept of synthesis is more useful than artificiality in connection with generative media tools. Synthetic fabrics have been used in the garment industry for decades, while nobody complains anymore that synthesized music is inferior to music played on acoustic instruments. So why are synthetic artworks of all kinds routinely dismissed as inferior to human-produced art?
@itsericwoodward@itsericwoodward.com That DORA quote is đ€Ż â and it perfectly explains why AI coding tools terrify me in certain contexts. Dropping Copilot into a codebase full of technical debt isnât gonna fix the debt, itâs just gonna write more of it faster đ€Ł Fred Brooks would be nodding his head right now đ
(#xbh2sbq) @itsericwoodward@itsericwoodward.com That DORA quote is đ€Ż â and it perfectly explains why AI coding tools terrify me in certain contexts. Dropping Copilot into a codebase full of technical debt isnât gonna fix the debt, itâs just gonna write more of it faster đ€Ł Fred Brooks would be nodding his head right now đ
express-twtkpr npm library), and it kind ran amok a few times. So again, sorry - I've added a minimum 10-minute cool-down period between pulls which should help (I hope đ).
@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 đ
Itâs one of the reasons in fact Iâve been working on bob so I have a very concrete and strong foundation for how these things work, how they behave and how bad or good they can be. I am on-purpose building bob to be not only a decent coding tool and general task completion tool, but with serious security boundaries, sanitation, auditing and compliance. If Iâm going to succeed at building autoonmous agents that can cope with a wider array of varying inputs (mostly natural language, some structural language) then it needs to be both a) Safe and b) Robust
@bender@twtxt.net Now thatâs an interesting philosophical viewpoint right there. But this assumes that the âAIâ we seemingly have available to us today is actually telligent, understands and has cognitive reasoning. It does not. All of these LLM models from big-tech companies like Anthropic, OpenAI, Google, Microsoft, Meta and Alibaba are all just very powerful, very large multidimensional neural networks with attention that are very good at statistical probabilities of âwhat comes nextâ. I think we get really upset over the wrong things sometimes. We need to continue to be upset that these đ€Ź companies have basically destroyed any meaningful value of the concept of Copyright and Intellectual Property and Works of art. The so-called âAIâ we have today is just a tool. Can you say for certain that the typewriter and the computer ruined our ability to write? Perhaps yes, but we still learn how to do so, likewise, I still think that learning to write code, research, read and write are all valuable skills to learn. Later on once you have the basics, you can defer some of the âtediousâ work to these models, because frankly, theyâre far better at inferencing and pattern matching than you or i will ever be, not because theyâre better at pattern-matching per se, but because they have been trained on a very large corpus and they are much much faster at doing the same basic things we are far superior at.
cp -a, install a bootloader, adjust some minor things /etc/fstab, done. Well, maybe not âdoneâ, but itâs easy to sort out the remaining stuff afterwards.
@bender@twtxt.net Itâs been a while (6.5 years) since Iâve done this. Iâd do it like this:
- Boot some Linux from a USB stick on the new machine. Preferably Arch Linux, since that is what Iâm running and thatâll make the upcoming chroot easier.
- Partition the new disk, create LUKS devices, filesystems, âŠ
- Mount the new filesystems and copy all data (user data and the system itself â everything). Do this either over the network or by hooking up the old disk directly.
- chroot into the new system (Arch has an
arch-chroottool for that which is used during normal installation, if Iâm not mistaken). Inside the chroot, install the bootloader.
- Do some fixups, like adjusting
/etc/fstabor/etc/crypttab.
And I think that should be it. đ€
ÂĄMuchas gracias @bender@twtxt.net! I was also thinking about categorizing them a few years ago. But itâs so much work. I would have to tag every photo on its own. My use case goes more towards âgive me all albums with squirrelsâ, though. Letâs see. I would need some tooling for easy tagging first. And then, the question is, which categories do I want to have to begin with?
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.)
@lyse@lyse.isobeef.org Clearing legally? You must have an amazingly efficient legal team â thereâs like 10 new tools every week. đ€Ł
@movq@www.uninformativ.de No, just the damn training. For the tools, they always want the latest shit available. The company isnât quick enough in purchasing and legally clearing the latest models, services, etc., they say. Other than that, they seem to be happy.
even our hippest AI enthusiasts found it absolutely terrible
Does this refer to the training course or to the tools themselves? đ€
@lyse@lyse.isobeef.org Yes, and thatâs why Iâm 100% convinced that weâll see a massive brain drain in a couple of years. This will affect young people even more, because they donât have all the âoldâ knowledge to fall back on.
Itâs concerning, Iâve warned about it many times, nobody listens.
I think the best thing one can do is explicitly not use any AI tools but keep your actual skills intact. Might be out of a (good) job for a while, but once this bubble bursts, this is who is going to get hired again. (I think.)
And considering how insanely expensive all this is, Iâm still (mostly) convinced that the bubble will actually burst. This stuff just isnât sustainable.
⊠or I might be wrong. And if so, I see an even darker future that I donât want to put into words right now.
@lyse@lyse.isobeef.org AI result ahead, feel free to ignore.
I âaskedâ the AI at work the same question out of morbid curiousity. It âsaidâ that SQLite converts that integer to floating point internally on overflows and then, when converting back, the x86 instruction cvttsd2si will turn it into 0x8000000000000000, even if the actual floating point value is outside of that range. So, yes, it allegedly actually saturates, as a side effect of the type conversion.
I couldnât find anything about that automatic conversion in SQLiteâs manual, yet, but an experiment looks like it might be true:
sqlite> select typeof(1 << 63);
âââââââââââââââââââź
â typeof(1 << 63) â
âââââââââââââââââââĄ
â integer â
â°ââââââââââââââââââŻ
sqlite> select typeof((1 << 63) - 1);
ââââââââââââââââââââââââź
â typeof((1 << 63) ... â
ââââââââââââââââââââââââĄ
â real â
â°âââââââââââââââââââââââŻ
As for cvttsd2si, this source confirms the handling of 0x8000000000000000 on range errors: https://www.felixcloutier.com/x86/cvttsd2si
The following C program also confirms it (run through gdb to see cvttsd2si in action):
<a href="https://yarn.girlonthemoon.xyz/search?q=%23include">#include</a> <stdint.h>
<a href="https://yarn.girlonthemoon.xyz/search?q=%23include">#include</a> <stdio.h>
int
main()
{
int64_t i;
double d;
/* -3000 instead of -1, because `double` canât represent a
* difference of -1 at this scale. */
d = -9223372036854775808.0 - 3000;
i = d;
printf("%lf, 0x%lx, %ld\n", d, i, i);
return 0;
}
(Remark about AI usage: Fine, I got an answer and maybe itâs even correct. But doing this completely ruined it for me. It would have been much more satisfying to figure this out myself. I actually suspected some floating point stuff going on here, but instead of verifying this myself I reached for the unethical tool and denied myself a little bit of fun at the weekend. Wonât do that again.)
Heyy 04866, regarding grub, you should have checked your grub config file before installing it, never rely on distroâs tools. See if your grub config matches your intention and install it, if not, tweak it until itâs fine.
You should study your tools if youâre planning to FAFO with them. Now use a live USB and see if the grub files are missing something, or just learn how grub works.
Just learned this nice little life-hack
for disconnecting MC4 Solar connectors đ Works really well! And I donât have to buy a special little MC4 assembly tool đ„ł
@lyse@lyse.isobeef.org A-ha! That means you havenât spent enough time with these tools! Go on, try it! (If you donât, weâll fire you.) Iâm sure youâll like it!

sqlparse is also unsuitable for me: https://github.com/andialbrecht/sqlparse/issues/688
Iâm supporting incremental SQLite schema changes to just upgrade from an older database version to whatever the current software version supports. In the past, I already noticed that this is quite expensive in unit tests when each test case runs through the entire schema patches and applies them one by one.
To speed up test execution I now decided that I finally go through the troubles of maintaining both a set of incremental patches and a full schema setup in one go. A unit test verifies that both ways end up with the same structure. This gives me a set of SQLs to check the structures:
SELECT type, name, tbl_name, sql
FROM sqlite_schema
ORDER BY type, name, tbl_name
Unfortunately, the resulting CREATE TABLE SQL queries are formatted differently, depending on whether the full schema was set up in one big step or the structure had been modified with ALTER TABLE. Mainly, added columns are not on their own lines but appended in one physical line. Thatâs why I wanted an SQL formatting tool. Since I didnât find one that works decently, Iâm now doing some simple string manipulation. Joining consecutive whitespace into a single space character, removing spaces before commas and closing parentheses and spaces after opening parentheses. This works surpringly good enough. Of course, if it fails, the âdiffâ is absolutely horrendous.
Now for the cool part, my test execution dropped from around 5:05 minutes to just 1:32 minutes! I call that a win.
I just stumbled across PRAGMA table_info('tablename') https://sqlite.org/pragma.html#pragma_table_info, PRAGMA foreign_key_list('tablename') and friends. I guess, I have to play with that, now. Itâs probably much better to use than the SQL text approach.
@rdlmda@rdlmda.me it is called, in Spanish, âthe motherâ. It is created through a bit (not by much) effort, and kept as a starting point. Just like Asian cuisine has dishes that never cool, always cooking leaving always a base on it.
How do you think a lathe (and just about any tool, etc.) is done? Yup, in part by using a lathe. đ
@movq@www.uninformativ.de I know itâs crazy right đ€Ż these things are just tools. Theyâre not even remotely intelligent at all. In fact they are actually quite stupid. If you feed it garbage you get garbage out! The only interesting thing is that you get somewhat intelligible garbage out đ
HEY! I think we all noticed that privacy is dying. Government and corporate entities around the world are building the laws and tools to track you, from everything you write, to the media you consume, to where you drive your car and the people you associate with. Gopher I believe Is one of the last bastions of freedom away from what I call âCorpo webâ. GopherSpace is free, I wrote my client so I know itâs safe, and I can route my traffic over tor or any proxy of my choosing. I think we should use gopher as a means to communicate and get out of the modern corpo web because soon everything you do and say on the modern web or possibly corporate owned devices is under scrutiny, even more so than it ALREADY IS. Right now I can use tor and my custom gopher cli to communicate privately here. With the ways the laws are going they are going to implement things like age verification to track you and theyâll deem privacy focused open source software as tools for circumventing these rules. Itâs a slippery slope. I need to stop writing before I sound really crazy.
does magical.fishâs admin still come around here or not? it seems that the stock prices tool is broken
The modern world seems to want to separate the concepts of beauty and utility. Weâre fine with having things that are aesthetic but donâ do anything useful, while the tools of society that get work done are often very uglyâvisually, socially and metaphorically. Beauty without utility is worthless; utility without beauty is meaningless. We canât treat them independently.
@movq@www.uninformativ.de Sorry, I meant the builtin module:
$ python3 -m pep8 file.py
/usr/lib/python3/dist-packages/pep8.py:2123: UserWarning:
pep8 has been renamed to pycodestyle (GitHub issue #466)
Use of the pep8 tool will be removed in a future release.
Please install and use `pycodestyle` instead.
$ pip install pycodestyle
$ pycodestyle ...
I canât seem to remember the name pycodestyle for the life of me. Maybe thatâs why I almost never use it.
Since I used so much Rust during the holidays, I got totally used to rustfmt. I now use similar tools for Python (black and isort).
What have I been doing all these years?! I never want to format code manually again. đ€Łđ
mu (”) now has builtin code formatting and linting tools, making ” far more useful and useable as a general purpose programming language. Mu now includes:
- An interpreter for quick âscriptinogâ
- A native code compiler for building native executables (Darwin / macOS only for now)
- A builtin set of developer tools, currently: fmt (-fmt), check (-check) and test (-test).
@lyse@lyse.isobeef.org I can tell you this right now, writing assembly / machine code is fucking hard workâą đ Iâm sure @movq@www.uninformativ.de can affirm đ€Ł And when it all goes to shitâą (which it does often), man is debugging fucking hard as hell! Without debug symbols I canât use the regular tools like lldb or gdb đ
New repository: aquilax/nfo-tools - Tools for managing kodi nfo files
@prologic@twtxt.net Iâve been awake at that time, didnât notice anything. đ€ Where was that BGP analyzer again ⊠đ Thereâs a tool that keeps track of these things, right? I forgot what it was.
@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
idk if magical.fish admin reads this chat but it seems that the stock price tool spits an error
@prologic@twtxt.net AI is slot machines for coders:
- âBefore starting tasks, developers forecast that allowing AI will reduce completion time by 24%. After completing the study, developers estimate that allowing AI reduced completion time by 20%. Surprisingly, we find that allowing AI actually increases completion time by 19%âAI tooling slowed developers down.â https://metr.org/blog/2025-07-10-early-2025-ai-experienced-os-dev-study/
- âStack Overflow data reveals the hidden productivity tax of âalmost rightâ AI codeâ: https://venturebeat.com/ai/stack-overflow-data-reveals-the-hidden-productivity-tax-of-almost-right-ai-code
The same intermittent reward operant conditioning that gets people addicted to gambling and thinking that if they follow certain rituals theyâll win ânext timeâ drives peopleâs beliefs that AI tools are making them more productive when theyâre making them less productive. Iâm going to guess that a side effect of this is that people think theyâre typing less when in the longer term theyâre typing the same amount or more when you factor in the productivity loss (as far as Iâve read the studies donât measure this so Iâm only guessing).
People are also being rapidly de-skilled by this technology: the more they use it, the more their actual skills atrophy. âContinuous exposure to AI might reduce the ADR (adesoma detection rate) of standard non-AI assisted colonoscopy, suggesting a negative effect on endoscopist behaviour.â (science speak for saying that radiologists get worse at seeing tumors in scans once theyâve used AI): https://www.thelancet.com/journals/langas/article/PIIS2468-1253(25)00133-5/abstract
Nobody who cares about the future should be using this stuff for anything.
Android shopping list apps disappointed me too many times, so I went back to writing these lists by hand a while ago.
Hereâs whatâs more fun: Write them in Vim and then print them on the dotmatrix printer. đ„ł
And, because I can, I use my own font for that, i.e. ImageMagick renders an image file and then a little tool converts that to ESC/P so I can dump it to /dev/usb/lp0.
(I have so much scrap paper from mail spam lying around that I donât feel too bad about this. All these sheets would go straight to the bin otherwise.)

@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. đ