Hacker News new | ask | show | jobs
by Isthatablackgsd 1875 days ago
I happened to read Kovid justification[0] of this kitchen-sink approach few days ago and I agreed with Kovid. Before I was dead-set against his idea, and now I understand why it is the best for calibre.

It boils down to database and robustness. Filesystem and OS have their particular way of how it manage the files. And sometime when the file are being used and when calibre try to modify/something to the file, it can lead to unpredictable situation such as data corruption. And some OS sandboxed/isolated the app from ever touching outside of it own home directory unless explicitly permitted to do so. Sometime, it can be a permission weirdness. It is less variables for Kovid to worry and putting the software itself in control of the directory.

Also, another variable that Kovid don't have to worry about is between the keyboard and the chair errors. Users does stupid shit with it and those management software are sensitive to sudden changes without the software's awareness. Sure, you can set the path to find it again (it can be a pain for some), it didn't mean everything is jolly good. Some will force itself to rebuild the database to ensure it accounts for every bit of data. Those softwares are THAT particular and I can understand why.

Zotero does the same thing (and they preferred it), but Zotero does allows users to decide where it should be. Shoko Desktop/Server preferred their own but does allows users.

And the biggest advantage of calibre's approach is that its library only exist in single directory. You can move the folder itself without worrying the data corruption.

[0]: https://manual.calibre-ebook.com/faq.html#id33