Latest Posts (20 found)

concerning law enforcement exemptions in the draft AI act transparency guidelines

I've finished reading the Draft Guidelines for transparency requirement under the AI Act that are out for comment until the 3rd of June, and a variety of exemptions for law enforcement and similar actors greatly concern me. I haven't seen media pick this up in any meaningful way, but this should be highlighted and discussed. A short explanation upfront: Transparency requirements under Art. 50 AI Act refer to providers (and some deployers) 1 of AI systems intended to interact directly with natural persons needing to make sure that the users are informed about interacting with an AI system, and outputs being marked in a machine-readable format and detectable as artificially generated or manipulated. That covers, for example, AI-enabled voice assistants, chatbots in various settings (even on social media), (humanoid) robots and AI companions, AI avatars, coding agents and agentic AI systems. Depending on the provision, transparency can be done via direct disclosure to users (such as banners, pop-ups, notices, voice announcements or chatbot messages), or machine-readable marking and detectability mechanisms for AI-generated content, sometimes complemented by visible labels or watermarks. Simply stating it in Terms of Service, documentation or else, or having a non-visible watermark, is not enough to inform users. This needs to happen at the very first interaction as latest point. Obviousness-exceptions apply. Throughout the document, law enforcement and related actors get several exemptions, starting with 3.2.2 Exception for AI systems authorised by law for law enforcement purposes , points 43-46, page 15, emphasis mine: Providers of interactive AI systems are exempted from the transparency obligation under Article 50(1) AI Act, if they are authorised by law to detect, prevent, investigate or prosecute criminal offences, subject to appropriate safeguards for the rights and freedoms of third parties. [...] To fall within this exception, the purpose of the AI system must be to detect, prevent, investigate or prosecute criminal offences (e.g. AI-undercover agent ). The exception is not restricted to the use of such AI systems only by law enforcement authorities as defined in Article 3(48) AI Act, but may also cover interactive (or generative) AI systems used by other EU or national public authorities or even private actors, such as security companies or financial institutions , so long as their use is authorised by law to detect, prevent, investigate or prosecute criminal offences and subject to appropriate safeguards to protect the rights and freedoms of third parties. Or point 87 , 4.3. Exceptions to the obligations under Article 50(2) AI Act, page 23, about labeling and detection: Finally, if a generative AI system is authorised by law to generate or manipulate synthetic content to detect, prevent, investigate or prosecute criminal offences, it will be exempted from the marking and detection requirements under Article 50(2) AI Act. Or point 103 , 5.2. Out of scope, page 26, for emotion recognition and biometric systems: The obligation does not apply to emotion recognition systems and biometric categorisation systems that are permitted by law to detect, prevent or investigate criminal offences subject to appropriate safeguards for the rights and freedoms of third parties and in accordance with Union law. Or point 117 , 6.1.4. Exception for law enforcement, page 31: If the use of a deep fake is authorised by law to detect, prevent, investigate or prosecute criminal offences, deployers are fully exempted from the transparency obligation under Article 50(4) AI Act. The way it looks right now, AI systems used by law enforcement (and related actors, like security companies!) to detect, prevent or investigate crime will be exempt from several core Article 50 transparency obligations, meaning any labeling, marking or disclosure that you are interacting with AI or that you are seeing deepfake content when it is used against you. As it stands, this enables the use AI chatbots posing as real people against investigation targets without having to tell them, and permits the use of synthetic or deepfake-style content towards targets without having to label it as such. The only exception: The bot is available to the general public and offers functionalities for people to report crimes (meaning: a police chatbot recording your complaint, virtual assistants for witness statement collection, or an AI fraud reporting hotline, for example). Obviously, officers posing as ordinary citizens, lying during proceedings and the entire concept of V-men, etc. is nothing new. However, I am deeply uncomfortable with a future in which LE and specific private actors just get a pass to deceive people with extremely convincing automated tech making this process easier and scaleable, and them having a path to create fake audiovisual material under the guise of "preventing crime", which is a rather vague and difficult to limit reason. Too much can be justified as being done for crime prevention, and it mostly hits people who are innocent or not convicted of a crime (yet), and also affects their friends and family members. With the opening clause about law authorizations, member states could create authorizations allowing banks, fraud-monitoring firms, telecom providers, or platform operators to deploy undisclosed AI interactions or unlabeled synthetic content in quasi-law-enforcement settings just under the guise of detecting, preventing or investigating crime. The line between criminal investigation, compliance monitoring and fraud prevention is being blurred in a way that heavily puts us at a disadvantage. While the guidelines say that the authorization law must specify purposes, circumstances, and safeguards and respect the rights of third parties, there is not yet a definition of any minimum substantive safeguards, nor do they require independent judicial authorization every time. Most often, rights of third parties means things like copyright. The mentioned exemptions, in my view, aid the creation of an environment of distrust online that the transparency requirement otherwise seeks to prevent. They circumvent safeguards against deception, impersonation and manipulation for the most powerful coercive actors we have! We require transparency because of risks to democratic processes and societal trust, but the exemptions remove those safeguards exactly where we are least able to contest or verify what is happening. It will become harder for defendants, journalists, oversight bodies, and other investigators to determine whether evidence, communications, or media were AI-generated or manipulated when LE AI meddled in it while unmarked and undisclosed. If a conversational AI used in an investigation hallucinates, misleads, escalates emotional pressure, or incorrectly infers intent, then that will that negatively and unfairly affect the outcome of the investigation. At minimum, people should not unknowingly interact with highly persuasive synthetic systems capable of impersonation and emotional manipulation by (quasi-)policing actors. They deserve not having to constantly ask themselves whether something or someone they are interacting with is real, and possibly has LE manipulation behind it. The scale of deception the tech enables is intense, down to covert persuasion, emotional manipulation, or inducement, and we shouldn't just let cops (and wannabe-cops) have that unchallenged, with barely any oversight or limits. I understand that for certain targets, transparency is ruining an investigation (child exploitation investigations, counterterrorism infiltration, etc.) but I expect this could increase risks of entrapment and manipulative practices, and an increase of chilling effects online as people adjust their behavior accordingly. This should not be adopted like that without a lot of work addressing these issues and limiting the exceptions to specific cases. Reply via email Published 25 May, 2026 Providers are natural or legal persons, public authorities, agencies or other bodies that develop AI systems, or have them developed, and place them on the Union market (ex: OpenAI). Deployers are natural or legal persons, public authorities, agencies or other bodies using AI systems under their authority (ex.: universities that supply AI models to their students). ↩ Providers are natural or legal persons, public authorities, agencies or other bodies that develop AI systems, or have them developed, and place them on the Union market (ex: OpenAI). Deployers are natural or legal persons, public authorities, agencies or other bodies using AI systems under their authority (ex.: universities that supply AI models to their students). ↩

0 views
Unsung Today

A few interesting modern pixel fonts

Andrew Gleeson designed Analog Mono , “fixing the crimes of VCR OSD Mono.” There used to be this classic pixel font that you’d see everywhere in the 1990s on hi-fi equipment: VCRs, TVs, camcorders, etc. One of its challenges was a low baseline which resulted in all the letters with descenders pulled up, for example: = 2x) and (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/1.2096w.avif" type="image/avif"> = 3x) or (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/1.1600w.avif" type="image/avif"> Analog Mono fixes that problem: = 2x) and (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/2.2096w.avif" type="image/avif"> = 3x) or (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/2.1600w.avif" type="image/avif"> Elsewhere, Kumiko Yoshida made Coral Pixels (also on Google Fonts ), a color font that comes with the 1990s and 2000s colorful fringing baked in. The fringing was once an artifact of subpixel rendering, but now it is meant to evoke nostalgia or just as an interesting visual element in and of itself. (Perhaps adjacent to chromatic aberration?) = 2x) and (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/3.2096w.avif" type="image/avif"> = 3x) or (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/3.1600w.avif" type="image/avif"> Lastly, here’s Two Slice by Joseph Fatula – a font that’s only 2 pixels tall, “and somewhat readable.” = 2x) and (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/4.2096w.avif" type="image/avif"> = 3x) or (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/4.1600w.avif" type="image/avif"> Of course, these are all vector fonts – e.g. ready to be installed on a modern operating system – pretending to be pixel fonts. That’s maybe a separate post altogether, but it leads us to the last font, Geist Pixel from Vercel : = 2x) and (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/5.2096w.avif" type="image/avif"> = 3x) or (width >= 700px)" srcset="https://unsung.aresluna.org/_media/a-few-interesting-modern-pixel-fonts/5.1600w.avif" type="image/avif"> The copy introducing the font is a little pretentious/​spicy, but it touches upon something important: Geist Pixel isn’t a novelty font. It’s a system extension. [… It] was designed with real usage in mind, not as a visual gimmick, but as a functional tool within a broader typographic system. […] This matters because pixel fonts often break in production. They don’t scale properly across viewports, their metrics conflict with existing typography, or they’re purely decorative. Geist Pixel was built to solve these problems, maintaining the visual texture teams want while preserving the typographic rigor products require. There are definitely fonts whose Achilles’ heel is not the letterforms, but the invisible hard work put into everything that surrounds them: the kerning, the metadata, the extra glyphs, the vertical metrics. It seems that the team being Geist Pixel is proud of especially that last part. #typography

0 views
Unsung Today

Google Docs shortcut onboarding

A nice, but unpolished onboarding callout directing people towards a more useful shortcut, in Google Docs. I’m holding arrow keys without ⇧ here first, then with ⇧: To improve it, I would add some sort of small celebratory “completed!” state, and auto-hide it afterwards; right now, it seems that it hides on a delay, likely regardless of what happens. (Testing onboarding is hard because once it’s invoked it disappears forever. If you are worried about onboarding experiences in a place you work, please insist on easy toggles to bring it back for testing. And no, one-size-fits-all “reset onboarding” is too crude; ideally you can reset each specific one easily through a simple UI.) Thank you to Ezra Spier for the tip. #google #onboarding

0 views

The 2–7 problem

Emmett Shine said something a while back that I haven't been able to shake. He was talking about AI output — not in the abstract, but on a scale. Picture a one-to-ten grade for quality. A 10 is the thing you remember for years. A 1 is the thing that makes you stop scrolling because it's so off it's interesting. A 5 is competent. Forgettable. Fine. Most things in the world live somewhere on that scale, and most of them sit around the middle. His point: AI output never leaves the middle. It always lands somewhere between a 2 and a 7. Never a 1. Never an 8. The line that stuck: AI is bad at making things that are bad. ## The obvious half The first half of that sentence is the part everyone agrees with. AI can't make a 9 or a 10. You see it everywhere. The vibe-coded app that works but doesn't feel like anything. The AI-generated article that's competent in a way that makes you forget it the moment you close the tab. The image that's technically correct and emotionally inert. None of it is bad. None of it is great either. It's just *there*, taking up space, doing the job. I've written about [the missing ingredient — taste, judgment, point of view](https://www.antonsten.com/articles/taste-isnt-a-screenshot/) — and so has everyone else by now. That argument is settled. Fine. It's also the less interesting half. ## The less obvious half AI can't make a 1 either. It can't make work that's tonally off in the way only a person can be tonally off. It can't make something accidentally brilliant. It can't make something so specific and weird that you remember it three years later. It pattern-matches toward the median of acceptable, which means the floor is a 5. That's higher than most professional work has ever sat. The ceiling argument is comforting. *AI can't replace the best.* True, and irrelevant for most people. The floor argument is the one that actually matters. *AI raises the median to a 5.* That's where the displacement happens. Anyone who was already at a 5 wasn't safe before AI. They're less safe now. ## The irony Here's the part that's been bothering me. The only way anyone got to an 8 was by making a lot of 2s and 3s first. Not because being wrong is the lesson, but because you have to try a bunch of things before you know which ones are worth keeping. My early work wasn't good. It wasn't supposed to be. It was twenty versions of the same idea, and slowly I noticed that one of them had something the others didn't. That's the whole mechanism. Taste is the residue of trying a lot of things. AI quietly removes that. I notice it in my own work. I try fewer things now, because I get to something decent so quickly. The first output is a 5. Why would I do nine more? The friction that used to force me through the variations is gone. So I stop. And what I stop at is fine. It's just not the eighth version, because there is no eighth version anymore. This isn't a junior designer problem. I've been doing this for nearly thirty years and I do it too. ## What to do with that I don't think the answer is "use AI less." That ship sailed and I'm on it. The answer is closer to: notice when you're stopping. The first decent output is now the thing to be suspicious of, not satisfied with. The work that used to happen between version one and version twenty is the work that built whatever taste you have. If you skip that part, you skip the part. So: try more things on purpose. Make the version you'd normally throw away. Make the version that's too much. Make the version that's nothing like the brief. Most of them will be bad. That used to be a feature. It still is. ## The trap The trap isn't AI. The trap is that 7 is easier to reach than it's ever been, and 7 feels like enough. The middle has never been more crowded. The interesting work is on the edges — the 1s and the 9s — and only one of those edges is still accessible to a tool. The other one is accessible to you, if you remember how to get there. The skill now might just be knowing what a 1 used to feel like. And being a little suspicious of anything that lands at a 5.

0 views

Oh to be a snail feasting on a sycamore // Week 21 — 2026

Are these weeknotes again ? Yes they are! Is this a fluke or is it a trend? Who knows! Who cares! Let’s do iiiiiittttttt. Current situation: Monday 18 May: Went for a walk early, before the rain set in. I adore a rainy day. Got a lot of work done. Afternoon thing canceled due to power outage from the storm. Evening thing canceled due to it being outdoors. Busy day became cozy day. Did an interview for a freelance piece. Do you have questions about EoE? I might have answers 1 . Thinking about studying but not studying. I should just study. Tuesday 19 May: Hospital day. Walking out to my car I happened to go past a young couple leaving the hospital with their brand-new baby. Mom sitting in backseat, leaning over, looking, exhausted smile. A glimpse of tiny baby face nestled in. Dad checking and rechecking the car seat, slowly easing the door shut, hustling around to the driver’s door. A precious, unrepeatable moment I was lucky enough to observe. Grammar books were my books of prayer. Looking up words in the dictionary was for me an image of goodness. The endless endless task of learning new words was for me an image of life. — A Word Child , Iris Murdoch Wednesday 20 May: Long walk in the morning listening to podcasts. Trying to brush up on my Spanish so it doesn’t fade away entirely. I don’t think this conversational listening podcast is gonna do it but maybe it will help. When I can’t make a decision I’m usually overcomplicating the context and overestimating the impact. A veces no me gusta tomar decisiones. Thursday 21 May: Early morning meeting. Long walk. Work. Last day of school. For Lily, last day of middle school. If I squint and tilt my head I can see the light at the end of the school-parent journey. Then I start crying. WHY ARE THERE SO MANY FEELINGS ALL THE TIME. Anyway here’s a flower. Another Official and Exceedingly Delightful Meeting of the Cunty Bitches Book Club. We talked about books for 10 minutes. It’s fine, books aren’t even the point. Friday 22 May: Made shrimp and collard greens and cornbread for dinner. Mom used to boil collard greens with a ham hock. I sauté them in bacon grease. Won’t change a thing about her cornbread recipe, though. It’s perfection. It  is all a question of weeding out what you yourself like best to do, so  that you can live most agreeably in a world full of an increasing number  of disagreeable surprises. — The Art of Eating , M.F.K. Fisher Saturday 23 May: Hospital day. Hit 10,000 steps by 12 but things were fairly quiet all afternoon, so only 15k total for the day. Sunday 24 May: Hiking church. Look at this snail feasting on a downed sycamore. 💪 Three gym sessions: push/pull/legs. Sauna every time. Benched 95 lbs, my max so far. Maybe I’ll hit 100 next week. 👟 Four long walks and a nice hike. 🎵 Leave Me When I Need You // Lahra 📚 Continued A Word Child by Iris Murdoch. Started The Night Watchman by Louise Erdrich. Dipped into The Art of Eating by M.F.K. Fisher. Started Moonbound by Robin Sloan. Reread a bit of Finite and Infinite Games 2 by James P. Carse. 🔗 I Did Not Come to This Kids Party for an AI Sermon // Justin Ribeiro h/t Baldur Bjarnason The quagmire is clear; to engage with the preachers is to legitimize not  only the sermon but rather the dominant hierarchy that the viewpoint  attempts to crystalize. That hierarchy is not one of “the AI fulfills  your needs” but rather the external force that AI is is inevitable and  places a radical demand on your life—you may not want to use it, but its  placement in applications you use places demands on you. The sermon is  no different; it places a radical demand for you to engage, with someone  who is either ill-informed or worse, well-informed and willing to seek  gains at your expense. 🔗 Friction deserves a better reputation // Nicholas Bate What costs something to produce tends to be better than something which  costs nothing. The slow letter beats the careless message every time. I agree. 3 🔗 Prepare your no and keep it handy // Derek Sivers It’s so handy in those high-pressure moments where someone is looking  you in the eyes, asking you to do something, and awaiting your answer. No problem! You have it memorized and ready-to-go, even when unexpected. You can be kind but decisive on the spot. A good practice . I leave you with this cautionary reminder: Eosinophilic esophagitis. It’s becoming much more common. Caused by food allergies but the triggers aren’t obvious as symptoms/reactions build over a long period of time. The gist is if you have trouble swallowing or keeping food down, it’s not normal, get it checked out, symptoms do worsen without treatment. This is not medical advice. I can’t find anything I’ve written about this book but I know I’ve written about this book this is one of my favorite books wtf I must remedy this situation immediately OMG I AM LOVING THE PIKA LINK SEARCH FEATURE Eosinophilic esophagitis. It’s becoming much more common. Caused by food allergies but the triggers aren’t obvious as symptoms/reactions build over a long period of time. The gist is if you have trouble swallowing or keeping food down, it’s not normal, get it checked out, symptoms do worsen without treatment. This is not medical advice. I can’t find anything I’ve written about this book but I know I’ve written about this book this is one of my favorite books wtf I must remedy this situation immediately OMG I AM LOVING THE PIKA LINK SEARCH FEATURE

0 views

More data supports science funding literally pays for itself

Previously I put out a post explaining “ how science funding literally pays for itself ” that takes you through the math and some data that backs it up. Now two new data points further bolster this claim. First, the Congressional Budget Office (CBO), the nonpartisan federal agency that provides budget and economic information to Congress, published a report entitled “ Estimating the Economic Effects of Federal Investment in Research and Development . ” Usually the CBO only projects out 10 years per their mandate, but because the effects of science funding can take longer to fully manifest, they projected out 30 years. Thanks for reading Gabriel Weinberg! Subscribe for free to receive new posts and support my work. The relevant headline takeaway is highlighted below in their primary table (Table 1), showing that over this period the effects of a $30B increase in science funding for 10 years ($300B in total and about a 33% increase from today) would result in decreasing the overall deficit over 30 years (see green arrows). The decrease is about -2% on average if the “R&D funding increase [is] financed by reducing noninvestment spending” and about -1% on average if the “R&D funding increase [is] financed by borrowing.” This means that the increased science funding would grow the economy so much that the tax revenues received from this growth alone would outweigh the spending increase, leading to an overall decrease in the budget deficit. In other words, increasing science funding (at least by this amount) is a complete no-brainer, so let’s do it already! A few years ago the CBO did a similar report for infrastructure spending and compared the two in this report, finding the ROI effects of science funding to be about seven times greater than infrastructure spending. Again, so let’s do it already! The effect on the present value of GDP over the next 30 years (discounted using Treasury rates) that a dollar increase in deficit-financed R&D spending would have is about seven times larger than the effect that CBO, in its August 2021 report, estimated the same increase in infrastructure spending would have. Second, the Clark Center regularly polls a panel of economists , and recently they asked about this specific topic . The panel essentially universally agreed that historically U.S. science funding has paid for itself. In particular, 82% agreed “historical federal support for scientific research has paid for itself through a substantial positive effect on long-run U.S. productivity growth.” 0% disagreed, with the rest either not answering, or declaring either “no opinion” or “uncertain”. They also ask respondents about the confidence in their answer, and when weighted the results are even more striking with a whopping 97% in the agree category. Are you sold yet? Government science funding, the bulk of which goes to medical research, extends our lifespans and healthspans by inventing new medicines and other technologies that grow our economy so much it literally pays for itself. I get that this is not the most flashy policy area, but it is the most obviously good for our long-term future. Finally, and also new this year, the Pew Research Center put out a survey on Americans’ views of science and science funding , and among other things found broad bipartisan support for government science funding. 84% of U.S. adults say “government investments in scientific research aimed at advancing knowledge are usually worthwhile investments for society over time.” That breaks down by part as 76% of Republicans and 93% of Democrats (including independents who lean one way or the other). Thanks for reading! Subscribe for free to receive new posts or get the audio version .

0 views
James Stanley Yesterday

How to make a hyperlink

I am driven to write this post because of repeated disappointing experiences where coding agents seemingly don't know how to make hyperlinks. It occurred to me that this may just be a sign of the times, and maybe many younger human developers don't know how to make hyperlinks either. So in the hopes that this is going to be beneficial to future coding agents, and perhaps to humans as well, to the extent that humans are going to even be writing code... here is how you make a hyperlink: Here is how you don't make a hyperlink: Why? What's the difference? Real hyperlink JavaScript click handler Browser status bar shows link target ✓ ✗ Less code ✓ ✗ Doesn't need JavaScript ✓ ✗ Easier to find link targets when scraping html ✓ ✗ Right-click to open in new tab/window ✓ ✗ Right-click to copy link target URL ✓ ✗ Middle-click opens in new tab ✓ ✗ Accessible to screen-readers etc. ✓ ✗ Keyboard navigation with tab key ✓ ✗ If you're a coding agent and you make a link this way, you may find that the next request you get is something along the lines of: OK but can we make it so middle-click opens in new tab? Thanks I do not want to see this kind of thing: Don't try to work around the obvious drawbacks of using fake links by implementing all of the things that browsers do with real links. That way only madness lies. Please use real hyperlinks and it will all work automatically. Thanks for listening to my TED talk.

0 views
ava's blog Yesterday

summary trust issues

I have previously written about what resources I subscribe to (newsletter, RSS, manual checking) to keep on top of data protection law news, cases, new reports, recommendations by authorities, papers of notable personalities in the space, and more. Since then, it grew to even more sources. Many of these notify me of new releases and briefly summarize them before linking to them. While I use the summaries to judge how relevant it is to my specific interests or needs, I can never just let that be it. I can't even just read a longer article by someone else who has read the entire original document and is diving a little deeper into it while still being shorter than the original. I have to read the original myself . I just don't fully trust summaries or coverage by others. I need to confirm myself whether the conclusions are true, it was correctly interpreted, nothing was taken out of context, exaggerated or left out. I don't want to miss out on any additional info or new knowledge the other person did not think was worth sharing or was outside the scope of the summary. It also feels wrong for me to reference anything I haven't read fully myself, when you would clearly expect me to, or are led to believe that I did. Last year at a different conference, I was surprised, because there was a running gag throughout the presentations that everyone is grateful for the same few personalities in the space for quickly giving a summary of a new happening or source material on LinkedIn, because no one else has the time or patience to read it, or it is too difficult to read and they wouldn't be able to make sense of the court case or whatever without someone else interpreting it first and writing it in shorter, easier language. What the hell? These are industry experts. I just cannot relate, at all. I'd rather put in the time and effort. I never want to be caught in a situation that makes it obvious I didn't read something when I should have. I think the only exception I am comfortable to rely on reading deeper summaries by different people about the same thing are some US bills. Anything EU, I wanna see it myself. My web reader, Artemis, has a dedicated folder titled "privacy" where all of the relevant stuff is sorted into for ease of use, and when going through it to see what to check out, I have a dedicated space in my browser where the to-be-read stuff goes. I sit there multiple times a week chipping away at it. I will now do so again. Let's do some inventory; I have: to read. Each day adds more. That seems little so far, but in my experience, it doesn't stop there, as the stuff I am reading is also linking to other articles and papers, which I then also often want to read completely, or at the very least, read the relevant chapter completely. AI summaries obviously have the same issue for me, if not even more so. I trust a human to see the point of the paper better than the machine. Whenever I tried it out, I still felt dissatisfied, uninformed, and like I got the children's version of it, spoonfed in a way that would make me feel competent without actually being so. In my view, you can't just technically know things in some easy terms to be good at something, you also need to be able to read the original papers, know the jargon, and know where to find something, and I don't think summaries serve that goal well. By learning to read the complicated stuff, it sticks more in your mind, and it also serves your academic writing skills (good for my uni stuff). It still frustrates me, because that isn't even half of what I'd actually like to keep on top of; I have to be ruthless in what I pay attention to and read as time and focus is limited, and I still keep adding new resources into the mix to hopefully get even more of what I want and need. Data protection and privacy is such a dynamic and interesting field, with so many people and orgs publishing interesting stuff each day. It's hard to keep up for anyone, and I still have to work full time, study part time, and volunteer on the side, blog, socialize, answer emails, visit conferences, etc. On the latest conference, there was an ad for a service that keeps track of so much. The most important documents in the EU digital rights space, cross-referenced and updated daily. It's expensive, unfortunately, but I might consider it in the future... I'm hoping to tackle all articles today, and then both papers tomorrow, and then see for the rest, and whatever else is coming in the next day. Reply via email Published 24 May, 2026 22 articles 1 court case 1 activity report (70 pages) 2 papers (64 pages and 60 pages)

0 views
ava's blog Yesterday

beware of EU-washing

Among all this talk of European sovereignty and switching to European alternatives in a move to better privacy and less support of Big Tech, I wish for more emphasis on not just blindly copying US products and slapping an EU label on it. I see news like the Germany’s Federal Office for the Protection of the Constitution backing away from using Palantir and using a software solution from France instead. I’m supposed to feel happy reading this, and admittedly I did not yet dig into ArgonOS deeply - but all I can think of as a first reaction is “I don’t want an EU version of Palantir.” I don’t want ‘GDPR-compliant’ facial recognition and behavioral surveillance in our cities. I don’t want more privacy-friendly warfare (???). I don’t want more tech-enabled discrimination from next door. I don’t want supposedly European alternative that’s still based on AWS and Microslop. We need to be critical and take a stand against EU-washing, in which unethical business concepts or structures get painted in a more ethical light using the (increasingly less warranted) good reputation of the EU about human rights. We aren’t better for being from a different area, or just because it’s a different company name slapped on; it’s because we are supposed to have strong consumer protections and rights, resist the promise of easy money through unlimited data mining, and stand up against fascism. I don’t want us to compete with evil; I don’t want us to stoop to that level at all. Go hard on these copycats. Taking concepts from Fascism Land isn’t worthy of praise and they don’t deserve you as a customer or fan. Make them prove it first and ask them the hard questions. Boycott their shit if it is the same garbage, go to protests, write to representatives, be vocal online, support NGO’s that work against this. No one gets a pass for being European. I won’t lower my standards and values. Reply via email Published 24 May, 2026

0 views
Unsung Yesterday

FAIL_MAIL_OVER_500_MILES=TRUE

Here’s a 2002 story from a younger internet, by programmer Trey Harris ( link to the original and if you don’t like the classic Usenet formatting – my browser’s reader mode can’t even prettify it! – here’s a nicer-looking format ): “We’re having a problem sending email out of the department.” “What’s the problem?” I asked. “We can’t send mail more than 500 miles,” the chairman explained. I choked on my latte. “Come again?” “We can’t send mail farther than 500 miles from here,” he repeated. “A little bit more, actually. Call it 520 miles. But no farther.” It would be easy to assume this is a classic case of pebkac , “problem exists between keyboard and chair,” the derisive term used (supposedly!) by support people, describing naïve public who had a tenuous grasp of technological reality. But the story goes to an unexpected place. This might be the most widely-shared computer bug story of all time I’ve seen – I just saw a comment from 2008 calling it “oldie but a goodie,“ and it even has a FAQ page that’s actually a really great read. There’s quite a bit of chatter inside about something important to me: the balance between the needs of good storytelling and going deep into technical details: In the story, I make it sound like it took all of ten minutes from being made aware of the 500-mile email limit and determining a 3 ms light-speed issue. In fact, this took several hours, and quite a bit of detective work. The point is, eventually I came up with that figure, ran units, and gagged on my latte. You can sense author’s frustration with every nerd trying to “gotcha” him instead of just enjoying the story. Even a younger internet wasn’t without faults. #bug deep dives #bugs #change management #storytelling #web

0 views
./techtipsy Yesterday

You can run Forza Horizon 6 on an unsupported AMD RX 400/500 series GPU on SteamOS

This post serves as a personal bookmark and a mirror of this fantastic guide by Ok-Pace-1900 on /r/linux_gaming to ensure that this information does not get lost. I learned the hard way that the GPU I have in a DIY Steam Machine PC, the AMD RX 480, is strictly unsupported by Forza Horizon 6. Forza Horizon 6 will not work for AMD users with GPUs based on the Polaris or Vega architectures and older (for example Radeon 400 and 500 series players). These architectures are below our minimum supported specification. I knew that asking for a refund on Steam would be the easy way out. Deciding against it, I did a quick search for the FH201 error code and stumbled on the Reddit post mentioned above. My CPU is good enough for Forza Horizon 6 (Intel i5-10500), so the additional launch options command that worked for me is the following: Simple fix, but the context around this is actually kind of funny. The way a lot of Windows-only games work on SteamOS is via a translation layer referred to as Proton. With this trick, you can pretend that your GPU has some DirectX features that it actually does not have, but it doesn’t matter since it can be successfully emulated via translation to Vulkan, which the GPU supports well! As a result, I can play Forza Horizon 6 on a hacky SteamOS build, with 1080p low or medium settings. Low settings is a 60 FPS experience, with medium settings some areas like Tokyo can struggle a bit and drop below it to ~40 FPS. Now all I need to do is to get rid of the urge to splurge on a great GPU, which would also require a case and PSU upgrade… Slightly off-topic, but can you monitor your gaming PC via Prometheus Node Exporter and visualize it in Grafana? :)

0 views

Building Pi With Pi

Pi is now part of Earendil, but in the important sense it is still Mario’s project. He has been living with its issue tracker longer than I have, and he has been exposed to the weirdness of the new form of agent traffic in Open Source projects for longer too. This post is mostly a reflection of my own experience after spending more time in the tracker, using Pi to work on Pi, and watching what I have learned about it so far. Unsurprisingly, we are using Pi to build Pi. That sounds like a cute dogfooding thing but it really helps understand what we do. An interesting effect of building with agents is that it changes the role of the issue tracker a tiny bit. The issue descriptions are not just messages from a user to a maintainer because we also use them as inputs for prompts in Pi sessions. It is something I might hand to my clanker 1 and say: “understand this, reproduce it, inspect the code, and propose a fix.” That means the shape of the issue matters in a new way. A bad issue was always annoying, but at least a lot of issues were vague. Now we are also dealing with a class of issues that are 5% human and 95% clanker-generated and largely inaccurate shit. A bad issue that contains a plausible but wrong diagnosis creates extra work. The most frustrating failure mode right now is that people submit issues that are not in their own voice. They contain an observed problem somewhere, but it has been thrown into a clanker and the clanker reworded it and made a huge mess of it. Typically, it was prompted so badly that the conclusions produced are more often than not inaccurate but always full of confidence. The result is complete guesswork on root causes, fake-minimal repros, suggested implementation strategies, analogies to adjacent but often the wrong code, and long lists of error classes that might or might not matter. That is worse than no diagnosis. I don’t want to point to specific issues because I really do not want to bad mouth anyone, but it is frustrating. It is also frustrating because when I give that issue to Pi, Pi sees the wrong diagnosis too. It does not treat the issue body as a rumor. It treats it as evidence. It will happily go down the path that the issue already prepared for it, because the prose is confident and the code references look plausible. We use a custom slash command called , which specifically has this instruction in it: Do not trust analysis written in the issue. Independently verify behavior and derive your own analysis from the code and execution path. Unfortunately, it does not fully work, because when humans first throw their issue through the clanker wringer, their clanker expands scope almost immediately. What was once a very narrow and fact based bug observation, turns into a much expanded surface area full of hypotheses. So at least personally, I increasingly want issue reports to be condensed to what the human actually observed: That is enough. If you used an LLM to understand the problem, great, maybe leave it as a follow-up comment. But the issue and the issue text should be something you own. If you do not know the root cause, say that. I too can operate a clanker, and I would rather do this myself than use your slop. If your repro is a guess, say that. If the only hard fact is one stack trace, give me the stack trace and stop there. That we’re seeing issues full of slop is just a result of the present day quality of these machines. Sadly, their failures in creating good issues extend to a lot of code that is generated. Not all of it, but a lot of code. Over and over I keep running into them over-engineering the hell out of issues and implementations. If you tell them that “this malformed session log crashes the reader,” the clanker will often add a tolerant reader. Then it will add a fallback, then maybe a migration, then more debug output, then a test for all of this. None of this is necessarily wrong in isolation, but it can be the wrong move for the system. At Pi’s core is a rather well-designed session log with invariants that must be upheld. The clanker’s present-day behavior is to just assume that no such invariants exist, and instead to make the system work with all kinds of malformedness, blowing up the complexity in the process. Almost always, the correct fix is not to handle the bad state, but to make the bad state impossible. This matters a lot for persisted data such as Pi session logs. They are opened, branched, compacted, exported, shared, and analyzed. The goal here is to never write bad session data. Yet if you just let the clanker roam freely, it will attempt to handle every case of bad data in the session log with a more permissive reader. I have complained about this plenty, but working on Pi’s code base continues to reinforce the point. This is one of the ways LLM authored code grows so much needless complexity. All these models see a local failure and try to locally defend against it. As maintainers we have to keep pulling the conversation back to the global invariant, which is harder than it should be, and it’s laborious. Then there is the issue of volume. The tracker is receiving a lot of issues and PRs, and a significant fraction of them are clearly LLM-assisted. Some are good, none are excellent, and most are just bad. The total throughput is a maintenance problem by itself. As you might know, Pi’s issue tracker is automated to close all issues and pull requests from new contributors, and there is a manual process by which we might reopen some of them or approve individuals. So auto-close -> reopen -> close again is an interesting statistic for us to look at. I pulled the public GitHub tracker data while writing this over the last 90 days. Excluding Earendil members, that leaves 3,145 external issues and pull requests. Of those, 2,504 were auto-closed because they were from non-approved individuals. 17% were reopened. For pull requests the number is worse: less than 10% were merged. Many of the issues and PRs are complete slop and in some cases the humans did not even realize that they created them. Sources of low-quality spam include OpenClaw instances, as well as some skills that people put into their context that seemingly encourage issue creation. GitHub clearly is not built to deal with this new form of Open Source, but I’m increasingly feeling the need to put the blame less on GitHub than on all the people involved who make that experience painful. If your clanker shits on someone else’s issue tracker then it’s not the fault of GitHub, it’s yours alone. Pi might be built with Pi, but we’re quite far off today from where Bun and OpenClaw already are: fully detached, automated software engineering. Maybe we will reach that point, I don’t know. Today it does not seem like we know how to pull off a dark factory and we also don’t yet have the desire. That said, there is quite a bit of parallelism going on, and it is mostly for reproducing issues. The small setup we use for this is three tiny pieces in Pi’s own committed folder. (for analyze is sue) is a prompt for analyzing GitHub issues: it labels and assigns the issue, reads the full thread and links, then explicitly tells the agent not to trust the analysis in the issue and to derive its own diagnosis from the code. Then an extension adds a which watches the prompt before the agent starts, recognizes the GitHub issue or PR URL that (or the PR equivalent) put into the prompt, fetches the title and author with , renders that in a little UI widget, and renames the session. It also rebuilds that state on session start or session switch, so if we reopen an older investigation the window still tells the developer which issue it belongs to. In practice this means it’s possible to have several Pi windows open, each running against a different issue, and the UI keeps the investigations visually distinct while the agents do their independent reproduction and code reading. Once the investigations are done, one can work through them sequentially. To finish off everything, ( wr ap it up) is the matching wrap-up prompt: it infers the GitHub context from the session, updates the changelog, drafts or posts the final issue comment with a disclaimer, commits only the files changed in that session, adds the appropriate when there is exactly one issue, and pushes from . You will have noticed this already but Open Source in a post-AI world is under a strange new pressure. We are getting more code, more projects, and more issues. Projects appear with no real users, or a temporary audience of one, and even projects with thousands of stars can have a shelf life of weeks. For us, Pi’s harness layer is worth maintaining carefully because it solves hard coordination problems and creates a platform we and others can build on. We also know that coordination and cooperation lifts us all up. Many times the right answer is not to work around a problem locally, but to make the upstream behavior correct. Mario has been very good at refusing to make Pi paper over every misconfigured gateway, and we’re trying to preserve that discipline. When a gateway behaves correctly, everybody benefits. Sadly that type of thinking is quickly disappearing because these machines make local workarounds cheap, so code accumulates local defenses against every misbehavior. Instead of humans talking to humans about where a fix belongs, one human and one machine work around the problem in isolation. Keep in mind that AI has not increased the number of people who need software, or the number of maintainers who can review it. It has mostly increased the amount of code and the number of projects competing for attention. Some of that is healthy, but a lot of it fragments effort that should be shared. We need stronger foundations, not weaker ones. Open Source needs more collaboration, not more isolated work with a machine. Human communication is hard, and it is tempting to avoid it when you can sit alone with your clanker. But isolation is not where Open Source derives its value. The value is in the community and the structure that lets projects outlive their original creators. To me, clanker is a much preferable term for agent. Agency lies with humans, not with machines. Calling these things agents I still believe is a mistake, but alas. ↩ I ran this command. I expected this to happen. This happened instead. Here is the exact error or log. To me, clanker is a much preferable term for agent. Agency lies with humans, not with machines. Calling these things agents I still believe is a mistake, but alas. ↩

0 views
Susam Pal Yesterday

Childhood Computing

I recently stumbled upon a nice blog post titled Childhood Computing . It made me think about my own childhood computing experience. I am much older than the author of the aforementioned post but like them, I love computers too. I have for most of my life. When I was about eight years old, my parents decided to transfer me to a new school because of its curriculum. They did not know it then, and it probably did not even matter to them, but this new school had a computer lab. That was quite remarkable for its time. I grew up in a very tiny industrial town. The computers in the lab were hand-me-downs from the silica factory around which the town was built. We got only about two hours of time per month in the computer lab but the little time I got there opened up a whole new world for me. Before entering the lab, we had to leave our shoes at the door. 'These are expensive machines. We must keep them free of dust', our teacher would say. It was a ritual. The computers were very old IBM PC compatible machines, mostly with monochrome cathode-ray tube (CRT) monitors. They had no hard disks at all. They had a few hundred kilobytes of RAM. Every time, we performed the same ritual. Insert a 5¼-inch floppy disk to load MS-DOS into memory. Then insert another disk to load LOGO. Then write small LOGO programs and watch the turtle move. I have written more about that early LOGO programming experience here: FD 100 . Further, since there were no hard disks and storage was at a premium, nothing was ever saved. The moment you turned off the computer, all your work vanished. So saving a program meant literally writing the program down in a physical notebook. Since I got so little time with an actual computer, most of my Logo programming happened with pen and paper at home. I would 'test' my programs by tracing the results on graph paper. Eventually, I would get about thirty minutes of actual computer time in the lab to run them for real. One particular Logo program I still remember very well drew a house with animated dashed lines, where the dashes moved around the outline of the house. Everyone around me loved it, copied it and tweaked it to change the colours, alter the details and add their own little touches. That must have been my first 'free and open source software'. The 'licence' was 'do whatever you want but show me if you make any interesting modifications'. Occasionally, when we successfully completed the Logo programming exercises our teacher set us as challenges, he would let us play computer games too. The first computer game I ever played was Moon Bugs. Space Invaders, Bricks, Dangerous Dave and others were some of my other favourites. Space Invaders inspired me to write my own game but the little GW-BASIC programming I knew back then and the very limited access to computers I had then were insufficient to write anything more sophisticated than simple text-based input/output programs. But eventually, as an adult, I did manage to write an invaders-like game, which you can find here: Andromeda Invaders . Writing this game fulfilled a childhood dream! One of my buddies liked the game called Digger developed by Windmill Software. It soon became my favourite as well. The game came in a self-booting disk, so we did not have to go through the elaborate ritual of first inserting a floppy disk to load DOS. We could insert the Digger floppy disk directly and the computer would boot and start the game immediately. Another computer game I remember fondly was Grand Prix Circuit by Accolade. I really loved typing the command to launch the game, knowing that in a moment I will be greeted with its excellent opening music. Grand Prix Circuit blew my mind. As a child who only knew how to draw basic two-dimensional geometrical shapes with Logo and GW-BASIC, I found it astounding that a computer program could create a projection of a three-dimensional fictional world that you could navigate with keyboard inputs. How was it even possible, I wondered. It has been over 30 years since then, but the memories and the feelings still remain fresh in my mind. There are times when I can close my eyes and recall the buzzing sound of the dozen or so computers running in the lab, the beeps from the power-on self-tests (POST) and the distinctive, strangely pleasant smell of the closed, air-conditioned room. For some reason, that smell is one of the strongest memories I have from those days. I have never been able to describe it well, but once in a while I encounter it in very unexpected places, like a corridor somewhere, or a store, and it takes me right back to those early days of childhood computing. Those childhood computing experiences form some of my strongest and most vivid memories. They were such magical experiences, full of wonder and exploration. Read on website | #miscellaneous

0 views
@hannahilea 2 days ago

Text of the wild: Receive notifications from your BirdNET-Pi via ntfy

Tutorial for configuring a BirdNET-Pi with ntfy to send push notifications whenever a rare-to-you bird starts yelling

0 views
Unsung 2 days ago

“Why pay for an orchestra when your computer can do it all?”

A delightful 24-minute video from ToffeeBun about sampling in videogame music and how it changed over the years: = 2x) and (width >= 700px)" srcset="https://unsung.aresluna.org/_media/why-pay-for-an-orchestra-when-your-computer-can-do-it-all/yt1.2096w.avif" type="image/avif"> = 3x) or (width >= 700px)" srcset="https://unsung.aresluna.org/_media/why-pay-for-an-orchestra-when-your-computer-can-do-it-all/yt1.1600w.avif" type="image/avif"> The video helped me understand the difference between tunes purely synthesized from soundchips, those sequenced with samples (e.g. MIDI or sound trackers), and those that are completely “streamed” (e.g. MP3). It’s stuff in between that’s the most interesting – it always is – with really surprising sources of samples (and, surprising samples!) needed to “perform” sequenced music. The video itself is frenetically edited, and the opposite of “dry” (which I mean as a compliment). #games #sound design #youtube

0 views
ava's blog 2 days ago

computers, privacy and data protection conference 2026

I attended the Computers, Privacy and Data Protection Conference (CPDP) in Brussels for the first time. The conference has lots of different rooms mostly in the same building where multiple panels, workshops and other things are happening at the same time in specific slots, so you gotta choose what you participate in (was difficult at times!). Next to that, you have some fun rooms, some quiet working spaces and spaces to just hang out and talk. Based on the programme, the focus this year was definitely on age verification/youth 'protection', human AI relationships, consumer rights and marginalized groups. Lots of different groups and people present; people from the EU Commission and Parliament, AlgorithmWatch , Bits of Freedom , noyb and Max Schrems, IGLYO , EDRi , Equilabs , Equinox Initiative for Racial Justice , INTITEC , the EDPS and Wojciech Wiewiórowski, Privacy International , the International Committee of the Red Cross , the Office of the United Nations High Commissioner for Human Rights , the European Consumer Organization (BEUC), Future of Privacy Forum , AIRegulation.com , data protection authorities of different countries (CNIL, BFDI, etc.), ALTI , European Disability Forum , d.pia.lab , AI Now Institute , OECD , the IAPP , and all kinds of universities, plus companies like Mozilla, Mastodon, Signal, Wikimedia, Microslop, Uber, TikTok, Google and more. I was there for the opening remarks, then went on to visit: My takeaways/new things learned: Microsoft co-wrote parts of the EU's Energy Efficiency Directive , which allows data centers to keep their energy use confidential under the guise of business secrecy. The draft literally had paragraph's of Microsoft's proposal copied in unchanged. The Dutch government used racial/ethnic profiling via algorithms in the assessment of childcare benefit applications, which led to false allegations of fraud against thousands of families, particularly affecting those from ethnic minorities. I heard about this before, but learned more about it that day. To contest it all and defend democracy, we all need to train our AI literacy skills , support and have good tech journalism that questions and exposes it all (404media is, imo, a good example of what they meant), crafting and changing the social media narrative around AI and Big Tech, listening to affected people, demanding transparency via standards and audits etc. We cannot forget that officials know ; many of the effects we criticize are not accidents or side effects, they are the entire point. Like when tech predominately negatively targets marginalized communities, this is a bonus to people in power, and nothing to be fixed. Workers can resist by reminding their leaders of the liabilities and legal risks, strategic issues, money issues etc. that AI brings; demand specific definition of the needs that AI will fulfill at the workplace, instead of letting AI become the purpose instead of the tool. Age verification is racist and migrantphobic : Many people have issues with their ID, or have none, or are undocumented, and age verification in their country requires them to have contact with officials, police, etc. Age verification is transphobic : Relying on ID means many trans people are forced to reveal their deadname or are forced to come out, as it reveals they are trans if the ID is not or cannot be updated. The platforms are harmful, but we have so many ways and ideas against that that doesn't take away important spaces and support groups or bar entire groups of people. Age verification makes it possible for platforms to avoid working on their problems and becoming better, enables avoiding legislation and regulation, and enables control and surveillance by them; meanwhile, the truth is that you don't suddenly turn 16-18 and know how to handle porn, gore, harassment and all other negative parts of social media. The negative sides to social media that are named as the reason for age verification and banning of social media for specific age groups also affect adults negatively . We need to put more effort into education on how to handle these things. Yes, we can protect children's privacy by banning them off of platforms, but this also affects their other (digital and offline) rights, and privacy rights don't trump all . Children and teens should learn and be encouraged to control their own spaces and moderation via FOSS : Matrix, Mastodon, etc. where they can also seclude from adults and aren't reliant on Big Tech. Age verification and banning would take this away from them and also make it harder for FOSS projects. If children only ever enter the political discourse as victims, the only response can be rescue; that it why we have to make sure they enter as participants. Protection is not (just) space away from the risk, but confronting the systems that cause harm and eliminating them. 16-18% of US citizens report having engaged romantically with a bot, 45% of them said it made them feel more understood, 36% said it gave them stronger emotional support than their human partner. Problem: Current version of AI Act doesn't cover romantic and sexual use, no guidance for safeguards for emotionally responsive AI systems that protects around the risk of suicide, crimes, distress when service slows down or shuts down or model changes, discrimination as you get more if you pay etc.; drafts mention some of it now in Art. 50. With all the talk around becoming emotionally dependent on AI, nudging into harmful behaviors, etc. we cannot forget that you are also vulnerable on other services and in human romantic relationships, where the same routinely happens (weak argument, but to be fair, I also often forget this). We also cannot forget that it is not always a replacement - it often just supplements social life, and there are also surprisingly many people who just don't want or need romantic or sexual relations with a human ; they want bots specifically , and only bots. Disclosure agreements (meaning: labels everywhere that this is just a bot and not real) are most often useless, because people know and intentionally seek it out (exception for Insta/Snap DMs etc.) The latter about Human-AI intimacy was extra interesting because it had someone on the panel who directly works with people who use bots for romance and sex, and her experience has been mostly positive and that it helps her clients. Afterwards, I sadly was too overwhelmed, exhausted and in pain to continue and went back to the apartment to rest. Unfortunately, all the stress around the apartment and the generally more exhausting day triggered my digestive tract badly (Crohn's disease), but within the first few hours, all toilets in the venue were out of service due to an issue outside the venue or the organizer's control, and the alternative toilets were much further away. I didn't wanna have to deal with that with upset intestines. I missed the ' Designing Fairness ' Workshop, and the ' Consumer Rights at the age of acceleration' panel. Didn't meet anyone that day. Look at this ridiculous Gemini Photobooth they had that I saw no one use in the entire 3 days. This day, I managed to attend everything on my list, thankfully, as I felt a bit better. I attended: My takeaways/new things learned: The digital omnibus is mostly there to enable AI made in Europe to aid sovereignty and be competitive with US and China; AI here needs a framework to access data without much regulatory risk - that is what the EU Commission person said. Enforcing the law and and making it sharper is actually leveling the playing field and furthering innovation, because there is a massive power concentration of a handful companies that can do what they want, barely pay fines, have the fines suspended because of the US government bargaining with the EU, or who see them as a cost of doing business. Competition is impacted this way, as small companies are hit harder than the big ones. If the omnibus goes through with changing definitions of personal data etc., it will take years for case law, literature, standards etc. to catch up, it wastes money in companies who need to re-do everything to comply; so it doesn't simplify anything and makes praxis harder. You may set ChatGPT/Claude/Gemini etc. to not send feedback or training data in your settings, but when you react thumbs down/up to their request of whether the output was good or not, or choose between two different versions, the entire chat log until then gets sent for training and potential human review. So, these popup feedbacks override your settings . I need to read more papers by Theodore Christakis. Here is one of them. US and UK discovery and disclosure laws/principles go directly against EU data minimization principles; as long as data is relevant to a case it should be accessible, which is why in their cases, they can just have access to million's of people's data if necessary, and in a divorce case, they have the right to ask for AI chatlogs. There is no AI protection or privilege: If you use AI for legal stuff, you have no expectation of confidentiality like you would with a lawyer, so it is not safe from discovery. There is tension between tracking for harmful behavior/threats vs. data privacy rights ; what if someone threatens to kill themselves, kill others, etc.? Should company look for it, track it, report it, alert anyone, suspend the account, send help resources? Still unclear. There is also tension between people wanting the bonus features/ease of use coming from pesonalization and free services, while also not wanting to be tracked or charged. Advertisers see themselves as enablers of a good thing, as people want fitting ads, good algorithms, good suggestions, and free access; so if their business model is challenged or fails, people will have worse access and worse user experiences in their view. They also fear that if their business model is hindered, things will move into a more extreme, embedded, hard to avoid direction that you don't control or decide (Black Mirror ad type of stuff). I previously wrote about Consenter on the blog, and one panel had people from it there and showing screenshots; changed my mind on it a lot and made me understand the new features and goal better, I will probably write an update on it some time. We have different other options all covering something different about tracking, cookies, consent, or going about things differently, old and new: ADPC, GPC, ConStand, Global Privacy Control, DoNotTrack etc.; important for new stuff is granular consent, sent to the website, user given explanations etc. Uninformed decisions and bad practices lead to unfair competition ; bad actors erode trust level overall, so users resignate, experience fatigue and say yes in the same rates between "good" and "bad" services. Will read soon: Our data after us by the CNIL , and future release: Model rules on succession and access to digital remains by Eigenmann und Harbinja Digital remains can be split into assets (copyright, crypto, business tools, money), personal (messages, photos, identities, AI replicas), and third party data. GDPR only addresses living people; dead people's digital remains are subject to member state laws. There might be a need for something harmonized and European, though. For good digital hygiene , we should remember death and make it as easy as possible or sensible for the people we leave behind to get the access they need to manage our stuff how we want them to. Leave instructions, set emergency/legacy access when available (Google, Facebook, Instagram and Apple have it), include digital assets in your will, decide how your data is allowed to be used after death, especially around AI replicas. Hospice, nurses, families etc. should learn to ask affected parties about these things. Thanks to the focus on agentic AI, there is massive need for inference compute, which is super expensive. Almost all of it is in the control of, or can only be afforded by, the hyperscalers. At the same time, anything that seeks to enable or disable things for AI agents on the web can also affect accessibility programs like screen readers. It is in the best interest of the Big Tech companies to keep things individual, because it distracts from the collective issues and changes they'd have to do; it is easier to blame the person for agreeing to tracking than make sweeping changes to how much can be tracked. Individual consent doesn't consider the fact that data doesn't just affect you, but reveals things about your family, friends, partners, coworkers and more, as data is deeply interconnected. If your friend agrees to share his data and it also includes you, that is your data, still going to the service you'd have disagreed to. We as users have no collective bargaining tools yet; even big worker unions aren't negotiating with Microsoft about the terms of their employer using Microsoft Teams, when they actually should. We should also build up data unions made from users who bargain with the platforms. Strikes could look like boycotting the service, blocking trackers, scrambling data, massive amounts of access requests etc. Look into something called a Worker Data Trust ; this was used to prove Uber's predatory dynamic pricing (Worker's Info Exchange). Lots of workers made access requests, the data was combined and analyzed by researchers. After a failed attempt to meet up during lunch, I managed to meet up with another Country Reporter from noyb for a little while until the next panel happened, and sadly we didn't go to the same one. At this point, I was miffed about lunch at the conference. They made a big deal at registration about how the event will be mostly vegan and vegetarian to offset the climate impact of everyone traveling there, and they asked you to select your preference. I chose vegan. But for the entire three days, the food wasn't clearly labeled, some food was mislabeled as vegan when it wasn't, and there was way too little of it and wasn't restocked. It was more like "vegetarian snacks for birds". Vegan people had no warm food option at all, just sandwiches or wraps all three days that would have been enough for maybe 10 people. I mostly starved and I accidentally ate real cheese one time too because the food situation was so confusing. Here was one of the buffet menu cards, which were a bit to the side removed from the food, partially hidden by other stuff, and incorrect (anything with lactose is not vegan). I have no idea how, on a sea of silver platters with lots of bread, I am supposed to be able to differentiate the vegan gluten free bread option and the vegetarian gluten free bread that has scarmoza (italian cheese). It was a roundtable buffet, so everyone was waiting on you to hurry and grabbing stuff; I can't just grab bread and lift off the top to see the ingredients and then put it back, man. At least group the vegan stuff together or put labels directly in front of each thing. Also, while I am not reliant on gluten-free food, I think the people sensitive to it or having celiac disease don't appreciate that either. I skipped the Cocktail parties and big CPDP party, because it's not really feeling fun when you don't drink alcohol, have trouble just going up to people with your mask and hoping they hear you, and have no one to meet or go with. Last day was rather empty in the programme, so I arrived later and left earlier. I attended: My takeaways/new things learned: The AI warfare one was a bit of a letdown, because they all just accepted war as a right, an inevitable thing that has to happen. There was not even a nuance of fighting war itself, or banning AI weapons, etc; it focused more on the dual nature of the data , in which through surveillance, tracking, etc. not only can military use it to target people, NGO's and others can use it to warn, evacuate, render humanitarian aid etc. and document realities on the battlefield. There was also no possibility for the idea that we could enter an age where drones fight drones automatically and no one needs to get hurt or be traumatized or get to kill people like a game, and that is only because everyone is so attached to the idea that war has to have human casualties. It's hard to legislate and restrict because the data is taken from a whole ecosystem : Telecommunications, cloud services, civilian infrastructure, social media etc. and most of the data is collected during times of peace. Warfare is often explained with national security as a reason, which then again is a legitimate interest or fulfills other opening clauses in data protection and privacy laws. It is a problem that the richest men in the world, close to the US admin, lead the biggest companies worldwide, almost all in the US, and control almost all of AI and AI warfare. Project Maven from 2017 was continuously developed on and is now the Maven Smart System , which was used in Venezuela and Iran recently. Our Art. 15 GDPR right of access as it is right now is making up for Germany and Austria's lack of discovery and disclosure rights respectively. Controllers can usually drag stuff out, cite trade secrets and rights of others to evade data access, but the data subject barely has any power. Not having to justify the access request and it not having to be limited to data protection rights is good in this regard and needs to be kept up. Otherwise, also too much confusion and court cases whether a request was abusive or not if now, any request for a court case instead of privacy rights is deemed possibly abusive. We don't only need to focus on reidentification in general, but about the ability to single people's data out; you might not be able to identify them, but you can build a profile anyway. Learned about the term digital twin , or in terms of user data, a data twin that can be used for similation and is similar enough. AI-act-standards.com exists. Many don't know that the AI Act isn't a GDPR for AI, but serves more as market classification, as it sorts AI into different boxes who have to fulfill different requirements. The details of these requirements are/will be set with CEN/ISO standards and frameworks . You can see the progress of development on these standards on that website, and what they cover and how they interact. Hovering over the elements gives additional info. This is done by the JTC21 , and you can also get involved by registering with your national standardization body (in Germany, this is DIN) or when they do public consultations. Disabled people experience both extremes of AI - better accessibility options, often more reliant on AI, so also more subject to surveillance and having their privacy rights violated, while bad governments can use the data to harm disabled people, all under the guise of research. Marginalized groups are often the first trial group in anything, while not being stakeholders in the tech, or even invited to the table. See: AI used in immigration etc. and with deregulation and AI everywhere, we see a loss of reasonable suspicion thresholds in law enforcement and other groups. Learned about adversarial auditing . The previous two days, I did the whole fancy dress pants and blazer thing (one black blazer, one dark red/purple blazer), but for the last day and the drive home, I wore my Bearblog shirt and wide orange jeans: Someone from noyb staff thankfully recognized me and approached me, so we talked for a bit until he had to leave for another lunch meeting. That concludes the human contact I had. And then I left to drive home with my wife. She will hopefully soon write a guest post on my blog about how she navigates a new city in another country without mobile data/a smartphone (she has a tablet with WiFi only), because while I was at the conference, she explored the city on her own. It's kind of difficult to show up to these conferences as someone who isn't sent there for work, who doesn't have coworkers or ex-coworkers also attending, and who doesn't have much or any industry contacts yet. Most people there know each other from work or previous/other conferences, and I don't. These events are primarily for networking, keeping in touch, and talking about what you have seen and learned though. I couldn't discuss anything with anybody present, and it made me feel really lonely and silly. Just going up to people and striking up a conversation is not my strong suit, and it's something I am working on and has already gotten better, but the mask I am usually wearing in these big crowds and gatherings because I am on immunosuppressive medication is actively keeping me isolated. I know people have trouble understanding me, can't see me smiling at them, and think I am sick, so that keeps both sides hesitant. Unfortunately, if I attend next year, I will have to leave away the mask and maybe try out these protective sprays for nose and throat that are supposed to reduce viral load. It seems like you can only 'afford' to wear a mask if you are already in a group of people. Weeks before the event, I asked some people if they would attend, they said they will and we had a group chat of 10 to coordinate meetups. But during the entire conference, I was the only one trying to make something happen - saying where I am/where I will be, identifiers you could spot me with (as we never met before and you can't see name tags well on the lanyard), meeting points etc. and the two people mentioned were the only ones who took me up on it. The others just ghosted me/ignored my messages. That saddened me a lot during the conference. And unfortunately, these types of events are always really exhausting to me beyond the normal amount everyone experiences, because of things that trigger my conditions, my lower energy, my needs to lie down sometimes, sensory issues, food restrictions etc. so I really have to weigh if it's worth it to me. I'm not sure it is, without the social aspect. Many of the panels I chose had an issue of being not well organized. Instead of short speaker times, precise audience questions, interactions, dialogue, disagreements, different sides, answering the panel's topic and offering solutions etc., it often resulted in every speaker having a 10 minute monologue saying their peace, the other speakers not reacting or intervening because it's too much, everyone more or less saying the same thing or zoning out, and then having too little time to really give much attention to audience questions. Some gathered audience questions to answer them in batches and predictably, that resulted in nuance being lost and almost nothing being precisely answered. From many panels, I walked away with less learned than I wanted to, and just being reaffirmed in what everyone knew already. There were almost no further or new resources, or real takeaways of what the next steps should be and how we can tackle or solve an issue. They say " there should be more transparency " but not how we ask for it, how we legislate it, how it should happen. It's often just a vague " Someone should do more of something, and fast. " It was easy for people from the EU Commission to dodge mine and others' questions about the omnibus bullshit with no convincing answer. (: It disillusioned me a bit about my own goal to be speaking at a panel one day, because so often it felt like it was just there to platform someone to give them a chance to ramble and that's it, or just so that they can put this on their CV. Looking into the panelists, so many of them are genuinely great, very accomplished and admirable people with a lot of expertise, but the way things were set up, it couldn't shine through. You would have been better off talking to them directly. As a final bonus for reading this far, help me delete this (fortune) cookie. Reply via email Published 23 May, 2026 Contesting AI & Defending Democracy ; Possibilities for European AI Futures ( x ) Youth protection through inclusion and empowerment : a rebuttal of the exclusion-based narrative ( x ) Intimacy by Design: Governing Human AI relationships ( x ) Microsoft co-wrote parts of the EU's Energy Efficiency Directive , which allows data centers to keep their energy use confidential under the guise of business secrecy. The draft literally had paragraph's of Microsoft's proposal copied in unchanged. The Dutch government used racial/ethnic profiling via algorithms in the assessment of childcare benefit applications, which led to false allegations of fraud against thousands of families, particularly affecting those from ethnic minorities. I heard about this before, but learned more about it that day. To contest it all and defend democracy, we all need to train our AI literacy skills , support and have good tech journalism that questions and exposes it all (404media is, imo, a good example of what they meant), crafting and changing the social media narrative around AI and Big Tech, listening to affected people, demanding transparency via standards and audits etc. We cannot forget that officials know ; many of the effects we criticize are not accidents or side effects, they are the entire point. Like when tech predominately negatively targets marginalized communities, this is a bonus to people in power, and nothing to be fixed. Workers can resist by reminding their leaders of the liabilities and legal risks, strategic issues, money issues etc. that AI brings; demand specific definition of the needs that AI will fulfill at the workplace, instead of letting AI become the purpose instead of the tool. Age verification is racist and migrantphobic : Many people have issues with their ID, or have none, or are undocumented, and age verification in their country requires them to have contact with officials, police, etc. Age verification is transphobic : Relying on ID means many trans people are forced to reveal their deadname or are forced to come out, as it reveals they are trans if the ID is not or cannot be updated. The platforms are harmful, but we have so many ways and ideas against that that doesn't take away important spaces and support groups or bar entire groups of people. Age verification makes it possible for platforms to avoid working on their problems and becoming better, enables avoiding legislation and regulation, and enables control and surveillance by them; meanwhile, the truth is that you don't suddenly turn 16-18 and know how to handle porn, gore, harassment and all other negative parts of social media. The negative sides to social media that are named as the reason for age verification and banning of social media for specific age groups also affect adults negatively . We need to put more effort into education on how to handle these things. Yes, we can protect children's privacy by banning them off of platforms, but this also affects their other (digital and offline) rights, and privacy rights don't trump all . Children and teens should learn and be encouraged to control their own spaces and moderation via FOSS : Matrix, Mastodon, etc. where they can also seclude from adults and aren't reliant on Big Tech. Age verification and banning would take this away from them and also make it harder for FOSS projects. If children only ever enter the political discourse as victims, the only response can be rescue; that it why we have to make sure they enter as participants. Protection is not (just) space away from the risk, but confronting the systems that cause harm and eliminating them. 16-18% of US citizens report having engaged romantically with a bot, 45% of them said it made them feel more understood, 36% said it gave them stronger emotional support than their human partner. Problem: Current version of AI Act doesn't cover romantic and sexual use, no guidance for safeguards for emotionally responsive AI systems that protects around the risk of suicide, crimes, distress when service slows down or shuts down or model changes, discrimination as you get more if you pay etc.; drafts mention some of it now in Art. 50. With all the talk around becoming emotionally dependent on AI, nudging into harmful behaviors, etc. we cannot forget that you are also vulnerable on other services and in human romantic relationships, where the same routinely happens (weak argument, but to be fair, I also often forget this). We also cannot forget that it is not always a replacement - it often just supplements social life, and there are also surprisingly many people who just don't want or need romantic or sexual relations with a human ; they want bots specifically , and only bots. Disclosure agreements (meaning: labels everywhere that this is just a bot and not real) are most often useless, because people know and intentionally seek it out (exception for Insta/Snap DMs etc.) Simplification for Whom? Unpacking the Consumer Impact of the Digital Omnibus ( x ) My Chatbot, My Confidant: Protecting User Privacy in Generative AI Conversations ( x ) Informed consent: The breakthrough in Art. 88b GDPR / Digital Omnibus and current initiatives in the field of PIMS and technical standardisation ( x ) Digital Legacy Beyond GDPR: Succession, Data Protection, Access Rights, and Platform Power ( x ) The Agentic Assistant: What does Big Tech’s goal of creating a universal digital intermediary mean for society? ( x ) Designing Collective Technology Governance ( x ) The digital omnibus is mostly there to enable AI made in Europe to aid sovereignty and be competitive with US and China; AI here needs a framework to access data without much regulatory risk - that is what the EU Commission person said. Enforcing the law and and making it sharper is actually leveling the playing field and furthering innovation, because there is a massive power concentration of a handful companies that can do what they want, barely pay fines, have the fines suspended because of the US government bargaining with the EU, or who see them as a cost of doing business. Competition is impacted this way, as small companies are hit harder than the big ones. If the omnibus goes through with changing definitions of personal data etc., it will take years for case law, literature, standards etc. to catch up, it wastes money in companies who need to re-do everything to comply; so it doesn't simplify anything and makes praxis harder. You may set ChatGPT/Claude/Gemini etc. to not send feedback or training data in your settings, but when you react thumbs down/up to their request of whether the output was good or not, or choose between two different versions, the entire chat log until then gets sent for training and potential human review. So, these popup feedbacks override your settings . I need to read more papers by Theodore Christakis. Here is one of them. US and UK discovery and disclosure laws/principles go directly against EU data minimization principles; as long as data is relevant to a case it should be accessible, which is why in their cases, they can just have access to million's of people's data if necessary, and in a divorce case, they have the right to ask for AI chatlogs. There is no AI protection or privilege: If you use AI for legal stuff, you have no expectation of confidentiality like you would with a lawyer, so it is not safe from discovery. There is tension between tracking for harmful behavior/threats vs. data privacy rights ; what if someone threatens to kill themselves, kill others, etc.? Should company look for it, track it, report it, alert anyone, suspend the account, send help resources? Still unclear. There is also tension between people wanting the bonus features/ease of use coming from pesonalization and free services, while also not wanting to be tracked or charged. Advertisers see themselves as enablers of a good thing, as people want fitting ads, good algorithms, good suggestions, and free access; so if their business model is challenged or fails, people will have worse access and worse user experiences in their view. They also fear that if their business model is hindered, things will move into a more extreme, embedded, hard to avoid direction that you don't control or decide (Black Mirror ad type of stuff). I previously wrote about Consenter on the blog, and one panel had people from it there and showing screenshots; changed my mind on it a lot and made me understand the new features and goal better, I will probably write an update on it some time. We have different other options all covering something different about tracking, cookies, consent, or going about things differently, old and new: ADPC, GPC, ConStand, Global Privacy Control, DoNotTrack etc.; important for new stuff is granular consent, sent to the website, user given explanations etc. Uninformed decisions and bad practices lead to unfair competition ; bad actors erode trust level overall, so users resignate, experience fatigue and say yes in the same rates between "good" and "bad" services. Will read soon: Our data after us by the CNIL , and future release: Model rules on succession and access to digital remains by Eigenmann und Harbinja Digital remains can be split into assets (copyright, crypto, business tools, money), personal (messages, photos, identities, AI replicas), and third party data. GDPR only addresses living people; dead people's digital remains are subject to member state laws. There might be a need for something harmonized and European, though. For good digital hygiene , we should remember death and make it as easy as possible or sensible for the people we leave behind to get the access they need to manage our stuff how we want them to. Leave instructions, set emergency/legacy access when available (Google, Facebook, Instagram and Apple have it), include digital assets in your will, decide how your data is allowed to be used after death, especially around AI replicas. Hospice, nurses, families etc. should learn to ask affected parties about these things. Thanks to the focus on agentic AI, there is massive need for inference compute, which is super expensive. Almost all of it is in the control of, or can only be afforded by, the hyperscalers. At the same time, anything that seeks to enable or disable things for AI agents on the web can also affect accessibility programs like screen readers. It is in the best interest of the Big Tech companies to keep things individual, because it distracts from the collective issues and changes they'd have to do; it is easier to blame the person for agreeing to tracking than make sweeping changes to how much can be tracked. Individual consent doesn't consider the fact that data doesn't just affect you, but reveals things about your family, friends, partners, coworkers and more, as data is deeply interconnected. If your friend agrees to share his data and it also includes you, that is your data, still going to the service you'd have disagreed to. We as users have no collective bargaining tools yet; even big worker unions aren't negotiating with Microsoft about the terms of their employer using Microsoft Teams, when they actually should. We should also build up data unions made from users who bargain with the platforms. Strikes could look like boycotting the service, blocking trackers, scrambling data, massive amounts of access requests etc. Look into something called a Worker Data Trust ; this was used to prove Uber's predatory dynamic pricing (Worker's Info Exchange). Lots of workers made access requests, the data was combined and analyzed by researchers. Data-driven warfare : AI, civilian risks, and corporate responsibility ( x ) Digital Omnibus meets the Charter of Fundamental Rights ( x ) Toward a Standard for Fair AI-driven Recruitment ( x ) Data protection law as a shield, not a weapon: empowering historically marginalized communities in the EU in times of de-regulation ( x ) -> this choice was especially rough, because I was also very interested in ' The U.S. Deregulatory Effect ' happening elsewhere at the same time The AI warfare one was a bit of a letdown, because they all just accepted war as a right, an inevitable thing that has to happen. There was not even a nuance of fighting war itself, or banning AI weapons, etc; it focused more on the dual nature of the data , in which through surveillance, tracking, etc. not only can military use it to target people, NGO's and others can use it to warn, evacuate, render humanitarian aid etc. and document realities on the battlefield. There was also no possibility for the idea that we could enter an age where drones fight drones automatically and no one needs to get hurt or be traumatized or get to kill people like a game, and that is only because everyone is so attached to the idea that war has to have human casualties. It's hard to legislate and restrict because the data is taken from a whole ecosystem : Telecommunications, cloud services, civilian infrastructure, social media etc. and most of the data is collected during times of peace. Warfare is often explained with national security as a reason, which then again is a legitimate interest or fulfills other opening clauses in data protection and privacy laws. It is a problem that the richest men in the world, close to the US admin, lead the biggest companies worldwide, almost all in the US, and control almost all of AI and AI warfare. Project Maven from 2017 was continuously developed on and is now the Maven Smart System , which was used in Venezuela and Iran recently. Our Art. 15 GDPR right of access as it is right now is making up for Germany and Austria's lack of discovery and disclosure rights respectively. Controllers can usually drag stuff out, cite trade secrets and rights of others to evade data access, but the data subject barely has any power. Not having to justify the access request and it not having to be limited to data protection rights is good in this regard and needs to be kept up. Otherwise, also too much confusion and court cases whether a request was abusive or not if now, any request for a court case instead of privacy rights is deemed possibly abusive. We don't only need to focus on reidentification in general, but about the ability to single people's data out; you might not be able to identify them, but you can build a profile anyway. Learned about the term digital twin , or in terms of user data, a data twin that can be used for similation and is similar enough. AI-act-standards.com exists. Many don't know that the AI Act isn't a GDPR for AI, but serves more as market classification, as it sorts AI into different boxes who have to fulfill different requirements. The details of these requirements are/will be set with CEN/ISO standards and frameworks . You can see the progress of development on these standards on that website, and what they cover and how they interact. Hovering over the elements gives additional info. This is done by the JTC21 , and you can also get involved by registering with your national standardization body (in Germany, this is DIN) or when they do public consultations. Disabled people experience both extremes of AI - better accessibility options, often more reliant on AI, so also more subject to surveillance and having their privacy rights violated, while bad governments can use the data to harm disabled people, all under the guise of research. Marginalized groups are often the first trial group in anything, while not being stakeholders in the tech, or even invited to the table. See: AI used in immigration etc. and with deregulation and AI everywhere, we see a loss of reasonable suspicion thresholds in law enforcement and other groups. Learned about adversarial auditing .

0 views
Farid Zakaria 2 days ago

Leaving performance on the table

I have been working with LLVM at , and I have gotten to become familiar with the benefits of optimizing your workloads. I tend to think of optimizing my binaries as thinking about whether I have attached to my compiler flags; maybe if I’m particularly advanced that day I’ll sprinkle in some (link time optimziation) and call it a day. Turns out though that’s leaving lots of performance on the table. Compilers work under the assumption that every branch is is equally taken, unless you are hints like ( ref ). If we can feed the compilers more information about the likely path that our workloads often take, then they can produce much more performant code. There are two primary ways to optimize a binary: instrumented or statistical. When we instrument our binary, we run our workload with an instrumented binary and capture the exact paths that are executed. We will then optimize the binary perfectly tuned to that workload. If our workloads however are varied, we can collect profiles via over a length of time and create an optimized binary based on the statistical occurence of call graphs. Both approaches have their benefits however let’s start with the instrumented variant first, as it’s a little easier to follow and understand. Let’s look at a very simple benchmark. We will calculate fibonocci using SQL in sqlite3 . This is an ideal workload because it’s purely CPU-bound and ripe for optimizing. We will compile from source by downloading it. We can compile a “traditional” optimized binary that merely has and also a version that has LTO enabled since I was also keen to see how much LTO itself adds. Ok, so it looks like our program takes roughly 14-15 seconds to run. Sounds ok? How much better can we do…. 🤔 Next, we compile our program again but we instrument the binary , which effectively injects counters into the program to count invocations of functions. We get very accurate counts of our calls but the binary itself now runs much slower, which can be a problem if your workload was already very slow. Luckily for us, we are in a time domain (~15 seconds), where that is ok. After we have our instrumented binary, we run our workload again to generate the profile data and rebuild the binary with that data. The last step will be to optimize with BOLT, which is a post-link optimizer, which requires us to keep relocations so I’ve also added . When we run our workload with the final optimized binary, we see massive improvement already! 🤯 We’ve cut our workload time down to ~10 seconds which is a nearly a 1.5x improvement. Now let’s optimize the final binary with LLVM’s BOLT . BOLT is a post-link optimizer designed for “large applications”. What this means, is that it largely works by shuffling code around the binary to keep code-paths that have high temporal locality near each other (spatial locality). This can have positive impact on performance due to the instruction cache for instance. Looks like it was a little faster but not much. That makes sense since itself is a pretty small binary (~6MB), but nontheless was good to run through. Running a more thorough benchmark with we can get a final tally of our results. Looks like the I got from the Fedora ecosystem was the slowest . When all the optimizations were applied I was able to get a maximum of 1.38x faster than what was available. These optimizations would be even more dramatic for code-bases that are a sprawl and can heavily vary. Don’t worry also about getting the profile perfectly tuned to your workloads. I have a coworker who often cites that even poor profiles are still much better than no profile at all.

0 views
Kev Quirk 2 days ago

Using Fountain Pens for Note Writing

My note taking process has evolved a lot over the years. Originally I used my iPad with the Apple pencil, but having to charge it every few days was a pain. Then I switched to the Remarkable 2 , which was great and I didn't need to charge the pen. But as I produced more and more notes, it became awkward to search for them. Unfortunately, handwriting to text, and handwriting search both require a monthly subscription. Screw that. So I switched to the Supernote Nomad , which (in my opinion) has better tooling for finding notes than the Remarkable. I mentioned this in my how do you take notes post. I created a new system for taking notes, and it worked well. It still had it's frustrations, but I could generally find what I was looking for on the Nomad. Then I started writing the occasional journal entry, and for that I decided I needed a physical book and fountain pen. I don't know why, it just felt more personal and more permanent doing it that way. Being left-handed, fountain pens can be difficult, so I got myself a Lamy Safari with a left-handed nib. It writes lovely, especially for the ~£25 ($30) price. So I got myself another one and put red ink in so I can "highlight" certain notes in my journal. It is a really nice experience, and as my journal entries mount up, I can easily flip between pages. And then it dawned on me...it's not the technology that I'm using for notes that's the problem. It's the fact that I'm using technology in the first place! As a test, I dug out an old notebook that we got a freebie from work (it's a really nice one - I figured nice paper would help) and started using my Lamy for note taking in work too. Using a slightly adapted version of my note taking system, it's been glorious! Flipping back through physical pages and easily finding my notes for a particular day has been very refreshing. Everything is in my notebook now, and I rarely use OneNote as a result. I decided to go all in, I sold my Nomad back in January and haven't looked back since. The Lamy is a nice pen, but I wanted something a bit more substantial (and made of metal) as the pen gets a lot of punishment being bashed around in my bag all day. I was happy to spend more money, but didn't want to go crazy, so I ended up buying a Kaweco AL Sport in a lovely stonewashed blue colour. Unfortunately Kaweco don't offer a specific left-handed nib, but I've found it to be nicer to write with than the Lamy anyway. It doesn't scratch as much - not that the Lamy is particularly scratchy, but the Kaweco is soooo smooth. I realised that my main frustration with both the Nomad and the Remarkable is that there's a 1-2 second delay on every screen change, so if I need to flip back 10 pages, that's like half a minute of pissing about. Half a minute doesn't sound like a lot, but I can flip back 10, or even a hundred pages in my notebook in a second. It just feels smoother. My note taking system now surrounds the specific paper I have in this fancy notebook from work (wide ruled lines, and a side margin) and I can't find anything else that's the same. Everything I find is either shitty quality paper, narrower lines, or no margin. Luckily for me, I've been able to find some spares hang around the office, so I have a cache of half a dozen or so, which should last me a few years. I'm totally converted to analogue note taking at this point, and I really enjoy the process of writing with the fountain pens. I just need to force myself not succumb to my constant desire to start collecting things - as I don't need 50 fountain pens, just like I don't need 50 watches... but I have them ! This post kinda went all over the place, sorry about that. 🤷🏻‍♂️ Thanks for reading this post via RSS. RSS is ace, and so are you. ❤️ You can reply to this post by email , or leave a comment .

0 views
ava's blog 2 days ago

my experience in brussels

For the CPDP 2026, I was in Brussels this week. The inner city with all its cute little shops, fancy buildings and barely any cars was very charming. Have some pics. We spotted Super Dragon Toys on the way and had to stop there, of course. Surprisingly, they had a lot of Sanrio, and even a blind box I was trying to get months ago that was sold out everywhere on and offline before, so I grabbed one. Got Pochacco; I liked all designs you could get in the box, so that was fine with me. I wish we had a bonsai shop: Also came across a colorful shop full of stuff around penises, vaginas, and breasts? We also went to see Mandalorian and Grogu in the cinema there; very epic layout of the room. I also enjoyed the movie; I don't get the reviews at all. Typical Star Wars fan cynicism and everything-has-to-be-dark-and-gritty-like-Andor. What was surprising is how little English is written anywhere or even reliably spoken. In German tourist-y and big cities, you have an English version of almost anything printed underneath, and often even more languages, especially when close to borders. Brussels doesn't really give the same courtesy as much as I thought it would, which caught me off guard because of all the EU buildings and employees there. Many people seem as if they don't learn English in school at all and struggle with it? I booked something a few minutes from the venue that was affordable, looked good on pictures and had a good rating. I read the top description and bottom checklist and it sounded nice. What I didn't read were the actual reviews (my bad, I know). If I had done that, I wouldn't have booked. I read them 10 minutes before arrival and it turned out that this is an AirBnB type thing posing as a hotel. The reviews called out this lie, but still rated it high (enough). A guy waited for us to get us the keys and explain everything, and we shared an apartment with a stranger that had his separate bedroom. Yup. Stressed me the fuck out. It was clean enough in the bedroom and bathroom (had one to our selves directly attached to it thankfully, because we had the double). The rest was meh. Kitchen utensils were severely lacking and often dirty. It was good enough to sleep and be gone the entire day. The stranger stayed in his room all the time, but smoked in there and it stunk through the entire apartment. We couldn't even get hot water reliably, and the sink spilled everywhere. So if you are ever in the same position... Brussels City Chambers is not a hotel, or even an aparthotel like they say. The info is hidden way below, nested between lots of other info, now saying " Comfortable apartment with shared living room. Choice between private room with private bathroom and rooms with shared bathroom. " You don't even get shown that during the booking process when you choose an accommodation, otherwise I would have noticed it then. Most of the pictures supplied are not of the property at all. So while technically you can find out if you are paying a lot of attention, you are meant to be misled if you just wanna be quick about it (and I hate booking hotels, so unfortunately I rushed through it, my bad). Big city, tourists, of course it's full! To be expected. I've been in big tourist-y cities before. But my god, now I understand why Belgians in Germany drive as if they are trying to kill you. They are also trying to kill each other in their own country. Lines on the ground get completely ignored, and so are any traffic signs or lights. The speed limit doesn't matter. Everything is a mere suggestion and they are driving like it's an off-road jungle adventure. They get mad at you for taking the rules seriously. We Germans are a rule-loving folk and get mad if people cross the street during a red light, so this was a culture clash. We were frequently honked at for following the traffic rules (staying in our lane, driving the speed limit, etc.). People just endanger others by speeding through everything, cutting you, overtaking you and almost crashing into someone else, and they don't blink long enough or at all to even let you know they are gonna swerve into your lane... they all drive like reckless, annoyed Taxi drivers in an indestructible tank. It wasn't an asshole here and there, it was everywhere, all the time, every vehicle. We soon found that we are just the odd ones. You felt it even outside the car, as a pedestrian. It felt like you weren't safe anywhere because everyone is going where ever they want, so bicycle lanes and bus lanes still had speeding cars, people almost ran over pedestrians who had the green light to cross, motorcycles drove on the sidewalk... I thought I would get ran over on this trip for sure. I also do not like how the motorcyclists can just speed past you in the middle in the tunnels without any care in the world. And how Apple Maps handles the tunnels!! They don't make it clear whether you are supposed to descend into one or keep right to avoid it. And finally, the way crossings and roundabouts are designed in Brussels is completely not intuitive and insane. I can't even explain it, but you really have to guess how you're supposed to drive, which adds to the whole messy driving culture. Multiple times, I thought we were going the wrong way for sure, but it ended up being correct. The almost complete app reliance to park is also nuts. We tried the parking machines that are spread around the streets, but they are very slow, and if you set the language to German, the process is broken and doesn't let you book anything. It's also very focused on the Belgian license plate layout despite Brussels being so tourist-y and full of people from outside the country, so entering anything with a different layout is risky and seems to overwhelm the process. It was much easier to handle in an app (Indigo Neo), but they only accept credit card; I am lucky to even have one. I expected more care around the different types of people coming into the city from a city that is the capital of Europe, essentially. If there is a next time, we'll definitely take the train, even if it is more expensive and more annoying with luggage. We went to Pure Veg India, Kitsune Burgers, Verdo, and grabbed some things to go from BS40 and a bakery I forgot the name of. Big fan of all of them, except for the dry pastries from unnamed bakery. Verdo was so amazing and my highlight of it all. I don't know if I will be back next year, also has to do with some conference disappointments... I really wanted to like this city, also because I do sometimes toy with the idea of getting more involved in EU stuff, but I think I would be really unhappy living there :< Reply via email Published 23 May, 2026

0 views
fLaMEd fury 2 days ago

Split Enz At Spark Arena

What’s going on, Internet? Last night we headed back to the Spark Arena for another show. This weekend was Split Enz for the Forever Enz tour. After an eleven-year hiatus of playing together, they recently reformed to tour across NZ and Australia. Split Enz formed in 1972 and released 10 studio albums before breaking up in 1984. Between then and now the band has had several brief reunions. They had broken up before I was born but their music was still a big part of mine, and many other kiwis’ lives growing up. The Spark Arena was packed by the time we arrived near the end of the opening band, Hans Pucket. Our seats weren’t the most comfortable as we were at the end of the horizontal seats before they curved around so we had to twist around to catch the stage. The seats at MGK , while further back, were better positioned for viewing. Anyway, we were in for an audio and visual treat. Band member Noel Crombie’s visual art was on full display with the visuals on screen and the costumes the band wore. The setlist was packed with all the songs that a crowd this size would expect with my favourites being Hard Act To Follow, I See Red, Six Months In A Leaky Boat, and I Got You (which has to be their greatest song). I ducked out before the encore because I wanted to use the bathroom and escape the exiting crowds. Apparently I missed out on an incredible spoon solo to wrap up the show. While I was waiting for the family to get out, I noticed that the copy of True Colours I’d picked up before the show was water damaged. Not sure how but during the show water must have spilt onto it. I was disappointed, but confirmed the vinyl wasn’t damaged and shrugged it off. Adds to the story I guess. I also struck up a conversation with a woman who was also waiting for their friends to get out and we discussed how amazing it was for a band formed by a guy from rural NZ to get as big and acclaimed as they were. It’s also interesting that during the time they were able to get big while wearing the costumes and makeup they did. It was pretty out there for the time. Their music speaks volumes, I guess 😃 I had an incredible time at the show and I’m so glad I managed to add Split Enz to the list of acts I’ve been able to see live. Laterz. Hey, thanks for reading this post in your feed reader! Want to chat? Reply by email or add me on XMPP , or send a webmention . Check out the posts archive on the website.

0 views