Readit News logoReadit News
Papamanolis · 7 months ago
Hey people!

After years and years of wanting to start something and build a product, I’m taking a jab at it!

So basically, me and a few of my coworkers wanted to create a virtual book club since we are all working remotely and decided why not automate it.

I’ve been working on booktalk, a Slack app that makes book clubs easier to run. For now it will allow the team to get details and suggestions about books, vote on books that they want to read, set a timeframe for their reading cycle, and when the cycle ends, it reaches out with a few relevant questions about the book!

Has any of you organized or participated in a virtual book club before? What was your experience, any challenges that you faced or features that were missing?

Fire away!

PS: Let me know if you have any feedback about the website too, it was my first time creating a landing page!

digdugdirk · 7 months ago
The biggest feature that I'd love to see with a virtual book club would be a way to "unlock" discussions based on how far the into the book you are. The goal would be to make things asynchronous (so you could read at your own pace) without getting hit with spoilers.
Ntrails · 7 months ago
> The goal would be to make things asynchronous (so you could read at your own pace) without getting hit with spoilers.

I don't, personally, think that works super well?

I don't want to join in at the tail of a thorough discussion and add my 2 cents to people who have moved on.

I also wouldn't want to keep getting dragged back to prior threads on bits I won't remember as well (most specifically where the spoilers start).

So, I could well be wrong, but it sounds awkward to me

fm2606 · 7 months ago
That is a good idea.
gostsamo · 7 months ago
Funnily enough, recently we started a bookclub in our office and we are using slack. Not sure if we need the app, but we might try it.

The biggest challenge for me is to accept when the team chooses an obviously bad book, but they will learn with experience. A feature about book details sounds good but depends on the source and if it is marketing or a good critical one. Finding the book in print would be a nice feature which is easy for english and big countries, but might be hard otherwise.

Edit: maybe consider a feature for setups where people rotate to choose the book if there is not one yet.

agscala · 7 months ago
Maybe it would be valuable to have an anonymous "onboarding" experience where people choose the genres they like or dislike, and then the people choosing the book can be informed a summary of the groups preferences.

Also an anonymous thumbs up/down after the book is read could help the group choose a better next book

em-bee · 7 months ago
if the team chose a bad book, i can't have been obviously bad unless you pick books at random or without even reading anything about them before selecting. it also depends on how much people read. in our group most members are well read and a good part of the nominations are books that at least one person has read already. people nominate books they read before and liked or have heard good things about. other sources are awards or nominations for awards the authors received, or articles like the best 10 books in this genre, etc...
em-bee · 7 months ago
i am in an active bookclub that uses a chat group. we collect nominations, vote on the selection, and after about a month we have an online meeting to discuss the book. for that we first vote on which day we want to meet, and then on the time for the meeting on the selected day. so three votes for each book, two of which are the same kind of vote every time. occasionally we also use a vote to find out if people need more time or if everyone is done.

we use wechat for that because most of us are in china, and no other chat platform works for everyone. wechat has mini apps that we can use for voting, but collecting the nominations and setting up the votes each time is a manual and sometimes tedious process. once we used an external voting app, but there the problem was the lack of integration with the wechat users. we could not tell who already voted, and more importantly people could not tell for themselves if their vote was counted or not.

better integration would be nice. getting everyone off wechat into slack is probably going to be the biggest challenge though. i don't even know if slack works for everyone in china.

vcool07 · 7 months ago
My feedback would be to not restrict to books. You would get more traction with movies / web/tv series or even video games.
WorldMaker · 7 months ago
> Has any of you organized or participated in a virtual book club before? What was your experience, any challenges that you faced or features that were missing?

It's funny, but my "winter hobby project", between myself and my junior developers GitHub Copilot and whiskey, has been trying in the nerdiest way possible to convince my Book Club to switch from a Ranked Choice voting that was still a bit too much first-past-the-post (but easy to model in a Google Sheet) to trying the Schulze method [1], which is fascinatingly more robust and which provides some niceties like "vote on everything as 1-5 [stars/hearts/dolphins/what have you]" (encouraging lots of ties to get the most interesting "beatpath winners") with the ability to save those ranks between voting rounds because the ranks are personal and not "points". As a voting method, it also gives us a bit more flexibility to "predict"/plan for more than one winner at a time (many of our members use public libraries with long lead times to borrow books, so we like to plan two or three books ahead). But also as a voting method that encourages ties, it still allows for surprises/serendipity and changing minds/shifting winds.

Ever since ModernBallots [2] shut down (RIP) it's been increasingly harder to convince people to try the Schulze method for voting. For one thing the Wikipedia rabbit hole is full of way too much complexity of the intricacies of voting methods in general and the math looks way harder than it is. While I wouldn't want to do the math by hand, it's a really simple algorithm from a computer science standpoint: convert one user's ballot's ranks into an adjacency matrix representing which item (book) beats with other item (book) [1 for edge, 0 for no edge], add adjacency matrixes together (you get an adjacency matrix where the edge weights are number of ballots), then run a simply modified Floyd-Warshall on the matrix to find the widest paths (ranking the items by most widest paths to fewest). Floyd-Warshall is a classic, simple "textbook" digraph algorithm. So much so that GitHub Copilot knows it quite well. (I recall it came up three or four times in my own college experiences.)

While I've been working on this, so far I've been intentionally specializing it for this particular book club. I'm trying to keep it fun for myself and worrying about generalizing it into a product (such as a potential replacement for ModernBallots) has intentionally been something I've tried to avoid to keep from burning out on it. (Kudos to you on doing it and shipping a first version of it.)

I have been building it in the open, for a variety of reasons: https://github.com/WorldMaker/jocobookclub/

I think it's a cool codebase. The main site is SSG (to GitHub Pages), progressively enhanced with web components and some HTML templates for those web components. The API site is sent to Deno Deploy, using Deno KV as the database, and using Deno Queues for the vote calculation work which is probably overkill for the club's current scale but the engineering effort behind it felt like a good idea and makes me happy. The slowest loading things right now on the site are the Font Awesome icons in use to keep it fun/visually interesting, and as the number of icons in use stabilizes I expect to more cleanly subset it and drop that into the SSG build as well.

You can even browse the public (static) parts of the site: https://worldmaker.net/jocobookclub/

You won't see the actual voting tools light up, though without logging in, and for hopefully obvious reasons (small, private club) the registration links are restricted to invite-only. Maybe I should take a screenshot of them at least, to include in the README, but so far I haven't thought much about the public facing aspects of the codebase like that as it is still mostly for the benefit of myself and the club members.

In general, we probably don't talk about voting methods enough and first-past-the-post is too easy a default and too accidental a fallback even when you think you are doing something smarter like a Ranked Choice ballot. Sometimes the more complicated you try to make those rules, the less effective they are in reality. It's been one of my nerdier obsessions for a long time. I used to use ModernBallots a lot to try to convince people to stop using SurveyMonkey or Google Sheets and simple counts for something a little smarter and a lot wilder that finds answers that everyone collectively don't always realize they all mostly agree on/with.

[1] https://en.wikipedia.org/wiki/Schulze_method

[1] https://modernballots.com

angoragoats · 7 months ago
Why would you build this on a platform that 1) is mostly used for business communication and 2) requires a monthly per-user payment if you want to see content older than 90 days? Why not make it a standalone tool? Then you could always offer an optional Slack integration for those who wish to use it at work.
Papamanolis · 7 months ago
Good point! I know there are a lot of book club communities on Discord and other platforms, but we were already using Slack and didn’t want to migrate to another platform just for the book club. It just felt like the easiest way to get started.
layer8 · 7 months ago
Regarding #2, this book club service will presumably become a paid service anyway, so it’s only a matter of how much you need to pay.
angoragoats · 7 months ago
It doesn’t make a lot of sense to me to compare paying an indie hacker for a service that you actually find valuable to paying Salesforce for a text communication tool.
ericholscher · 7 months ago
Love this idea! We wrote up a post about the book club we were running at our small company, and it was great for expanding people’s interest and understanding of different topics: https://www.ethicalads.io/blog/2022/05/running-a-company-boo...

Picking a book was often the hardest part though, so this tool having recommendations and voting seems like a really nice solution.

Papamanolis · 7 months ago
Hi, and thanks for the feedback! One of my top priorities right now is learning as much as possible about online book club experiences from others, so I really appreciate you sharing the blog post!

Interesting to hear. Personally, finding a book was usually the easiest part (probably because we have dozens waiting on our 'to-read' lists). I’ll do my best to make the book recommendation experience as smooth as possible.

ericholscher · 7 months ago
Yea we all have a lot of books to read, but trying to figure out how the group wants to learn something and discuss is hard. Especially when the goal is having some business benefit, not just reading for fun.

There’s a lot of “paper reading” clubs which might also be interesting to look in to.

dewey · 7 months ago
Some landing page feedback: As Slack is mostly used in a corporate context the first thing people will look at when they add an app to their workspace would be the privacy policy and to see if it's trustworthy. Would maybe be worth it to expand on that a bit?
Papamanolis · 7 months ago
That's a great point! Privacy is really important to me as well, and I'm strongly against collecting anything beyond what's necessary for the app to function. I'll work on adding a dedicated section to clarify this as soon as possible. Really appreciate you taking the time to share your feedback!
sudodan · 7 months ago
Edit
dyeje · 7 months ago
Congrats on shipping. Curious, why Slack? Is this intended for book clubs at companies specifically?
scovile · 7 months ago
My biggest pain point with bookclubs has been keeping everyone motivated to continue reading. It's fun for the first few months but every time it drops off rather quickly. Don't really have an answer to this, apart from finding a new group to read with.
treylayton · 7 months ago
landing page is super aesthetically pleasing. for my last project, i built v1 as a discord bot, and my conversion rate from "yes i'll try it" to sign ups was abysmal. kept asking and finally realized it was because people didn't want to use discord or slack or some third-party service to access the tool. others have touched on it, but if you want to expand beyond corporate book clubs, would probably recommend building it out as a standalone service, or maybe into imessage or whatsapp?
gmargaritis · 7 months ago
I’ve been a part of various book clubs in the past, mostly in person and few on Discord. One thing that really turned me off in virtual ones was how people would post while reading, sometimes creating small spoilers for others. I always wished for a way to mark spoilers to avoid ruining surprises. Is this something you’d consider adding?
Papamanolis · 7 months ago
Thanks a bunch for the suggestion! I’ve run into the same issue in online book clubs, so it's something that I'll definitely add in the upcoming version!
em-bee · 7 months ago
we solved that problem by having two groups or rooms. the main group where we nominate books and manage the whole process as well as general chat, and one group for spoilers.

especially on discord grouping rooms into categories is easy. if you don't have a whole server for the bookclub because it is part of something larger you could still have a category and in there multiple groups. even a spoiler group per book if needed.

WorldMaker · 7 months ago
There's also some effective ways to use Threads for this if you are confined to one channel, especially on Discord where Threads hang tied to their channel and get useful names where the names can be things like books.

On Discord you can also experiment with making your "one channel" a Discussion Forum channel instead and then everything is discoverable threads. Some of the busier Discords that will only give you "one channel" for your group will often be amenable to letting that one channel be a Forum channel.