Jeff Barr's Head is in the Cloud

 Jeff Barr is the Chief Evangelist for Amazon Web Services (AWS). The 10-year Amazon veteran is focused on telling the AWS story to audiences all over the world. Jeff has been there since the inception of AWS, where he was focused on furthering awareness of web services and inspiring developers to create innovative applications using AWS. Jeff has held development and management positions at KnowNow, eByz, Akopia, and Microsoft, and was a co-founder of Visix Software. He earned his bachelor’s degree in Computer Science from American  University. Jeff is also the author of the book, “Host Your Web Site In The Cloud: Amazon Web Services Made Easy,” which is available on Amazon.

 Jeff Barr is the Chief Evangelist for Amazon Web Services (AWS). The 10-year Amazon veteran is focused on telling the AWS story to audiences all over the world. Jeff has been there since the inception of AWS, where he was focused on furthering awareness of web services and inspiring developers to create innovative applications using AWS. Jeff has held development and management positions at KnowNow, eByz, Akopia, and Microsoft, and was a co-founder of Visix Software. He earned his bachelor’s degree in Computer Science from American  University. Jeff is also the author of the book, “Host Your Web Site In The Cloud: Amazon Web Services Made Easy,” which is available on Amazon.

API Economist: There’s been a lot said on Jeff Bezos’ big mandate issued back in 2002. If I understand it correctly, it basically stated that all your teams internally would be required to expose their data and their functionality through APIs. How has this mandate impacted the growth and innovation you've seen in AWS?

Jeff Barr: The effort is very, very real. It has been for quite a while. From where I stand, it seems like a really strong, positive impact. I think back to before I joined Amazon and I was a guest at a little developer conference that we were holding. It was just me and three or four outside developers that were brought in to get a sneak preview of what Amazon was thinking in the web services world. This was around the spring of 2002.

I was listening to these executives talk, and there were more Amazonians in the room than there were guests. They were talking about how they're going to start finding interesting pieces and parts of functionality that would be useful to customers and making those available both internally to other teams and outside to developers in the form of web service APIs.

As I heard that, the light bulb went on for me, and I said, "Wow! Amazon.com is actually turning into a platform. That's a really important thing." And so, looking back on that after 10 years, that light bulb was actually a correct light bulb. It certainly was really, really important. Building on services has been really critical to our success.

From the technical side, I see that we've been able to better scale our internal systems. We've been able to decrease coupling between those systems so teams can innovate at their own speed. We've added both technical and human efficiency. Teams work better. They can do more on their own without having to be in close contact with other teams. We're getting better utilization out of our systems. You put that all together and you get better speed of innovation, a lot less reinvention, and a lot less copying of code. Those benefits go all the way to the actual customer, whether the AWS customer or the retail site customer. Things happen more quickly. I think that pretty much sums up the result so far of AWS.

API Economist: I imagine there must be solid competency at Amazon when it comes to API design. What approaches do you take internally?

Jeff Barr: We certainly have a lot of direction and guidelines internally, although not a whole lot that we publish. One of the things that we have discussed in the past is the fact that when you go to a particular page on the Amazon site, you're actually invoking a number of second- and perhaps even third-level web services internally that are going to gather up different pieces of information, put those together, return those, and ultimately result in a page for you.

There's an expectation that each of those internal services will respond in a certain number of milliseconds. Now, if something has gone wrong with one of those services and it doesn't respond, which is a very, very low fraction of a percent of the time, then in general the systems above that are able to proceed without that information.

The ability to just keep on going is a great architectural guideline. That is how we approach API design…it’s all about resiliency.

API Economist: Marc Andreessen wrote a rather provocative article in the Wall Street Journal titled, "Why Software is Eating the World." He cites Amazon as an example that supports his premise. What do you think about his key premise that companies in all industries need to embrace this idea of the software revolution and become a platform company?

Jeff Barr: Marc is dead on. If I were to have to summarize this article, it's that software makes things happen. There's really no question in my mind about that. You look at almost any kind of device or thing or service and you can say, "There's code inside here." And that code is really adding logic. It's adding intelligence. It's making decisions. It's quite often easier, even for simple devices, to build the device somewhat general purpose with a processor inside and then instead of hardwired logic like we would have done in the past, we simply say, "Well, let's put a processor in there. Let's put in code and we can improve and update that code as the device continues to evolve."

To me, the bigger picture of what Marc is saying is that, as an industry, we need to do everything we can just to train people to understand the value of software and to be awesome software engineers. I think that goes without saying. As a result, we're doing a lot of hiring here at Amazon. The more developers there are out there in the world, the bigger the talent pool, the better for everybody.

API Economist: More and more organizations are bringing mobile app development in house. Does Amazon do mobile app development in house?

Jeff Barr: It's just one of a number of important fields. It's not any different to have mobile apps done by your own developers than to have web pages built by your own developers or have marketing content generated by your own marketing folks. I think knowing how to work with the current generation of browsers and devices and technologies is a baseline skill.

API Economist: Back in 2011, you delivered a keynote at the Seattle Interactive Conference. In that presentation you indicated that cloud computing adoption is still in the early majority phase. How much has changed since then? Where do you think we are today?

Jeff Barr: What I'm seeing when I talk to companies is that the conversation has shifted from waiting to see what happens with the cloud to acknowledging that the cloud has already happened and you need to know what it is. You probably should be using it right now.

I'll generally say to a technical audience, "If you're not fully aware of what the cloud is at this point, you're probably a little bit behind the curve as far as your knowledge base." I do that to be a little bit provocative and just to make sure that the developers realize they need to spend some fraction of their time learning and staying up to date.

We are also not just seeing adoption by the quirky startups and edgy-type companies. We see the big enterprise customers adopting the cloud. We've got customers like News International, Ticketmaster, and Pfizer. Those are the big enterprises and they're building legitimate applications and running important parts of their business in the cloud.

API Economist: One of the barriers to adoption of the public cloud is data sovereignty. Clearly there are numerous laws and regulations across the globe. How has Amazon been dealing with data sovereignty issues that come up?

Jeff Barr: I guess as a preface, you should know that we have hundreds of thousands of customers in over 190 countries. The customers are looking at the situation and they are, by and large, finding ways that they can actually proceed and run their apps in the cloud. We currently have nine separate AWS regions in different parts of the world. Customers can pick and choose where they process and where they store their data. They can do that according to both technical and business needs.

We certainly have a number of awesome clients in Europe. We continue to expand the AWS footprint. We recently opened up in Australia. We've got lots and lots of federal, state, and even city governments as AWS customers.

We do publish information on rules, regulations, security practices, and security principles. Amazon has a number of different certifications for the cloud. All of those are reassurances to our customers that we're doing all that we know how to do to run a tight ship and to protect their information.

API Economist: The lines between Platform-as-a-Service and Infrastructure-as-a-Service sure seem to be blurring. With AWS Elastic Beanstalk, you can natively deploy Java, PHP, and .NET apps directly to AWS. Windows Azure supports the ability to deploy Linux VMs to their cloud. Do you see the distinction between these two types of cloud computing approaches going away?

Jeff Barr: I see a couple different factors at work here. What we're seeing is that the managed value-added services on top of the infrastructure are becoming very popular. Things like database services, search services, and parallel processing like MapReduce. Customers really like and appreciate those kind of services and they say, "Well, what would it take to do this ourselves? Do we have the hardware? Do we know how to actually configure the hardware, install the OS, get everything up and running, install these packages, maintain the packages? Do we have the actual skill sets and do we have actually a requirement for enough of that skill set to keep a person busy full time or do we need to have someone just do this part time?"

They look at all that complexity of running these managed services and they say, "Well, I can either buy equipment, staff a position, and train personnel or I can go to a web page. I can log and I can launch a database. I can launch a MapReduce cluster. If I need one, 10, 100, or 1000 of them, I can get them when I need them." Customers look at that and say, "You know what? That's a pretty appealing value proposition."

When we look at that line between the infrastructure and the platform, there's another set of customers that say, "I appreciate the value of these meta-services very much, but I actually simply need some servers and some storage. That's as much of the cloud as I'm needing to consume at this point for my application."

They say, "My app is ready to go. I just want to load and go and be on the platform and be off and running." There's still a ton of benefit that they get from running on the cloud. Again, you can look back at platform versus infrastructure. Some say, "Well, I want to load up my app in Elastic Beanstalk. I want to simply hand off my code and let Beanstalk handle the management, the scaling, the spillover, and so forth."

I think there's really room for a multitude of different models. There’s a bunch of different ways to build great applications in the cloud. Some of our customers will essentially pick the application up and move it into the cloud as simply another style of hosting. That's OK. There's nothing wrong with doing that. They're not going to get the full set of benefits from the cloud.

At the other extreme, we'll see customers that say, "Let's build a fully native cloud-style application. Let's take advantage of additional cloud services and let's get more of the flexibility, the scalability, and perhaps even the cost benefits that would come along with that."

This makes me think about the days before Windows. You think of the transition from DOS to Windows. There were an awful lot of bestselling DOS applications on the market at that point. They were keyword and character-based. They drew into a fixed size on the screen. Suddenly Windows comes along and it's the upstart. Some of the vendors looked at Windows and said, "We're not fully convinced there's a future there. So what we're going to do is embed our existing app into Windows. It won't fully look and feel native but we'll get some benefits and a lot of our customers are going to come along because they recognize the brand. They're going to use it on the new platform."

Others said, "You know what? We've got this new platform. It's got graphics. It's got a mouse. It's got resizable windows. We can run multiple apps. We can build different kinds of applications that run in this new environment."

And so, I see these as the extremes, if that analogy holds for you. You can run your existing apps on your platform or you can build new apps that actually take advantage of the unique benefits of the new platform. There's room for both.

API Economist: What excites you most about your role as chief evangelist of AWS?

Jeff Barr: I've been here 10 and a half years. I'm still really psyched and excited to show up for work every morning. I'm up early and I stay up late, because I'm helping to bring the world into the future. That's the way I think about it. I love the fact that I'm making life easier for our customers. Every time I put a blog post together, I think about the customers that are going to hopefully read that blog post and say, "Wow, this actually solves a real problem for me," or, "It gives me some awesome ideas for something that I couldn't have done before." I hope that they sit down and start building apps with it right away.

I like the idea that we are really giving developers a much shorter route from "I had this awesome idea" to "I've now implemented it and it's realized and I've got customers and I've got a functioning business here," and that they are able to do that without risking their financial well-being, because it's a pay-as-you-go based model

API Economist: What are you favorite mobile devices and what are some of your favorite mobile apps?

Jeff Barr: Even if I didn't work here, I still think my favorite device would be my Kindle Fire HD with my Prime subscription. I just find it is a super powerful device. I just love the richness of content I can get on it. I find it a great work device as well. I can sit on the floor at a conference and I can keep up with my email. I've actually written and launched blog posts from my Kindle, which is pretty awesome to be able to do. I think I've even launched blog posts from the transit bus from my Kindle.

I love this little app called Glympse that lets me track my walks. I actually like to go for a head-clearing kind of walk on Saturday mornings. I launched Glympse on my phone and I set a duration. I can send out this tracking message basically to anyone that wants to follow along on my walk. I like to look at it afterwards and see where I wandered around downtown Redmond.

PaperKarma is a really nifty little app that was built by some developers up here in Seattle. When I go out to the mailbox, I get my mail and I take all the junk mail and anything I don't want to get again. I then take a picture of it with PaperKarma. It gets uploaded to their servers. They actually send a letter on my behalf to the sender and say, "Please take Jeff off of your mailing list."

The final one I love is called SmugMug, which also happens to run in our cloud. It runs on AWS. It's a photo album. I love the fact that I can email pictures to it, from my phone. I've got a brand‑new grandson and I just love the fact that I can actually track his pictures on my phone. I've made myself the family picture gatherer, so everybody makes sure that they send me the pictures. I keep those photo albums up to date. I find these apps fun to use and very useful.

API Economist: Jeff, thanks for your time!

Jeff Barr: Thank you very much!