I'm hacking on a competitor (zeneca.io) with my best friend, and can relate.
I think one of the other big challenges to overtaking goodreads, is figuring a "hair-on-fire" kind of problem, where people would switch and use a different product frequently.
For us, one such problem was displaying lists in a way that you could share on your blog. This is getting traction, but issue there, is that this isn't something that incentivizes people to use the product frequently. Without frequent use, iteration is much harder. We're experimenting with deeper social, discovery, and tracking to solve this. If anyone has ideas, feel free to ping me!