Episode Transcript
Transcripts are displayed as originally observed. Some content, including advertisements may have changed.
Use Ctrl + F to search
2:00
rule on the fly that they didn't even
2:02
bother to document that is the
2:04
app needs to do something when you download it.
2:07
That is, you can't just have an app
2:09
that has a login screen when you download
2:11
it. And that was
2:13
basically sort of their way out of the embarrassment,
2:15
I suppose. And we said, like, okay, fine. We're
2:18
not going to arm wrestle Apple
2:20
to the ground. On all the points, here's
2:23
an opening where we can get our Hey Email
2:25
app into the store without paying the 30%. So
2:28
we took it. And then after
2:30
that, Apple amended the App Store guidelines in
2:32
all sorts of ways. Most
2:34
specifically, they carved out these
2:36
free companion apps from having
2:38
to use in-app payment. This
2:40
was essentially sort of the
2:42
victory we got out of round one. There's
2:45
a whole slew of exceptions in the App
2:48
Store guidelines as who has to use the
2:50
in-app payment system, who can get around it.
2:53
This is why you see applications like
2:55
Netflix, for example, you download Netflix, you
2:57
can't do anything. You have
2:59
to have a Netflix account that you
3:01
bought on netflix.com or on another device
3:03
or service that doesn't have these restrictions.
3:05
And then you can log in. It's
3:08
also how stuff like Salesforce work. There's
3:11
a million of these kinds of apps that require
3:13
you to have a pre-existing account and then log
3:16
in. And that's
3:18
what that carve out, the free
3:20
companion app carve out was supposed
3:22
to give us. It was supposed
3:24
to give us security in knowing
3:26
if you have a service that
3:28
isn't app first, that exists outside
3:30
of the universe that Apple has
3:32
created, and you manage to
3:34
sign up customers on your own outside of
3:36
the App Store, you can put your free
3:38
apps in the App Store and people can
3:40
use those to access your service. It's
3:44
called the 313F rule
3:47
and it's about free companion apps. And
3:49
it lives there, Apple has this other
3:51
exemption for what they call reader apps.
3:53
This is what Netflix and these other
3:56
streaming apps fall under. Reader
3:58
apps will extend certain types of interest.
4:00
enterprise apps are exempt certain
4:02
type of multi-platform apps.
4:05
It's very complicated. And
4:07
this is the weirdness of this setup.
4:10
Apple went through the trouble of specifying, I
4:12
think, like 12 amendments
4:15
or something to who has to pay for the in-app
4:17
service. There are all these exemptions like, this app doesn't
4:19
have to pay, they do this thing and they stand
4:21
on top of their head and they stick out their
4:23
tongue, then they get in. You
4:27
then think that those guidelines would actually govern
4:29
Apple's behavior when it comes to these apps.
4:31
They would actually follow the guidelines and if
4:33
you clearly fall into one of these categories,
4:35
if you are streaming app like Netflix, they're
4:37
not going to shake you down if
4:40
you live up to that. That's what we
4:42
saw. When we submitted the Hey Calendar app,
4:44
we did a thorough review of the App Store
4:47
guidelines. We went through every point, let's make sure
4:49
we're not in violation here, let's make sure we're
4:51
not in violation there, let's make sure we follow
4:53
this letter of the law. Exactly
4:55
because we just went through this like three
4:57
years ago and we're like, do you know
4:59
what? No, don't want to do that again.
5:03
Which is funny as an aside, there's some
5:05
people who are like, oh, you planned all
5:07
this, you set Apple up and then you
5:09
made this amazing marketing campaign by goading Apple
5:12
into rejecting you like, what? What? First
5:15
of all, what 4D chess
5:17
strategic vision do you think we have
5:20
here that we can just like maneuver
5:22
the largest most valuable company in the
5:24
world to just play our little tune?
5:26
I mean, that would be amazing. If
5:29
we had like little puppeteers springs here and
5:31
we could just like fill Schiller reject the
5:33
app once but not twice, only for two
5:36
days, it doesn't hurt us too much like,
5:39
what? What are you? What
5:41
do you want about? That's just not how this works. We
5:43
absolutely read those guidelines to
5:45
make sure that we were not going
5:47
to run the risk again of angering
5:50
Apple as it is because listen, 85% of
5:53
the people who use our hay bad
8:00
news, says that they don't have to
8:02
put anything in writing preferably, says that
8:04
they're not accumulating evidence to the inevitable
8:06
lawsuits that will follow from this. But
8:08
anyway, Bill calls us and says, like,
8:10
you know what, it took
8:14
three weeks, more or less, for us
8:16
to review all this stuff because it
8:18
actually went all the way up to
8:20
the app review board, which is this
8:22
mysterious Illuminati board that no one knows
8:24
who's exactly on, but apparently has final
8:26
authority to control who gets to be
8:28
in the app store and who doesn't.
8:31
This was not a low-level mistake. Apple
8:33
took their sweet time, they took weeks of
8:35
deliberation to arrive at the verdict that you
8:37
can't be in the app unless you, as
8:39
he said, he gave us two options here.
8:42
Either you just pay us, just
8:46
give us the money, just give us the 30% if you
8:48
start doing in-app payments, we'll let you in.
8:52
What? We'll give us a second, and here it comes again. The
8:56
rule we just made up and never committed
8:58
to the guidelines, we're just going
9:00
to pull that back again. You have to do
9:02
something. You can't just have an app that has
9:04
a login wall without
9:06
letting customers try it. And we were
9:08
like, again,
9:10
what? You had three years since
9:13
you made up this rule last time to
9:15
put it into the guidelines so that people
9:17
like us would actually have some clarity as
9:19
to what does it take to get approved.
9:23
If we had known up front that
9:25
you had to have a spurious demo
9:27
mode again still after these years,
9:29
we would just have put that in. You
9:31
could have saved all this aggravation, you could have saved all
9:33
this to do it. I still think it
9:36
would be intolerable if that existed, but at least
9:38
we'd know where Apple stands, which is really what
9:40
gets me so fired up here, is that
9:42
Apple pretends, gives the pretext as
9:44
though their app store review process
9:47
is governed by something resembling
9:49
laws, that there's a rule of law, that you
9:51
can look up what it takes to get approved,
9:53
and if you do the things Apple will tell
9:55
you to, you will get in. And no, that
9:57
is not true at all. The process is entirely
10:00
complete. capricious. There's a thick
10:02
leave of guidelines that
10:04
you can look at and try to read the tea
10:06
leaves and what it takes to get in, but it
10:08
doesn't actually govern what gets in and what doesn't get
10:10
in. So we
10:12
end up in this situation where they come out with this bullshit again and
10:15
we go like, okay, here we go
10:17
again. First of all, all
10:19
this stuff is going on, right? We
10:21
get the initial rejection
10:24
just from Bill who calls
10:26
us right in the morning, then they
10:29
wait the whole day until end of
10:31
business Friday and I think like five
10:33
minutes to five, they send us the
10:35
official written rejection and we go like,
10:38
yeah, Apple, okay, this is how you're trying
10:40
to bury this once more. You're just gonna
10:43
get like a hide it in under the
10:45
weekend and we're like, okay, whatever.
10:48
Yes, you have all the power. You can
10:50
absolutely make a stance and we will dance.
10:52
So dance we did through the weekend to
10:54
come up with this, it has to do
10:56
something bullshit where we was inspired
11:00
by a physical
11:02
calendar that someone made to
11:05
record the history of Apple and
11:07
we thought like, you know what, that's a good idea. So
11:10
we did our own research. We
11:12
didn't use anything from that actual calendar, just the
11:14
idea that, hey, you know what, there are people
11:16
who care about Apple's history. I care about Apple's
11:18
history. Apple's history is in part my history when
11:20
it comes to computers. I've been using Apple for
11:22
what is gonna be now, 23 years. I was
11:24
an extremely
11:27
enthusiastic evangelist for
11:30
Apple and
11:32
has been basically ever since I converted.
11:35
I don't know how many people back
11:37
in the early Ruby on Rails days
11:39
who saw me using TextMate, the editor
11:41
on a MacBook and they switched from
11:43
Windows. I remember when I was in
11:46
college, I basically converted half my class
11:48
to Apple. We're all using
11:50
PCs and here I come with my white
11:52
clamshell iBook and
11:54
people are like, what kind of computer is that? And I
11:56
think the prices of Apple because I like the stuff they
11:58
make. So Apple's history
12:01
is important to me. It's important to us. It's
12:03
important to a lot of people. So we put
12:05
that in We basically a little
12:07
cheeky. All right fair. We made it a little cheeky
12:09
that you could either log in This is what we
12:11
want people to do We want people to go to
12:13
hey calm buy a subscription then download the app and
12:15
lock in but all right It has to do something
12:18
So there's a little link at the bottom if you
12:20
don't have an account you can see Apple's history if
12:22
you click that You get to see our calendar how
12:24
it works how to detail pages work. It's gorgeous And
12:27
you see Apple's history in there and
12:29
that's what we submitted yesterday
12:33
Right bright early Monday morning the team had worked
12:35
through the weekend we get that in It
12:39
goes into review almost right away. I think
12:41
like within 40 minutes or something the little
12:43
status change Takes in
12:45
and says in review and then
12:47
this morning. It's finally approved now Was
12:50
it approved because the goodness of apples hardened because
12:52
we just put that in there and they were
12:54
like yep you Complied
12:56
with the guidelines we had on our head
12:59
And that was exactly what we did. No, of course it
13:01
didn't it went through in large
13:04
part because we are loud and obnoxious
13:07
Wasps and if you stick your
13:10
goddamn paw Into
13:12
our high we will sting and
13:15
we tried to do the best thing we
13:17
can again We're small independent software maker,
13:19
right? Like we don't we don't
13:21
have lobbyists We don't have a bunch of people
13:23
we could sort of pull around and maneuver So
13:25
we got to just shout which through all the
13:27
channels we got and shout we did and
13:30
I think this was done you think Apple
13:32
would have perhaps like Remembered
13:35
the stings they got back in 2020 When
13:37
they were also adamant that we were just gonna be dead and
13:39
we were gonna get kicked out of the after so unless we
13:41
paid The 30% and lo and behold
13:44
after a few weeks of
13:46
just a torrent of bad press They
13:49
relented and they came up with a new rule
13:51
basically just for us and thankfully also other people
13:53
who fall into the same Category and
13:56
now we've done the same thing again Grouper
13:59
on daring fire. The ball just remarked on
14:01
this this morning or yesterday. Y.
14:04
Y. Y you doing this?
14:07
First. Of all isn't be doing this to anyone. You.
14:09
Should have clear guidelines. The guidelines should
14:11
be fair and they should be applied
14:14
equally to everyone. See kid lead in
14:16
a bunch of high flying apps like
14:18
Netflix or Salesforce or whatever that sister
14:20
logged in screens and they aim to
14:22
a bunch of smaller and smaller make
14:25
is no you can't do that because
14:27
off reasons I only have recorded inside
14:29
my head that says. That. That's
14:31
going to a lot of people the
14:33
wrong way, including lawmakers, including regulators, including
14:35
developers who just go like, okay, I'm
14:37
Apple's You've done a lot of good
14:40
things. This is, by the way, really
14:42
important to stress here. I don't hate
14:44
Apple. Of we. Don't hate Apple. I
14:47
am on an Apple right now. I'd
14:49
use apple stuff all the time. I
14:51
think apple makes really good stuff. They.
14:53
Make really good computers, They make really
14:55
good phones and that's why it's so
14:58
extra frustrating that you doing this to
15:00
which should be your biggest fear is.
15:02
Who. Are in many ways your biggest fear is
15:04
not just us by the way, but your customers.
15:07
We. Have all these customers. As I said
15:09
with since the thousands of customers on hit
15:11
eighty five percent of the music of Apple
15:14
devices, So when Apple try to get at
15:16
us. Begin. At their own customers,
15:18
they deny their own customers access to use
15:20
the software they want to use. When you
15:23
buy a thousand dollar phone. He
15:25
should be able to use the headcount if you want.
15:27
It can be up to apple as whether you can
15:30
use as a cow there are use Apple's calendar or
15:32
use Google calendar that simply up to the consumer because
15:34
it we should be able to say i want to
15:36
pay. One hundred dollars a year
15:39
to get amazing email encounter from our
15:41
from this crew. Over thirty Some signals.
15:44
And then just like be allowed to use
15:46
the computer that they bought in their pocket
15:48
to do whatever. They. want that's
15:50
not the world we're living in right
15:52
now but fortunately maybe it will be
15:55
soon i mean this is the irony
15:57
of of the time and again speech
15:59
years later Last time the
16:01
timing was really bad for Apple because they
16:03
had the WWDC, the Worldwide Developer Conference, coming
16:05
up at exactly the same time. They had
16:07
all this spotlight on them and
16:09
they want to go out at WWDC and say,
16:12
look, developers, we're really great to work with and
16:14
you should build for the Apple platform. And then
16:16
here there's this case that Davey says,
16:18
you're horrible to developers and if you misstep the
16:20
guidelines we have in our heads, we will squash
16:22
you. Didn't
16:24
really square. That was an out
16:27
of tune melody. Here we have now
16:29
again the
16:32
Department of Justice in the United States is,
16:34
according to a report that the New York
16:36
Times put out what, Friday last
16:38
week, about to launch a major
16:41
antitrust lawsuit against Apple
16:44
on all of these issues. All right, so
16:46
that's hanging there. In two months, I
16:48
believe it's in March or early April,
16:50
the Digital Markets Act kicks in in
16:53
the EU. This is the act
16:55
that basically bans Apple from using
16:57
this tying that they can't force developers to
16:59
use their in-app payments. It
17:02
makes Apple and Google and other systemic
17:05
gatekeepers or whatever they call it
17:07
have alternate ways of installing software
17:10
that they have to allow other
17:12
app stores. If Epic
17:14
Games want to have an app store, a game store
17:16
perhaps, they should be allowed to do so. Microsoft
17:19
want to have a game store, they should be allowed to do so. Side
17:22
loading, which side loading is such
17:24
a funny term by the way. It sounds like
17:26
kind of sneaky. It sounds like side alley. It
17:29
sounds like something like you have to do in a trench coat, when
17:32
in reality it just means you can install
17:34
whatever software you want, just like the Mac.
17:37
On the Mac, you can download software from the internet
17:39
that doesn't go through Apple and you can install that.
17:42
The timing is just really strange. It
17:44
doesn't seem like Apple was going to gain anything. Apple
17:47
did not gain anything except tremendously
17:49
bad press. I think two million
17:51
people saw that original tweet thread
17:53
I put out. And
17:56
you're like, again, why? Apple,
17:58
let's... Let's just get over
18:00
this bullshit. Okay,
18:02
David, I'm going to let you dispel a myth
18:04
that I saw online, which is that the app
18:07
was rejected because of a login issue? Like
18:09
the person reviewing it didn't have correct login
18:12
information? Tell us about that. Yes. Where
18:15
did that come from? I mean, it
18:17
comes from a deep-seated belief among some
18:19
developers that Apple is actually really right.
18:22
That their livelihood perhaps depends on Apple. They
18:24
love Apple. So
18:26
they can't see Apple being this bully that
18:28
they actually are. So they come up with
18:30
all these reasons for why actually it's your
18:32
fault that Apple is kicking you in the
18:34
teeth. And one of those explanations that
18:36
came up was like, oh, it doesn't do anything. Yeah, of
18:39
course. Like the reviewer has to be able to use the
18:41
app. Yeah, well, duh. We've
18:43
been using this process for literally a
18:45
decade. The Basecamp app is
18:47
a login wall. It has been so for
18:49
over a decade. Whenever we submit a new
18:52
build, we supply login credentials to
18:54
that reviewer. Because this
18:56
is a server-side powered system, we can see
18:58
whether the reviewer logs in. We could see
19:00
the reviewer logged in. We could see that
19:02
they tried the app and actually gave it
19:04
a fair shake. So that wasn't
19:06
it. Some of the other kind
19:09
of calls to this, again, have been along
19:11
the same lines where people are so invested,
19:15
I guess, in the narrative that
19:17
like Apple, I'm on team Apple.
19:19
Like I'm an Apple fan. I'm
19:21
an Apple person. Therefore, it's very
19:23
intellectually painful if Apple does something
19:25
that just objectively seems objectionable. And
19:28
then they come up with this stuff. But it
19:30
just wasn't the case. We did all our
19:32
homework. This is not our first rodeo. First
19:35
of all, we've been publishing in the app store for
19:37
over a decade. We have a lot of apps that's
19:39
gone in there without any trouble at all. We just
19:42
went through this whole debacle three years ago.
19:44
We did all our homework and double-checked it
19:46
before we submit it. Okay. Another
19:49
thing I wanted to bring up, you
19:51
mentioned that we got the second rejection
19:53
Friday, late Friday, and the team
19:56
worked over the weekend and got something else
19:58
out on Monday working over the weekend. We saw
20:00
a lot of comments on Twitter about
20:02
people not thinking that was 37 Signals Way.
20:04
Tell me your thoughts about that. Yeah.
20:07
So we have a book from 2018 called It Doesn't
20:09
Have to Be Crazy at Work. And even just the
20:11
title there is just so delicious for something like Twitter
20:13
or X, right? You just go like, gotcha! I
20:16
gotcha! Like all this stuff
20:18
you made, like it's all invalid because
20:20
some people worked over the weekend. Now,
20:23
I actually went through to read
20:25
the chapter that addresses this in the book yesterday
20:27
because I was like, what
20:30
do we actually say? And what we say is if
20:33
you're constantly pushing the envelope, running it
20:35
to the max, working 80-hour weeks, working
20:37
through the weekends, there's something wrong in
20:39
your business. And 100% that's
20:42
true. What we also say is
20:45
that occasionally, rarely, there
20:47
will be a crisis that you
20:49
should show up to fix. If
20:53
our servers are offline on
20:55
a freaking – if our servers are offline
20:58
Christmas Eve, if
21:00
they're offline Thanksgiving dinner,
21:02
you can rest assured that there will
21:05
be people from 37 Signals working to
21:07
fix that problem. Now, this wasn't Christmas
21:09
Eve, this wasn't Thanksgiving dinner, but this
21:12
was akin to an outage. Our
21:15
hay users who have gotten access to the hay
21:17
calendar, which by the way, we haven't called out
21:19
fully to everyone, we're rushing through to get through
21:22
that this week. But the people who did have
21:24
access and started using the
21:26
calendar for them not to be able to
21:28
use the calendar on their phone is
21:31
a kind of outage. Now, it's
21:33
not the same outage that is if our
21:35
servers are offline, but it is a kind
21:38
of inaccessibility to our servers against the expectations
21:40
you would have as a customer of hay.
21:43
So we got a
21:45
team together, we asked
21:47
them to put in extra, and
21:50
they put in a weekend's worth of work to
21:52
get us through this, which by the way, validated
21:55
instantly right after, given the fact we were
21:57
able to submit Monday morning and now the
21:59
app is open. is actually in the store.
22:01
So should this be
22:04
the normal mode of operation? Should every
22:06
weekend be something you plow through when
22:08
just like because you want to know?
22:10
Sometimes external factors are imposed upon you
22:12
and you should react to those things.
22:14
So I think you can
22:17
also get so precious in your sense that
22:19
like no one should ever
22:21
work a day long if there's a problem,
22:23
no one should ever show up for a
22:26
weekend if things are on fire. What?
22:30
You think normal people never work a
22:32
weekend? You think normal people never work
22:34
like a day extra at something that
22:36
that warrants it? Of course they do
22:38
all the time. This is this kind
22:40
of pressure overly precious bullshit that people
22:42
who make hundreds of thousands of dollars
22:44
a year can lull their little brains
22:46
into believing is actually right and just
22:48
that like no everything is invalid if
22:51
you make people work over the weekend.
22:53
So yeah
22:56
it was good. Sometimes it's a
22:58
crisis. You should show up for the crisis. You should fix
23:00
the crisis and they should make sure you don't have a
23:02
crisis all the time. Now thankfully perhaps
23:04
we don't come up with new products every
23:06
five seconds and try to get those into
23:09
the app stores. We've been working on the
23:11
hay calendar for a year. These
23:13
are people working a weekend
23:16
to see the fruits of all
23:18
of that. That year worth of
23:20
effort actually come to fruition. Do
23:22
you know what's more frustrating than
23:24
working a year and feeling tired?
23:26
It's to see that that year
23:28
was for nothing at least
23:30
yet. To see that you can't get
23:32
the satisfaction of something you built into the hands
23:34
of customers who have you built it for. So
23:38
we will absolutely show up to fight for that
23:40
to put the stuff that we've built the satisfaction
23:42
there is intellectually and business wise to get products
23:44
that we've made into the hands of customers we
23:46
intended them for. Okay and
23:48
last question before we wrap out. You mentioned new
23:51
products obviously the hay calendar is coming out and
23:53
we're working on a new product under the once
23:55
umbrella and I understand that that once product won't
23:57
have these app stores shenanigans.
24:00
Is that a true story? It
24:02
is. With once.com, we're planning this
24:04
whole sweet series of products. We're
24:06
almost ready with the first one. We've actually already
24:09
started the beta testing last year on it, but
24:11
then kind of got a little distracted here for
24:13
a second, dealing with
24:15
these App Store shenanigans. But
24:19
there, we're going to route around it. We're going
24:21
to route around it. There's something called Progressive Web
24:23
Applications, which is a terrible
24:25
moniker. It's abbreviated PWA, which sounds
24:27
like a freaking insurgency group in
24:30
Nicaragua or something. But
24:33
PWA is a suite of technologies
24:35
that allow you to create essentially
24:37
what feels like native applications that
24:39
you can install on your phones,
24:42
where you can get push notifications and
24:45
all these other things without going through
24:47
the App Store bureaucrats, without risking your
24:50
life or business or stress levels
24:52
to that approval process. And
24:54
that's what we're going to pursue with the once.com stuff.
24:57
It's not 100% there. Let's
25:00
not kid anyone, least of all ourselves. The
25:03
kind of fidelity, UI fidelity
25:05
that you can achieve with native
25:07
applications is still higher. We don't
25:09
have any plans of not
25:12
doing native apps for Basecamp, not doing native
25:14
apps for Hey. I don't think the technology
25:16
is quite there yet for those kinds of
25:18
apps. But there are other kinds
25:20
of applications where it is
25:23
there. Where the bar is good enough, where
25:25
we can then push the envelope
25:27
on what's possible with these PWA
25:29
technologies. We can show people, hopefully,
25:31
that there's a whole series, classes
25:33
of applications that don't need the
25:35
App Store, that don't need the
25:37
applications. And in fact, it
25:39
can be much better for
25:42
consumers, especially if you install applications like
25:44
once.com is all about. You run these
25:46
applications yourself. We don't have the data.
25:49
We don't run it through our services.
25:51
So the fact that PWA technology,
25:54
for example, can allow a company
25:57
in Europe to be in full compliance
25:59
with the GDA, by
26:01
sending their own push notifications with perhaps
26:03
sensitive data straight from their servers to
26:06
the recipient not going through our company
26:09
is a real win. So super excited about
26:11
that. It was it
26:14
is a little funny that we have these two products
26:16
at the same time we'd be pushing at them because
26:18
we're bigger company now than we were we're far more
26:20
capable company than we were but we
26:23
have had to distract a little bit of the
26:25
attention here to the hey calendar launch but we'll
26:27
get back to once in about five seconds. Well,
26:30
there'll be more to come on that soon
26:32
for now We're gonna wrap it up. Rework
26:34
is a production 37 signals You can find
26:36
show notes and transcripts on our website at
26:38
37signals.com/podcast Full video episodes are on YouTube
26:41
and Twitter and if you have a question for Jason
26:43
or David about a better way to work and Run
26:45
your business or app store
26:47
shenanigans Leave us a voicemail at 708-628-7850
26:51
You can also text that number or you can send
26:53
us an email to rework at 37signals.com You
Podchaser is the ultimate destination for podcast data, search, and discovery. Learn More