So my name's Rif-- CEO and founder of Foodit.
And Google asked me to talk today
a bit about how we're using their Cloud Platform.
And I wanted to talk to you a little bit about our journey,
about getting to where we are today, and about platforms,
and what we're all about.
And I read a book, "Lean Startup,"
and it talked a lot about MVPs all the time.
And when I actually look back over the last 12 months-- yes,
we're going out there trying to test our products,
but also test the people and the platform at the same time.
So, just my background.
I was a CEO and a developer for 12 years-- a food distribution
company that sells food to 45,000
restaurants across the UK.
So I'm a bit technical.
I had experiences doing stuff, building stuff.
I had a great team.
But it got to a point in my career
where I just wanted to do something else
and JJs wanted to support me in that process.
So I had already funding, which is great.
But I wanted to build something.
And day one I had no team.
I had no idea what I wanted to build.
I just finished reading "Lean Startup" and I was ready to go,
I was ready to start testing.
And I didn't want to do things the way I used to do them.
I didn't want to deal with servers, and patching,
and networks, and all the other stuff.
So I was trying to figure out that, hey I've
got all this money now how am I going to get the product out
of the door as fast as possible and start testing it
real restaurants.
So I went out to market and thought
about if I could come up with what my MVP looked
like-- or my product looked like-- maybe I
could go and work with a couple different companies.
And I thought, well because I've got all this money let
me try and do this all at the same time.
And one of the other things I did at the same time
was I used 99designs.com to start picking logos.
We got like 2,500 entries.
It's once of the nice, fun things
to do when you're starting a startup.
So that's me, I guess, standing on the US.
And we have three development teams
in different parts of the world building
the same minimal, viable product.
And we picked-- I picked three different platforms
to do that on, to test out three different things.
The first thing while doing this I knew after reading "Lean
Startup" is I wasn't testing how to build a restaurant website.
So Foodit was to do a whole bunch of things of restaurants.
But the main thing I wasn't trying to do
was learn how to build a restaurant website.
What I was trying to learn how to do
was get a restaurant website to be found on Google as
quickly as possible, learn if restaurants
are willing to pay for the service,
and also understand if people would trust a restaurant
website as a place to order food.
And those are the three things I was trying to test.
So how I was going to build the website,
all those things I didn't think was going to affect my startup.
So I thought, what's the risk of doing this three
times with three different companies?
So I found the company to build themselves
up a product called Magento.
Magento is an e-commerce platform.
And I thought the reason I'd want
to do that would be if I could get
to use the power of Magento I could get stuff like billing,
pricing, vouchers-- and all the stuff
that a normal e-commerce platform would have--
into my product as quickly as possible.
And the thing I was trying to test
by building on top of Magento was,
would I get into issues or constraints
that-- hey, I've got 200,000 restaurants across the world.
Would Magento scale?
Would I have to do really horrible things to the product
to make it work the way I wanted it to work?
Because Magento is typically designed for an e-commerce site
that has just one store-- or just one web page--
not 200,000 web pages.
So I found the company and we went on this journey
to try and build up.
At the same time, I'm a big fan of Microsoft
and I wanted to see if I could find a low-cost team in India--
or anywhere else-- that could build on top of Azure,
like some Azure platform, to build this same product.
And I was always a big fan of Google App Engine since 2008,
even though my previous job was all Microsoft.
And I wanted to see if we could use Google App Engine, which--
just as the talk showed before-- gives you
a lot of the tools out of the box,
preconfigured, preset, to build what you want.
And I found a team in Australia--
who were also very much into "Lean Startup"-- to do that.
The cool thing about the Australian team
is they're called Three Weeks.
And the reason they're called Three Weeks
is that they will get your MVP built in three weeks time.
So that set the actual pace for the other three teams
around the world to build the product.
And the good thing was it made me focus on those things
that I wanted to learn.
Would restaurants pay for it?
Would this happen, would that happen?
And not focus on which database I'm going to pick
and which Memcache served them, which RESTful API,
and how are we going to lay out the load balancers.
In my previous role as a CIO I found
that we would waste huge amounts of time
debating pros, and cons, and ifs for the future 12, 24 months.
And when you're in an enterprise environment
you have that luxury.
And when you're in a position where you already
have like 200 million pounds worth of orders
going through a platform then you
have to debate stuff to make sure
that you don't just break it the next day.
But I didn't want to get back into that world.
So I really want to something like Google App Engine, which
says this is the database you're going to use,
this is how you're going to build stuff.
You have a certain amount of choice and flexibility
but you're going to remove that away from the developer.
Otherwise you could spend a little time
fighting and arguing about what is the best choice.
But the reality is that's probably not
going to make you win or lose the startup you're
trying to build.
You have a bunch of things you need to learn,
and unless your startup is actually
building a platform for developers
you probably want to focus on, what
is the thing I need to learn and which platform
is going to get me there as quickly as possible.
So I went out there and tried those three
different platforms.
Magento, it was just too much for me.
I had to break it too much to make it work for my startup.
And I felt like within a couple of months
I would be rewriting everything again.
So it didn't work.
But it would have given us a lot of features
as quickly as possible-- good lot of features as quickly
as possible.
But 12 months past that now I've still not used any of those
features in my startup.
So they would have been redundant.
And everything that I've needed has been stuff
that we had to build in a custom way.
The Azure team-- Azure as a platform was great.
But the team itself, they were just too much--
too developer-focused.
They needed to take too much of my time and too much
specifications.
And the team in Australia, those developers
are willing to go out to see restaurants and get feedback,
and I needed to spend little time with them.
And the thing I liked about App Engine
was that there was a preset way of doing things.
So that as I moved that team from using an external company
in-house-- those developers-- there's
a set way of using Google BigQuery,
there's a set way of using Google Datastore,
and there's a set pattern.
So this team in Australia is not deciding,
oh were going to have 20 servers doing this and 10 servers
doing that.
They just write the code.
And Google App Engine deals with how many boxes are needed
and the pattern.
of doing it.
So in summary, food is yummy.
I would argue that if you look at Myspace and Facebook--
one was written in Coldfusion, one was written in PHP.
Did it matter to the success or the failures of either company?
I would always, always say, look at your start up.
What are you trying to build?
What are you trying to learn?
And how much technology is a factor
for if you're going to win or lose?
So today we're talking about some web platforms.
But part of our technology is running
a printer in the kitchen of restaurants.
And we picked Android to do that because Android-- unlike iOS--
allows you to control the USB port of the device.
So I can plug a printer in without using Bluetooth.
So I could not do that on iOS.
So look at the thing you're trying to build.
I would say if you want to build something that's
very heavy orientated to Facebook,
or if you want to build something
for people that use Microsoft Office,
there might be other platforms out there
that have features that might work better for your startup.
Do you need low-level access to your operating system?
If you're not developers yourselves,
you're going to have a hard time--
or an enjoyable time-- trying to figure out
is what your developer saying actually important.
Like they're saying, oh we should use MongoDB,
or we should use this or we should that,
and it's going to make it great because xx,y, and zed.
But is that what you're trying to learn?
So try and stay focused on what's important to be learned.
And if your developer feels comfortable
building fast on this platform then maybe go down that route.
Trying to get them to switch something and learn something
new might take more time.
Do you trust what you're building on?
There's hundreds and hundreds of platforms
to build out there on.
If one of them just goes bankrupt tomorrow than you
might have a hard time.
So I trust the Google App Engine is going to be there tomorrow.
I trust that Google is going to keep developing on it,
and building it, and making it better--
which they have proven to have done.
And just stay focused on what you're trying to learn.
And make sure that the platform you picked
is aligned with those things.
I'm going to be around here for the rest of the day.
I'm also a Google Developer Expert for Cloud,--
like Steve-- for Maps.
And that's it.
Thank you.
[APPLAUSE]