Hacker News new | ask | show | jobs
by didgetmaster 457 days ago
Reinventing the wheel often means breaking things. Innovation often requires getting rid of backwards compatibility. The status quo is promoted by those who have invested in it, so disrupting it can be met with fierce resistance.

When I tell people that file systems are antiquated and need to be replaced with something much better; I often get strong push back.

This is a wheel that I have been reinventing for some time. It's not something that can be fixed with minor tweaks.

3 comments

> Reinventing the wheel often means breaking things. Innovation often requires getting rid of backwards compatibility. The status quo is promoted by those who have invested in it, so disrupting it can be met with fierce resistance.

This is a terribly simplistic take. To start off, it ignores the fact that major rewrites are known for failing.

https://www.joelonsoftware.com/2000/04/06/things-you-should-...

It also does not help that the only item you could come up to include in your risk matrix is... Someone else's bad will? Absurdly short-sighted.

Of course many new wheel inventions fail, and mine could very well be among them. You never know if you don't try.

The alternative, of course is to simply accept that all wheels already invented work just fine and don't need to be fixed.

Which approach is the most 'short-sighted'?

Do you have a blog about replacing file systems with something much better? I'm curious what you've tried so far
I found this. There's also a demo. Good points. https://didgets.substack.com/p/where-did-i-put-that-file
My blog is listed in my profile. Didgets.substack.com has many blog entries.
We need content addressable FSes with bloom filters for fast lookups.
That might be what we need, or not. But we do need to look at different approaches and figure out something better.
I would already happy with FS based on 'tags' not trees.
The object store I have created offers a fast, convenient way to attach multiple tags to each object. Each tag is a single value which can be a string, number, boolean, datetime stamp, etc..

You can still organize things using folders, but you can query for things based off their tags as well.

So, you'd tag all these files with .. what? "pnpm, node_modules"?

  find $HOMEBREW_PREFIX/opt/pnpm/libexec/lib/node_modules -type f | wc -l
    1450
For your .pdf or .docx that are just lumped into $HOME/Documents, I'm with you, they don't exactly need "folders" but a _filesystem_ based only on tags would be horrific in any python or node shop since their primitive unit is a file within a folder