HNHacker News
TopNewBestAskShowJobs

grumbel

1,782 karma · joined April 16, 2015

submissionscomments
grumbel··on I won't download your app. The web version is a-ok
As long as the application is made aware of the permissions and can prevent functioning when they get denied, that doesn't really help much. It's the choice between getting mugged or never leaving the house.

The ability to deny permissions without the app noticing or filling it with fake data doesn't exist on either system.

grumbel··on Why are we still using Markdown?
One big thing I still miss with org-mode are explicit section endings. Just as with markdown you only have headings, the end of a section is implicit. This often leads to text getting swallowed up by the last chapter and makes any kind of restructuring fragile. HTML's <section> makes things much easier.

Having explicit header levels (similar to HTML's <h[0-6]>) is another annoyance, as that makes inclusion of one org document into another problematic and requires restructuring (somewhat workaroundable with "#+begin_src org").

grumbel··on Why are we still using Markdown?
Problem with that is that the default browser styling is extremely ugly and the ability for custom style sheets was removed from the browser GUI many years ago. ReaderMode and Addons can help, but as long as the default is essentially broken and unsupported that whole approach remains a dead end.

On top of that come issues like the lack of pagination support in browsers, which make long document impossible to read and practically require to add custom UI inside the website itself.

ePub works much better, with readers giving control over line spacing, font size, pagination and proper markup for TOC and other metadata, but despite ePub being based on xHTML, browsers have ignored it (only old Edge supported it for a little while).

grumbel··on Why I love NixOS
> you're going to be writing the (name value) form for 99% of it.

That's exactly the part that is wrong with Guix, and Scheme in general. Scheme has associated lists, they are written as '((name . value) ...), but since that's too ugly everybody makes macro wrappers around them to get them down to just (name value). But that means you aren't dealing with an obvious data type anymore, but with whatever the macro produces and if you want to manipulate that you need special tools yet again. And then you have record-type and named arguments which are different things yet again, but all serve the same name->value function as an associated list. Names themselves are sometimes symbols, sometimes keywords, and sometimes actual values. Same with lambda, sometimes you need to supply a function, other times there is a macro that allows you to supply a block of code.

It's like the opposite of the Zen of Python, there are always three different ways to do a thing and none of them as any real advantage over the other, they are just different for no good reason and intermixed in the same code base.

grumbel··on Show HN: s@: decentralized social networking over static sites
> A user’s identity is their domain name.

That's dead on arrival. The domain name system is one of the core reasons why everything has become so centralized in the first place. If one wants to fix anything wrong with the Internet, finding a better way to naming things should be the first step.

grumbel··on I built a demo of what AI chat will look like when it's “free” and ad-supported
> Is this avoidable?

Instead of interacting with the cloud model directly, run a simple local model to interact with the cloud model and have it filter out all the ads before they reach you.

This is already what the chatbots do when it comes to interacting with rest of the Web, instead of you visiting websites yourself, they collect the information from the websites for you and present it in a format of your choice without the websites ads.

I don't see the ad model working out for chatbots in the long run given that those AI models already are the perfect ad filter.

grumbel··on An Unbothered Jimmy Wales Calls Grokipedia a 'Cartoon Imitation' of Wikipedia
Grokipedia is at 6,092,140 articles, English Wikipedia has 7,141,148. So it's pretty close already after just four months.
grumbel··on Rolling your own serverless OCR in 40 lines of code
I use Gemini for that. Split the PDF into 50 page chunks, throw it into aistudio and ask it to convert it. A couple of 1000 pages can be done with the free tier.
grumbel··on I want to wash my car. The car wash is 50 meters away. Should I walk or drive?
> structured language that eliminates ambiguity

That has been tried for almost half a century in the form of Cyc[1] and never accomplished much.

The proper solution here is to provide the LLM with more context, context that will likely be collected automatically by wearable devices, screen captures and similar pervasive technology in the not so distant future.

This kind of quick trick questions are exactly the same thing humans fail at if you just ask them out of the blue without context.

[1] https://en.wikipedia.org/wiki/Cyc

grumbel··on NewPipe: YouTube client without vertical videos and algorithmic feed
Newpipe doesn't clutter the screen with constant recommendations. You can just subscribe to the channels you want, get updates when they release a new video and that's it. It's a much more focused experience than regular Youtube.
grumbel··on The EU moves to kill infinite scrolling
All the legal uncertainty problems the cookie law produces aside, the core problem with the law is that it's fundamentally stupid. Cookies are a client side feature: You store the cookie, not the server. If you don't want to store the cookie, complain to your browser, that's the software responsible here. But instead of fixing the issue in the one place actually responsible, we make laws that force millions of websites to adopt.
grumbel··on The EU moves to kill infinite scrolling
> "well what specific laws would I write to combat addictive design?"

Expand the GDPR "Right to data portability" to publicly published content for third parties, i.e. open up the protocols so you can have third party clients that themselves can decide how they want to present the data. And add a realtime requirement, since at the moment companies still circumvent the original rule with a "only once every 30 days" limit.

Also add an <advertisment> HTML tag and HTTP header and force companies to declare all their ads in a proper machine readable way.

The core problem with addictive design isn't the addictive design itself, but that it's often the only way to even access the data. And when it comes to communication services that benefit from network effects, that should simply not be allowed.

grumbel··on Peerweb: Decentralized website hosting via WebTorrent
It's worse than just illegal content. Copyright doesn't allow you to redistribute anything without the permission of the copyright holder. IPFS however has no means to track the author or the license of content.

That means even distributing a piece of perfectly legal Open Source becomes illegal. Unlike a tarball or even a torrent where you can bundle content and license, IPFS allows addressing individual files or blocks, thus stripping the license from the content, which most licenses forbid. This does not even require an intentional action on the user, but happens automatically by partial content landing in your cache.

grumbel··on Qwen3-TTS family is now open sourced: Voice design, clone, and generation
That's the idea behind C2PA[1], your camera and the tools put a signature on the media to prove its provenance. That doesn't make manipulation impossible (e.g. you could photograph an AI image of a screen), but it does give you a trail of where a photo came from and thus an easier way to filter it or lookup the original.

[1] https://c2pa.org/

grumbel··on IPv6 is not insecure because it lacks a NAT
The whole discussion is confused from the start. When people talk about the "security of NAT" they are not talking about NAT at all, but about what happens when NAT is misconfigured or switched off. In the case of IPv4 it means nothing works and your computer isn't reachable. The system is fail safe.

Meanwhile with IPv6 it's the other way around, everything is wide open unless you have a working and properly configured firewall.

grumbel··on Libbbf: Bound Book Format, A high-performance container for comics and manga
This feels like the wrong end to optimize. Zip is plenty of fast, especially when it comes to a few hundred pages of a comic. Meanwhile the image decoding can take a while when you want to have a quick thumbnail overview showing all those hundred pages at once. No comic/ebook software I have ever touched as managed to match the responsiveness of an actual book where you can flip through those hundreds of pages in a second with zero loading time, despite it being somewhat trivial to implement when you generate the necessary thumbnail/image-pyramid data first.

A multi-resolution image format would make more sense than optimizing the archive format. There would also be room for additional features like multi-language support, searchable text, … that the current "jpg in a zip" doesn't handle (though one might end up reinventing DJVU here).

grumbel··on Apple testing new App Store design that blurs the line between ads and results
We should just have an <advertisement> tag in HTML, regulation could then require it.
grumbel··on LLMs are a 400-year-long confidence trick
> GPT-3 was supposedly so powerful OpenAI refused to release the trained model because of “concerns about malicious applications of the technology”. [...] This has, of course, not happened.

What parallel world are they living in? Every single online platform has been flooded with AI generated content and had to enact counter measures, or went the other way, embraced it and replaced humans with AI. AI use in scams has also become common place.

Everything they warned about with the release of GPT‑2 did in fact happen.

grumbel··on FOSS in times of war, scarcity and (adversarial) AI [video]
> If the model was closed, it would violate the license.

Training is fair use. The closed models wouldn't be impacted. Even if we assume laws gets changed and lawsuits happened, they just get settled and the closed source models would progress as usual (see Bartz v. Anthropic).

Meanwhile if somebody wants to go all "GPL AI" and only train their models on GPL compatible code, they'd just be restricting themselves. The amount of code they can train on shrinks drastically, the model quality ends up being garbage and nothing was won.

Further, assuming laws got changed, those models would now be incredible easy to attack, since any slip up in the training means the models need to be scraped. Unlike the big companies with their closed models, Open Source efforts do not have the money to license data nor the billions needed to settle lawsuits. It would mean the end of open models.

grumbel··on FOSS in times of war, scarcity and (adversarial) AI [video]
That is a complete fools errand. If it ever passes it would just mean the death of Open Source AI models. All the big companies would just continue to collect whatever data they like, license it if necessary or pay the fine if illegal (see Antropic paying $1.5 billion for books). While every Open Source model would be starved for training data within its self enforced rules and easy to be shut down if ever a incorrectly licenses bit slips into the models.

The only way forward is the abolishment of copyright.

grumbel··on Why didn't AI “join the workforce” in 2025?
TikTok, Youtube, news, blogs, … are getting flooded with AI generated content, I'd call that a pretty substantial "change in output".

I think the mistake here is expecting that AI is just making workers in older jobs faster, when the reality is, more often than not, that it changes the nature of the task itself.

Whenever AI reached the "good enough" point, it doesn't do so in a way that nicely aligns with human abilities, quite the opposite, it might be worse at performing a task, but be able to perform it 1000x faster. That allows you to do things that weren't previously possible, but it also means that professionals might not want to rely on using AI for the old tasks.

A professional translator isn't going to switch over to using AI, the quality isn't there yet, but somebody like Amazon could offer a "OCR & translate all the books" service and AI would be good enough for it, since it could handle all the books that nobody has the time and money to translate manually. Which in turn will eventually put the professional translator out of a job when it gets better than good enough. We aren't quite there yet, but getting pretty close.

In 2025 a lot of AI went from "useless, but promising" to "good enough".

grumbel··on Stop Forwarding Errors, Start Designing Them
> The question and buttons appear in that dialog.

The error/retry dialog is for the failure of moving an individual file, not for a failure of the move operation as a whole. Those individual error dialogs provide no means to deal with cascading errors. All you can do is "Skip All", but that means you get no further information on errors anymore.

The error reporting should be part of the Moving dialog itself and provide a list of everything that failed in the move, along with potential ways to resolve it. More detailed reporting than "Could not read" would also be welcome (io, permission, ...).

grumbel··on Stop Forwarding Errors, Start Designing Them
> As a user, what am I supposed to do with such a popup?

Change the floppy disk. In the MSDOS days those messages were useful, as read errors might be caused by having the wrong floppy in the drive. The OS had no way to know when the floppy was changed and "Retry" allowed you to swap the disks back and try again. In modern days it is less useful, the behavior just got carried over.

Windows addresses this issue somewhat by scanning the directory tree before the actual copying starts, this can catch some errors before they happen and gives you better progress reporting on top.

But a single dialog that keeps track of the whole copy/move operations, not a modal dialog attached to individual read/write calls would be the way to go here. This is a case of the GUI sticking to close to what the OS is doing instead of what the user intended to do.

grumbel··on Using AI generated images to get refunds
That's something C2PA[1] might be able to help with, i.e. your phones camera puts a digital signature on the photo confirming that your phone took it. If that doesn't work out due to people photographing an AI image of a display, I would expect custom shop apps to be required to make warranty claims, as they could make use of all the phones sensors and make forging much harder.

Either way, I am not sure how big of a problem this is to begin with, since you'd leave quite the paper trail either way. It's not a stunt you can pull off repeatedly without getting caught.

[1] https://c2pa.org/

grumbel··on All Delisted Steam Games
No, the games just disappear from the shop and can no longer be bought via Steam. When you are already own them, you keep them. Third party seller might sometimes also still sell remaining Steam Key inventory and thus offer a way to activate a delisted game on Steam.

One area where content can disappear is music licenses, those often don't result in a complete delisting of the game, but just the music getting patched out of the game. In those cases, the music would be gone for everybody, as Steam game updates are mandatory and you can't downgrade the game to a previous version either. Unofficial mods will sometimes address this issue and add the music back in.

grumbel··on Staying ahead of censors in 2025
Why is Tor making it so difficult to change the region/ExitNode then? Geo-Blocking is by far the most prevalent form of online censorship and while Tor can work around it, it requires fiddling with config files and restarting the service instead of clicking a button.
grumbel··on Ask HN: By what percentage has AI changed your output as a software engineer?
When it comes to small focused OSS tools, you can basically code them at the speed of thought with modern LLMs. The slow part is figuring out what you want to do in the first place, the implementing is basically instantaneous. It's literally faster than googling a tool that already does the job.

And yes, that doesn't scale to all problem domains or problem sizes, but in some areas even a 20x speedup would be a huge understatement.

grumbel··on Package managers keep using Git as a database, it never works out
Do we have distributed databases that regular users can clone, modify and merge?
grumbel··on Is the golden age of Indie software over?
Or from a users perspective: Why bother looking for software that fits your purpose, when you can just let the AI write one from scratch that does?

A lot of what makes software complicated is that it has to serve thousands of users with different requirements at once. With AI on the other side, that's not something a user has to worry about, they can just let the AI spawn a much smaller special purpose tool that solves exactly the problem they are having.

We might be entering the age of disposable software, where software isn't a product, but just something your AI system produces temporarily in the background for the task at hand.

grumbel··on Making Google Sans Flex
Why do new fonts still make "l" and "I" indistinguishable?
← PreviousPage 4 of 22Next →