Hacker News new | past | comments | ask | show | jobs | submit login

Can you explain what you mean by "upfront" vs "on-the-fly"? I'm somehow not getting it.

This looks very nice. It'll need lots of docs with examples to understand how to put together the nicely flexible building blocks you provide.

"Upfront" processing means that you're doing the processing during upload, and on the "on-the-fly" processing means that you first upload the file, and then it's processed dynamically through the URL. For example, in Refile you make an URL to the uploaded file like this:


That will make Refile trigger the specified processing at the moment the URL is requested. You should then put a CDN or a reverse proxy in front to kind of cache these processed files, so that they're not processed each time.

About the documentation, I wrote documentation for each of the plugins, and I linked them all on http://shrinerb.com. The plugin names should hopefully indicate what feature they accomplish, and since they're all individual, it's up to the user to choose what features they want (i.e. combination of plugins).

So "up front" still includes doing the processing in a background job async, as long as it's triggered at point of upload, not at point of request?

"upfront" but async background does seem to be the best way to approach it to me, at least if you had to pick one -- that's what Shrine does?

Yes, you got it right, this is exactly what it means. Yeah, there are some rare use cases for on-the-fly processing (think a WYSIWYG editor where the user can choose the size of the image), but for me upfront definitely works best.

Cool. I'd call those two choices "upon upload" (instead of 'upfront'), and "upon first view" (instead of "on the fly"), but I'm sure my terminology would confuse someone else too.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact