Does this still insist on making a copy of all my books on my local hard drive? I have about 10,000+ books on a network share. It would be nice to be able to search through them and download just the ones I'm interested in, but past versions of Calibre require the book to be downloaded to your local HDD before it pulls any metadata.
Or people who have let's say an ebook reader, a phone, a laptop, and maybe a desktop that they want to share books between and don't want to eat up multiple GB of storage on each device by duplicating their library everywhere.
This is a bad advice. Calibre (as of version 3) doesn't support this mode of operation. If the network disconnects you will most likely corrupt your library database.
This is bad advice. Using Calibre while knowing that certain circumstances surrounding a network disconnect might corrupt your library database is better than rejecting Calibre out of hand since it doesn't support network libraries well.
Best of all would be in Calibre's library handling weren't so finicky, but in the absence of that, I use Calibre with a remote share and I'm just very careful about library backups, how long I leave it running, and am patient with the slowness.
How often does your network disconnect? Sure, it would be great if the backend storage system was better at handling atomic operations, but I don't think this is really a huge problem assuming you're not using a really crappy network.
I run Calibre with the library mounted from a NAS. Works fine for my ~2000 book collection. Not as speedy as local SSD, but it is ok.
Does that work okay with multiple machines connected at the same time? I've been worried about what happens when there's a write conflict to the DB. I'd really like a way to easily share and manage my eBook library from both my laptop and desktop.
If I recall correctly you can have the actual database file on the ssd while the books on the network share that would probably improve the speed a bit.
Well, if your HDD shuts down mid write all sorts of shit will go wrong too. Few developers test their apps for this case.
With that line of edge case reasoning you should avoid running the majority of desktop software. :]
I run Calibre with a network share that sits on my home NAS since years w/o issues.
A corrupted database in Calibre is a non issue if all you use it for is to move books between your e-reader devices and the library. You just recreate it.
P.S.: Just for example -- the other day my MacBook's SSD filled up as Adobe InDesign was mid write on a huge document. It crashed and the file was corrupted and not recoverable.
While (mid write) 'not enough space' is not the same as 'network mount went missing' or 'SSD kicked the bucket' it's close enough. And this is commercial software that has been around for 25 years.
Could you tell calibre to open the network share as a library?
Not quite the same, I'm currently using calibre with a library on a remote server (albeit samba share over VPN) and it doesn't download the books to my local device, unless i choose to save them from my library to it.
I don't think so, but there is inbuilt calibre-server which should suffice for most of your needs and apparently it was improved in last version. There is also calibre-web[0] project. And on Calibre's wikipedia page it lists quite a few Calibre related applications which could do what you want.
Calibre is so darn useful. It gets hate for the eclectic ui but it's absolutely essential for any ebook Downloaders imo. Kovid is a real hero for as much work as he does on this. He must spend several hours a day every day of the year on it.
Yeah, the UI is just bizarre but it doesn't really matter. What matters is whether the update supports DRM stripping extensions. Can't find that info anywhere; won't update without knowing...
Got to respect dedication and hard work. But why doesn't his homepage support Chrome? https://kovidgoyal.net
Edit: I was referring to the alert() upon loading the site:
W A R N I N G! Your browser is not supported by this site.
I cannot guarantee that things will work as they should.
Consider downloading either Mozilla >=1.4 or Internet Explorer >= 6
it works in chrome latest. from the website quotes " This website makes heavy use of DHTML and requires a W3C DOM (Level 1), CSS and CSS-P compliant browser. It has been tested on Internet Explorer 6 and Mozilla 1.4. For detailed site information click on the button. "
Lot of simplicity just works. ( lot of work would have gone in 1990's to get this site up and running "
> This site was made along time ago, when I was interested in web programming, using DHTML and javascript, long before the advent of modern cross browser techniques. As such, it's a bit of an artifact, showing what was possible, (with a lot of work in the 1990's).
Brother, this is a great site, don't ever change it! I liked some of your poems, and this line "fault tolerant quantum computers" Definitely made me raise an eyebrow or two.
Wouldn't it? If the complaint is that the project is too hard to find and too hard to form any kind of online community (searchable blog posts, forum posts, etc) around, then a fork with a more distinctive name should become the dominant version by accreting the larger userbase.
> Yeah there are not a lot of low hanging fruit left. Now one just has to get betas out and have people test them and report bugs. And plugin developers use the betas to port their plugins. But it is going to have to wait until after the webengine migration is done and calibre 4 is released.
This is great news. Last I heard, the author of Calibre's said:
> I am perfectly capable of maintaining python 2 myself. Far less work than migrating the entire calibre codebase. [1]
> calibre has half a MILLION lines of python and python extension code...calibre has lots and lots of code that deals with bytes -- network protocols, binary file formats, etc. Python 3 is simply worse than python 2 for this use case. It has a crippled bytes type among other unfelicities. [2]
> There is just no way that calibre is ever going to be ported to python 3. [3]
Glad to see some outsider, flaviut, stepped to to the challenge and kovidgoyal accepted his pull request.
Looking at the pull request it seems that kovidgoyal's fear about external native functions, network protocols, binary file formats, and python3's byte type was not so insurmountable.
Some faulty pdf\epub files maybe, but none of them crash any of my other readers, so... I gave up at some point. I love Calibre as a project, but for now I can't really say the same for the product.
When I had a Mac, I hated the Calibre reader for its slowness, and honestly, it was unnecessary because iBooks is pretty great regarding typography and formatting.
However, on Windows, I've found that the Calibre reader is the best. I've found that Adobe Digital Editions and the Kindle reader have terrible formatting on a non-mobile screen.
Calibre ui made me stay away, I don't mind different but sometimes you do need to get a bit more mainstream. Blender 2.80 did this move and it helped a lot I believe.
Perhaps I have a different use case. I spend very little time in Calibre but loads more time on my Kobo reader. The time I spend is so little that I have never really noticed the user interface. I use Calibre to transfer books to and from my reader and occasionally download meta data for books. I know Calibre has functionality to download blogs and so on but I use Kobo's integration with Pocket[0] to read online articles.
do you integrate with pocket? i tried but miserably failed. it results in a mess of files and data that i can't read.
do you have a source link or good link on how to setup?
I bookmark articles during the week using Wallabag (an open source Pocket alternative), which gives me an RSS feed that I use within Calibre's "Fetch news" feature to send the articles to my Kindle on a Saturday morning.
I then go to a cafe next door and read them. They don't look like an ebook on a Kindle, more like a Kindle magazine. I adore that feature.
Instapaper might work better for you for Kindle integration.
The Kobo integrates Pocket natively, so it works seamlessly. It's one of the reasons I bought a Kobo. Native Overdrive integration was a huge plus, too.
I read most things on my Kindle, but from the moment I unboxed the Kindle I put it in airplane mode and have kept it that way. More privacy and better battery life. So, Calibre is useful as a way to get content and move it over to my e-reader over USB, and so I don't ever risk connecting to the e-reader maker's proprietary ecosystem. I would worry that even that Kobo Pocket integration is sending data to Kobo's servers.
Anecdotally, when we bought my girlfriend her first Kindle about five years ago, we noticed it was requiring charging way more often than the back-of-the-box battery life quote of "weeks of battery life". Upon calling an Amazon agent, they referred us to the fine print for that quotation:
> A single charge lasts up to six (6) weeks, based on a half hour of reading per day with wireless off and the light setting at 13. [0]
We were still pretty pissed at the blatant false advertising (a hardcore book reader reads for only a half hour a day!?!), but moving forward, she keeps the device in airplane mode 95% of the time, only turning it off to download whatever new book she just bought. It increased to at least 2-3 weeks after that, instead of a single week.
The nice thing about the kindle is that with both wifi and light off, the battery use is nearly non-existent between pages. So the difference between 30 mins / day and 6 hours / day of reading is not that large, tbh.
A full charge on my older e-ink Kindle (whatever the last one that had buttons, rather than a touchscreen), can last for months with the wifi turned off. If the wifi is on, it usually runs flat in about a week.
One of the key features of e-ink is that it actually requires zero energy to sustain an image. It only consumes energy for state changes between images.
Of course, modern e-readers have a backlight. Though you can never fully turn it off, at least on my first-gen Paperwhite, which is unfortunate.
My old Sony reader gets a few 1000 pages of read time/ 8 weeks (& more) or so of occasional use. On WiFi it drops to a week or so. Making an antenna work uses heaps of energy. It's worse when roaming as it searches for a known network.
Yeah, the UI is appalling, but it works really well for normalizing the book metadata, and loading the books onto my e-reader. That's more than enough functionality for me.
It's non-native anywhere, and so your intuition fails you. Icons change behaviour, the fit and finish is terrible (many text labels do not line up, for instance).
As I said, functionally, it is marvellous. But using it interactively is painful.
Kobo's integration with Pocket is a killer feature for me. It's so seamless: reading an article on my phone, and at any time hit a button, grab my kobo, and continue reading from there.
I have only used Calibre a few times, but doesn't the Kobo show up as a storage device, allowing you to drag/drop the books there? What advantage does Calibre offer purely for transferring?
YMMV. I probably have more books and documents than I will ever read. I use Calibre to manage this collection. It is easier to flip through my collection of books on a computer when deciding what to read next than on my ereader. Being able to download meta data helps me decide what to read next. I use the Calibre storage as my backup for my ebooks. My first ereader was a Kindle which I stupidly trashed while trying to swat a fly (true story). I then bought a Kobo. Calibre converted my books as I loaded them onto Kobo.
Check out Calibre-Web[1], It runs on top of a calibre database and some other calibre tooling, you can upload and download books from it, edit meta-data, read through the browser. Any books I grab I upload to it (can do via phone easily enough) and then I point my Kobo to it to grab books. I run it on a headless server, and never interact with Calibre UI.
Calibre has a built-in web server, and it seems it improved a lot in this release:
> The server has gained all the major capabilities of the main calibre interface. You can now edit metadata, convert books, and add/remove books and formats just as is possible with calibre itself.
Calibre-Web has shelves (that can be public or private), and a built-in OPDS server (that you can use from within phone apps such as Moon+ or a rooted Kindle).
It not only replaced Calibre's server for me, but also those few functionalities for which I've previously used Goodreads: organizing books into shelves, marking them as read, keeping track of how many books I read in a year.
It's totally fine. It has a bit of mid-90s Java program vibe to it -- large chunky icons and buttons -- but functionally it's the same as any of these programs. I seriously don't need it to be upgraded to a Material UI or any hot new thing.
I think many people don't realize that its appearance is very customizable - you can turn off all the icons, buttons, extra views etc., after which it has a very plain and simple appearance.
I get that tiny icons are in these days, but my icons are less than 40x40 pixels. Is that considered large? They look the same size as the icons in Firefox.
I'm not sure what these people are complaining about.
You have a search box with a big list box underneath and a preview frame on the side. I guess it's 'dated' in the sense it doesn't use a browser engine, layout everything with CSS, and have icons that match 201XQY's design fad.
I have 32 GB of RAM in my desktop, but I'm getting maxed out on the number of Electron apps I can have running at one time.
At this point, I've got a pretty good sample of apps that were native and have now become Electron, and the Electron versions use 8-10x more memory across the board.
This is not ok. At this point, Outlook is the least resource-hungry productivity application that I need to use on a daily basis. Outlook!
Nah bundling chrome would modern UI worthy of a billion dollar company. Supporters will innocently ask who in the world does not have a machine with at least 32GB RAM and octa-core processor to run this wonderful application.
It is by far the ugliest program I run on my Mac. That said, I run it frequently, and don't know what I would do without it, despite its complete lack of design.
I personally have never had an issue with it. There are many buttons but they are all very discoverable with a bit of hovering. I vastly prefer it to "modern minimalist" interfaces where I have to drill through 90 layers of Hamburger menus to disable a goddamn notification.
I could write a long list of small quality of life tweaks to its UI.
But, at the same time, I wonder how many HNers have even built a UI for a product with so many features. It's incredibly hard to find a good place for everything. And experimentation is expensive and time consuming.
That doesn't mean it's well-designed, it just means it's not using custom widgets. Those of us who aren't particularly thrilled with Calibre's UX are mostly annoyed by how it doesn't bother with typical UI conventions when it comes to menus, displays, command keys, etc.
If I were designing a "competitor," for a start:
- have a "File" menu that collects the commands relating to, you know, files: open, delete, rename, add, edit metadata (akin to the "Get Info" command in most other file menus), etc. Converting between file types could be in a submenu here.
- have an "Edit" menu that does Edit Menu Things (tm), most notably copy, cut, and paste
.
- let me drag and drop files to add them to the library.
- when I connect a Kindle or other device, show me a second pane with its content side-by-side with my library, rather than making me switch between "here is your library with flags to indicate what's on your device" and "here is your device with flags to indicate what's in your library."
- since I have two panes like the gods intended, let me copy files from my library to my device with drag and drop.
Calibre has all of that functionality, but it ignores three decades of UX convention to no particular benefit.
I don't really mind the UI itself, but the experience from how everything's jumbled around (especially the toolbar from hell) certainly does detract from it's mid-90s charm.
When you interact with customer service as a paying customer you get to expect courtesy. Some people seem to expect obsequiousness but I digress.
By what chain of reasoning do you derive the existence of the moral obligation to users who have paid exactly nothing let alone the obligation to consider what the broader world thinks of open source developers. It's pretty clear Kovid is a bit of an asshole and sometimes outspokenly incorrect but what right do we have to demand different? Usually such an obligation is transactional. Even if unspoken and devoid of monetary context there is some broader context SOMETHING of value is gained or lost.
So far as I can see the only thing we give Kovid is attention which is cheap and he gives us work which is dear. If you don't agree that the present transaction of putting up with the existence of opinionated posts which you don't have to read for a useful piece of software you don't actually have to use it.
It would even be useful for you to expand on why you think its insecure because that may inform users who can then see to their own interests better for having the benefit of your counsel but don't bore us with talk of his moral obligation unless you can't substantiate such.
The spoiler alert is that you cannot because you have confused the right to control the mores of a particular community with the right to impose those on non-members.
I don't think being a paying customer changes much here either unless there's some sort of explicit customer support package in the deal, especially when we're just talking about donors.
I once made the mistake of accepting donations for a forum I run and learned how people will expect the world from you, like 1:1 customer support whenever they need it, just because they once gave me $5.
Eventually all the "this is outrageous, I am a paying customer!" made me refund everyone and I never accepted donations again.
That is kinda the point of being an open source project, though, isn't it? The lead dev says, "It's going to be way too difficult for me to convert this codebase to Python 3, I don't want to do it." A group of volunteers then decide to undertake the effort themselves because they wish to ensure the project's continued viability for the future. AFAIK, he hasn't nixed the idea completely if others are handling the legwork.
You might want to add some specifics and references to back up such a statement. Otherwise it very much looks like a fairly cheap character attack to an outsider such as myself.
Where's the controversy? A maintainer and a contributor disagreeing about a bug report, and it gets a bit heated. Nothing important to see there, and nothing we haven't seen a thousand times in public bug trackers.
There are many other such instances in which the lead dev immediately responds to bug reports with 'works on my machine' without even asking for details to reproduce the bug. Any further words from the bug reporter are met with sarcasm or words worse than I would term "a bit heated".
How much, exactly, are any of these people reporting bugs paying for this software?
You use open source software that is made by one guy and offered to the world for free, you kind of have to deal with the possibility that that guy has better things to do than fuss over every bug report.
I have no way of knowing how much these people paid, if anything, to the dev's Patreon or Liberapay or Donate to PayPal. What they did do was spend their time reporting serious issues for zero payment. Bugs are important to fix, some bugs can be critically important to fix. If the dev chooses to fix these bugs, it is the dev that will receive all credit for doing so. The person who made the effort (albeit minor in comparison) of reporting the issue will not be credited or acknowledged in any way.
Also, I think a vulnerability that allows unprivileged users to gain root on a system on which Calibre is installed is worth fussing over.
The submitter was pretty civil for the most part, and Kovid ended with:
> Something answering posts from fools like you over the years should have taught me a long time ago.
And submitter is correct - he does this often. I recall a security bug that he refused to fix as fixing it would break some convenient feature. That one got really heated, and only when distributions declared they will stop carrying calibre in their package management system did he cave in and fix it.
Nevertheless, I don't see these as obvious reasons not to support him in Patreon.
I stumbled into that git issue and couldn't stop reading. He was immediately dismissive of the security suggestion, even when that person had gone out of their way to provide verifiable examples of the vulnerability. I ended up not installing the software.
You mean you didn't install Calibre because of a bug report where the author allegedly misbehaved? That's odd. A lot of open source software is riddled with ego and personality clashes, and because they play out in public forums, mailing lists and bug trackers for everyone to see, these flamewars tend to be very visible (also see: Linus Torvalds' outbursts). Do you also not use these programs?
Did you need Calibre in the first place? If so, what did you end up using instead?
I would argue its always better if people form their own opinions, so I just suggested that people should look it up themselves and come to their own conclusions.
From the sibling comments, it seems like you're just referring to his history of abrasive social interactions on bug tickets. Granted it is strikingly abrasive, but that really isn't a good reason to forego donating. At the very least don't actively convince others not to donate.
As Vitalik and other people doing social-coordination research keep arguing - it's a matter of coordination and not of anybody being greedy. The feeling that your little donation means little is what keeps the whole swarm of users from donating.
Depending on donations is almost always tenuous, especially if it's not anchored by big donors (and, often, even then).
There's even a school of thought that the existence of things like Patreon for funding open source development is actively harmful insofar as it can create the illusion that it's a viable funding mechanism for sustainable open source development when it really isn't.
one the converts from any format to any format, strips DRM (so I heard), adapts to different readers and if you really have to allows you to read (though the reader looks terrible)
There have been complaints about the UI since forever, and the developer is well-known for bristling at any constructive criticism and telling people to either accept the way he likes things, or simply don't use the application. Consequently, I am surprised that no one has forked Calibre, even if it was just to kept the backend but simply overhaul the UI.
Something that I would like to see in a future version of Calibre (or a fork) is news-download recipes changed to a plugin system that can be updated separately of Calibre itself. It is not ideal that if a news recipe becomes obsolete due to changes on the respective news website, one has to upgrade Calibre to a new version. For users whose distros package only a certain version of Calibre, it would be nice to continue running that distro-supported version but simply be able to update the news recipes from within the Calibre settings.
The code base is a nightmare and still uses Python 2. I'm not surprised it hasn't been forked, although I'm a little surprised it hasn't been replaced.
Frankly, the software is just fine for most needs, and the person in charge is still active, so the desire to replace it just hasn't materialized.
EDIT: Looks like somebody actually took the initiative to port it to Python 3.
Calling the codebase a nightmare is the understatement of the year. I tried forking it at some point. I don't think I could reasonably even attempt describe the codebase in a way that wouldn't get me banned from HN, and most likely the rest of the internet.
An article title such as "Popular open source software Calibre has a codebase that isn't just bad, it's outright dangerous" would definitely make me click.
If you feel strongly, please do this. It adds value. The creator might really benefit from it.
How would you feel if someone came out with an article about "echelon's code isn't just bad, it's outright dangerous" and wrote a whole article attacking and shaming you, just because you might benefit from it?
Sure you might benefit, but there are much more constructive, kinder ways to do it. Even if he and his code aren't great, Goyal's done a lot of free public service here. Let's not be dicks.
> I'm not surprised it hasn't been forked, although I'm a little surprised it hasn't been replaced.
Shouldn't be all that surprising. Things are harder than people think, and only a few people are willing to stake actual skin in the game instead of just complain.
Also, Calibre is already a niche tool. All of my friends/family have a Kindle, they all use Amazon's default send-the-kindle feature, and none of them probably even know how to get the physical ebook file out of the Amazon system nor care.
And ebook file management just isn't a very sexy problem to solve beyond a proof of concept weekendware effort. Surely most people aren't spending much time in Calibre anyways. I know I just use it intermittently to load the next 10 books onto my ereader. It's not a part of my life I'm very passionate about changing.
What are the complains? Just that it looks like an old 90s program, and doesn't have the latest all-white minimalist design? Or are there actual UX programs?
It looks like an old 90s Windows program, and most Mac users were bothered by those even at the time. It fails to honor basic common MacOS navigation keyboard controls, making it jarring even if I tune out the over-the-top ugly visual interface.
Old 90s Windows programs are great. Downright relaxing after the "WTF is interactive and what's content?" mess of "modern" UI. Calibre's not that. Some poster upthread got it right by comparing Calibre to some of the uglier examples of Java UIs.
>It is not ideal that if a news recipe becomes obsolete due to changes on the respective news website, one has to upgrade Calibre to a new version.
I haven't used the news feature in almost a decade, but in those days, you could clone a news site's recipe and modify it - no need to upgrade Calibre.
Great app. I know everyone likes to extol the UNIX "A program should do one thing and do it well" philosophy, but Calibre is one of the few "monolithic" apps I can think of that justifies the bulk. It does everything you could want it to do regarding eBooks: viewing, editing, management, delivery, etc.
I had mentally lumped that under "management," but maybe I should've added "conversion" as a category. Certainly DeDRM Tools has been worth the price of admission alone.
Do you know if the various 'add-ons' that were required to strip Kindle of DRM are still available and updated.
Years ago, I enjoyed stripping my own purchased Kindle books to ePub with Calibre, so I could read them on my non-Kindle device, but it wasn't so easy as the patches became harder to find, and Amazon would constantly change their DRM.
Have you considered that maybe you shouldn't be buying DRM content in the first place? If you are going to spend money buy a physical book and consider passing it on after you have read it if you don't want to reread or refer to later.
Sometimes I don’t want a physical copy because it is:
1. unavailable in my country at a reasonable price
2. Something I’d rather read while travelling.
And often, Kindle e-books are the only ones that are priced by region. I try to buy from DRM free stores wherever possible, but it isn’t always doable.
I've done that in the past, but a lot of authors have rightful objections to this, since these direct payments to authors don't reach publishers, editors, and many other people who make the book happen.
Search for "DeDRM", follow the first result you see to Apprentice Alf's blog. That should lead you to the GH repo with instructions.
It's still a bit of a pain, you may need to intentionally downgrade your version of the Amazon for Kindle app to an older version where the tools can break the encryption. But it can be done.
The pain kinda disappears if you have a physical Kindle. You enter the serial number once during setup of the plugin, then download the books from amazon.com/myk ("Download & transfer via USB" option), and just drag-and-drop downloaded files into Calibre's interface.
Works on Ubuntu too, which is really a PITA otherwise.
Thanks for mentioning this. I didn't know that Calibre packages its own optipng, a program for which there have been some security advisories in recent years. I hope Calibre keeps pace with upstream releases of these tools.
If it helps to think of Calibre as a "toolkit," then, instead of a single monolithic app, I'm all for it.
It's funny, if they released a version of Calibre that had only the bins you mentioned and omitted the GUI entirely, it would probably be held in much higher esteem among the HN community.
I’d argue this is true in general: I once gave a presentation about a (IMO) pretty decent tool but made the mistake of demonstrating it with a UI that was usable but needed work. It got a lot worse of a reaction than an earlier and worse version of the same tool where I ran it from the command line.
I installed it on one server that I only ssh to JUST to use that ebook-convert so I can read anything (epub, mobi, pdf, etc) on the command line. It's so easy to use, detects to- and from-formats from filenames and works on anything.
Lots of people being very critical of a unique piece of software that is super powerful, free and regularly updated. Seemingly because their big SV brains can't handle a clunky interface. What a bunch of entitled jerks you sound like.
Couldn't agree more. Calibre is Kovid's labor of love and he wouldn't be so active on it if it weren't, especially considering there is little to no monetary incentive for him to spend the amount of time he does on it. It's also open source. Literally every whiner has the opportunity to fork it and do with it what they please, but instead, they just want to sit by the sidelines and criticize him for his decisions.
As Neil Gaiman so aptly wrote on his blog [1] - "George R.R. Martin is not your bitch". I feel the same needs to be reiterated in this case - "Kovid Goyal is not your bitch".
Edit - Ouch, OP, I guess you struck a nerve with the HN crowd by saying it like it is...
Comparing Goyal to GRRM is desultory. GRRM charged his book buyers a whole bunch of money in installments for decades, and when he got rich out of these fans, he happily screws them over by refusing to finish his story.
Goyal provided a unique and complete piece of software, charging exactly zero, and continues to improve it even a decade after it released.
I don't know much about GRRM, so are you referring to general book sales when you mention "whole bunch of money in installments"?
If you start consuming an unfinished story and then entitle yourself to an ending, that's 100% your fault. As an outside observer who never even watched the show, GoT fans are just tantrum-throwing assholes. When you spend $X on a book, you are just buying that book, not that book + liens on the author's future output + a guarantee that there will be any. Such weird entitlement in that community.
Also, you presumably also demand a really good book as well so that he doesn't "screw you over" (cmon) with a bad book where the fans now recommend dodging the final books (Rendezvous with Rama, Wheel of Time, etc).
I agree GoT fans are weird but come on, it's taken him a literal decade to finish the last book and it's going to take more with the next one. You don't have to bring up higher notions of entitlement or contract law to make the simple remark that the dude is slow and riding the gravy train that came with his early books (which took him much less to write, incidentally). Saying 'it's your fault' just makes you look like kind of a dick.
Apparently so. At least a lot of the negative comments are getting downvoted too. Thanks for engaging with me - I wish it was mandatory to add a comment if you want to down/upvote a comment.
First of all, I’m not in SV, and you couldn’t make me move there even with a gun to my head.
Second, the interface is hard to use. Technology is a tool, and the interface is the part we interact with. If a tool is hard to use, then I’m probably not going to use it. I suffer enough with crappy technology at work; I don’t need it at home too.
And yes, it’s FOSS, and I don’t have to use it. But that doesn’t mean it’s above reproach.
Am I the only one who didn't find it hard to use? It's different, but it took all of one afternoon to figure it out 8 years ago. Despite only very occasionally using calibre, that learning session has persisted. I don't find myself getting lost in the UI or making mistakes.
Perhaps because I grew up in the DOS era where it was the norm for every application to be different? I find that as the years go by, the deviation required from the norm to be considered "bad UI" keeps shrinking.
I use Linux as my daily driver, so I’m no stranger to wonky interfaces (although thankfully, I spend a lot of time in a terminal). I consider myself a fairly learned software developer who knows their way around a computer, and it’s not that I can’t learn awkward interfaces. But Calibre makes it just difficult enough to figure out how to do what I want that I avoid it all together. Maybe this isn't your experience, but it’s mine.
An issue in the past was that books loaded into Kindles through Calibre appeared as 'personal documents' rather than as a 'book' in the Kindle, upsetting causing the reading state sync to not work if you were reading the same book for example through the Kindle app in your smartphone also, very annoying, and goes against the promise of ebooks. I hope they have a fix for this.
I've gone through the motions of emailing the book to my Kindle, which allows it to be downloadable on other Kindle devices or the app, and also syncs up reading location.
Doesn't work for huge books, but has been a great boon for most books!
If you fill out the "Sharing books by email" in Calibre's settings, you can just right-click a book -> "Connect/share", "Email to example@kindle.com". It'll do the conversion for you (if necessary).
I'd advise a separate email address for this functionality.
Surprised to see so much hate for Calibre's UI here. I'm not sure I understand. I can load damn near anything that pretends to be an ebook into it, and then I can double-click on the row for that item, and it pops open a reader window. That's all I need it to do.
At least on Windows, I've been pretty underwhelmed with other ebook viewer apps I have tried. The various Kindle apps tend to blow for anything you don't obtain through Amazon, and often don't work great for syncing even Kindle ebooks. I still have a bunch of Microsoft Reader .lit files kicking around, and Calibre is one of the only things that will open them. The Calibre PDF reader is pretty terrible, but setting is up to pop open to Adobe or whatever instead doesn't take much ceremony.
Seeing how many people prioritize fashion over function...in this topic, and life in general, depresses me. Calibre works very well and you have people saying they "can't" use it because it's not pretty enough. It's one guy, does SO much, and it's free. I don't care what it looks like. It's amazing.
I'm not exactly surprised because that was my original response to the UI as well, several years ago, but the surprising thing to me now is why exactly I considered it such a terrible UI back then.
One thing I can remember is that if you start a conversion or a download, often it silently starts in the background with apparently no indication anything is going on, unless you know to look for "Jobs" in the lower right corner. But I think I had a bunch more complaints which have apparently become invisible to me now.
It's a shame there's no good hardware ereader to use it with. Every e-ink device is closed hardware, runs only closed software, and is trying to lock you into some DRM-rich ecosystem.
FWIW, I've never had a problem with my kindle, which has never been connected to the internet.
Even the 'special offers' dissipate after being in airplane mode for a certain length of time. I see no value in using any online feature—I've never taken my kindle off of airplane mode, and use Calibre to load all content.
I wouldn't have paid for the ad-free version of the kindle had I known it was just a lock-screen promo for a book. I'm exposed to so few new books in my life that I kinda like the feature. Then again, I also wouldn't have bought the ad-free version had I known I was going to keep it in airplane-mode since the day I bought it.
Back when I first bought my kindle and made this decision, I was thinking the ads would be something like a "checkout these deals on Bose speakers!" interstitials every three page turns.
Actually there are ways to install software on many ereaders. About 10 years ago I used PRS+ on Sony's PRS-500. Nowadays Sony's ereaders are pretty much dead, but there is alternative software for Kindle, Kobo and others. By quick googling I just found:
FBReader is quite nice for reading offline ebooks on Android.
I realize that you are griping about dedicated e-readers, but I want to make clear that its not strictly an Android problem. The more open Android devices work just fine as e-readers.
My flow is basically Calibre -> managed library -> android phone -> offline reading anywhere.
I have 2 apps that I use on my android based eink reader. I mostly read fiction so those 2 our enough for me. Turn on wifi every 2-3 weeks to transfer the books from calibre to calibre companion.
The bq cervantes[1] is completely open source. It runs an old (old) Debian Linux, but it's OSS top to bottom, they tell you how to get into it and run your own firmware, their e-reader app is open source, and you're free to hack it apart as you see fit (koreader has a target for it too).
Kudos to Calibre and its author. It's one of the first programs I install on any Linux machine I own.
Yes, the UI is a bit quirky, but who cares? I spend my time actually reading the books, and for managing my library and converting between formats Calibre is ace.
That useful software like this exists makes me very happy.
Surveying this thread, I see an amazingly wide range of uses for Calibre. Yes, the UI is really bad, perhaps especially on a Mac, but it is so mind-bogglingly good at so many different things that it is difficult to believe that Kovid Goyal manages all of this by himself.
Other people have different use-cases than I do, and Calibre satisfies us all. Excellent, amazing, wonderful work, Mr. Goyal!
311 comments
[ 4.2 ms ] story [ 290 ms ] threadBest of all would be in Calibre's library handling weren't so finicky, but in the absence of that, I use Calibre with a remote share and I'm just very careful about library backups, how long I leave it running, and am patient with the slowness.
I run Calibre with the library mounted from a NAS. Works fine for my ~2000 book collection. Not as speedy as local SSD, but it is ok.
I run Calibre with a network share that sits on my home NAS since years w/o issues.
A corrupted database in Calibre is a non issue if all you use it for is to move books between your e-reader devices and the library. You just recreate it.
P.S.: Just for example -- the other day my MacBook's SSD filled up as Adobe InDesign was mid write on a huge document. It crashed and the file was corrupted and not recoverable. While (mid write) 'not enough space' is not the same as 'network mount went missing' or 'SSD kicked the bucket' it's close enough. And this is commercial software that has been around for 25 years.
Not quite the same, I'm currently using calibre with a library on a remote server (albeit samba share over VPN) and it doesn't download the books to my local device, unless i choose to save them from my library to it.
[0]: https://github.com/janeczku/calibre-web
Edit: I was referring to the alert() upon loading the site:
Lot of simplicity just works. ( lot of work would have gone in 1990's to get this site up and running "
this.correctBrowser = (this.nav || this.ie); this.correctVersion = (this.nav5up || this.ie5up); this.correctOS = (this.linux || this.win32); this.supported = (this.correctBrowser && this.correctVersion && this.correctOS);
A case of platform detection, instead of feature detection, and an illustration of how platform detection fails in future-proofing your code.
Has Ph.D in quantum computing. Works on ebooks.
He really is a hero.
https://sw.kovidgoyal.net/kitty/
That's an absolutely terrible name.
https://github.com/kovidgoyal/calibre/blob/master/README.pyt...
https://github.com/kovidgoyal/calibre/pull/870
> Yeah there are not a lot of low hanging fruit left. Now one just has to get betas out and have people test them and report bugs. And plugin developers use the betas to port their plugins. But it is going to have to wait until after the webengine migration is done and calibre 4 is released.
> I am perfectly capable of maintaining python 2 myself. Far less work than migrating the entire calibre codebase. [1]
> calibre has half a MILLION lines of python and python extension code...calibre has lots and lots of code that deals with bytes -- network protocols, binary file formats, etc. Python 3 is simply worse than python 2 for this use case. It has a crippled bytes type among other unfelicities. [2]
> There is just no way that calibre is ever going to be ported to python 3. [3]
Glad to see some outsider, flaviut, stepped to to the challenge and kovidgoyal accepted his pull request.
Looking at the pull request it seems that kovidgoyal's fear about external native functions, network protocols, binary file formats, and python3's byte type was not so insurmountable.
[1] https://bugs.launchpad.net/calibre/+bug/1714107
[2] https://bugs.launchpad.net/calibre/+bug/1456642
[3] https://bugs.launchpad.net/calibre/+bug/1756458
However, on Windows, I've found that the Calibre reader is the best. I've found that Adobe Digital Editions and the Kindle reader have terrible formatting on a non-mobile screen.
[0]https://getpocket.com/
Once that's done you get a "My Articles" option in the hamburger menu, and that's your Pocket content.
I then go to a cafe next door and read them. They don't look like an ebook on a Kindle, more like a Kindle magazine. I adore that feature.
The Kobo integrates Pocket natively, so it works seamlessly. It's one of the reasons I bought a Kobo. Native Overdrive integration was a huge plus, too.
Comparing new WiFi model to new 3G model, out of airplane mode, the 3G drains about 2x to 3x faster than WiFi model.
> A single charge lasts up to six (6) weeks, based on a half hour of reading per day with wireless off and the light setting at 13. [0]
We were still pretty pissed at the blatant false advertising (a hardcore book reader reads for only a half hour a day!?!), but moving forward, she keeps the device in airplane mode 95% of the time, only turning it off to download whatever new book she just bought. It increased to at least 2-3 weeks after that, instead of a single week.
[0] https://www.amazon.com/Kindle-Paperwhite-Waterproof-Storage-...
You can keep the display of the kindle on for hours at a time with minimal drain
Of course, modern e-readers have a backlight. Though you can never fully turn it off, at least on my first-gen Paperwhite, which is unfortunate.
As I said, functionally, it is marvellous. But using it interactively is painful.
[1] https://github.com/janeczku/calibre-web
> The server has gained all the major capabilities of the main calibre interface. You can now edit metadata, convert books, and add/remove books and formats just as is possible with calibre itself.
It not only replaced Calibre's server for me, but also those few functionalities for which I've previously used Goodreads: organizing books into shelves, marking them as read, keeping track of how many books I read in a year.
from screenshots it looks like itunes+pdf reader to me
I think it helps avoid distraction and resource usage.
I get that tiny icons are in these days, but my icons are less than 40x40 pixels. Is that considered large? They look the same size as the icons in Firefox.
You have a search box with a big list box underneath and a preview frame on the side. I guess it's 'dated' in the sense it doesn't use a browser engine, layout everything with CSS, and have icons that match 201XQY's design fad.
At this point, I've got a pretty good sample of apps that were native and have now become Electron, and the Electron versions use 8-10x more memory across the board.
This is not ok. At this point, Outlook is the least resource-hungry productivity application that I need to use on a daily basis. Outlook!
I am curious.
These days, electron seems like a popular base for any desktop app! See a whole list here: https://electronjs.org/apps
But, at the same time, I wonder how many HNers have even built a UI for a product with so many features. It's incredibly hard to find a good place for everything. And experimentation is expensive and time consuming.
If I were designing a "competitor," for a start:
- have a "File" menu that collects the commands relating to, you know, files: open, delete, rename, add, edit metadata (akin to the "Get Info" command in most other file menus), etc. Converting between file types could be in a submenu here.
- have an "Edit" menu that does Edit Menu Things (tm), most notably copy, cut, and paste . - let me drag and drop files to add them to the library.
- when I connect a Kindle or other device, show me a second pane with its content side-by-side with my library, rather than making me switch between "here is your library with flags to indicate what's on your device" and "here is your device with flags to indicate what's in your library."
- since I have two panes like the gods intended, let me copy files from my library to my device with drag and drop.
Calibre has all of that functionality, but it ignores three decades of UX convention to no particular benefit.
The author has zero care for security and the product had plenty of vulnerabilities. This harms users and also other people.
Furthermore, poor behaviors attracts blame on the whole open source community.
By what chain of reasoning do you derive the existence of the moral obligation to users who have paid exactly nothing let alone the obligation to consider what the broader world thinks of open source developers. It's pretty clear Kovid is a bit of an asshole and sometimes outspokenly incorrect but what right do we have to demand different? Usually such an obligation is transactional. Even if unspoken and devoid of monetary context there is some broader context SOMETHING of value is gained or lost.
So far as I can see the only thing we give Kovid is attention which is cheap and he gives us work which is dear. If you don't agree that the present transaction of putting up with the existence of opinionated posts which you don't have to read for a useful piece of software you don't actually have to use it.
It would even be useful for you to expand on why you think its insecure because that may inform users who can then see to their own interests better for having the benefit of your counsel but don't bore us with talk of his moral obligation unless you can't substantiate such.
The spoiler alert is that you cannot because you have confused the right to control the mores of a particular community with the right to impose those on non-members.
I once made the mistake of accepting donations for a forum I run and learned how people will expect the world from you, like 1:1 customer support whenever they need it, just because they once gave me $5.
Eventually all the "this is outrageous, I am a paying customer!" made me refund everyone and I never accepted donations again.
But if you really need to see transactions everywhere, here's one:
When I give software away for free (which I do) or food (which I do) people give me something in exchange: their trust.
I also give my trust to other software developers.
Not caring of security is a breach of such trust. Same as giving someone some spoiled food.
Here's Kovid responding to reports of security vulnerabilities: https://bugs.launchpad.net/calibre/+bug/885027
You use open source software that is made by one guy and offered to the world for free, you kind of have to deal with the possibility that that guy has better things to do than fuss over every bug report.
Also, I think a vulnerability that allows unprivileged users to gain root on a system on which Calibre is installed is worth fussing over.
> Something answering posts from fools like you over the years should have taught me a long time ago.
And submitter is correct - he does this often. I recall a security bug that he refused to fix as fixing it would break some convenient feature. That one got really heated, and only when distributions declared they will stop carrying calibre in their package management system did he cave in and fix it.
Nevertheless, I don't see these as obvious reasons not to support him in Patreon.
Did you need Calibre in the first place? If so, what did you end up using instead?
This article makes a good argument to the same: https://slatestarcodex.com/2019/09/18/too-much-dark-money-in...
There's even a school of thought that the existence of things like Patreon for funding open source development is actively harmful insofar as it can create the illusion that it's a viable funding mechanism for sustainable open source development when it really isn't.
one the converts from any format to any format, strips DRM (so I heard), adapts to different readers and if you really have to allows you to read (though the reader looks terrible)
No idea how to browse my Kindle library, how to browse books on my Kindle, or do anything else. It's a totally non-intuitive GUI.
But, you can integrate Amazon's email-to-Kindle feature with Calibre [1] so new books are automatically added to your Calibre library as well.
[1] http://blog.calibre-ebook.com/2017/01/managing-your-kindle-l...
After it prompts me for my Amazon password I sure expect those books to show up.
As I said, the UI/UX is very confusing.
Something that I would like to see in a future version of Calibre (or a fork) is news-download recipes changed to a plugin system that can be updated separately of Calibre itself. It is not ideal that if a news recipe becomes obsolete due to changes on the respective news website, one has to upgrade Calibre to a new version. For users whose distros package only a certain version of Calibre, it would be nice to continue running that distro-supported version but simply be able to update the news recipes from within the Calibre settings.
Frankly, the software is just fine for most needs, and the person in charge is still active, so the desire to replace it just hasn't materialized.
EDIT: Looks like somebody actually took the initiative to port it to Python 3.
Needless to say I gave up.
An article title such as "Popular open source software Calibre has a codebase that isn't just bad, it's outright dangerous" would definitely make me click.
If you feel strongly, please do this. It adds value. The creator might really benefit from it.
Sure you might benefit, but there are much more constructive, kinder ways to do it. Even if he and his code aren't great, Goyal's done a lot of free public service here. Let's not be dicks.
If you want to learn about the codebase, here it is https://github.com/kovidgoyal/calibre
They should be praised for their contributions, not torn down. That would be a dick move.
Forgive me, I have the flu and I'm grumpy today.
There is an awful lot of self-deception packed into this paragraph.
> We would actually love to read that.
That part is probably true for many.
However, I would gladly read a post that reviews Calibre codebase in a helpful, friendly way.
For reference, here's the ongoing python 3 port pull request: https://github.com/kovidgoyal/calibre/pull/870
Shouldn't be all that surprising. Things are harder than people think, and only a few people are willing to stake actual skin in the game instead of just complain.
Also, Calibre is already a niche tool. All of my friends/family have a Kindle, they all use Amazon's default send-the-kindle feature, and none of them probably even know how to get the physical ebook file out of the Amazon system nor care.
And ebook file management just isn't a very sexy problem to solve beyond a proof of concept weekendware effort. Surely most people aren't spending much time in Calibre anyways. I know I just use it intermittently to load the next 10 books onto my ereader. It's not a part of my life I'm very passionate about changing.
(mind, I find Calibre pretty usable)
I haven't used the news feature in almost a decade, but in those days, you could clone a news site's recipe and modify it - no need to upgrade Calibre.
It opens with a list of books, you double click on the book you want to read and it opens that book in a new window.
What could be simpler than that?
Years ago, I enjoyed stripping my own purchased Kindle books to ePub with Calibre, so I could read them on my non-Kindle device, but it wasn't so easy as the patches became harder to find, and Amazon would constantly change their DRM.
1. unavailable in my country at a reasonable price
2. Something I’d rather read while travelling.
And often, Kindle e-books are the only ones that are priced by region. I try to buy from DRM free stores wherever possible, but it isn’t always doable.
Physical books are much less convenient in that I can't carry 50 of them around in my pocket like I can with books on my phone.
It's still a bit of a pain, you may need to intentionally downgrade your version of the Amazon for Kindle app to an older version where the tools can break the encryption. But it can be done.
Works on Ubuntu too, which is really a PITA otherwise.
Here's what's under calibre/bin
You can use many (possibly all) of these independently of the UI.It's funny, if they released a version of Calibre that had only the bins you mentioned and omitted the GUI entirely, it would probably be held in much higher esteem among the HN community.
Also, systemd is not one binary. It's like 50 different binaries.
As Neil Gaiman so aptly wrote on his blog [1] - "George R.R. Martin is not your bitch". I feel the same needs to be reiterated in this case - "Kovid Goyal is not your bitch".
Edit - Ouch, OP, I guess you struck a nerve with the HN crowd by saying it like it is...
1: http://journal.neilgaiman.com/2009/05/entitlement-issues.htm...
Goyal provided a unique and complete piece of software, charging exactly zero, and continues to improve it even a decade after it released.
If you start consuming an unfinished story and then entitle yourself to an ending, that's 100% your fault. As an outside observer who never even watched the show, GoT fans are just tantrum-throwing assholes. When you spend $X on a book, you are just buying that book, not that book + liens on the author's future output + a guarantee that there will be any. Such weird entitlement in that community.
Also, you presumably also demand a really good book as well so that he doesn't "screw you over" (cmon) with a bad book where the fans now recommend dodging the final books (Rendezvous with Rama, Wheel of Time, etc).
Second, the interface is hard to use. Technology is a tool, and the interface is the part we interact with. If a tool is hard to use, then I’m probably not going to use it. I suffer enough with crappy technology at work; I don’t need it at home too.
And yes, it’s FOSS, and I don’t have to use it. But that doesn’t mean it’s above reproach.
Am I the only one who didn't find it hard to use? It's different, but it took all of one afternoon to figure it out 8 years ago. Despite only very occasionally using calibre, that learning session has persisted. I don't find myself getting lost in the UI or making mistakes.
Perhaps because I grew up in the DOS era where it was the norm for every application to be different? I find that as the years go by, the deviation required from the norm to be considered "bad UI" keeps shrinking.
Doesn't work for huge books, but has been a great boon for most books!
It then pops up everywhere I have a Kindle app, mostly my iPad and Galaxy S9.
Huh. Now that I'm thinking about it, it seems like this would be even easier to do from the command line...
I'd advise a separate email address for this functionality.
At least on Windows, I've been pretty underwhelmed with other ebook viewer apps I have tried. The various Kindle apps tend to blow for anything you don't obtain through Amazon, and often don't work great for syncing even Kindle ebooks. I still have a bunch of Microsoft Reader .lit files kicking around, and Calibre is one of the only things that will open them. The Calibre PDF reader is pretty terrible, but setting is up to pop open to Adobe or whatever instead doesn't take much ceremony.
One thing I can remember is that if you start a conversion or a download, often it silently starts in the background with apparently no indication anything is going on, unless you know to look for "Jobs" in the lower right corner. But I think I had a bunch more complaints which have apparently become invisible to me now.
It's a shame there's no good hardware ereader to use it with. Every e-ink device is closed hardware, runs only closed software, and is trying to lock you into some DRM-rich ecosystem.
Even the 'special offers' dissipate after being in airplane mode for a certain length of time. I see no value in using any online feature—I've never taken my kindle off of airplane mode, and use Calibre to load all content.
Back when I first bought my kindle and made this decision, I was thinking the ads would be something like a "checkout these deals on Bose speakers!" interstitials every three page turns.
https://github.com/koreader/koreader
https://github.com/ccoffing/OcherBook
https://github.com/lgeek/okreader
https://fread.ink/
Also:
https://onyxboox.com/ - this is Android so I guess it's bit more hackable
https://the-digital-reader.com/2015/06/19/is-the-booq-cervan...
None of this is a replacement to a properly open ebook reading device which does not exist.
On the software side, openinkpot existed at some point, but the project died.
I'd love a properly made piece of very low power open hardware running e.g. nuttx rather than boring Linux/Android.
I realize that you are griping about dedicated e-readers, but I want to make clear that its not strictly an Android problem. The more open Android devices work just fine as e-readers.
My flow is basically Calibre -> managed library -> android phone -> offline reading anywhere.
1. Calibre Companion 2. Coolreader
[1]: https://www.bq.com/es/cervantes-4
Yes, the UI is a bit quirky, but who cares? I spend my time actually reading the books, and for managing my library and converting between formats Calibre is ace.
That useful software like this exists makes me very happy.
Other people have different use-cases than I do, and Calibre satisfies us all. Excellent, amazing, wonderful work, Mr. Goyal!
I have a lot of eBooks, because I built a DIY Book Scanner and scanned all my books in a couple of years ago.