<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: tannhaeuser</title><link>https://news.ycombinator.com/user?id=tannhaeuser</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 13 Aug 2026 12:51:12 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=tannhaeuser" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[EU Code of Practice on Transparency of AI-Generated Content (Starting August)]]></title><description><![CDATA[
<p>Article URL: <a href="https://digital-strategy.ec.europa.eu/en/policies/code-practice-ai-generated-content">https://digital-strategy.ec.europa.eu/en/policies/code-practice-ai-generated-content</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49145729">https://news.ycombinator.com/item?id=49145729</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 02 Aug 2026 16:00:26 +0000</pubDate><link>https://digital-strategy.ec.europa.eu/en/policies/code-practice-ai-generated-content</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=49145729</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49145729</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Bring back crappy forums"]]></title><description><![CDATA[
<p>Having witnessed forums languishing and closing down, and attempts to open up new ones with almost nobody signing up, I wonder if the reluctance of giving away credentials is a generational thing. It seems Lemmy-style/Piefed Reddit Fediverse alternatives are faring slightly better, not universally but at least for some topics and media-affine folks, though maybe they still just mostly gain from Reddit discontinuing its API and third-party app support.</p>
]]></description><pubDate>Thu, 02 Jul 2026 10:43:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48759333</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48759333</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48759333</guid></item><item><title><![CDATA[New comment by tannhaeuser in "JSON-LD explained for personal websites"]]></title><description><![CDATA[
<p>Fedi review sites (neodb/reviewdb, bookwyrm) make use of JSON-LD in a big way. Their entire data federation is based on ActivityStreams and JSON-LD, and so is the review data they get authors to share on their federation along with legacy sites such as goodreads. They're also considerate of proper RDF mappings (context namespace, RDF-friendly encoding of collections, etc.).</p>
]]></description><pubDate>Mon, 22 Jun 2026 14:24:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48630583</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48630583</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48630583</guid></item><item><title><![CDATA[New comment by tannhaeuser in "JSON-LD explained for personal websites"]]></title><description><![CDATA[
<p>Are you referring to ActivityPub traffic (Mastodon, etc.)? Yes they're nominally using JSON-LD, but actually most devs seem to not have understood that ActivityStreams is just a projection of RDF triples into JSON. Instead they go with the part they did unterstand (because JSON is better than markup right?), and end up tunneling markdown or HTML through JSON strings and uneccessarily hardcoding their payloads in ORM layers in dynamic languages. If I were mean, I'd compare the situation to insects incapable of comprehending a 3D universe, clinging to syntactic surfaces that seem familiar.<p>But what can you do? At this point, keeping federated alternatives, protocol-first designs, and multiple interworking implementations is more important than purity; it might well be the last successful initiative of its kind.</p>
]]></description><pubDate>Mon, 22 Jun 2026 14:08:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=48630351</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48630351</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48630351</guid></item><item><title><![CDATA[New comment by tannhaeuser in "W Social, public institutions and the theater of European digital sovereignty"]]></title><description><![CDATA[
<p>Indeed a very odd sight between WC matches. I don't normally watch much TV, but I think this warrants further investigation and inquiry.<p>No mention of long-term stake of EU in ActivityPub platforms either, as if W would be our savior.</p>
]]></description><pubDate>Thu, 18 Jun 2026 15:00:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48586462</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48586462</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48586462</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Your ePub Is fine"]]></title><description><![CDATA[
<p>Unfortunately, epub and epubcheck isn't the great uncontroversial resource the author makes it out to be. When W3C, Inc. took over maintenance of the EPub spec around when 3.1 was current, they just referenced WHATWG HTML and other ever-expanding browser specs ([1]). Being "living standards", these have no versioning or QA. As a consequence of being based on a version of HTML that redefined headers and sectioning, Epub 3.2 just made existing epubs non-conforming. Which is why Calibre and other tool still recommend 3.1 or better yet 2.<p>The case mentioned where the CSS min() function is rejected is another place where bulk import of the extremely complex CSS spec is just not helpful. Ebook readers aren't evergreen browsers after all.<p>[1]: <a href="https://news.ycombinator.com/item?id=41326179">https://news.ycombinator.com/item?id=41326179</a></p>
]]></description><pubDate>Mon, 15 Jun 2026 00:10:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=48534659</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48534659</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48534659</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Python 3.14 garbage collection rigamarole"]]></title><description><![CDATA[
<p>3.13 broke most of the C API<p>3.14 broke GC<p>I guess these kinds of priorities are exactly why Python is not my favorite programming language and why you have tens of Python versions installed on any machine. Not to talk about the Python 2 -> 3 drama that was also about fetishising syntax and pureness over pragmatism, installed base, and respect for existing code.</p>
]]></description><pubDate>Sun, 14 Jun 2026 09:48:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48525706</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48525706</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48525706</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Python 3.14 garbage collection rigamarole"]]></title><description><![CDATA[
<p>Do people use python for new projects apart from ML stuff which hasn't moved to all-native yet?<p>My experience with Python is a really bad one for professional work: it's chaotic and slow, and has by far the worst versioning and packaging story of any mainstream language, yet its proponents keep praising it in denial.<p>I guess Python is an ok target for agentic coding, but my god do look Claude's commit messages pretentious, with code bases quickly heading into absolute unmaintainability. At least it had found gross JS injection vectors in a Django app that really shouldn't have made it through a code review, architecture level as they were, but oh well. A mature Django app is also not a nice dev experience IMO, with tons of implicit behavior all over the place encoded in a mix of magic filenames, database naming conventions, and URL routing quickly descending into regexp hacks.</p>
]]></description><pubDate>Sun, 14 Jun 2026 08:55:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=48525443</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48525443</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48525443</guid></item><item><title><![CDATA[New comment by tannhaeuser in "macOS Container Machines"]]></title><description><![CDATA[
<p>Just to clarify, this requires Mac OS 26 Tahoe for "container" doesn't it? So those of us holding out on Sequoia who can't stand the broken glass UI or what's called and the other undesired features need to stick to Docker desktop.</p>
]]></description><pubDate>Wed, 10 Jun 2026 06:58:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48472488</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48472488</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48472488</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Microsoft builds MacBook Pro rival with NVIDIA-powered Surface Laptop Ultra"]]></title><description><![CDATA[
<p>I only have used the power connector on a Surface Go tablet but have really no complaints. I've never been much of an MS person, but with that thing Windows (10) certainly left on a high note for me.</p>
]]></description><pubDate>Tue, 02 Jun 2026 09:09:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=48367744</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48367744</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48367744</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Blog ran on Ubuntu 16.04 for 10 years. I migrated it to FreeBSD"]]></title><description><![CDATA[
<p>Debian LTS/extended LTS</p>
]]></description><pubDate>Thu, 21 May 2026 21:55:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48229318</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48229318</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48229318</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Prolog Coding Horror"]]></title><description><![CDATA[
<p>Not familiar with Erlang that much, but it's pretty clear Erlang was prototyped on Prolog because of its convenient facilities for DSLs using op/3 to define new tokens for its built-in bottom-up expression parser (using operator precedence parsing) and its Definite Clause Grammar recursive descent parser as trivial specialization of core SLD resolution (Prolog was created for NLP and planning apps in the first place after all).<p>I guess what may also have contributed is that there are a number of concurrent logics implemented in Prolog for prototyping Erlang's scheduler such as Concurrent Transaction Logic ([1]).<p>[1]: <a href="https://www.cs.toronto.edu/~bonner/ctr/Home.html" rel="nofollow">https://www.cs.toronto.edu/~bonner/ctr/Home.html</a></p>
]]></description><pubDate>Mon, 18 May 2026 12:33:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=48178838</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48178838</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48178838</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Prolog Coding Horror"]]></title><description><![CDATA[
<p>"Planning, optimization, diagnostics, and complex configuration" [1]<p>Prolog also works extremely well as a target language for code generation by LLMs for these domains due to it being "higher up in the food chain" compared to procedural languages so to speak, and because Prolog was originally envisioned for classic NLP and hence has a corpus of one-to-one mappings from natural language to logic (as in the example in [3]). So well in fact that even with last-gen models textual descriptions for suitable problems become the bottleneck and you can in many cases just go straight to Prolog code instead ([2]).<p>[1]: <a href="https://quantumprolog.sgml.net" rel="nofollow">https://quantumprolog.sgml.net</a><p>[2]: <a href="https://quantumprolog.sgml.net/llm-demo/part1.html" rel="nofollow">https://quantumprolog.sgml.net/llm-demo/part1.html</a><p>[3]: <a href="https://news.ycombinator.com/item?id=48080201">https://news.ycombinator.com/item?id=48080201</a></p>
]]></description><pubDate>Mon, 18 May 2026 12:01:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48178486</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48178486</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48178486</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Prolog Basics Explained with Pokémon"]]></title><description><![CDATA[
<p>Prolog is actually a perfect fit for all kinds of adventure, role playing, strategy, and classic board/card games, with clauses representing game rules and facts representing the game state and universe in the most natural way.<p>Simple general-purpose opponents can be coded using just recursive backtracking search, while more advanced ones (supporting moves that need to destructively change state) can still be conveniently modelled by reifying facts and thereby enable backtracking over assert/retract-like Prolog DB modifications, as used in discrete combinatorial planners [1].<p>[1]: <a href="https://quantumprolog.sgml.net/container-planning-demo/part1.html#finding-loading-plans-with-multiple-stops" rel="nofollow">https://quantumprolog.sgml.net/container-planning-demo/part1...</a></p>
]]></description><pubDate>Sun, 17 May 2026 14:47:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=48169421</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48169421</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48169421</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Abstract Machines for Logic Programs"]]></title><description><![CDATA[
<p>> Here is a stack machine that [instead of addition] implements subtraction, based on the mode assignment i/o/i [without changing the code already used for addition]. (You might have heard people claim that logic programs can be "run backwards"; this is one thing that can mean.)<p><pre><code>    k >> plus 0 _ P         |---->  k << P
    k >> plus (s N) _ (s P) |---->  k; _ >> plus N _ P
    k; _ << P               |---->  k << P
</code></pre>
So if you're confused because of the slightly unusual notation, here's the same thing in Prolog syntax:<p><pre><code>    % "Sum is the sum of S1 and S2"
    plus(S1, S2, Sum) :- Sum is S1 + S2.

    % "What is the sum of 3 and 5?"
    ?- plus(3, 5, S). 
    % Answer: S = 8

    % "Is 10 the sum of 3 and 5"
    ?- plus(3, 5, 10).
    % Answer: fail 

    % "What's the difference between 3 and 10?"
    ?- plus(3, X, 10).
    % throws an error 
</code></pre>
It doesn't work this way in general because the Prolog is/2 predicate can only be used in one direction to evaluate the term on the right hand side where must all variable must be bound to a number in context. The article mentions Peano arithmetic as one finite/incomplete axiomatisation of natural numbers but doesn't elaborate on it.</p>
]]></description><pubDate>Tue, 12 May 2026 08:00:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48105487</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48105487</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48105487</guid></item><item><title><![CDATA[Debian welcomes the 2026 GSoC interns]]></title><description><![CDATA[
<p>Article URL: <a href="https://bits.debian.org/2026/05/welcome-gsoc2026-contributors.html">https://bits.debian.org/2026/05/welcome-gsoc2026-contributors.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48060495">https://news.ycombinator.com/item?id=48060495</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 08 May 2026 08:56:18 +0000</pubDate><link>https://bits.debian.org/2026/05/welcome-gsoc2026-contributors.html</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48060495</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48060495</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Accelerating Gemma 4: faster inference with multi-token prediction drafters"]]></title><description><![CDATA[
<p>Tested gemma4 26 MoE 4bit quantisized gguf on llama.cpp following these guides with mmap'd I/O on a 16GB MBP and it was unbearably slow (0.0 t/s).</p>
]]></description><pubDate>Tue, 05 May 2026 19:34:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=48027405</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=48027405</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48027405</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Migrating from DigitalOcean to Hetzner"]]></title><description><![CDATA[
<p>Not every fscking story has to be about AI.</p>
]]></description><pubDate>Sat, 18 Apr 2026 15:30:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47816670</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=47816670</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47816670</guid></item><item><title><![CDATA[Uncharted island soon to appear on nautical charts]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.awi.de/en/about-us/service/press/single-view/unkartierte-insel-demnaechst-auf-seekarten-verzeichnet.html">https://www.awi.de/en/about-us/service/press/single-view/unkartierte-insel-demnaechst-auf-seekarten-verzeichnet.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47744132">https://news.ycombinator.com/item?id=47744132</a></p>
<p>Points: 103</p>
<p># Comments: 51</p>
]]></description><pubDate>Sun, 12 Apr 2026 20:30:11 +0000</pubDate><link>https://www.awi.de/en/about-us/service/press/single-view/unkartierte-insel-demnaechst-auf-seekarten-verzeichnet.html</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=47744132</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47744132</guid></item><item><title><![CDATA[New comment by tannhaeuser in "Microsoft hasn't had a coherent GUI strategy since Petzold"]]></title><description><![CDATA[
<p>Windows until 24H2 (when Edge and the last remnants of IE were replaced by Chrome) supported HTML apps [1], introduced with Windows 98 Active Desktop. They weren't used much but actually not that bad for end-user needs.<p>[1]: <a href="https://learn.microsoft.com/en-us/previous-versions/ms536495(v=vs.85)" rel="nofollow">https://learn.microsoft.com/en-us/previous-versions/ms536495...</a></p>
]]></description><pubDate>Mon, 06 Apr 2026 07:10:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=47657804</link><dc:creator>tannhaeuser</dc:creator><comments>https://news.ycombinator.com/item?id=47657804</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47657804</guid></item></channel></rss>