Live data from Hacker News

Show HN: File0 – An easier way to manage files in serverless apps

file0.dev

61–70 of 158 posts

Re: Show HN: File0 – An easier way to manage files in serverless apps

#61
post #2

It suffers the usual effect as seen in eg. Wayland. You think the problem is simple and make a new protocol that's simple. Then you find complexity in the problem and solve it with complexity in the solution. Then your protocol becomes as complex as the one you're replacing. There are reasons S3 does all these things. ACLs, for example? How do you control who can access a file you uploaded? Also, it costs about 20 ti…

If you are happy to run everything via the backend it is probably ok (no worse than a typical app with an app level DB login that had access to all rows and tables)

With async programming there is little load in forwarding it on, and that’ll be fine at low scale most of us use.

Probably a great option for profile pics to avoid upgrading your postgres instance to a costly one.

Re: Show HN: File0 – An easier way to manage files in serverless apps

#62

I was kinda hoping this would just be a simplistic API on top of actual S3 so I get the benefits of both.

Interesting you mention this. That was the first approach. The problem comes when you want to introduce missing features to S3. Like tokens, or file filtering.

Re: Show HN: File0 – An easier way to manage files in serverless apps

#63
post #26
post #10

I am old enough that I still remember people including myself being perplexed why s3 didn't ship with an FTP adapter. They FINALLY added the option in 2020, 14 years late. I do think the storage "space" could use some disruption. I use s3 every day at work, and my general feeling is that the entire permission system is more complicated than 99% of apps actually need, to the point of being dangerous; I think the compl…

This is classic feature bloat of a product that's been around for a while. Some customer wants a really niche feature so product adds a new option for it. It's just one new option so the experience isn't that different. Rinse and repeat hundreds of times and nobody stops the think of the cumulative effect on the 99% of customers who don't need those features.

While that's true, they might have made it easier for customers if they decided not to deprecate bucket ACLs. They are even hypocritical there in the sense that their own product (Control Tower) uses bucket ACLs whereas they tell customers not to use them. ACLS were ultra-simple - mosltly READ, WRITE, FULL_CONTROL - very little margin for error.

Of course you still have complexity as you have the bucket owner, object owner and requester which might be 3 different entities, but still mentally easier to grasp than policies with dozens of options you need to read documentation for to understand what they are for and what the consequences of using them are.

Re: Show HN: File0 – An easier way to manage files in serverless apps

#64
post #26

Earlier quoted context omitted.

This is classic feature bloat of a product that's been around for a while. Some customer wants a really niche feature so product adds a new option for it. It's just one new option so the experience isn't that different. Rinse and repeat hundreds of times and nobody stops the think of the cumulative effect on the 99% of customers who don't need those features.

> Rinse and repeat hundreds of times and nobody stops the think of the cumulative effect on the 99% of customers who don't need those features. Does it cost anything to not use features you do not need? Last time I checked, all the so-called niche features were stashed in hierarchical option lists, outside of the happy path. You need to purposely want to dig into, say, file access, bucket access metrics, storage stra…

It costs time whenever a coworker has toggled the wrong setting and you must debug.

It costs time whenever some coworker asks for something impossible, and says something like "Have you really checked all the options?"

Re: Show HN: File0 – An easier way to manage files in serverless apps

#65

looking at the code side by side example: FILE0 does not provide authentication!? Everybody can upload files?

Yeah more or less the comments are correct, but let me clarify! FILE0 is looking for an environment variable, that contains your API key. This is how you authenticate yourself from your backend. When you want to use client uploads you can use f0.createToken('myfile.png') and send that token to the frontend, where you can also import f0 and use it like this: f0.useToken(myTokenFromBackend).set(blob) In the dashboard you will find a setup guide and code snippets with all this info.

Re: Show HN: File0 – An easier way to manage files in serverless apps

#67

Maybe I'm not a target customer of yours but I couldn't use this for now since I need to region lock to EU, which R2 has recently provided. That said my honest thoughts are that for my company's simple use case, I set it up once in 15 mins and never really thought about it again, but I can see how someone who hasn't done it before would love this kind of DX.

And thats fine! You should keep using R2. It's amazing. Obviously for experienced seniors who did this a million times, much easier to stick with S3/R2! Cheers

Re: Show HN: File0 – An easier way to manage files in serverless apps

#68

Hmm, couldn't find documentation, so I tried looking for the source to see how auth worked. Package has no README https://www.npmjs.com/package/file0 nor links to a repo Searching Github doesn't give anything (nor any public projects using it). Installing the package from NPM just gives you a completely minified JS that's pretty difficult to understand https://www.npmjs.com/package/file0?activeTab=code . No need to p…

This is on me. Right now all the instructions & setup guide & code snippets lives in your dashboard, appears after signup. You're not the first one pointing out the lack of public docs, and it's a legit need to take a look and understand a tool before you crate an account.

Re: Show HN: File0 – An easier way to manage files in serverless apps

#69
post #16

Standard S3 is $.02/GB, this is $.12/GB so 6x the price. You don't pay data transfer with this solution at least. Quick alternative: #!/bin/bash if [ "$#" -ne 2 ]; then echo "Usage: $0 " exit 1 fi FILE_TO_UPLOAD=$1 S3_BUCKET=$2 S3_OBJECT_NAME=$(basename "$FILE_TO_UPLOAD") aws s3 cp "$FILE_TO_UPLOAD" "s3://$S3_BUCKET/$S3_OBJECT_NAME" --acl public-read if [ $? -eq 0 ]; then echo "File uploaded successfully." PUBLIC_URL…

I'm sorry to be harsh, but this is not an alternative to the linked product at all. It's not available through an API, there's no Javascript SDK, there's no CDN configured, you still have to set up and manage an S3 bucket... It's not even in the same category, imo.

[deleted]
Post reply on HN