Yetizen (https://www.linkedin.com/company/yetizen/about/) was a gaming incubator that existed in San Francisco, roughly between 2011 and 2015. I thought it was an interesting experiment, and was happy to give a series of talks there, and advise the portfolio companies.
This talk, from 2012, is an intro to "How to think about Vendor Management" -- most gaming startups rely on dozens of vendors, but don't really know what's involved. At the end of the day, if your game relies on a third-party service, it's important to ask the right questions, and it's very important to have a contract in place that has specific representations and specific liabilities in the case of breach.
5. People Like to Be Social
• If you build chat, people will use it
• If you build voice communications, people will
use it
• If you build places for people to hangout
together, they will use them
• Not entirely a positive thing
– Done well, game is stickier
– Done badly, you look bad
– Easy for people to get sidetracked
– High visibility
7. People Remember Bad Things More
Than Good Things
• “You land a million planes
safely, then you have one
little mid-air and you never
hear the end of it ...”
8. Good Service Matters
• Even if the question
is stupid, be polite
• Even if it’s not your
fault, be polite
• Even if you’ve been
having a bad day, be
polite
9. Giving People Free Stuff Makes them
Happier
• One of the first things
people do is move their
wallet and entitlement
management to the
cloud
– Lots of reasons for doing
this
• When a pissed off
customer calls or writes?
Give them some a big
bag of currency.
11. Let’s talk about ….
Vendors who give you cloud-
based APIs to deliver
services.
12. Actively Use Vendors
• Life is short
• Time to market matters
• You’re building a game;
focus on the gameplay
• Vendors are the way you
share development costs
with your competitors
– For the stuff you don’t
want to compete on
13. Vendors Lie
• Vendors are (mostly)
reliable.
• But they don't have
your best interests in
mind
– And the guy on the
phone will
(sometimes subtly)
misinform you
14. Keep Vendors Out of the Game Loop
• Local caches
• Messages in
background threads
• If the service fails,
the game shouldn’t
– And it shouldn’t slow
down
15. The Mythical 4 Hour Integration
• Vendors rarely tell the truth about time to
integrate
• “It takes 4 to 8 hours” means
– It will take at least 8 hours
– It will only take 8 hours if
• You’ve already read all the documentation
• You understand the underlying conceptual model
completely
• You’ve integrated to the service, or a service like
it, before
• Your code is already architected in such a way
that the places to hook in the integration are
already built
• Your data model is completely compatible with
their data model
• You only want have the “easy half” of the benefits
• You’ve had a red bull or two already
• Bottom line: if they don’t have a demo game,
and the competition does, use the competition
• Backdoor customer references are good
16. Failure is Hard to Define
• What does “down” mean
for a web service?
• What if ….
– What if you iframe them
in and that works but
displays a “fail whale”
– 5% of calls fail with a 400
error, but succeed on the
retry
– Calls were taking 100
milliseconds yesterday
but are taking 500
milliseconds today
18. Read the SLA
• Most SLA’s don’t define “up” or
“down”
• Most SLA’s don’t have a third-
party validation process for
downtime
– “You’re down”
– “No we’re not”
• Most SLAs have carveouts for
maintenance windows
• Most SLA’s don’t define remedies
for downtime
– Common practice is to either not
mention it or to offer a time-
based refund
– Is refunding for the two hours the
service was down really enough
of a remedy? Really?
23. Server Performance Isn’t What
Matters
• What matters is the total
roundtrip from the game client
to the cloud and back
• If it costs 200 milliseconds to
do a roundtrip from the phone,
10 extra milliseconds in the
server farm doesn’t matter
– What matters is making the
call in the background
– Or doing predictive fetching
– Or performing the operation
locally and then storing the
results in the server
24. Data is Easy, the Right Questions Are
Hard
• “Data Driven” is the
wrong idea
– “Curious” is the right idea
• The process is
– Good Question!
– What would an answer to
the question look like
– What data, if we had it,
would give us the answer
on a silver platter?
– How do we get that data?
25. Sometimes, Things Click
• “Wow, that advertising campaign really
worked and we tripled our user base”
• “Really? How’d the servers handle it?”
• “They melted down. But … the advertising
really worked!”
27. The Legal System is Getting More
Behinder With Each Minute
• Lawsuits are expensive
• Terms are ill-defined
• Most legislation is from
decades or centuries ago
• Impact of existing statues
is unclear
• Controlling legal
authority is ambiguous
• Get things in writing,
clearly, and always have a
backup plan