Episode Transcript
Transcripts are displayed as originally observed. Some content, including advertisements may have changed.
Use Ctrl + F to search
0:04
Welcome back friends. This
0:16
is the changelog. I'm Adams Dekoviak
0:19
and this week on the changelog
0:21
we're talking to Nadia Adelayo, founder
0:23
of Storygraph. Nadia started out as
0:25
a one-woman dev and product team
0:27
and has had to adjust and
0:29
maneuver along the way to becoming
0:31
the Amazon free alternative to Goodreads.
0:34
We talk about the importance of
0:36
customer research, the iterative nature of
0:38
customer research and what it takes
0:40
to synthesize and analyze the findings
0:42
to guide product development, the technical
0:45
challenges and learnings she's faced while building
0:47
Storygraph. For example, at several points they
0:49
faced challenges in handling an influx of
0:52
users and had to re-architect the system.
0:54
We also talk about the business model
0:56
of Storygraph and how they generate revenue
0:59
through plus subscriptions and partnerships with publishers
1:01
for book giveaways. A
1:03
huge, massive thank you to our
1:05
friends and our partners at fly.io,
1:08
the home of changelog.com. With Fly
1:10
you can launch your app near
1:12
your users. Fly transforms containers into
1:15
micro VMs that run on their
1:17
hardware in 30 plus regions on
1:19
six continents and Antarctica is
1:21
coming soon. Big wink. Launch
1:24
an app for free at fly.io. What's
1:38
up friends? This episode of the changelog
1:40
is brought to you by our friends
1:42
over at Vercel. And I'm
1:44
here with Lee Robinson, VP of product. Lee,
1:47
I know you know the tagline for
1:49
Vercel, develop, preview, ship, which has been
1:52
perfect, but now there's more after the
1:54
ship process. You have to worry about
1:56
security, observability, and other parts of just
1:59
running an application. What's
2:01
the story there? What's beyond shipping for
2:03
Vercel? Yeah, you know, when I'm
2:05
building my side projects or when I'm building my
2:08
personal site, it often looks like develop preview ship,
2:10
you know, I try out some new features, I
2:12
tried a new framework, I'm just hacking around with
2:14
something on the weekends. Everything looks good. Great. I
2:16
ship it. I'm done. But as we talk to
2:19
more customers, as we've grown as a company, as
2:21
we've added new products, there's a lot
2:23
more to the product portfolio of Vercel
2:25
nowadays to help pass that experience. So
2:27
when you're building larger, more complex products,
2:30
and when you're working with larger teams,
2:32
you want to have more features, more
2:34
functionality. So, tangibly, what that means is
2:36
features like our Vercel firewall product to
2:38
help you be safe and to have
2:41
that layer of security features like our
2:43
logging and observability tools so you can
2:45
understand and observe your application and production,
2:48
understand if there's errors, understand if things
2:50
are running smoothly and get alerted on
2:52
those. And also then really an expansion
2:54
of our integration suite as well too,
2:56
because you might already be using a
2:58
tool like a Datadog or you might
3:00
already be using a tool at the
3:02
end of this software development lifecycle that
3:04
you want to integrate with to continue
3:07
to scale and secure and observe your
3:09
application and we try to fit into
3:11
those as well too. So we've kind
3:13
of continued to bolster and improve the
3:15
last mile of delivery. That
3:17
sounds amazing. So who's using the Vercel platform
3:20
like that? Can you share some names? Yeah,
3:22
I'm thrilled that we have some
3:25
amazing customers like Under Armour, Nintendo,
3:27
Washington Post, Zapier, who use
3:30
Vercel's frontend cloud to not only help
3:32
scale their infrastructure, scale their business and
3:34
their product, but then also enable their
3:36
team of many developers to be able
3:39
to iterate on their products really quickly
3:41
and take their ideas and build the
3:43
next great thing. Very cool.
3:45
With your configuration for over 35 frameworks,
3:48
Vercel's frontend cloud makes it easy for
3:50
any team to deploy their apps. Today
3:52
you can get started with a 14 day free trial
3:55
of Vercel Pro or get a
3:57
customized enterprise demo from their team.
4:00
Visit vercel.com/change log
4:02
pod to get
4:04
started. That's vercel.com/change
4:07
log pod here
4:36
with Nadia Otto IO founder and
4:38
CEO of Storygraph welcome to the
4:40
show. Thanks for having me. We
4:43
are excited to have you not
4:45
just founder not just CEO but
4:47
pretty much solo dev
4:49
right one women dev
4:51
shop building this what I
4:53
will describe as like a Goodreads competitor
4:55
or killer of all the killer. Killer of
4:58
all the killer. She
5:01
wasn't ready for that one. She's like, well, but
5:03
it sounds good. Let's go with it. We didn't
5:05
say alternative. That's the first time alternative.
5:07
That's because we're being polite. Very
5:10
British of me. Very British. This
5:14
is a really cool thing. Before we get into
5:16
the details. I like this idea. This might not
5:18
be your idea, but I like it anyways, which
5:20
is there are cool web
5:23
products that people love.
5:26
And then they have so much success that they
5:28
eventually get purchased by big tech. And
5:31
then over time, people love them less. Let's just
5:33
say that that's a trend of which Goodreads seems
5:35
to be an instance of the trend. And
5:38
I just feel like that's a place where
5:40
entrepreneurs can just like look at
5:42
that situation and then be like, Hmm, what
5:44
if there was something like
5:47
this, but good again. And
5:49
you could like have a bunch of founders
5:51
just go after that like meetup.com. Just throw that
5:54
one out there. But let's talk about you. Let's
5:56
talk about Storygraph. I'm just thinking
5:58
somebody should disrupt meetup.com. That's
6:00
my point there. But is that what you were
6:02
thinking with Goodreads? Like, oh, I used to love
6:04
Goodreads and now I don't anymore. And so let's
6:06
build something. It's actually pretty funny because
6:09
it wasn't like that at all. At
6:11
all? Okay. In fact, okay, maybe at
6:13
all is, you
6:16
know, a bit far stretching it. Okay, maybe
6:18
a little bit like that, but mostly not.
6:20
A little bit. But I
6:22
purposely, for a long
6:24
time, I even thought the notion that
6:27
I was building a Goodreads alternative. Mainly
6:30
because when I first, I
6:32
thought I had used a Goodreads since 2012.
6:35
And I loved it. There was a time where it was my
6:37
favorite app. The thing is, I didn't use
6:40
a lot of, I was very simple with my usage.
6:42
I found the book I was reading, I marked
6:44
it, I added a star rating. I
6:47
rarely even added text to my reviews.
6:49
So for me, Goodreads did everything I
6:51
needed. It wasn't when I
6:53
got into tech, so I went to a software bootcamp
6:55
in end of 2013. So
6:59
as I was becoming a developer and getting more
7:01
immersed in the tech world, I
7:03
did start to notice or
7:05
think, wait a minute, Goodreads
7:07
has not changed once since
7:09
I've been using it. You know, when you
7:11
get into tech and you learn about how
7:13
websites and apps are developed and you notice with
7:16
other products that you use, oh, that's the new
7:18
design. That's the new feature. I would pay
7:20
more attention to release notes, things like that.
7:22
There was never anything with Goodreads. So I
7:24
do remember thinking, it's a bit strange that
7:26
it's not developed at all, especially since it's owned
7:28
by Amazon. I would think that, but I
7:30
wasn't angry about it. I wasn't mad about
7:32
it because it did what I needed it
7:34
to do. And then
7:36
fast forward to 2019
7:40
when I started working on this product
7:42
in earnest, originally, it
7:45
was just one of my side projects
7:48
and it wasn't even a Goodreads alternative.
7:50
It was a Goodreads companion app.
7:53
Oh, so I was hooking into the
7:55
Goodreads API to pull
7:57
out, to basically create a nice dashboard. of
8:00
all of your shelves and you could see
8:02
your percent through of how much you'd
8:04
read of each of the shelves. That's what it was because
8:06
Goodreads didn't do that. So it wasn't even meant to be
8:10
an alternative. But then when I started
8:12
doing customer research, because I was
8:14
having such a blast and I was like,
8:17
I'd love to build something in books full
8:19
time. Let me see if there is a
8:21
need or a pain point. All
8:23
of the pain points I was getting from
8:26
the people I was speaking to were all
8:28
Goodreads related. So now I'm putting together what
8:30
would I need to build and it starts
8:32
looking a little bit originally just a replacement
8:34
of the recommendations portion and
8:37
then eventually a more fully fledged alternative.
8:39
But for the longest time I told
8:41
myself, especially because throughout the
8:43
first year I was genuinely solo, like
8:45
my co-founder Rob hadn't come into the
8:47
picture yet. So I was genuinely solo
8:50
and I thought to myself, don't
8:52
just change the product or product to
8:54
be a Goodreads alternative for several reasons.
8:57
One being it's very easy to get intimidated
8:59
by that, especially when I've got nothing right
9:01
now and it's just me and I'm building
9:04
an alternative to an Amazon product that's
9:06
huge and has dozens of developers, if
9:08
not more. So that's one. Two, it's
9:10
going to end up being very limiting for
9:13
my product vision because I would just end
9:15
up looking at Goodreads and trying to do
9:17
what they did but better, which isn't compelling
9:20
enough. And so I
9:22
would rather, I wanted to look at it as
9:24
I'm building a new product in the book space
9:27
for avid readers or maybe to get
9:29
people into reading and I will follow
9:31
the pain points and see
9:33
what comes out of that. And
9:36
it wasn't until we got to a certain size
9:38
that it made sense to be like, we're a
9:40
Goodreads alternative because at that point it was like
9:42
the core of the product, we had our niche,
9:44
which was the moods and the pace. The
9:47
core of the product had been fleshed out and
9:49
so at this point now we need to advertise
9:51
ourselves as a Goodreads alternative so that people see
9:54
it and go, oh yeah, I don't like Goodreads, I'll
9:56
try this thing. A lot of. direction
10:00
we can go there, especially with the
10:02
alternative section of it. I'm curious about the, and
10:04
I do want to dive into that as well,
10:07
but I'm curious about the
10:09
customer research aspect because in
10:12
the pre-call you mentioned like the skip that part,
10:14
and I know that I'm definitely one of those
10:16
people because I just want to get to the
10:18
thing, right? I want to microwave this product into
10:20
existence and suddenly be hitting product market fit and
10:22
being amazing, right? Like that's what we all want.
10:25
Can we just get to the millions quickly? Jeez.
10:30
And that's not how it works. And
10:32
sometimes I think even with
10:34
like what we've done here with the change over
10:36
the years, we just we've found our way
10:38
by finding what we love about what we want
10:40
to build. And we don't know that until
10:42
we talk to the people that we intend to
10:44
serve, right? Like a product isn't just simply you
10:47
creating something and people loving it. It's you
10:49
understanding what they want and giving them
10:51
what they want. So how did you find out how
10:53
to give them what they want? So I
10:55
was super lucky in that my
10:58
first and only real job in software
11:00
was at Pivotal, Pivotal Labs. And
11:03
so I worked there for a year and a
11:05
half and I met like people who
11:07
were at the top of their
11:09
field in software engineering, but also
11:11
product management and design. So from
11:14
that I'd already picked up the
11:16
importance of customer
11:18
interviews, approaches to do
11:20
customer research, things like that. So I already
11:22
had a face there. And then
11:24
I'd also read, you know, the standard, I'd
11:27
read the Lean Startup. I'd
11:29
read The Mum Test by Robert
11:31
Patrick. So I'd also read a
11:33
few books that helps me be
11:35
very cognizant of the need
11:38
and importance of customer feedback and
11:40
iterating on that, but also the
11:42
pitfalls that people fall into. So
11:45
when I had that first week of
11:47
working on my side project and loving
11:49
it, oh sorry, also
11:51
before that I'd also had experiences of
11:53
when customer research was not done well
11:55
in prior products or I
11:58
ran a business for a year and a bit before.
12:00
before starting this. And
12:02
I saw what happens when
12:05
customer research isn't made
12:07
important or when the whole team
12:09
is not bought into that. And so I remember
12:11
that when I was getting excited about building something
12:13
in the book space, my first thing was stop,
12:16
pause, gather everything you know about customer
12:19
research. This has to be important because
12:21
the worst thing, especially because I didn't
12:23
have a full-time job and I was just living off
12:26
of my savings. I had five years of runway. At
12:28
the point at which I started this, I
12:30
had four years of runway. So it was very vital that I didn't waste my
12:32
time. So from the beginning, I had
12:35
the fight, the urge to just build it and hope that
12:37
everyone would love it. So I immediately
12:39
was like, right, I need to do customer research.
12:41
And the things that I knew then were, I
12:44
need to have a clear hypothesis of
12:47
what I'm doing. I need to
12:49
have a script because
12:51
a script is what stops you from going
12:54
off on tangents, accidentally asking
12:56
leading questions, things like
12:58
that. You know before you go
13:00
into it that if you get the answers to your
13:02
questions, then you'll be able to figure out the
13:05
results of your hypothesis. And
13:07
I knew that I needed to have an effective synthesis
13:09
method for a way to analyze what
13:12
I'd heard. And so my
13:14
first round of research I
13:16
did, the very first round was
13:19
demoing actually the product that I'd already built,
13:22
which since then I very rarely
13:24
do product demos and interviews
13:26
now because I just think it's
13:28
kind of leading, you know, you're showing someone something and
13:30
you're kind of like, would you use this? You know,
13:32
do you like this? And actually it's
13:35
very easy for people to just say, yeah,
13:37
sure, I would. And actually I was, that's
13:39
what basically happened in the first round of
13:41
interviews I did. And through
13:43
my learning of from the
13:45
mom test, I learned that that was people being
13:48
polite. And actually I needed
13:50
to put a product aside and just
13:52
figure out pain points with average readers.
13:54
And so my first round of research was well,
13:58
I think it was just more discovery phase of. are
14:00
that do average readers have any pain
14:02
points? And after I interviewed
14:04
about, I don't know, five to six
14:06
people or so, I was able to
14:08
go through everything they said. I record all
14:11
my interviews, I watch them back, I take out
14:13
snapshots of thoughts, phrases, things like that,
14:15
and group them into themes. And there
14:18
was a key theme of, I
14:20
don't have one place to get consistent,
14:23
high quality recommendations. So
14:25
then I take that piece. And
14:28
I do, I think, what's the next round? And
14:30
the next round is, well, how do people try
14:33
to figure out how people currently find books?
14:35
So what are their current pain points with
14:37
recommendations now? Listen, I do that round. And
14:39
then I basically, I get to the point
14:41
after doing a few rounds of, ultimately,
14:43
people want to find books based on mood, sentiment,
14:46
vibe, and there's no way to do that. And
14:48
it's like, then I keep going until I get
14:50
to the point where I'm like, here's
14:52
a very basic feature set. And
14:54
this basic feature set is people
14:57
can key in the mood that they're looking for.
14:59
And then they get a book recommendation, you know,
15:01
and then I so I built that very basic
15:03
version. And then I let people
15:05
use it, I go back to the people I interviewed, I
15:07
put it in front of them. And
15:09
then a week later, I book in calls with
15:11
them again. And I asked them, like,
15:14
did you log in to this
15:16
app? Tell me more about what I
15:18
just try and ask questions about their behavior, as opposed
15:20
to like, did you like it? Or you know what
15:22
I mean, just really trying to basically treat
15:24
it quite scientifically as much as
15:26
possible. And so it's just
15:28
through this like iterative process of always having a
15:31
hypothesis or a key question that I'm trying to
15:33
answer, interviewing about five to
15:35
eight people, synthesizing that breaking down
15:37
their learning and just using that to guide
15:39
the next step and just continually doing that.
15:41
And I continue to do that to this
15:43
day, is what has a
15:47
big factor of our success in that
15:49
we are building what people want. Those
15:53
questions you answered or asked seemed very open
15:55
ended versus closed. Like, do you like it
15:58
is yes or no? You
16:00
can just get a yes or no or
16:02
some version of politeness, right? But
16:04
if you say explain to me how you feel
16:06
when you do X You
16:09
get an explanation not a
16:11
yes or no, which even
16:13
with a demo I wondered if you felt like
16:15
you were almost kind of selling it right because
16:18
you're demoing it it's almost like would
16:20
you use this that's kind of damaging
16:22
to the process because you're They
16:24
might feel like you're you're done and you're
16:27
looking for users not feedback and let you
16:29
know Unless that's actually what you asked for
16:31
but the open-ended questions makes a lot of sense
16:33
because you're gonna get a lot more from that
16:36
versus simply a Yes, or
16:38
no closed-ended kind of question. Yeah,
16:40
and so yeah, I did I after that first interview
16:42
with the demo I stopped doing demos and
16:45
I would say that the questions are The
16:47
power of having them be more open-ended so they
16:50
might say I might say I would say they're
16:52
kind of in the middle ground Between yes and
16:54
no and completely open ending like how do you
16:56
feel? I guess it might be like how
16:58
would you describe this product or what's
17:00
your biggest pain point or and they
17:02
could say anything I think that's why
17:04
when you do your synthesis and you
17:06
break down How did each person answer
17:08
this question and despite them saying different
17:11
things if you can say
17:13
wow these three people Ultimately said the same
17:15
thing. That's a key insight because the question
17:18
was open and yet they all
17:20
Express a pain point with recommendations or
17:22
you know what I mean? And that's
17:24
why you gravitate towards those things
17:26
that a handful of people have also the
17:29
same thing despite the question being very open
17:32
with Questions like those small
17:34
sample sizes right five to eight people
17:36
per round so
17:38
it sounds like since I was thinking like how do
17:40
you synthesize open-ended questions because I Have
17:43
a similar situation not on a product
17:45
but on a survey we do for
17:47
front-end feud We're trying to get open-ended
17:49
questions. This is like family feud So
17:52
the question is like, you know, how do you feel
17:54
about AI? Well, we
17:56
want to be able to categorize those and actually
17:58
synthesize them down into groups And we
18:00
can't put multiple choice because that ruins the whole game.
18:02
Like you have to guess what the audience was going
18:04
to say. And so it's a text input, but I'm
18:07
trying to group by in my
18:09
SQL query eventually, you know. And
18:11
that's difficult. And so I've learned tricks
18:13
like say like in a word, how do you feel about
18:16
this? And now they're going to give me one word and
18:18
I can actually work with that better. But
18:20
this is a sample size of 100 to 200 people.
18:22
And with five to eight, I think you can just
18:24
read them. And like in your brain, be like, these
18:27
are actually saying the same thing. So you don't have
18:29
to actually do any data normalization. But I wonder how
18:31
you handle biases
18:33
in participants. Is it
18:35
always somebody new? I mean, because if you're
18:37
asking the same person, they're the easiest person
18:39
to go back to, right? Because they already
18:41
know the process and maybe they provide a
18:43
good feedback. How do you handle that? Because
18:45
small, especially when you're starting, there's very few
18:47
users or it's all your friends. This
18:49
is the hard part with questions like would you use this
18:51
because your friends want to have your back and be like,
18:53
I would, but that might not be true. How
18:56
do you deal with that? That's actually a key
18:58
part of the process, which I neglected
19:00
to mention. Part of
19:02
when you're setting up a round is
19:04
also deciding who are you interviewing? What
19:06
qualifies them? The first round
19:08
were just friends, people I knew. But
19:10
to mix it up a bit, I
19:12
also called the end book
19:15
bloggers from Instagram just
19:17
to have some strangers and things
19:20
like that. So I did that. The earliest
19:22
rounds were a mix of friends
19:25
and strangers from the book community. So
19:28
that was kind of adding some variety. Plus
19:30
maybe a little grassroots marketing, right? You get
19:32
some enthusiasts to know about the storygraph through
19:34
that. Yes. And then I had people obviously
19:36
following the account as well, which I was just building
19:39
up. And again, no product. I was just posting my
19:41
own book reviews of what I was reading. And
19:43
then DMing people saying, I'm actually working
19:46
on a product. There
19:48
was a lot of that in the early days, lots
19:50
of Twitter and Instagram DM. So
19:52
that's one. But then I also
19:54
had this landing page up where I
19:56
said, we're building a tool
19:58
for avid readers. I put
20:01
a subtitle being like, if
20:03
you read 52 books a
20:05
year and you're interested in this, put your
20:07
email here. The reason why I said that is
20:09
because I thought the longest I'd want to wait
20:11
for feedback on anything, like a recommendation, is a
20:13
week. If I'm getting someone who's reading 52
20:15
books a year, if I recommend a
20:18
book to them, they'll hopefully read
20:20
it in a week and then I can interview
20:22
them or just check in, send them a survey
20:24
like, was this actually a good recommendation to see
20:26
if the product was working? Since
20:29
we've been bigger, depending on the research
20:31
round, I'll have different criteria for who
20:33
I want to interview. For
20:36
example, there was one point where I felt stuck
20:38
in product development. I wasn't sure what to focus on.
20:40
I was seeing now and again people tweeting
20:43
and saying things like, oh,
20:45
I love Storygraph. I use it every day. We
20:47
had not thought the app to be used
20:49
every day. I was like, what
20:51
is it about these people who use it every day? What
20:53
is Storygraph doing for them? What
20:56
are their behaviors that make them use it every
20:58
day? Can we use that to learn
21:00
about what are the most compelling parts of the app? I
21:03
just did a tweet and Instagram
21:05
posts saying, we're looking for people who log
21:07
into the app at least once a day.
21:09
That was that. At
21:12
the end of 2022, I was doing a big redesign. Now
21:19
I need to make sure that the redesign
21:21
works across desktop and mobile. Also,
21:24
I needed to make sure that
21:26
it handled all of our common UX
21:28
pain points that made people drop off
21:30
or struggle to use it, but also
21:32
didn't upset the people who were happily
21:34
using it and had a great time.
21:37
I actually had six cohorts.
21:41
The matrix was desktop and mobile. Then
21:44
it was predominantly desktop, predominantly
21:46
mobile. Then it was
21:48
use it very happy, no issues. Use
21:51
it but struggle. Stop choosing
21:53
it because I couldn't figure out
21:55
the UX. I had six groups
21:57
and I sent out a Google form. I
22:00
put that everywhere. I put that on Instagram. I put that
22:02
on Twitter. I put that in my newsletter. Then
22:05
when I was sorting out my research rounds,
22:07
I would just filter that and be like,
22:09
right, I'm trying to test the mobile design
22:11
now. So mobile, blah, blah, blah, blah. We
22:13
made sure that basically by the time we
22:15
implemented the design, it had
22:17
passed the research rounds for all
22:19
those categories. So a key,
22:21
key part of customer research is talking
22:24
to the right people. And
22:26
also another thing is at the beginning of
22:28
my script, I always start
22:30
by saying, I'm doing a
22:33
customer research round. And for this round, I'm
22:35
speaking to insert identity here, because it always
22:37
gives the person a chance to go, that's
22:39
not me. So in case for any reason
22:41
they click the wrong box
22:44
or whatever, it's just like, no.
22:47
I sometimes get people reply to
22:49
my asks and say, I
22:51
don't use the app every day, but I would love to
22:53
talk with you for half an hour. And
22:56
I'm like, yeah, I'm sure you would. No. Because
23:01
I'm really stressed, like, this is who you
23:03
must be. I haven't actually had a
23:05
case with someone yet booking
23:08
and say, Oh, I'm not that person. But I
23:10
want to talk to you. But I have had
23:12
people email to check to be
23:14
like, I'm not that person. But can I and
23:16
I'm like, no, that's very not useful to me.
23:18
And I will end an interview. I have actually
23:20
I think I have ended an interview maybe once
23:23
or twice where it's kind of been like, Oh, I don't think this will
23:25
be valuable for either of us. So
23:28
I rarely interview the same person
23:30
twice unless they're part of a
23:32
specific I had specific very structured
23:34
alpha and beta rounds. But beyond
23:36
that, it's always different people. You're
23:40
doing all this yourself? Mostly more
23:43
recently, I have Abby who works
23:45
for us part time, I
23:48
kind of taught her or showed
23:50
her how I did my synthesis and kind
23:52
of pass that on to her.
23:54
So she has been helping me with a synthesis
23:56
style, but I still do all the interviews. And
23:59
I'm probably at the point where,
24:01
especially because it's a script, I will probably get to the
24:03
point where I'll be able to hand that off
24:05
to Abby, but there's no need right now. And I think
24:08
as I'm the Dev, it's working very
24:10
well for us, but I'm so close to our
24:12
customers and so close to the research. And
24:15
so close to the social media and so
24:17
close to everything.
24:20
You're very close. Yeah,
24:22
I run the Instagram and Twitter. And the
24:24
funniest comments I get are when
24:26
I see, I get comments like
24:28
in the app or the Play Store reviews, I
24:31
will be people like, the founder is so
24:33
nice. Sometimes she comes on Instagram and does
24:35
an Instagram story. And it's always me. It's
24:37
just that sometimes I'll do a video and
24:40
I'll be like, Hi, everyone, this is what's
24:42
happening. But it's always me. The
24:45
other funny thing in the Dev side is
24:47
people who assume I'm
24:49
like just a social media person
24:52
and they'll say something and they'll say, pass
24:55
this onto your Dev team. Or but they'll talk
24:57
at me and they'll often be a Dev themselves
25:00
and they'll try and explain something to me
25:02
as in this person probably will not understand
25:04
what I'm saying. So let me explain it
25:07
very clearly and slowly so that then they
25:09
can pass it on to the Dev team.
25:12
Or they'll say, can you pass me on to
25:14
someone who can explain this thing and
25:16
I'll be like, oh, I can explain it because I
25:18
built it. So like, go ahead. And
25:21
they're always like very surprised. Well,
25:25
it's surprising to have one person do all that. That's for
25:27
sure. Oh, it is. Yeah, for
25:29
sure. Yeah. How long you been
25:31
doing it and how often do
25:33
you do it and tell us a little bit
25:36
about the growth story because this started as a
25:38
side project. Very seems like very successful growth so
25:40
far. I mean, many of us
25:42
sell a Dev probably envious of the traction
25:44
that you've gotten because it's enviable. Tell the
25:47
folks how it's been going. Yeah.
25:49
So I started this. It
25:51
was 2019 was that year where it
25:54
was a side project. So I entered
25:56
January of 2019 with four years of
25:58
runway. And I'd always been
26:01
entrepreneurial and always wanted to do my
26:03
own thing. And I was coming off the back
26:05
of two failed co-founder partnerships.
26:08
So I was like, I'm just gonna go by myself.
26:11
I don't need anybody. I have runway.
26:13
I don't need to get a job. I'm
26:15
just gonna build stuff. And so
26:17
I just started working on that. I explained how I
26:20
got to the point where I was like, right, this
26:22
is interesting to me. That was the founder product fit
26:24
side. So I got the founder product fit very
26:26
early. And that's what made me properly say,
26:28
let me do customer research properly. Let me
26:30
start up an Instagram account. Let me see
26:32
what I can do here. So
26:35
after three months of just customer research. So after
26:37
I first showed that demo to people and I
26:40
thought, no, you can't be showing a demo to people. You
26:42
do this properly. I put the product away. I
26:44
spent three months doing customer research. That was just
26:47
talking to people. And I got to the point
26:49
where I said, okay, I have enough to build
26:51
an alpha. And the alpha
26:53
was literally just a personal recommendation service.
26:56
And so it was a whole
26:58
basic Rails app, but all
27:00
it was was really sending emails to me. And
27:02
I would like send emails back essentially. So someone
27:04
would shut out a form and it'd be like,
27:06
your recommendation will come soon. I'd get an email
27:08
saying, this person needs a book that fits this,
27:11
this, this. I'd spend however long it
27:13
took to try to find a unique find. And then
27:15
I would do something in Rails
27:17
admin or on the console or
27:19
something to just generate an email
27:22
being like, your recommendation is ready.
27:26
No, actually I think I had a backend in the app where
27:28
I would put it in and then it would send an email
27:30
to them to check for their recommendation.
27:33
So that was that. And then I did
27:35
that for about a month or two. And
27:37
then I felt like I'd exhausted all of
27:39
my learnings from the alpha. And
27:41
here's the thing, remember how I said, I was
27:43
looking for people who read a book
27:46
a week because then they would read the
27:48
recommendation. Well, what happened? I check in with
27:50
the people and they'd say, the
27:53
recommendation you gave me looks great. Unfortunately,
27:55
I've got to finish the book I'm reading right
27:57
now. And then I've got the stack. bedside
28:00
table, and that's when the
28:02
pain point transitioned from I
28:05
need a recommendation to how do I know what to
28:07
pick up next? Because actually I do have a lot
28:09
of choice and I want to make sure that I'm
28:12
always picking up the next best book for me. And
28:14
that's when I realized, okay, I need to build
28:16
a more fully fleshed out app because
28:19
just a recommendation service on its own is
28:21
not going to stand because people, you know,
28:24
they get a recommendation but they're not going to read it for months. And
28:27
really they've got they need help getting through
28:29
that pile that's been sitting by their bed
28:32
for months and months and months. So
28:34
that's when I spent a couple months
28:36
just heads down building a beta, still
28:38
just me completely one, like
28:40
solo. And at the
28:43
same time that I said I'm going to
28:45
start building a beta, I started a newsletter
28:47
because my worry was I'm going to spend
28:49
two months building a more fully fleshed out
28:51
product. And I'm not going to talk to
28:53
anyone. I'm going to lose all the momentum
28:55
from all the people I've spoken to over
28:57
the last nine months. And I
28:59
also don't want to build something and then have nobody ready
29:01
to try it when it's ready. So I
29:03
started a newsletter and it was 100 people
29:06
who I'd basically interviewed or
29:08
had heard of the product or something like that. And
29:11
I sent I just started sending a weekly it
29:13
was like a weekly as one
29:15
of my friends said, it's like it's your weekly
29:17
stand up and you are just like sending
29:20
out the email because it's just you doing stand
29:22
up. And I was like, yeah, it's holding me
29:24
accountable. But it was the healing of momentum. That's
29:26
just what I'm doing this week. And also it
29:28
was a much it was a bit like, I
29:30
have to send this email every Monday, I can't
29:32
get to next Monday and have done nothing. So
29:35
it was a very, it was it really kept
29:37
me accountable to just keep doing stuff each week.
29:39
So I, so I had something interesting to say.
29:42
So two months launch the beta. And
29:44
that was just general like sharing it
29:46
on Twitter, things like that. We got
29:48
to 100 users at the beginning of
29:50
2020. Then I was talking about it more.
29:54
Some books to grab has got started talking about it
29:57
more. When I say books to grammars, it's the term
29:59
of like Bloggers on
30:01
Instagram, it's called Bookstagram. Bookstagram.
30:05
Yeah. And so Bookstagrammers
30:07
would talk about it. And we got to a thousand users
30:09
in June of 2020. And also,
30:11
we're in the midst of a pandemic. There's a
30:13
whole story there. I live alone as well. So
30:16
there's a whole piece of going through this product,
30:18
growing and growing, and just in
30:21
the midst of a pandemic, stuck in my flat,
30:23
just doing this thing. Actually, you know
30:25
what? It was actually, obviously,
30:28
the pandemic was not great. So it was
30:30
that we had a pandemic. But it
30:33
worked out really well for me in terms
30:35
of that I didn't have to, you know, I
30:38
listened to a lot of how I built this. And
30:40
you always hear stories of like, people saying, I became
30:42
such a bad friend. I missed
30:44
weddings and missed parties. I canceled late all
30:46
the time. And that
30:49
really, even though I'd never had any sort
30:51
of success like that, it really freaked me
30:53
out because I pride myself in being super
30:55
reliable. I'm always there. I'm always on time.
30:57
And the thought of, would I ever have
30:59
a product that meant that I would like,
31:02
cancel on people or be flaky or whatever?
31:04
I hope not. But we did
31:06
all of our exploding in 2020. Like,
31:09
some of the biggest part, lots of it
31:11
was in 2020. There was nobody
31:13
to cancel on. No like being
31:15
out and pay-to-do duties going off. I didn't
31:18
have to deal with that, which was nice.
31:20
I didn't have to let anybody down
31:23
or anything like that. So what happened
31:25
was mid 2020, there were some viral
31:27
tweets. And it
31:29
was funny because the people who
31:31
tweeted were just, they weren't anybody
31:34
like famous or well known. They
31:36
literally had about 200 followers,
31:38
but the tweet just like hit,
31:40
the tweets just hit. They just resonated
31:43
with a bunch of people because
31:45
essentially they were calling out a bunch of
31:47
factors. The main tweet that kicked
31:49
everything off, it essentially like hit
31:51
on a key point that was very salient at
31:53
that time. So one was it,
31:55
you know, appealed to the book Twitter, book Twitter community.
31:58
So it was calling out the book Twitter community. And
32:01
it basically spoke about, we
32:03
all hate Goodreads, so annoying. It
32:06
called out the fact that, so it said
32:08
there's a great independent alternative. It
32:10
referenced the fact that it was run by
32:13
a black woman, which this was like a week
32:15
after George Floyd's murder. So at this time, everyone,
32:17
there was this big push to
32:19
support black creators. So
32:22
that was mentioned and that was
32:25
jumped on. And then also it
32:27
was mentioned the fact that Goodreads owned Amazon.
32:29
And at the time in the pandemic, there
32:31
was a lot of anti-Amazon sentiment because of,
32:33
I think Amazon's profits had been
32:36
released or something and everyone was struggling in a
32:38
pandemic and it was like, and look, Jeff
32:40
Bezos is still rich and getting
32:42
richer. And in general in publishing,
32:44
there was a lot of anti-Amazon sentiment because they
32:46
have a monopoly on huge swathes of
32:48
the industry. And so this one
32:50
tweet, which had all of this packed in, just
32:53
exploded. And we had thousands of likes
32:55
and retweets. And I'm minding
32:57
my business, cracking
32:59
on with some code. And I
33:01
see these emails coming in because back then
33:04
I got an email every
33:06
time somebody signed up and kicked
33:08
off a Goodreads import. So at
33:10
the time, the maximum we'd ever
33:12
had was eight. And I'm
33:14
seeing like eight emails, dozens of emails coming
33:17
in. What's going on? Going to Twitter, seeing
33:19
what's going on. This system was
33:21
not made to handle like
33:23
more than about eight at a time.
33:26
And it was actually with over
33:28
three days, we got tens
33:30
of thousands. And the
33:32
other thing was that the email said,
33:35
your Goodreads import is underway. But
33:38
to 20,000 people, this was a lie. 20,000
33:40
people got an email saying your Goodreads import was
33:43
underway. It was not underway. It was an excellent
33:45
sidekick queue. And this was the
33:47
first time I had to deal with a sidekick queue that
33:49
had... This queue never had anything in it.
33:51
And now it had... Lots of stuff in it. 18,
33:53
20,000 things in it. Oh,
33:56
so we also have to stop the
33:58
imports while... point my co-founder Rob
34:01
had joined me and we had to
34:03
stop the import because we needed
34:05
to re-architect everything. He was
34:07
managing some servers on his side, so he
34:09
needed to re-architect all of that. I just
34:11
needed to sort out my code because it
34:14
was not ready to handle lots of stuff.
34:16
It just wasn't performing. I can't even remember
34:18
some of the stuff I was doing, but
34:20
some of the loops, some of the... It
34:22
just was not ready for the scale. That
34:25
was that. It took two weeks to get
34:27
the app back up and running again. From
34:30
that time, we just kept on growing
34:32
by at least a thousand users each
34:34
day sign up. Since
34:36
that time, so that was 2020, from
34:39
middle of 2020 to now,
34:42
essentially, it's been steady growth with
34:44
the odd spike when some social
34:46
media, especially a book influencer, makes
34:49
a YouTube video about us or
34:51
a TikTok pops off. Then
34:54
we've had the odd media. We had
34:56
an article in the New Statesman, which
34:58
is a newspaper over here about the
35:00
headline was, Why Good Reasons Bad for
35:02
Books? We were
35:04
mentioned as an up-and-coming alternative that brought
35:06
in thousands of users. We've
35:09
just been steadily growing since then. Behind the
35:11
scenes, I'm still sticking with my customer
35:13
research-focused approach. Love it.
35:15
It's intense. Very intense.
35:17
The queue would have just... It
35:20
had crushed me. You just said something that reminded
35:22
me of a point I wanted to hit on. When
35:24
you asked me the last question, you said
35:26
I was in an endiable position. Actually, there's
35:29
a key part of this story. I
35:32
always felt was entrepreneurial and
35:34
I always wanted to have something successful. I
35:37
remember following all the indie
35:39
developer forums and things, I
35:41
was like, I need to start a B2B
35:43
company because that's how I'm going to make
35:45
money fast. I can start charging from day
35:47
one. It suits not getting
35:49
venture capital. There was a time in my
35:51
past where I was all about... When I
35:53
was younger, I was all about VC,
35:56
venture capital. Then over the years,
35:58
reading more about it. and
36:00
seeing certain stories and you know, just understanding
36:02
more about the world, realizing that's not the
36:04
type of company I wanted to build. So
36:07
I was like B2D is the way. And
36:10
so I always thought
36:12
like I sell into a B2C company
36:14
because a freemium B2C company used by
36:16
millions of users is not what you
36:19
want as a solo dev who
36:21
doesn't want funding. It's just not what you want.
36:24
And I remember when we had that first
36:26
initial strike, when we
36:29
had those tweets, we had all these tens of thousands of
36:31
users trying to use it. I felt
36:33
stuck for a while because I didn't know
36:36
what to do. I just didn't
36:38
know what to do with my code. And
36:40
I was worried. And I remember, you
36:42
know, I had to take a step away
36:45
from my computer. I remember going into my
36:47
dark bathroom and like sitting in there and
36:49
literally saying, I thought I wanted
36:51
this. I don't want this. And
36:54
also saying to myself, is this
36:56
it? Are you going to die
36:58
now? Because you actually got the
37:00
users you wanted and you can't handle it. So
37:03
now the product dies. And also
37:05
I always say that I never actually said this,
37:07
but I feel like it was on the tip
37:09
of my tongue to just be like, I can't
37:11
do this. But I wouldn't allow myself to actually
37:13
say it. So I remember saying, nope,
37:16
that's not you. You're not going to say that. You're going to
37:18
get out of this bathroom and you're going to go back to
37:20
your desk and you're going to fix it. But for
37:22
a while, there was a period of time where I
37:25
thought, I don't want this. This is like awful.
37:30
How did I end up in this
37:32
situation where I'm building a company
37:34
that's not making me any money so
37:36
I can't survive like this. I
37:38
don't want to get VC funding. And I felt
37:40
like I was trapped in it. And we are
37:42
comfortable now, which is great. But for years,
37:45
especially as it was growing, I was like, I feel like
37:48
I'm stuck. What am I going to do?
37:50
Because my money is going down. And
37:54
the costs are going up. Right. What's
38:17
up friends? I'm here with
38:19
one of my new friends, Zane Hamilton from
38:21
CIQ. So Zane, we're coming up on a
38:23
hard deadline with the CentOS end of life
38:26
later this year in July. There
38:28
are still folks out there considering what
38:30
their next move should be. Then last
38:32
year we had a bunch of change
38:34
around Red Hat Enterprise Linux that makes
38:36
it quote less open source in the
38:38
eyes of the community with many saying,
38:40
Rello is open source but where is
38:42
the source and why can't I download
38:44
and install it? Now Rocket Linux is
38:46
fully open source and CIQ is
38:48
a founding support partner that
38:51
offers paid support for migration,
38:53
installation, configuration, training, etc. But
38:56
what exactly does an enterprise or a
38:58
Linux to 7 get when they choose
39:00
the free and open source Rocket Linux
39:02
and then ultimately the support from CIQ
39:04
if they need it? There's
39:06
a lot going on in the enterprise Linux space today.
39:09
There's a lot of end of life of CentOS. People
39:11
are making decisions on where to go next. The standard
39:13
of what enterprise Linux looks like tomorrow is kind of
39:15
up in the air. What CIQ is
39:17
doing is we're trying to help those people
39:19
that are going through these different decisions that they're
39:21
having to make and how they go about making
39:24
those decisions. And that's where our expertise really comes
39:26
into play. A lot of people who have been
39:28
through very complex Linux migrations, be it from the
39:30
old days of migrating from AI X or Solaris
39:33
onto Linux and even going from version to version
39:35
because to be honest enterprise Linux version to version
39:37
is not always been an easy conversion. It hasn't
39:39
been and you will hear that from us. Typically
39:41
the best idea is to do an in place
39:44
upgrade, not always a real easy thing to do.
39:47
But what we've done is we have started looking at
39:49
and securing a path of how can we actually go
39:51
through that? How can we help a customer who's moving
39:53
from CentOS 7 because of the end of life in
39:55
July of this year? What does that migration path look
39:57
like and how can we help? And that's where we're
39:59
looking at it. looking in ways to help automate
40:01
from an admin perspective. If you're working with us,
40:03
we've been through this, we can actually go through
40:05
and build out that new machine and do a
40:07
lot of the backend manual work for you. So
40:09
that all you really have to do at the
40:11
end of the day is validate your applications up
40:14
and running in the new space, and then we
40:16
automate the switch over. So we've worked through a
40:18
lot of that. There's also the decisions you're making
40:20
around, I'm paying a very large bill for something
40:22
I'm not necessarily getting the most value out of.
40:24
I don't want to continue down that path. We
40:26
can help you make that shift over to an
40:28
open source operating system, Rocky Linux, and help drive
40:31
what's next, help you be involved in a
40:33
community and help make sure that that environment
40:35
you have is stable, it's going to be
40:37
validated by the actual vendors that you're using
40:39
today. And that's really where we want to
40:41
be as a partner from not just an
40:43
end user perspective, but as an industry perspective,
40:45
we are working with a lot of those
40:47
top tier vendors out there of certifying Rocky,
40:50
making sure that it gets pushed back to
40:52
the RESF, making sure that we can validate
40:54
that everything is there and secure that needs
40:56
to be there and helping you on that
40:58
journey of moving. And that's where we, CIQ,
41:00
really show our value on top of
41:02
an open source operating system is we
41:04
have the expertise. We've done this before.
41:06
We're in the trenches with you and
41:08
we're defining that path of how to
41:10
move forward. Okay, ops and sysadmin folks
41:12
out there, what are you choosing? CentOS
41:14
is end of life soon. You may
41:16
be using it, but if you want
41:18
a support partner in the trenches with
41:20
you, in the open source trenches with
41:22
you, check out CIQ. They're
41:24
the founding support partner of Rocky Linux.
41:27
They've stood up the RESF, which is
41:29
the home for open source enterprise
41:31
software, the Rocky Enterprise Software
41:33
Foundation that is. They've helped
41:35
to orchestrate the OpenELA, a
41:38
collaboration created by and upheld
41:40
by CIQ, Oracle, and
41:42
SUSE. Check out Rocky Linux
41:44
at rockylinux.org, the RESF at
41:47
resf.org. And of course, if
41:49
you need support, check out
41:51
our friends at ciq.com. Did
42:19
you have a business plan though? I think
42:21
you have alluded to quite well that you've
42:23
had a product plan. Yes. And
42:25
a product plan is not a business plan. Mm-hmm. Did
42:28
you think about the business while building
42:30
the product? I did. I
42:32
did think about the business while building the product. And
42:35
pre-building the product, my plan was
42:37
always, oh, because I was
42:39
still like, how can I make this B2B somehow?
42:43
So I said, oh, what I'm going to do is, publishers,
42:47
I'm going to make like, give
42:49
publishers a platform to connect to their
42:51
readers so they would have a space on the app.
42:54
And also, maybe there's a way that
42:56
I can do these reports, like these
42:59
industry reports or reader reports where it's
43:01
like all anonymous data, but publishers can
43:03
see trends of everyone is
43:05
looking for like a dark
43:07
fantasy romance and it doesn't like there are
43:09
only, there's not like commissioned dark, more dark
43:12
fantasy romance books, things like that, where it
43:14
would be like insights. And because we had
43:16
the moods, which no one else had, we
43:19
would have different insights, unique insights to specific
43:21
things that people were looking for. Yeah. So
43:24
there are two things. One is I wanted
43:26
to kind of avoid anything that was data,
43:29
even though giving user data, even though it
43:31
would have been anonymized and would have been
43:33
more trends. But two, I had
43:35
a chat with a friend, colleague,
43:37
kind of sometimes mentor, kind of
43:40
fella. And he said to me, the
43:42
best businesses always make
43:45
money or get value directly from their customers.
43:47
Like they don't have a middle person, like
43:49
a middle entity. And if you're
43:52
going down this publisher plan, you're
43:54
going to have a middle entity. You're like,
43:56
it's not direct. Oh, sorry.
43:58
The other thing is I didn't want to do ads. was nothing.
44:00
If I could avoid ads, that would be great.
44:02
One of the things that people hated on Goodreads
44:04
were the ads. So I was
44:07
thinking, okay, maybe it is freemium then. And
44:10
so really, the thing that
44:12
made us start to build out
44:14
the paid plans was just our costs.
44:17
We were spending thousands of dollars a month
44:20
to keep everything running on the highest
44:22
Heroku plans and the database.
44:24
Every time we had a spike, we needed to upgrade to
44:26
the next database. We were getting to the highest tier. What
44:28
happens when the highest tier runs out? What do we do?
44:30
And it felt like every time we
44:32
go on influx of users, our costs went up. So we
44:35
needed to do something about it. And
44:37
so that's when I just
44:40
made up a paid plan. I literally
44:42
made a page. It didn't exist. I
44:45
said, the plus plan coming at
44:47
this point, it would have been 2022. So it was in 2021. Oh,
44:51
wow. I'm like, is it 2021 or 2022? It must have been 2021 because we
44:53
became profitable in 2022.
44:56
So in 2020, at the end of 2020, October, I made
44:58
a page that was apps.storygraph.com.
45:06
And I said, hmm. And I went through and I
45:09
looked at the features we had.
45:11
And I thought, how can we
45:13
enhance these? Okay, similar books, we're
45:15
going to give you personalized similar books. So you
45:18
have a unique page just for you that
45:20
takes into account your unique preferences, your
45:22
unique themes, topics, and tropes
45:24
that you've told us you've liked and shows
45:27
you the books similar to this one, but
45:29
also highlighting the ones that
45:31
have the things that you like. Okay,
45:33
cool. And then it was like stats.
45:37
Everyone loves the stats, but what if you
45:39
could compare two of the stat
45:41
pages side by side? So just taking the features
45:44
we had and just made up a
45:46
list of features. And then I
45:48
said, we're also going to have a public roadmap
45:50
on which you can vote and post. You're
45:52
going to get priority support. So we're
45:54
going to put your support. And I
45:56
said, pre-order now, $30 after that. $50
46:00
paid it up and we
46:03
got over like three months we
46:06
got 1400 pre-orders, 1400 people
46:08
paid $30 for
46:11
something that didn't exist. So
46:13
then it got to the point where I said, okay, well we
46:15
have to build this thing now. If I just go and give
46:17
all this money back, we have to build
46:19
it. And so I spent a
46:21
month building it. I remember
46:23
because we had January, which was a big, January
46:26
of 2021, we hit 100,000 users. And
46:30
then I remember saying, I told these
46:32
people early 2021, I
46:36
don't want people starting to get mad and say like, when is
46:39
this coming out? So I just changed it
46:41
to say February 2021, just
46:43
back myself. And
46:45
it came out, it's funny, I was
46:48
up, that February was wild, but it
46:50
came out, it was March 1st in
46:53
the UK, but for most of America, it
46:55
was February 28th or 9th,
46:57
I can't remember. There
46:59
you go, it's February somewhere. It was
47:02
February somewhere. That was a title of that
47:04
week's user. So like the next
47:06
week's user said, it was February somewhere. That
47:08
was what it felt. Love
47:10
it, love it. That's awesome. What
47:13
percentage of your user base is on plus?
47:17
Like a small percentage. I'm saying because
47:19
we've just had a big spike and
47:22
I haven't done the math again, but
47:24
normally it's less than 1%. It's
47:26
like sometimes I think it's 0.01% or something. We
47:30
have right now 10.5K plus users and
47:34
2.3 million, almost
47:37
2.4 million registered users. So
47:39
it's like, what's that? Like 0.0. And
47:42
small. Yeah. You
47:44
mentioned businesses though. And the
47:46
next best thing to a B2C would be a
47:48
B2G, business to
47:51
group, right? Like you've got book
47:53
clubs are super popular and
47:55
a team of people paying X dollars a month
47:57
is totally plausible because they're buying. and
48:00
wine, they're hanging out, it's groups. How
48:04
does Plus factor into book
48:07
clubs? Those are super popular. I
48:10
had to message my wife because
48:12
my wife is a group club leader. She's
48:14
very good at it and she's
48:16
got some serious friend groups from book
48:18
clubs. I said, hey,
48:21
have you heard about this babe? She's like, no. I
48:23
asked her for some feedback and I could share that
48:25
with you in this call, but I'm curious what you
48:28
think about B2G, book the groups, or business a
48:30
group kind of thing. I know
48:32
you have a book club feature, but how fleshed out
48:34
is it? Oh my gosh.
48:36
We feel like the book club, yeah,
48:38
I'm triggered right now. It's a fake
48:40
feature. Is it a fake feature? No,
48:42
I'm triggered because book
48:45
clubs were meant to be out by December 31st of
48:47
2023, for
48:50
years we were met. So
48:53
they didn't come out. So I said, they'll come out
48:55
in the first week of January. We
48:58
had a wild January, two weeks of
49:01
downtime. We couldn't handle the demand. There's
49:03
a whole thing there. We
49:05
had to re-architect a bunch of things and
49:07
we still have some plans for re-architecting how
49:09
our database works. I don't
49:11
know if we'll have time to get into that in this
49:14
conversation. So I have
49:16
only recently been able to pick up book clubs
49:19
again. I think there was, in one of
49:21
the ideas that I was throwing around, there was a plan
49:23
that essentially I thought that
49:25
plus users would be able to host
49:27
book clubs. My thinking was that
49:30
I didn't think you could have a model
49:32
where every member would pay for a book
49:34
club because people can run book clubs for
49:36
free on several other platforms. But I thought,
49:38
oh, if we have it such that plus
49:40
members could host book clubs, that would
49:42
be great. However, my customer research revealed
49:44
to me a few things. And
49:47
this is customer research of people who use
49:49
plus, customer research of people who
49:51
are book clubs, all these things. And
49:53
what I learned was plus is not working. We
49:56
have product markets fit with the free product. We do
49:58
not have product markets fit. it fit at
50:00
the moment with Plus. Why? Because today,
50:03
two years later, the Plus plan is
50:06
still that grab bag of features that
50:08
I made up. And so what happens
50:10
is most people who originally, who take
50:13
out the Plus plan, it's because they
50:15
want to just support an independent alternative
50:17
to Goodreads. And
50:19
they probably have one of the eight
50:22
features that they use. And most of
50:24
them gravitate towards
50:26
the SaaS features. And
50:29
so I did this whole customer research and
50:31
I said, we need to completely change how
50:33
the Plus plan looks. So I'm currently, and
50:35
I say currently, it's been on pause for
50:37
a while, but I should be picking it
50:39
up in February. I'm currently
50:42
in the process of completely changing
50:44
the Plus plan to be an advanced
50:46
SaaS plan. So all it's going to
50:48
have is going to be just
50:50
all the extra charts. You're going to be able to
50:52
create your own charts because I discovered
50:54
through my research that the power users are the
50:56
ones that care about the SaaS. They have their
50:58
own Excel spreadsheet. Separate of
51:01
that, I've been doing customer research around
51:03
with Book Club people, but also just seeing,
51:06
thinking about the vision for the product and what works
51:08
well. And it's far better because
51:10
there are a bunch of features within the Plus
51:12
plan right now around buddy read book suggestions, where
51:15
you can put in the usernames of people that
51:17
you want to read a book with. And we
51:19
have a machine learning thing that will tell you
51:21
the best books to read for this group,
51:23
which will obviously be part of
51:25
that will be included in our Book Club feature. Those
51:28
features in terms of like network effects, it's
51:31
better that those are free and
51:33
that they actually more people can use them
51:35
and come on board. And then maybe the
51:37
power users in the group or the ones
51:39
that care about SaaS might upgrade their accounts
51:41
to Plus, but now the group
51:43
and no one stops from joining. Because
51:46
the other thing I realized is that with
51:48
that Plus plan, what someone might be into
51:50
staff, someone else is into running a book
51:52
club, someone else is into, you know, running
51:55
a buddy read or whatever, whatever it is.
51:57
And so I definitely need to see. separate
52:00
out the identity. The identity of the
52:02
Plus user is going to be the
52:04
advanced SaaS power user. Then
52:06
book club, buddy reads, read alongs, all
52:08
our social features, you can opt in,
52:10
it's all free. If you're a
52:13
Plus user, you will get advanced extra SaaS
52:15
insights into any of the things you do.
52:17
That's going to be the core of Plus,
52:20
but it will be free to run your group. I
52:23
had to change the estimate to end of January,
52:26
but it's 31st of January. There's
52:28
a reason I chose to do this interview
52:30
on the 31st of January in
52:32
my evening. I thought by this point, I
52:34
have everything done that I want to get
52:36
done. It's still not done. You need to
52:38
tell your wife to check it out again
52:40
when book clubs are out. I'm
52:45
sure she will. The one thing she did say though was
52:47
that, in quotes, Goodreads, and
52:49
this my wife is a designer, an
52:52
interface designer even. She says, in
52:54
quotes, Goodreads has a terrible UI,
52:56
it's clunky and not very intuitive.
53:00
She says, we'd like to make a group in
53:02
Goodreads and then suggest books to each other. I
53:04
like AI, but still like people too. I
53:07
know that a lot of things that she does is around
53:09
this group of folks she's with, and they're
53:11
always talking about what book's coming
53:14
next, which is core to
53:16
the help you give to an individual, but
53:18
then you move that to a group. I'm
53:22
not designing your business, but I just think there's maybe
53:24
some fruit there with, because
53:27
groups tend to be more invested. An
53:29
individual will just be not
53:31
so much not invested, but groups tend to
53:33
invest further emotionally into
53:36
a product and be daily active
53:38
users or at least monthly active
53:40
if they're a monthly book
53:42
club. She's been
53:44
doing this for multiple years. These
53:47
friendships are deep and they
53:49
are super meaningful to her. Being a
53:51
leader of this group is super important to her because
53:53
it's her friends. It's not just people,
53:56
it's her girlfriends. how
54:00
much deeper you can go there if there's like that's where the
54:02
crux of the business is I don't
54:04
know in terms of oh, sorry
54:07
something I didn't mention is I Asked
54:10
what I did my custom interviews with the book
54:12
club host. I asked like money questions to say
54:14
like, you know What do you
54:16
spend money on? Are there any membership fees? Do you know
54:18
do you pay for the tools you currently use and it's
54:20
basically there's nothing there, right? so
54:23
that's not to say that there won't be something in the
54:25
future, but I think that I'm
54:28
trying to focus on kind of what you
54:30
Said which is giving people a digital space
54:32
to have to host their book club within
54:34
an all-in-one solution So for example, I'm so
54:37
excited for the I spoke to
54:39
when I did my research round Normally,
54:41
I mentioned how I I speak to
54:44
very specific groups of people But
54:46
this time I on Instagram and Twitter I
54:48
asked for anyone who runs a book club
54:52
And I asked is to ask them to
54:54
tell me is it remote or in person?
54:56
How regularly do you meet is there a
54:59
theme or not? And then I
55:01
said to Abby Can you go through and choose
55:03
ten people who are as
55:06
different as possible? So I want small
55:09
Remote Large in person.
55:11
I wanted to start there because I said to
55:13
myself it might not be possible
55:16
But if I can based on these
55:18
interviews of interviewing wildly disparate styles of
55:20
the club groups If
55:22
I can build a feature that helps all of these
55:24
then that would be awesome And
55:26
so I have developed a feature set
55:29
that will cater to whether
55:31
it's an in-person Whether it's a
55:33
hybrid whether it's virtual in that you're
55:36
gonna basically be able to you invite
55:38
people You're gonna be able to
55:40
have story graph help suggest books for
55:42
the poll to have the community vote of what
55:44
shall we read next? But also the host can
55:47
just choose if that's how they currently do it
55:50
You're gonna be able to have an
55:52
agenda where you can add photos from the
55:54
meeting You're gonna be able to
55:56
like add links and you know, everyone's rating will show
55:58
up and all that kind of of stuff, then
56:00
that will be feed into having this journal,
56:03
this digital journal that have the history of
56:05
all your meetings, what was said, the photos,
56:07
whatever, so it's like a digital journal. You'll
56:09
also have a leaderboard for your club where
56:12
it's like, oh, these are the top 10
56:15
books that we've ever read. So even if someone
56:17
joins, they can go back and say, oh, this
56:19
is what this club likes. Let me
56:21
go and read these in the times when I'm not
56:24
reading the book club picks or just so that you
56:26
have that history as well. And we
56:28
want to look into actually being able to
56:31
host the meetings on the app for the
56:33
digital ones as well. So basically just having
56:35
this one space. So we are really looking
56:37
at trying to create a space where people
56:40
feel like, ah, finally my book club has
56:42
a home on Storygraph. You
56:45
said you have 2 million users? Registered
56:47
users. What's the activity of those 2.4?
56:51
Is like half of them pretty active? A
56:53
quarter of them pretty active? I need to
56:55
review it because around this time it's really hard
56:57
because we have this spike and it kind of
56:59
needs to settle down again to see where we
57:01
even out. But historically, we tend to fluctuate
57:04
between 25% to a third. Typically,
57:07
our active. And
57:09
that's like we look at most active
57:11
users because most people read a book on average a month.
57:14
And we look at checking in
57:16
the dashboard, adding or doing something to a
57:19
book in a library. I
57:21
have a list of key actions which
57:23
count that classify you as active. And
57:26
so we typically have about a quarter to a
57:28
third active user. Well,
57:31
as I was sharing with you about this whole
57:33
business to group idea, I was like, bite my
57:35
tongue because I'm like, gosh, there's like 2.4 million
57:38
people that have a problem that have already
57:40
given you their opt-in. Why just focus on
57:42
the groups in terms of
57:45
discovering your value to that many? Because
57:47
you obviously have a value to individuals.
57:50
I mean, with that many users, what
57:52
problem do they all have versus
57:54
just the groups who decide to meet together and
57:56
share their fascination with their books? A lot of
57:58
people are just like. introverts and
58:01
don't share aside from
58:03
the folks that are blogging about
58:05
it or books, the grammars, etc.,
58:07
they're the ones that are being extroverts
58:10
with their process and what they read.
58:12
You probably have a lot of people just like,
58:14
I just want to organize how I read better
58:16
and have my own personal journey, not my collective
58:18
journey. So I was like kind of bite
58:21
my tongue on suggesting that you
58:23
should dig into groups when it could be more just
58:25
like, you've got 2.4 million, what
58:28
do they all have in common in terms of a problem that they
58:30
would pay to solve? And this is the two
58:32
in this. One point is to
58:34
say, we haven't yet done this
58:37
transition that I believe will accelerate
58:39
the adoption of plus. So I feel the reason
58:41
why the adoption of plus right now, what you
58:43
see people saying is, I don't
58:45
even need to get plus because the free product does everything
58:47
I want. And it's
58:49
this grab bag of features that adds little enhancements
58:51
to a whole range of features of
58:54
which most people are not interested in all of them. And
58:57
so what I'm curious to see is, when
58:59
we transition it to, you
59:01
can literally create your own chart, you can create your
59:04
own, let's see what adoption looks like
59:06
then. But we also have another
59:08
revenue stream, which is
59:10
giveaways. So publishers
59:12
and authors pay to list
59:15
competitions for their books on
59:18
the app. And we've got two tiers there. We've
59:20
got a standard tier and a premium tier. And
59:23
with the premium tier, your book is on the homepage.
59:26
And it's like there's a link everywhere your
59:28
book shows up. There's like a clear gold
59:30
link of like enter giveaway and things like
59:32
that, those extra features, you get a custom
59:34
notification. So you can, because you would have
59:36
like tens of thousands of entries. So when
59:38
the giveaway ends, your personalized message gets sent
59:40
to all of those entries. And
59:42
essentially, this is a win-win-win,
59:45
because it's a win
59:47
for the publishers and authors,
59:49
because they essentially have a way to advertise
59:51
their books to our community, millions
59:53
of users. It's a win for the users,
59:55
because to them, it's not really ads, it's a chance to
59:57
win three books. And then it's a win
59:59
for us. because it's another revenue stream. And right
1:00:01
now, we're getting more revenue from Plus, but I
1:00:03
do see a world where depending on how it
1:00:06
goes, the giveaways overtakes that we'll have to see
1:00:08
it's hard to tell right now. But
1:00:10
we do have that other revenue stream, which is our kind of B2B
1:00:13
kind of... Do you know how many users
1:00:16
Goodreads has? It's rumoured around
1:00:18
80 to 90 million, I
1:00:20
believe. So I was doing the math, 10.5 on
1:00:23
2.4 million is 0.4 of a percent. What
1:00:25
do you know about typical
1:00:30
is on Framium? I would expect
1:00:32
1% in terms of upgraders. It
1:00:35
is about 2% or something.
1:00:37
Oh, in terms of converting? Yeah,
1:00:40
like a typical converter. I feel like 0.4% is low. Yeah,
1:00:43
it is low. I think it's like you're
1:00:45
looking at 2% to 5% or something like
1:00:47
that. I think that's the standard
1:00:49
rate. Yeah. I'm just
1:00:51
over here thinking what's the
1:00:53
best user of your time cranking
1:00:55
that percent up or just trying to get
1:00:58
to 80, 90 million? Because a small
1:01:00
conversion rate on 80, 90 million is still a lot
1:01:02
of money or converting that
1:01:04
rate. Obviously, we can walk and
1:01:06
shoot them at the same time. But if you're a solo
1:01:08
dev, you kind of can't, right? You're working on one feature
1:01:10
or the other. Yeah. And our
1:01:12
intention is to keep the team small because it
1:01:15
has a lot of benefits. Because the
1:01:17
other thing is what 80 to 90
1:01:19
million users look like in terms of customer
1:01:22
support in terms of... You know what I
1:01:24
mean? Right. Cost. Operational.
1:01:27
Mm-hmm. So there's that to keep in
1:01:29
mind. I would hope that part of
1:01:31
the reason why we can... If we could grow
1:01:33
to 80 to 90 million is because a lot
1:01:35
of the UX pain points have been sorted out,
1:01:38
everything's super intuitive. We've got
1:01:40
a very helpful help base
1:01:42
or whatever for the... Things
1:01:44
like that. So it's hard to tell. Yeah.
1:01:47
So how do you pick on what to work on then?
1:01:49
How do you choose? I'm starting... I'm
1:01:51
currently working on is getting that presented up. That's
1:01:54
what I'm currently working on, right? How
1:01:56
did you decide that then? Versus the
1:01:59
other stuff? Honestly... before we
1:02:01
became profitable, this is actually what happened.
1:02:03
It was more about me
1:02:05
and being like, I don't have a salary and
1:02:07
I'm on my last year of runway, right? So
1:02:10
it got to the point where I'm like, for Storygraph,
1:02:13
for us to not get funding and for it to
1:02:15
stay independent, I need to start
1:02:17
getting a decent salary from Storygraph. Rob needs to
1:02:19
start getting a decent salary from Storygraph. We've
1:02:22
always been paying Abby a decent, I've always been paying Abby
1:02:24
a decent salary from day one and we
1:02:27
were like, what can we do? So this is
1:02:29
pre giveaways, plus was
1:02:31
there but it was kind of just, you know, it was
1:02:33
a 0.01% at one point. And
1:02:36
so I was like,
1:02:38
could we do ads in a smart way? Because of
1:02:41
all the page views we have. And the thing is,
1:02:43
even when we thought we were being smart about it,
1:02:45
we always just came out at,
1:02:48
even if we weren't sending any user
1:02:50
data to publishers, like if it was
1:02:52
just a behind the scenes matching process
1:02:54
that the publishers had their input and
1:02:57
then we matched behind the scenes to
1:03:00
make sure that users were seeing relevant
1:03:02
ads. We just thought that even
1:03:04
just the thought of user thinking we'd given their
1:03:06
data to publishers just didn't sit right with us.
1:03:09
So there was this one like series of
1:03:12
formative conversations with Rob and
1:03:14
with Saron, my friend Saron, his wife,
1:03:17
where I was like, okay, that's
1:03:19
where I kind of thought, oh, giveaways, that's how
1:03:21
we get another revenue stream. And then I said,
1:03:23
we don't have product market fit with plus. How
1:03:25
do we get product market fit with plus so
1:03:27
that that percentage goes up? That was kind of
1:03:30
the journey to just choosing to do that.
1:03:32
Yeah, makes sense. It came
1:03:34
from a personal like, well,
1:03:36
my runway runs out in two years. So
1:03:40
this is something needs to change. Yeah,
1:03:43
right. I like the giveaways idea.
1:03:45
I think it is it can be more of a
1:03:48
win-win-win because you have, you know,
1:03:50
there's something there for the user, not just hey, look
1:03:53
at this book that we even if we've better the
1:03:55
book. Yes. And it's like, well,
1:03:57
we've entered the book, the person's paying to
1:03:59
promote it. it but you know, he has a chance
1:04:01
at a free copy. It's like, everybody likes
1:04:03
free stuff. So yeah, that's a
1:04:06
good idea. It's a good way of doing
1:04:08
it so that it's not a win win
1:04:10
lose for the end user, which ultimately, you
1:04:12
know, drives down enjoyment and
1:04:14
satisfaction, right? And drives
1:04:16
people away if it becomes egregious.
1:04:19
Less so I think if it's a really good
1:04:22
fit. I mean, we are advertising based company here
1:04:24
at changelog. We are sponsored. We
1:04:26
also have a membership so you can opt out
1:04:28
of that. I don't know, Adam, 1%. What
1:04:30
do you think is our percentage? 0.001? Pretty
1:04:33
small. We don't know what it is. It's pretty small.
1:04:35
Yeah, but that's all we're optimizing for
1:04:37
either, at least now. No, it's not. But our,
1:04:40
the point I was getting to was that we
1:04:44
are very intentional with the sponsors that we work
1:04:46
with, and the way we reduce the ads
1:04:48
and all this kind of stuff. So that
1:04:50
we think it's a decent trade off for
1:04:52
keeping the podcast free for everybody. And our
1:04:54
listeners even sometimes ones that sign up for
1:04:57
plus plus or like, can I sign up
1:04:59
for your sorry, it's better. It's better
1:05:01
than yours now. Yours is plus ours is plus plus.
1:05:03
So it's slightly better. Oh, it was actually plus plus.
1:05:06
Changelog plus plus, you know, because
1:05:08
we're nerds. We like to increment
1:05:11
things. I love it. Plus
1:05:13
plus. Love it. Yeah. Some people sign up
1:05:15
and say, Hey, can I keep the ads in there?
1:05:17
Because they're valuable to me. I enjoy it because we're
1:05:19
exposing them to new things. And so if done right,
1:05:21
I think you probably could crack that nut.
1:05:24
But if you can figure out
1:05:26
even more interesting ways like giveaways of
1:05:28
doing the same thing, then more power to
1:05:30
you. When we were sketching out what
1:05:32
introducing ads to the platform would look
1:05:35
like, I said to Rob, what
1:05:37
we should do is have it such that
1:05:40
if you pay for plus, you can turn off
1:05:42
the ads. But I want it such that most
1:05:44
plus people do not turn off the ads because
1:05:46
they're that good. That was like the goal. That's
1:05:48
what you what I said. That's
1:05:51
kind of how we think. That's great. Yes.
1:05:54
But then, of course, we do have people to say, I signed
1:05:56
up because I don't want the ads anymore. So there you go.
1:05:58
I mean, it's not like everybody. But they're
1:06:00
good enough that some people find value in them. And
1:06:02
so we treat them like content as much as we
1:06:04
can, which is a lot of
1:06:06
hard work. So I'm sure giveaways probably some hard
1:06:08
work as well at this point. Yeah. It's
1:06:10
a whole other product that I'm building basically. Yeah,
1:06:12
exactly. It's a whole other platform because there's a
1:06:15
whole backend dashboard to that. Um,
1:06:17
and it's still in beta because there's still some
1:06:19
manual parts of the process. And I really hope
1:06:21
that we can make it live today. Just
1:06:24
on the trusting, a couple of points that I
1:06:26
want to mention that I think
1:06:28
are cool, but they could also factor
1:06:31
into lower numbers in that
1:06:33
actually not really. Anyway, the
1:06:35
point that I want to make is we don't take
1:06:37
any payment details when
1:06:39
you sign up for the trial and
1:06:41
also the trial, the trial is also 30 days. And
1:06:45
so on one hand, I
1:06:47
think the trial is quite long and that
1:06:49
it's very easy in 30 days for someone to like
1:06:51
not feel the pressure to use it. Then
1:06:54
they kind of don't use it. And then when it comes
1:06:56
to try and sign up, they're like, I didn't really use
1:06:58
it. I guess I don't need it. And so they don't.
1:07:01
Whereas maybe if it was shorter, they might immediately
1:07:03
try and explore all the features and
1:07:05
then sign up. But the
1:07:07
cool part of all of this is knowing that when we
1:07:09
look at our subscriber number, when I look at about 10,570,
1:07:11
whatever it is, knowing that every single one
1:07:16
of those people actively, their
1:07:19
free trial expires and they actively came back
1:07:21
on and said, yes, no, I
1:07:23
want this. And they put in their car details.
1:07:25
That's really cool. No one's a mistake there because
1:07:27
it's just not possible. Right. If
1:07:30
I have a lower turn that way, because the
1:07:32
people are very intentional about signing up. Yeah. How
1:07:34
many conversations have you had with those 10,500 folks to
1:07:36
make plus better,
1:07:40
to give them more value? Dozens, I would
1:07:42
guess. So, uh, no, dozens, it would
1:07:44
be more than, yeah, probably dozens up
1:07:46
to a hundred because I've done
1:07:48
a bunch of like over the years,
1:07:51
a bunch of summer conversations. I've had
1:07:53
reset rounds where, you know, there was
1:07:55
one where I figured out, oh,
1:07:58
no one really cares about plus they're just paying. to
1:08:00
support, you know, oh, what do
1:08:02
the plus, what do people have
1:08:04
in common? The power users, oh, they love
1:08:06
stats, like things like that, which helped me
1:08:08
get to the advanced stat transition. But there's
1:08:11
also been surveys and stuff over the
1:08:13
years too, not always direct conversations. Sometimes
1:08:16
I'll send out a survey of
1:08:18
checking in, maybe testing the waters
1:08:20
for a particular feature I'm thinking
1:08:22
about, things like that. So I've
1:08:24
spoken every single plus user,
1:08:26
well, not the 2000 who joined in the
1:08:29
last month, that was great. But no, the
1:08:32
8000, whatever they've heard from me in some shape
1:08:34
or form, whether it's just a form or a
1:08:36
survey saying, Hey, we're thinking of doing
1:08:38
this, like how do you, this currently? What
1:08:42
does success look like for this for you? Like,
1:08:44
do you have, uh, some sort of
1:08:46
thing jot down where like, if this gets to
1:08:48
some point, cause you don't, you want to stay
1:08:50
small. So it doesn't
1:08:52
sound like, you know, total world domination
1:08:54
is what you're after necessarily, or
1:08:57
maybe you are, but just with a small team. Maybe.
1:09:00
No, it is definitely not
1:09:02
a world domination, but I think I
1:09:04
would love for us to be almost
1:09:06
the default place that people, when they're
1:09:09
thinking about book recommendations or finding a
1:09:11
book where like the default place to
1:09:13
go, like people are
1:09:15
just like, Oh, check it on Storygraph or go to Storygraph.
1:09:18
And another, I guess one other measure
1:09:20
is whenever we have a spike, like
1:09:23
a big spike, we end up getting
1:09:25
to like the highest number two. So
1:09:27
we've been number one in the app store once,
1:09:30
but we've hovered between
1:09:32
two and five, right? In
1:09:34
the, in the, in the books category. And
1:09:36
I think good reason is basically entrenched at
1:09:38
number one, pretty much popping up one time
1:09:41
where we were briefly above them.
1:09:43
That was when we basically launched the app and
1:09:45
then the TikTok went viral. So
1:09:49
I would love basically, I'm imagining us
1:09:51
being up there, like entrench, like one
1:09:53
end to being there and being known
1:09:55
as the only kind of default main
1:09:57
place, personally feeling.
1:10:00
I do see Strogoth as my
1:10:02
life's work, assuming things continue.
1:10:05
I would just keep doing this as long
1:10:07
as it stays fun. I feel like that is
1:10:10
a possibility that I keep doing this. In
1:10:12
which case, it would need to get
1:10:14
to the point where I feel like I
1:10:16
can get a salary that would support whatever
1:10:18
life choices I want to make, whether that's
1:10:20
relocating, whether that's having a wedding,
1:10:23
whatever it might be. Because right
1:10:25
now, I don't feel like that. I've got a decent salary
1:10:28
now and Rob has two, but for
1:10:30
me, it's not enabling my savings. The savings
1:10:33
that I've threw down over the
1:10:35
last five years, they're not growing back up
1:10:37
right now. It's
1:10:39
things like that where there's a personal
1:10:41
lifestyle where it's like, okay, Strogoth is
1:10:44
supporting me and my lifestyle and
1:10:46
any future changes that might come to that
1:10:48
lifestyle. And also, we are
1:10:50
just known as the de facto default. You
1:10:53
want books? Strogoth. I
1:10:55
have an idea for you. Oh, yes, please. I
1:10:58
don't even know if it's good. I'm thinking
1:11:00
out loud here. I
1:11:03
love problems. I love problems. I
1:11:05
could tell you've been steering away. Even with
1:11:07
the group things, I could just feel your
1:11:09
face. You're like, hmm. Well,
1:11:11
because there's no right way to
1:11:14
success. Even as Jared asked that
1:11:16
question, you really have a
1:11:18
not struggle to describe it, but it just
1:11:20
seems like just don't die as your success.
1:11:23
Just don't die. And if you can really
1:11:25
succeed well, that's obviously a plus. No
1:11:28
pun intended. But I wonder
1:11:31
if you want to be the default for
1:11:33
a good book recommendation, then don't put it
1:11:35
behind a sign up. Give
1:11:38
somebody someplace to go. Ask
1:11:41
them three questions. Give them a result, and
1:11:43
they're going to love you immediately. I
1:11:46
don't know how your recommendation works, so take this with
1:11:48
a grain of salt. But what if that recommendation was
1:11:50
so compelling that they were like, I have to sign
1:11:52
up afterwards? Or maybe you really don't struggle
1:11:54
with sign ups, but if you want to be
1:11:56
the default, find a way to give
1:11:58
them a result that's worth it. worth their
1:12:01
attention without any friction in
1:12:03
the process. The signup process
1:12:05
is always pushy because
1:12:08
you're like, what am I signing up for? And then you get
1:12:10
a form to fill
1:12:12
out to give somebody some information. And maybe
1:12:15
the thing that came from the TikTok video or
1:12:17
the YouTube video, or maybe that was the compelling
1:12:19
artifact that doesn't make that part of struggle for
1:12:21
you, and I don't know. But
1:12:23
if you want to be the default, you have to
1:12:25
kind of give that thing away, ad nauseam for free.
1:12:27
Just give it away for free. And everybody's like, man,
1:12:29
this is the place to go. And
1:12:31
they have no problem with giving you more keys to
1:12:34
their kingdom. So here's the thing.
1:12:36
We have the previous current site.
1:12:38
We had two million registered
1:12:40
users, but we were getting 4 million
1:12:43
unique visitors every month. So there's
1:12:46
like double are just someone's
1:12:48
link them. It could be a giveaway page, which
1:12:50
you can view all the giveaway pages without signing
1:12:53
up. We also have, you can view
1:12:55
all the book pages too, sure. We
1:12:58
also have a browseable
1:13:00
books page which have a filter menu. It's not
1:13:03
like the recommendation engine where you actually put
1:13:05
in your preferences. But you can say,
1:13:07
oh, I want something funny, fast paced, whatever. And
1:13:09
you can see, you can order by last updated
1:13:12
or page size
1:13:14
or whatever it is. Sorry, yeah, book
1:13:16
size. But there is a feature
1:13:18
that we released recently that we have been talking
1:13:22
about and saying, can we make
1:13:24
this free as in such
1:13:26
that you don't need to sign up, which is
1:13:28
that we currently have something called a Storygraph preview,
1:13:31
personalized preview. And essentially,
1:13:33
it's an AI generated summary
1:13:35
of readers the
1:13:37
book would be good for. And also, if
1:13:41
you have the personalized version, which is currently
1:13:43
plus because originally, we thought
1:13:45
it was going to be too costly to offer it to everybody.
1:13:48
The personalized version tells you if we think
1:13:50
the book is going to be good for you. And it's
1:13:52
a text that's completely in our solution. And
1:13:55
there was a world where we're excited for
1:13:57
it to be free to everyone because there's
1:13:59
Then it's like, wow, even if your main
1:14:01
tool is Goodreads, if you're in
1:14:03
a bookstore, you want to be looking at
1:14:06
it on Storygraph because we're
1:14:08
the only place that are going to tell you, oh,
1:14:10
given your interest
1:14:13
in so-and-so themes, blah, blah, blah, blah, blah, blah, you
1:14:15
might like this book. But what we also do is
1:14:17
if you've specified any type of thing you don't like
1:14:19
reading about, like if you don't like reading sad books
1:14:21
or if there are certain triggers and things you don't
1:14:23
want to read about, we'll alert you
1:14:25
to say, be warned, it is still
1:14:28
the themes of blah, blah, so be
1:14:30
careful, proceed with caution. This is a
1:14:33
new feature which we're hoping
1:14:35
to make free for everyone, but we have discussed,
1:14:37
is it possible to just have this be on the
1:14:39
pages? We need
1:14:41
to talk about it some more because there's something
1:14:44
about whether it's to do with AI opt-out or
1:14:46
whatever. We need to just look
1:14:48
into the implications cost-wise, resource-wise, because
1:14:50
we're getting full million users a
1:14:52
month and just check. Yeah,
1:14:54
just review if that is actually a possibility,
1:14:57
but that would get at what you're talking
1:14:59
about, which is giving people a result without
1:15:01
needing them to sign up. So
1:15:04
I don't have the answers, right, obviously, because I'm not
1:15:06
deep in your team. I don't know what's required to
1:15:08
give this thing away, but I just wonder if that
1:15:11
could be compelling, because if anyone
1:15:13
could go to a non-friction
1:15:15
page and get some value, then
1:15:18
they're willing to give you more of their attention
1:15:20
in time. It's just my rough thought on that.
1:15:22
And that could be plausible. It could not be
1:15:24
plausible for you to accomplish. But
1:15:26
if you want to be the default, you kind of have to give
1:15:29
somebody a taste of what the goodness
1:15:31
is, right, as some sort of tantalizer to
1:15:33
get in. It could be a landing
1:15:35
page. It could be an E.B. test. Doesn't even have to
1:15:37
be to everybody. It could be, let's test this out on
1:15:40
an ad campaign that we do, or some way
1:15:42
we drive and funnel folks to this one page
1:15:44
that test out this theory in a
1:15:47
20,000 person spectrum versus a
1:15:49
200,000 spectrum because you're
1:15:51
getting four million visits a month or whatever
1:15:53
the number is, where you really can't spend
1:15:55
the money on that and say, OK, wow,
1:15:58
what was the conversion on $25? 5,000
1:16:00
folks, does it make sense to
1:16:02
scale that? Does that really bring us in high quality
1:16:05
people who really love to read and
1:16:07
really can find value not only in
1:16:09
our platform and the recommendations but then
1:16:11
are a high candidate for whatever Plus
1:16:14
evolves into? Yeah. That's how I think of it. If
1:16:37
you're listening, you may remember the
1:16:39
early days of the internet where
1:16:41
open networks like HTTP and SMTP
1:16:44
led to explosion of websites and
1:16:46
online communities. Building a fan site
1:16:48
and connecting over shared passions led
1:16:50
so many of us to careers
1:16:53
in software. Back then it seemed
1:16:55
like anything was possible because the
1:16:57
internet of the 90s was built
1:17:00
to democratize information not consolidate it
1:17:02
with a handful of big tech
1:17:04
companies. Read, write, own,
1:17:07
building the next era of the
1:17:09
internet is a new book from
1:17:11
startup investor Chris Dixon that explores
1:17:13
how network architecture plays out in
1:17:15
our online lives and the decisions
1:17:17
that took us from open networks
1:17:20
governed by communities of developers to
1:17:22
massive social networks run by internet
1:17:24
giants. Read, write, own
1:17:26
is a playbook for reclaiming
1:17:28
control and for reimagining applications
1:17:30
so users can own, co-create,
1:17:32
and even profit from the platforms they
1:17:34
use every day. From AI
1:17:37
that compensates creators to protocols that
1:17:39
reward open source contributions, this is
1:17:41
our chance to build the internet
1:17:43
we want not the one we
1:17:45
inherited. Order your copy of Read,
1:17:48
Write, Own today or go to
1:17:50
readwriteown.com to learn more.
1:18:12
Here's something to think about, Halia. Yeah,
1:18:14
cool. Let's go. Have you
1:18:16
entertained or would you entertain an acquisition?
1:18:20
No, as in the answer
1:18:23
right now is no. Like no, you
1:18:25
haven't and no, you wouldn't. The thing is,
1:18:27
I'm just in general with life. I'm wary
1:18:29
of saying never say never because
1:18:31
I don't know what's going to happen in five
1:18:33
years, 10 years. Am I still going to be
1:18:35
having fun? Am I, I feel like I'm pretty
1:18:37
good at looking after myself. Like everyone's always
1:18:40
worried about my wellbeing and I'm like, I'm
1:18:42
so far away from burnout. Like I
1:18:45
really look after myself. I, you know, so
1:18:47
the answer right now is like, no, definitely not.
1:18:50
We couldn't, but I'm not going to say never because life
1:18:53
is long and hopefully that's good. And
1:18:56
so yeah, but the answer right now
1:18:58
is no. And that is not in my plan and it's
1:19:00
not in my intention. My plan is to continue running
1:19:03
and owning Storygraph forever. Let's
1:19:07
assume success then. Let's go down the road five
1:19:09
years, maybe 10, but let's at least go down
1:19:11
the road five and say that
1:19:13
Storygraph has displaced Goodreads and the
1:19:15
Nezeitgeist of human knowledge and you're
1:19:18
number one on app downloads and
1:19:21
you have more users than you know what to do with your
1:19:24
own. Everybody loves the product and here comes Amazon
1:19:27
and knocking. No, Amazon's not making
1:19:29
Amazon. That's too easy. Yeah,
1:19:31
Amazon is no. Like that's like, that
1:19:33
would almost be like portraying our users.
1:19:37
Adam has an opinion though. Like
1:19:39
my dad,
1:19:42
my dad has an opinion on that. Okay. Yeah,
1:19:45
I bet. All right. Amazon doesn't
1:19:47
come knocking, but somebody else does
1:19:49
who has goodwill in heart. Then
1:19:52
you're thinking about it, then you may be like, well, sell.
1:19:55
If it's going well and we're running it, then no reason
1:19:57
to sell. All right. I
1:20:00
like it. Yeah, I think. Right now I
1:20:02
would say that the only. V C. Know
1:20:04
I'd it because it's again if what
1:20:06
were possible now so we sits live
1:20:09
on that Vc train. I still like
1:20:11
a wolf only bring bad thing to
1:20:13
focus because once you've been vc on
1:20:15
it's almost a with the learn math
1:20:17
of race to. Acquisition.
1:20:19
Life, yo! I would hate to feel pressured
1:20:21
to do either of those things. View
1:20:23
to get paid of. Exit Say now I'm
1:20:26
unless that's a of venture capitalists that comes
1:20:28
in at a profit share versus a. As.
1:20:30
A chair that's a different venture
1:20:32
capitalists there's lots be more than
1:20:34
best based upon their return over
1:20:36
multiples based upon friends. But.
1:20:39
That's plausible. Yeah, But then
1:20:41
sitting you're talking is the coming along. what
1:20:43
would be. A lines yeah that
1:20:45
kind of investment the been only
1:20:47
money but smart money like connected
1:20:49
them words they would have to
1:20:51
advised to the. The. Giveaways
1:20:53
in a can you help me content
1:20:56
with better publishers? have deeper relationships and
1:20:58
publishers have a longer contracts, more reliable
1:21:00
revenue, etc. Yeah, that's how I would
1:21:02
view that kind of investment. Or like
1:21:04
that, who's the most famous I Susie?
1:21:07
Oprah Avast a gram in a booth?
1:21:09
Bang Yeah! I know that the Layla going
1:21:11
and say what if Oprah comes along through
1:21:13
know how she's gonna go there for hundred?
1:21:15
hey this is a lion to our like
1:21:17
one that around a disaster and are you
1:21:19
okay so hit on something Hit Welcome adds
1:21:21
a single over his book. Clubs are causing
1:21:23
a like natty as were club like with
1:21:25
you did that because like you could grow
1:21:28
that. Audience. And maybe have
1:21:30
your thing be in of the new
1:21:32
over as book club eventually. Citizen but
1:21:34
have operated Combine was like. Interested.
1:21:37
But. That seems like I are about. Spiritually.
1:21:40
Aligned about least in terms of product and
1:21:42
losing season. good at show as a as
1:21:44
that money like maybe that would be a
1:21:46
now she good value as is my only
1:21:49
point out on us along with us but
1:21:51
he kinda cincy somebody or minutes in it
1:21:53
and that's great literary as in any success
1:21:55
of semester over if you're out there. And.
1:21:58
Somebody listen to the senior. network, get
1:22:01
in touch. If you're Oprah's software
1:22:03
developer IT person, and you listen to
1:22:06
this, that's right. Good job, yeah. If
1:22:08
you're handling Oprah's DNS, get
1:22:11
in touch, right? Yeah,
1:22:14
exactly. Next time she asks for
1:22:16
a book link, send the story graph one.
1:22:18
That's right. I like
1:22:20
that idea. I mean, I think I would, if I were
1:22:22
you, that's how I would align it, because I would not
1:22:24
sell out to the other
1:22:27
Goliath, like an Amazon, even an
1:22:29
Amazon competitor. I would, because
1:22:31
like you said, you're profitable, and for now you're
1:22:33
enjoying it, right? Like you said, you're not sure,
1:22:35
five years or 10 years how you feel, because
1:22:38
none of us do, but you assume you will. And
1:22:41
so, and it's to stay on the, what's the
1:22:43
good, the gymnast who are on
1:22:45
the walking, like a plank kind of thing, whatever
1:22:48
that is. To stay on the
1:22:50
bar, don't fall off, don't look down. The balancing
1:22:52
beam, are you talking about the balancing beam? You
1:22:55
make it sound like it was
1:22:57
really stressful. And I don't know.
1:22:59
Like it's tenuous. Like you could fall off
1:23:01
and die. Exactly. Well, it's just
1:23:03
a few feet. You know, it's
1:23:06
not like, there's no sharks down there.
1:23:09
Oh, a walk in the park, no? It doesn't feel like that. It feels
1:23:11
like a walk in the park for you? I want to get, well,
1:23:13
not right now, but I want to see
1:23:15
the future of it feel like a walk in the park.
1:23:18
Right. Yeah. Hang on
1:23:20
a second. There's this idea that Jerry just mentioned, I
1:23:22
think has legs. What if there's a book club for
1:23:24
everybody? What do you mean? That's just there
1:23:26
to join, right? Groups to find
1:23:29
in a way. Oh, like pre-made book clubs.
1:23:32
Well, the Nadia book
1:23:34
club is there that she's like, hey, everyone's
1:23:36
welcome here. And then it's
1:23:39
like the bees and honey kind
1:23:41
of thing. Like, you know, it's sweet. So you
1:23:43
come and then wow, there's a recommendation engine here.
1:23:45
And you want to be the default of that.
1:23:47
So rather than say, come get recommendations, it's more
1:23:49
like, come find your group. Maybe
1:23:52
this is the group for you, but
1:23:54
something where everybody's invited. Yeah. Pretty
1:23:56
funny because we launched a read along feature at the
1:23:59
end of last year. year where you can read a
1:24:01
book with up to a thousand people and it's
1:24:03
basically for people who don't want to be in a regular
1:24:05
book club but they can opt in and you
1:24:07
can choose a book. And I was running it
1:24:09
from the Storygolf account but it was clear that
1:24:11
Nadia was running it. And we
1:24:13
had a thousand people join and we all read
1:24:15
Erin Morgenstern's The Night Circus and it was awesome.
1:24:17
And at the end I made a forum that
1:24:20
was like, share your feedback on
1:24:22
this feature, given that it's new. And
1:24:24
you know, one person wrote something like, I
1:24:27
feel like running one of these is
1:24:29
not for me, it's more for influencers
1:24:31
like Nadia. Like, and I just remember
1:24:34
laughing, you know, I didn't see myself
1:24:36
as an influencer. But you are. I
1:24:38
think you are. Here's a different angle.
1:24:40
I would be friends with somebody based
1:24:43
upon particular books I know I've read that
1:24:45
I've enjoyed. And if they've read and enjoyed
1:24:48
these books, then I could be
1:24:50
better friends with them. As a matter of fact,
1:24:52
that happened this week. Like I like Nick Moore
1:24:54
because I know specific books he and I have
1:24:56
read together and we shared like similar likes and
1:24:59
dislikes with the book. And so I
1:25:01
feel like, man, if I was like Nick's neighbor, I'm
1:25:03
talking about Nick Niek's from J.S. Partly, by the way.
1:25:05
Okay. If I was Nick's literal neighbor, I would like,
1:25:07
not that I'm not his friend because we're far
1:25:09
away, but I would be more willing to like
1:25:12
hang out with Nick because
1:25:14
I know he's read the Babaverse, you
1:25:16
know, Quintology book or whatever
1:25:18
it is, like that series, or because
1:25:20
he would take a recommendation, you know,
1:25:23
so like the finder group
1:25:25
people or the finder friends in the world,
1:25:27
the internet is similar likes and
1:25:29
that similar likes kind of comes from a book.
1:25:32
So this is a whole new direction for you now,
1:25:34
it's like Tinder for book lovers, you know. Oh,
1:25:36
they get restarted on the Tinder for book
1:25:39
lovers as a single person who has been
1:25:41
dating for years trying to find somebody. The
1:25:44
number of times people have said like, Oh,
1:25:46
have you thought about dating at spinoff? And
1:25:49
I was like, I wish I had the bandwidth for
1:25:51
a dating at spinoff because it would
1:25:53
be incredible to find a man
1:25:55
who loves books and that we can bond
1:25:57
over that. So let's come on. a
1:26:00
few times over the years, the dating up
1:26:02
spinoff. This is why you take money in. If
1:26:04
you hire a dev, they're working on that. You
1:26:06
keep working on Plus and then it's true. Good
1:26:09
things happen. It's called lack of focus is also what you call
1:26:11
it. And then it's that dev that ends
1:26:13
up being my husband. Oh my goodness. Oh
1:26:15
my goodness. Now we're on a homework
1:26:17
movie. Oh my gosh. We're like matchmakers.
1:26:19
Look what we're doing for her. Nadi,
1:26:21
are you a homework fan by the
1:26:24
money chance? Are you a homework movie
1:26:26
junkie during the holidays? No,
1:26:28
but I know the reference. Okay. You
1:26:30
laughed really hard. So I was thinking maybe you were. I was like,
1:26:32
wow, not only. Well, I kind of was part of
1:26:34
one last year. I was part
1:26:36
of one that was basically like a homework movie,
1:26:38
but it didn't end the way a homework movie
1:26:41
ends. Oh, I
1:26:43
get sucked into it. There's
1:26:47
a framework to every one of those movies. I get sucked into it.
1:26:49
My wife watches them. Sometimes she has friends over and I'm watching them
1:26:51
with her just because I'm in the room. Then
1:26:53
I'm the guy who's like, don't do that. Oh
1:26:55
my gosh. I'm the, you know, I'm like in
1:26:57
it. I get invested in this. You're the husband of
1:26:59
the back. He's like, I don't know what
1:27:01
to do. Oh, but you're going to
1:27:03
do this. But I am watching it.
1:27:06
That's half the reason I'm like, don't turn it on
1:27:08
because if you turn it on, I will watch it and
1:27:10
then I'll get invested and then I'll be one of the
1:27:12
girls. You'll have a scooter your way in
1:27:14
the front. You're crying crocodile tears. Can you believe how he
1:27:16
treated Sally? She
1:27:21
did not deserve that. The point is
1:27:23
though, is we all bond over stories, right? And I
1:27:25
was just thinking like going back
1:27:27
to the default, it's maybe the
1:27:29
way to being the default isn't to put the default
1:27:31
out front. So maybe my recommendation was incorrect. Maybe
1:27:34
it's just helping people find the platform
1:27:36
and then wow, there's this recommendation engine
1:27:38
that should be the default for everybody.
1:27:40
And I just want to tell everybody I
1:27:42
know or find more
1:27:45
people that have read the same books I've read. And
1:27:47
this is why, by the way, I think it's very
1:27:49
important that all the social reading features like body reads,
1:27:52
like read-alongs and book clubs are
1:27:54
free because you get people who
1:27:56
don't even intend to move or use a
1:27:58
book tracking app. their book club
1:28:00
hosters. We're trying this for this meeting or
1:28:02
we're doing this one thing and then they
1:28:04
try it and then they say, oh, what
1:28:07
is this thing? That was awesome. I want to do
1:28:09
this again. Oh, it's just easier if I have all
1:28:11
my stuff on here. And we have seen that journey
1:28:13
a little bit, but there's definitely more that we can
1:28:15
do on that space. There's
1:28:18
any more technical stories you can share with us? Like your
1:28:21
cues all jacked up? How's your servers
1:28:23
doing? What are you doing
1:28:25
for observability? Do you do observability? Like what's
1:28:27
your SRE stack? How do you deploy? Well,
1:28:30
for Oke now, that's a big story.
1:28:32
We migrated. Rob manages all of our
1:28:35
infrastructure. So we were on Heroku. It
1:28:37
was getting, we were on the database
1:28:39
farm that was costing us like eight
1:28:42
to $9,000 a month on top of all the other
1:28:44
costs. And at this point, plus is
1:28:46
like, you know, we have a few thousand
1:28:48
users, not enough. And so we,
1:28:52
you know, Rob, who had 15 years
1:28:54
in infrastructure experience said, Hey, Nadia, I
1:28:58
think we should move off Heroku. Me,
1:29:00
who is a boot camp graduate. All
1:29:02
I know is Heroku. What do you mean
1:29:04
we're moving off Heroku? No, no, no, no, no. And
1:29:07
he did all the research. He laid everything out for
1:29:09
me. He asked all of my questions. It was a
1:29:11
month long process of this is the way to go.
1:29:13
And so eventually we
1:29:15
did this big migration, the beginning
1:29:18
of 2022, January 2022. It
1:29:21
was like months and months of research,
1:29:23
lead up planning. You know, we
1:29:25
told everyone we're gonna have this one of those, we're
1:29:27
gonna have scheduled downtime from this time to this time,
1:29:29
we were like, now we're gonna be
1:29:31
down for five hours, moving everything over.
1:29:34
So we did everything, we
1:29:36
followed our steps. We
1:29:38
turned the app back on, everything's
1:29:40
working. And then the emails start
1:29:42
coming in to support account deleted,
1:29:45
my account we were like, oh,
1:29:47
my like my heart sunk, like
1:29:49
it was awful. Eventually,
1:29:52
we realized that what happened was in the process of
1:29:54
the upgrade, everybody had been signed out and some people
1:29:56
had not had to sign in for like three years.
1:29:58
So A lot
1:30:00
of people had two accounts or something, some
1:30:02
people were two accounts, or they just couldn't
1:30:04
remember their login details, or they didn't realize
1:30:07
they weren't planned in. Basically, we were able
1:30:09
to match every single person back to an
1:30:11
account eventually, but it was that initial minute
1:30:13
of when we turned it on, and
1:30:15
then the emails that are coming in, they were like, well, my account's
1:30:17
deleted now, my account was that, it was scary. We
1:30:20
had backups, but you don't want to be dealing with that.
1:30:22
You're like, I trusted you, Rob, no.
1:30:25
Yeah, so that was that. That's one story.
1:30:27
We had so many issues with
1:30:29
search, and
1:30:32
I started the act with PG search,
1:30:35
and it was just searching for a book
1:30:37
took like 10 seconds. It
1:30:39
was awful. I would tweet out saying,
1:30:41
what can I do? A
1:30:44
lot of people eventually got to the point where I
1:30:46
was like, I thought we need something like Elastic Search.
1:30:48
Even working out with Elastic Search,
1:30:51
that eventually had its own performance issues, and I
1:30:53
realized, I need to shard now. I just learned
1:30:55
things as and when we have problems, and it's
1:30:58
like, oh, now I need to shard. I need
1:31:00
to index it this way. I
1:31:02
was just learning on the job. One
1:31:04
day, the server
1:31:08
running our Elastic Search just died
1:31:11
or something? It was run, it was a managed, this one
1:31:13
was still in her roast at this point. We
1:31:17
were using the Elastic plugin
1:31:19
or plan, and suddenly
1:31:21
the search wasn't working, and it's very
1:31:24
key for search to work. Search nowhere
1:31:26
was working. You couldn't search for books.
1:31:30
We were like, what's going on? We couldn't
1:31:32
see anything. We emailed the support, and we
1:31:34
were paying. We were on there like, what's
1:31:36
the word for the opposite
1:31:39
of penultimate, i.e. the second from
1:31:41
the highest? I think it's
1:31:43
just called second. I love
1:31:47
penultimate.
1:31:50
It's one of my favorite words. I do
1:31:52
like that word. Yeah. Whenever
1:31:54
I say it in conversation, everybody
1:31:56
always says, my friends
1:31:59
still say, hmm, a note to me and I'm
1:32:01
like but you knew exactly what I meant and
1:32:03
it's like yeah. I feel like everybody knows it
1:32:05
yeah. Yeah exactly everyone calls it out
1:32:07
it's like a fancy word but you know
1:32:09
what I mean. So I
1:32:11
was hoping that there was another one but
1:32:13
actually there might be. Second high in
1:32:15
San. Yeah exactly second. And
1:32:18
the support was just like oh yeah it looks
1:32:20
like that survey just failed like we can spin
1:32:22
it out for you again but it's gonna take
1:32:24
like X hours and we were like right we're
1:32:27
getting off of Elastic we're going on to Bonsai
1:32:29
so that was a wild day because it was
1:32:31
eight hours of like well not quite eight hours
1:32:33
because we were slowly indexing the millions of records
1:32:36
again but it was like that was one
1:32:38
thing. I guess one of our biggest kind of
1:32:40
tech learning was when
1:32:43
we had the first initial spike you know
1:32:45
the response time graph on Heroku we'd
1:32:47
be like okay okay and then BAM it would
1:32:50
like spike up and we
1:32:52
tried so many things we architected
1:32:54
bits of code we even
1:32:56
at one point you know my friend Andy
1:32:59
Kroll he texted and said you
1:33:01
know you're very right heavy like which
1:33:03
database turn are you on and
1:33:05
at this time I was on the $50
1:33:08
database plan and Andy said well
1:33:10
that's never gonna work like you need to
1:33:12
upgrade like this is actually a case of
1:33:14
throw more money at it you're graded to
1:33:16
the $200 database you know
1:33:18
that fell at the time oh my gosh $200
1:33:21
a month on the database that felt very
1:33:23
wild I mean especially at this time it's
1:33:25
money from my pocket and eventually Rob's as
1:33:27
well. It got to the
1:33:29
point where even when we upgraded database it worked
1:33:31
fine for a time and then bang we had
1:33:33
the response time issues we were
1:33:35
looking at the logs we were trying to
1:33:37
go through everything and that's when we learned
1:33:40
about IELTS and
1:33:42
burstability like we didn't understand
1:33:45
we didn't know about any of this stuff so we
1:33:47
learned oh now we see
1:33:49
what's going on like our right IELTS
1:33:51
are like over what the database
1:33:54
can handle so we now
1:33:56
know we actually need to upgrade to this
1:33:58
plan whatever that plan was. Also,
1:34:01
the reason why it works for
1:34:03
a time and then fails is burstability.
1:34:05
It's basically giving you, you can go
1:34:07
this amount of time going over your
1:34:09
IOPS rate and then we're
1:34:11
going to say no. So that
1:34:13
was another, you know, so many
1:34:15
like learnings over the years of
1:34:17
like technical, like I said, sharding
1:34:19
with Elasticsearch, IOPS on the database,
1:34:21
like even just setting up Elasticsearch
1:34:23
and optimizing that. And
1:34:26
yeah, it's been a real amazing
1:34:28
technical journey for me. When I was at
1:34:30
Pivotal, you know, I always had my pair
1:34:33
and so I could always, there was always someone
1:34:35
and given I came straight from a boot camp, there
1:34:37
was always somebody who knew more than me sitting right
1:34:39
next to me. Or if they didn't
1:34:41
know more than me, they would, you know, kind of have a sense
1:34:43
of what to look for if we were stuck. And
1:34:46
a lot of this is just
1:34:48
like figuring out while
1:34:50
you're putting out the fire. So
1:34:53
yeah, there could be a whole other episode
1:34:55
on like technical fires
1:34:58
and learnings. Well, we might have to have you
1:35:00
come back at some point and tell us all
1:35:02
these stories because we didn't dive into the technical
1:35:04
very much at all. Go ahead. I
1:35:07
was going to say we're on the verge of something
1:35:09
that I'm scared of, but I'm less scared of now.
1:35:12
We're going to go for a distributed database because
1:35:14
we had all these issues at the beginning of this
1:35:16
year and we thought having a replica would be the
1:35:19
solution. But that's given
1:35:21
like the right heavy nature of the database
1:35:23
because essentially when we have a spike, it's
1:35:25
also a spike in Goodreads import. So
1:35:28
when we have 10,000 users on the app, there
1:35:30
are about 8,000 people that want to import their
1:35:32
Goodreads and we need to do that relatively quickly
1:35:34
while they're excited, while they're interested. How
1:35:36
long does the standard Goodreads import take? Are we
1:35:39
talking seconds, minutes? Minutes. But
1:35:42
we had people waiting for weeks this
1:35:44
January. Sure. Well, because you had a backup.
1:35:47
Yeah. And then all the 20,000,
1:35:49
I said to the world, wow, haven't seen these Q
1:35:51
numbers since June of 2020. And
1:35:54
are there API limits slowing you down there as
1:35:56
well? Like, can you hit Goodreads just as fast
1:35:58
as you can or they limit you? We
1:36:00
don't we don't touch good reads at all. We
1:36:02
don't touch good reads at all in-house stuff How
1:36:04
do you do your imports then? Okay,
1:36:20
I Want to know
1:36:22
how you're doing it? Will
1:36:24
you reveal it for our change like plus plus listeners
1:36:26
ears only? No Not
1:36:30
telling anyone this is yeah, tell anybody got a
1:36:32
lot of secret stuff. Okay. All
1:36:34
right It's mechanical Turk behind
1:36:37
the scenes making a phone call to good read
1:36:39
support acting as the user Hey,
1:36:47
I need my import list and you hung with that
1:36:49
please and they get emailed and I upload
1:36:51
it my name is Sally Yeah,
1:36:54
and I would like to export
1:36:56
I can talk about a decision I made early on
1:36:58
actually which was that I remember when I
1:37:00
started I never Used
1:37:03
good reads API because I always
1:37:05
said to myself if this thing gets big they
1:37:07
could just take away a pack So
1:37:10
from day one I said export your data
1:37:12
from good reads his set Give
1:37:15
me the CSV will sort it out and
1:37:17
I remember the beginning people were to complain
1:37:19
like say this is very funky All
1:37:22
the apps do it this way And
1:37:25
what happened two years ago you go good
1:37:27
we said we shine down our API now Well
1:37:30
smart that is how you do it to this day is CSV
1:37:33
import. Oh, yeah, we do is a CSV
1:37:35
that we're given. Yeah. Yeah, okay That
1:37:39
makes sense and then you
1:37:41
hold on to it for a few weeks and then eventually you do
1:37:43
something with it I Just
1:37:48
love it It
1:37:51
was just funny. I'm just messing with you.
1:37:53
I would love to have your problem I
1:37:55
mean you got serious problems like technical problems.
1:37:58
Let's not discount them. Those are You're the
1:38:00
fun ones. Like you are, it's baptism by
1:38:02
fire because you're having success and you're
1:38:04
having to learn and adjust and like
1:38:06
scramble. And a lot of us, you know,
1:38:08
we just put our stuff out in the
1:38:10
world and nobody ever uses it. And so we're just like,
1:38:13
we would love, we're just age topping, looking at our CPU
1:38:15
doing nothing. We're like, come on now. That's why I said
1:38:17
an enviable scenario, you know, even though at first you didn't
1:38:19
really necessarily want it because you were not
1:38:22
aligned, you thought, with your original
1:38:24
goals, but I mean,
1:38:26
you're having fun, right? Seems like you're
1:38:28
having fun. Overall I'm having the
1:38:31
best time. Like I love
1:38:33
my life. How amazing is this that I
1:38:35
had this idea, I had this little dream.
1:38:38
Do you remember when I said it wouldn't be, it
1:38:40
would be quite a stretch to say that
1:38:42
I never thought about a Guru's alternative in
1:38:45
those early like months. I
1:38:48
remember thinking, okay, I'm not building
1:38:50
Guru's alternative, but imagine if he did,
1:38:54
but we're not, we're not building it.
1:38:56
But we're not. We're not. I
1:38:58
have a little bit to say. So the
1:39:00
fact that we are now like the main
1:39:03
alternatives to goodreads, the team is so small,
1:39:05
especially me being like a bootcamp
1:39:07
grad, right? That's something else that
1:39:09
I always like to stress actually
1:39:11
because I'm a bootcamp grad. I
1:39:13
started coding when I was what, just graduated of
1:39:15
UD. So I was 21, 22. I
1:39:18
said wow, it's because I'm 32 now. So that's
1:39:20
like a decade. Yeah, you're
1:39:22
a senior dev. Yeah, that's wild. So, oh my
1:39:24
gosh, yeah, 24, 20, 13. I've
1:39:27
passed my 10 years of actually learning to code.
1:39:29
That's wild. Completely escaped
1:39:32
me. You've been
1:39:34
too busy. I've been too busy. I didn't
1:39:36
even realize I passed my 10 years of being
1:39:39
a dev anyway. You're a
1:39:41
senior dev for sure. Wow. So,
1:39:44
but I always like to stress that I'm a
1:39:46
bootcamp grad. My degree was
1:39:48
in philosophy, politics and economics. I
1:39:50
was going into banking. Like I'm not, I haven't been
1:39:53
coding since I was young. So
1:39:55
my point is like anybody can do
1:39:57
it. Like, you know what I mean? Like you
1:39:59
can, if. you want to do it, you
1:40:01
can do it. It
1:40:03
might take you a long time, but
1:40:06
you can do it. It is
1:40:08
possible. And you don't have to, you
1:40:10
could be listening to this and not even know how to code yet
1:40:13
and still end up building something in some years that. I
1:40:16
think you represent more than just you can do it as
1:40:18
a bootcamp graduate. I
1:40:21
think you represent that you can
1:40:23
accomplish an idea and
1:40:26
speak to real people and solve real
1:40:28
problems in scale and be profitable, not
1:40:30
just bootcamp graduate. I
1:40:33
think you represent way more than that. Yeah, I think
1:40:35
so too, but I think I don't want that piece
1:40:37
to be missed. Like it's not like I did computer
1:40:39
science. It's not like I always like, I hear that
1:40:41
too. There is a lot more that
1:40:43
I represent. I wanted
1:40:45
to add some major credits there that you
1:40:48
did not, even though. Thank you. I
1:40:50
think you're amazing. I think what you've done is awesome. I think
1:40:52
you're solving cool, like Jared said, you're solving cool problems. I
1:40:55
said it while we were all talking, but I said
1:40:58
some of us just H-top looking at our CPU doing
1:41:00
nothing and we're just like inventing problems so that we
1:41:02
can make it spike temporarily. Please
1:41:05
let me break it so I can fix it kind of
1:41:07
thing. And you actually have code
1:41:09
in the wild, you're solving problems and you're happy
1:41:11
doing it. And you're learning along the way. You're
1:41:15
in the journey that's the fun part. Don't
1:41:17
forget. Yes, thank you. One day
1:41:19
you'll look back and be like, those were the days. What
1:41:21
does your wife say, Jared? These are the days? These
1:41:24
are the days, that's right. These are the days,
1:41:26
big sound of that. These
1:41:28
are the days. And this is why I
1:41:30
always make sure to make sure
1:41:32
I'm enjoying myself both within work and outside of
1:41:34
work at the same time. So
1:41:36
lots of people say to me, oh, you must be
1:41:38
doing all night, it's all the time. You must be
1:41:40
this and I'm always like, actually,
1:41:42
no, I'm pretty strict with my sleep. And
1:41:45
I do, one of my main hobby apart
1:41:47
from reading is dance. I'm in dance class
1:41:49
a few times a week, having lunch with
1:41:51
friends. Sometimes I
1:41:54
think, am I working enough? Because
1:41:57
I'm enjoying myself. One
1:42:01
thing I do want to say is in those earliest days
1:42:04
when I was doing that customer research, I
1:42:07
told myself to be prepared to walk away. So
1:42:10
I told myself if this customer
1:42:12
read these interviews don't reveal that there
1:42:14
is something here, good reasons exist,
1:42:17
other apps exist, don't waste your time, be
1:42:20
prepared to walk away. And I
1:42:22
think that's very important. I just thought of it now when
1:42:24
you were talking about inventing problems. I said to myself, I
1:42:26
don't want to invent a problem where one doesn't exist because
1:42:28
then I end up eating up years of my runway and
1:42:30
having nothing to show for it at
1:42:32
the end beyond the nap that nobody uses. Yeah.
1:42:35
Well, if you're the most notable Goodreads alternative,
1:42:37
I think that you are definitely not inventing
1:42:40
the problem. Well, I
1:42:42
should go back to the beginning of the
1:42:44
conversation. I think that that pattern that I
1:42:46
put out at the beginning, I think is
1:42:49
actually a very good way of not inventing
1:42:51
problems. It's like seeing something that was wildly
1:42:53
successful, shut, slash loved, reached a point where
1:42:55
it did sell. Now
1:42:57
it's languished in the hands of a giant and
1:43:00
people don't like it anymore. I mean, there's more things
1:43:02
than just Goodreads that are like that. It's
1:43:05
a pretty rife place for innovation, I think. I
1:43:08
think that's a way of not doing something. You
1:43:10
know that people love that thing one time. And
1:43:13
so something like that that feels similar needs in a
1:43:16
unique way that's not languishing.
1:43:18
That's a good way of not just inventing
1:43:20
problems. Kind of just add… Yeah. Cool.
1:43:23
Nadia, this has been awesome. I think you should be there for
1:43:25
your book club, even though I don't read very much. But
1:43:28
I think you should definitely… Yeah, I think Oprah
1:43:30
needs to be disrupted at this point, right? She's
1:43:33
done her thing. Should I write it as storygraph or should
1:43:35
I write it as nadia? One storygraph. Which one should I
1:43:37
do? You're giving me all the advice. Do
1:43:40
you want to be successful and famous or just
1:43:42
successful? Because if you're just successful, do it as
1:43:44
storygraph. Well, some people don't want the fame. I
1:43:47
like the idea of being known of like,
1:43:49
oh, that's the sound that a storygraph, but
1:43:51
not in a way. I'm able
1:43:53
to go on the tube and go on the bus and nobody
1:43:55
talks to me. All right, do it
1:43:58
as storygraph and do it as storygraph. because
1:44:00
let me call them to you, hey, what books are you reading? You're
1:44:02
like, oh no, I've created a monster. I'll
1:44:04
be like this with my book. Yeah. Wearing
1:44:08
a beard. Yeah.
1:44:12
This is the skies all the time. Right.
1:44:14
If you don't want that, then maybe just do it a story
1:44:16
graph. Because I have actually thought
1:44:18
about running my own book club, because running
1:44:20
the read-along was fun, but I might just
1:44:22
do that, keep running the read-alongs on story
1:44:24
graph. Everyone should look forward to like, wow,
1:44:26
every other month story graph does a read-along,
1:44:28
it's run by the founder, but you know
1:44:30
what I mean? But I might
1:44:32
just do that instead. And then I don't have, if
1:44:34
I miss a month, or even though I never, I'm
1:44:36
always like, once I start something, I'm like, has to
1:44:38
be every week, every other month.
1:44:41
But you could also eventually replace yourself with somebody who
1:44:43
is good at it, and it could still be the
1:44:45
story graph read-along, you know? You think I'm not
1:44:47
good at it? No, somebody else who is good at
1:44:50
it. Oh, okay. I thought
1:44:52
you were saying someone who is actually good at
1:44:54
it, not just G-factor running it. No,
1:44:56
you're, no, no, no, no. I'm saying
1:44:58
by then you built it into something.
1:45:00
Yeah, somebody else, well, I added that,
1:45:02
because of course, as the person who
1:45:04
created it, you might think, you
1:45:06
know, I have a problem like this, like nobody else can do it, like I
1:45:08
had to do it. But then there's other people
1:45:11
like, they can read and talk about a book too. But
1:45:14
not like you can, I mean, it won't be the same. Yeah,
1:45:16
no, you're like, let me make it better. You're
1:45:19
not like you can, there's no one like you. I'm digging out,
1:45:21
I'm digging out. You
1:45:23
haven't seen me run one, so you don't know whether
1:45:26
I'm good or not. It's true. One
1:45:29
day. Time will sell. I think you'll enjoy the read it all.
1:45:31
I'll have a be there for the first one, yeah, for sure.
1:45:34
That's like the conference too, I mean, there's an
1:45:36
opportunity there too, where you can like collect people
1:45:38
with, not just a book club, but then
1:45:40
now you go on the road and meet people
1:45:42
that read the same book, and gatherings, story
1:45:45
graph gatherings. You know what I mean, like there's so
1:45:47
much, because I mean,
1:45:49
if you're optimizing for deep enjoyment
1:45:51
and community, you
1:45:53
kind of will get famous along the way
1:45:55
naturally, just because as your friend group grows,
1:45:57
so does your fiend grow, right? But
1:46:00
if that's something, I mean, that's an angle that
1:46:02
good reason is definitely not doing, right? They're not
1:46:04
meeting people, right? They're just like providing software. Honestly,
1:46:07
that's what they are doing. Since we started
1:46:09
it, we've only seen them announce that they're
1:46:11
taking away features. And there
1:46:13
are some things that I do wonder why
1:46:15
they haven't like added them because they, you
1:46:17
know, people want them. And I guess the
1:46:20
only thing I can think of is that
1:46:22
the tech debt is that bad? That
1:46:24
it's really hard to add new features at
1:46:26
this point? Possibly. It's,
1:46:28
I mean, it could be just a symptom too
1:46:31
that somebody really is in charge. There's like no
1:46:33
one's really in charge of the product. And so
1:46:35
it's just like just keep it alive and
1:46:38
maybe kill some things along the way and
1:46:40
cut some costs. Yeah, the original founder of
1:46:42
Goodreads finally stepped down. I
1:46:45
say finally in that most founders don't last that
1:46:47
long, I think, after an acquisition. So
1:46:49
he stepped down in 2020, it was
1:46:52
like 2020 or 2021 and he was
1:46:54
replaced because they have a CEO of
1:46:56
Goodreads. And this woman
1:46:58
replaced him and I thought, oh,
1:47:00
maybe that like there's someone fresh in,
1:47:03
maybe now they're going to, we're going to
1:47:05
start seeing some changes, but literally nothing yet.
1:47:10
I would be so motivated if I
1:47:12
were you based on this information. Like
1:47:14
I've not dug into like Goodreads and
1:47:16
their pulse, so to speak. I would be
1:47:18
so motivated because you've got a Goliath asleep
1:47:20
at the wheel and you're on fire, right?
1:47:23
Great place to be in. You got some
1:47:25
smooth stones. You can just knock that Goliath
1:47:28
out. That's right. Honestly, I don't reshare anything
1:47:31
where people are, you know,
1:47:33
very anti Goodreads or
1:47:35
Amazon or Jeff. That's not
1:47:37
the strategy I have. It's always very positive. So
1:47:41
I also don't like when I know
1:47:44
that people mean well, but I don't
1:47:46
like it where supporters of us will
1:47:49
comment on other people's posts and
1:47:52
they'll say things like, Oh, Goodreads,
1:47:54
you should be using Storygraph and I hate it
1:47:56
because I'm like, no, you're introducing our product to
1:47:58
this person in a very negative way. his fashion.
1:48:01
And this person was just celebrating that they meet
1:48:03
their goodreads goal, like it's meant to be celebrated.
1:48:06
You know, do you know what I mean? Like,
1:48:08
so I stuff like that. So I never expect
1:48:10
anyone any of my friends anyone in my life to
1:48:12
use Storygraph I never asked them to I never tell
1:48:15
them to, it would just be if
1:48:17
anything like a like a joke like we
1:48:19
just had now. But yeah,
1:48:21
it's funny because I do have like, you know, if
1:48:23
I've been on dates with someone or whatever, and they'll
1:48:25
say, Oh, I use goodreads. This is not me. And
1:48:27
I'm like, No, I don't care. You use what
1:48:29
you like. No, no, it was also just a
1:48:31
joke for real, because I was going to pull my the
1:48:33
next best thing to goodreads. I suppose I said, if
1:48:36
I'm putting out a list is my audible list, because
1:48:38
I'm more of an audible listener than a book reader.
1:48:40
And my list scrolls
1:48:42
for a very long time. And I also
1:48:45
have literally every one of
1:48:47
their badges. Wow. Except for
1:48:49
two, I'm only missing the bottom
1:48:51
two. Mount
1:48:55
Everest. Well, that means
1:48:57
that this epic award is given away when you
1:48:59
listen to something as long as a day. So
1:49:02
I have to listen to a book that's 24 hours. I
1:49:04
just finished one that's 24 hours. Listen, you've
1:49:07
got Everest, if you're on audible. No,
1:49:09
no, I actually never was because
1:49:11
I only started listening to audiobooks 2021. And
1:49:13
a big driver was, oh, I need to
1:49:15
connect with all the audio listeners, because I
1:49:18
don't really understand their pain points. And now
1:49:20
I do. The watchtower one says it
1:49:22
says look at your stats, attention must be paid,
1:49:24
do it a lot and you're well on your
1:49:26
way. So if I look at
1:49:29
my stats often, which it does tell me
1:49:31
like listening time daily, monthly
1:49:33
total. I guess
1:49:36
I've listened to three
1:49:38
months, 28 days and 46 minutes
1:49:40
worth of books. Okay. I
1:49:43
don't know. I'm a master listener level.
1:49:45
Like I got I got them all like I'm all I'm
1:49:47
all the way up there. Like I'm a
1:49:50
master according to audible and
1:49:52
I have all the badges. That's kind of
1:49:54
fun. But you haven't told me see what he
1:49:57
did there. He was like, look at all my amazing
1:49:59
audible stats. He still don't tell us
1:50:02
the type of books he listens to. Well,
1:50:04
I was saving it for Plus Plus. Show's
1:50:06
over, bye everybody. Bye. Bye.
1:50:14
Oh my gosh, what a cliffhanger to
1:50:16
leave you on. I'm sorry
1:50:19
about that. If you're not a
1:50:21
Plus Plus subscriber, you can change
1:50:23
that right now. changelog.com/Plus Plus. It's
1:50:25
better. Oh my gosh, it is better.
1:50:28
Cause you're gonna hear about the books I like to
1:50:30
read and trust me, you're gonna wanna read them. And
1:50:33
I would gladly tell you in Slack
1:50:35
or something like that too. It's not a secret, but
1:50:37
wow. Just to hear us talk about some of these
1:50:39
things here in audio, what a treat. So 10 bucks
1:50:41
a month, 100 bucks a year,
1:50:44
drop the ads, get awesome
1:50:46
bonus content and exclusive content.
1:50:48
Directly support us and get closer
1:50:50
to that cool ChangeLog medal. ChangeLog
1:50:53
Plus Plus. It is better.
1:50:56
Okay, enough with the hard sell, Adam.
1:50:58
That's over. The end of the show
1:51:00
is here, but what's coming up is
1:51:02
a lot of great content. This
1:51:05
Friday on ChangeLog, good friends,
1:51:07
we have a epic lengthy
1:51:09
show from our trip to
1:51:11
That Conference. Yes, That Conference.
1:51:14
You can learn more at thatconference.com. It
1:51:16
was such a blast going to That
1:51:18
Conference. Seriously, the red carpet was everywhere.
1:51:20
They did such a great job. And
1:51:22
next week, Jared and I are talking
1:51:24
to OSI Executive Director Stefano Maffoli about
1:51:26
the definition for open source AI. It's
1:51:29
gonna be awesome. And a reminder,
1:51:32
Ship It is back. Well, it's
1:51:34
officially recording again. We haven't shipped
1:51:36
a Ship It episode, but that's
1:51:39
coming soon. Subscribe at
1:51:41
shipit.show. And
1:51:43
I wanna remind you because I love people
1:51:45
hanging out with us in Slack. We have
1:51:48
a lot of vibrant subchannels in our Slack.
1:51:50
It is free and everyone is welcome. changelog.com/community.
1:51:54
Okay, big thank you to
1:51:56
our friends and our partners
1:51:58
at Fly, TypeSense. and Sentry,
1:52:01
start an app for free at
1:52:03
fly.io, get
1:52:05
blazing fast in-memory search from our friends
1:52:07
over at typesense.org, and use our code
1:52:10
changelog to get 100 bucks off Sentry's
1:52:12
team plan. You can do that right
1:52:14
now, sentry.io. Oh my
1:52:16
gosh, how did I forget this? We launched
1:52:18
a new album, Dance Party.
1:52:21
It's on Spotify, I
1:52:23
think it may be on iTunes, we had a little bit of a delay
1:52:25
there. It's also
1:52:27
at changelog.com/beats. You
1:52:29
can find all of our beats there, as a matter of fact. I
1:52:31
dare you, I dare you, I double-dog dare
1:52:33
you to try not to dance when you
1:52:35
listen to this. It's epic. BMC,
1:52:38
we love you, thank you so much for all
1:52:40
those awesome beats. Okay, this
1:52:42
show is officially done. We'll
1:52:45
see you on Friday.
Podchaser is the ultimate destination for podcast data, search, and discovery. Learn More