At the recent Ars Technica and Wired Smart Salon event, I participated in a panel on barriers to cloud adoption. The general idea behind the panel was to take a look at the common sources of skepticism and criticism of cloud computing, and to talk through the concerns. One of the panelists was Ping Li, a partner at Accel Partners, a Palo Alto VC firm. Ping focuses on cloud infrastructure, so I caught up with him at the Accel offices in Palo Alto yesterday to get more of his perspective on investing in the cloud.

JS: So tell me a little bit about your portfolio and what you're focusing on right now.

PL: I focus a lot on infrastructure and platforms, and that can be both digital media and gaming, as well as more traditional datacenter platforms. These days, a lot of that is cloud-related. And in terms of cloud, I've been really focused on the enablers of the new cloud stack, as well as potential applications that are going to be created for the first time because there's a new cloud stack.

An example of an enabler that we're involved with is a company called Cloudera, which is the company behind the open-source project Hadoop, and that's really about "how can you manage large-scale data in a cloud environment to do data processing, data extraction, etc." It's been used in the Web 2.0 world but now it's starting to penetrate more broadly than that.

An example of a cloud application is this company called Lookout that I just invested in, which is a mobile security company that's leveraging cloud infrastructure to do open mobile handset device virus scanning and malware detection. Historically people would just say, let's put heavy client on the cell phone, but that's just not going to work from a battery life perspective. So these guys have smartly partitioned some of their processing in the cloud, and some on the endpoints, so you can actually get a good user experience while having protection at the same time.

So I've been kind of looking up and down the stack, all the way from bits and bytes up to the application layer, to see what the next-generation cloud ecosystem is going to look like.

JS: When you say "the new cloud stack," give me some perspective on how you've seen the evolution of the stack in the past two years.

PL: The evolution of the stack starts with the mainframe, and everyone is always trying to recreate the mainframe by taking advantage of new technologies. So client-server was taking advantage of processing technology. Web services enabled applications to be networked more efficiently. A lot of cloud innovation has been at the data layer—a lot of the interesting things have been with data processing but also with data storage and data transaction. So there's all the movement between, say, the NoSQL crowd and the new cloud-type Oracle databases. So there's been a lot of innovation in that area of the stack.

But even going up the stack, you can see people wanting to recreate the functionalities of a mainframe but in a new world. So, security: what does "cloud security" mean? A lot of interesting companies are doing stuff around single sign-on. You have 15 cloud apps, so how do you manage that in the enterprise—who gets access to what and when? We've seen cloud logging companies—these are all different services that were part of the traditional stack that are now being decomponentized and rebuilt in a cloud framework.

I don't think it's a revolution as much as it's an evolution. If you want to really say what kicked this thing off, virtualization was a big precursor to cloud. You had to get comfortable extracting applications from infrastructure in order to embrace the cloud. We invested in XenSource, and if Xen wasn't around, who knows if EC2 or S3 would be what it is today. So a lot of those building blocks have been in the making.

I think "cloud" is a little bit overused right now. I look at it as the evolution of the datacenter, to do more scalable processing and computing.

JS: So it sounds like your bigger thesis is that a lot of the traditional centralized compute, mainframe-type things are being redone in this cloudy way, so then you guys look at what are the obvious holes that haven't yet been plugged.

PL: Yeah, exactly. At the end of the day, if you take the top-down view, an application needs all those services. It needs partitioning, security, systems management, networking, provisioning, a database—it still needs all these things. I don't think you can really break the laws of computing, necessarily. But I think there will be newer technologies that didn't exist before that will allow you to do things in ways that you couldn't.

Multitenancy, for example, is something that existed before in the time-sharing world, but now it means something totally different when you talk about a SaaS application. But a lot of the building blocks need to get reinvented, so that's how I've been thinking about a lot of these different layers.

JS: That's fascinating. I did this interview with the Chrome OS engineering director, Matt Papakipos, and he was talking to us about how they were dealing with this problem of application handlers. It's the same problem that the Windows registry solved on the PC, and they're dealing with this on Chrome OS—what Web application handles this kind of URL or data type? So it's the same class of problem—all the stuff that we did on the desktop—but on this new platform.

The evolution of the stack starts with the mainframe, and everyone is always trying to recreate the mainframe by taking advantage of new technologies.

PL: I was talking to someone the other day, and they were asking, "What does the app server for the cloud look like?" And that's a good question. If you talk to a public cloud provider, they'll say, that is the app server... the whole thing is the app server, and as an application developer you just write your application to a set of APIs, and all the other services that an app server would provide are handled by the public cloud platform. Now, I think in the private cloud you'll have to recreate some of those things, and a lot of them are getting decompartmentalized—it doesn't have to be this monolithic JBOSS app server. It can be a set of services that get loosely coupled together by this underlying cloud platform. So you get database services, logging services, system management—all these services can be loosely coupled together to create an app server on the fly.

We're still in the early days, but I think these are different pieces that are coming together. And what I spend my time on is "what are the really interesting layers that are going to harden into something meaningful, vs. what are the parts that will be absorbed into other layers?" So it's a tricky dance.

JS: Yeah, that's an interesting problem. And it's got to be an exciting time to be a programmer again. I've recently started to learn Python. When I graduated in 1998 from undergrad with an engineering degree, programming was kind of boring. I just thought, my options are that I can do some Access Basic thing, or go do some gimmicky Internet thing. But the days of being a rockstar programmer who builds something important and makes a lot of money—those days were gone. That was back in the '80s with the dawn of the PC platform. But now those days are back, because there's a new platform and we're having another moment where you can do something really cool.

PL: That's something that we've been talking about, that developers are more empowered now than they've ever been. Cloud computing has fundamentally taken control out of IT and put it back into the hands of the developer, and developers can take a credit card and do anything they want, basically. And all these services are available to them on a very componentized, elastic, pay-per-use basis. And I think that's created the shift in control back to the developers with a vengeance.

Why is Amazon the poster child for the cloud? It's because it empowered developers, and developers made Amazon what the cloud should look like. And I think those are all examples of your point that it's cool to be a developer again.

JS: Yeah, because there's a new platform. And that's why I'm learning Python—because there's a new platform, or rather a set of platforms now. I originally learned the PC as a platform—I started coding obsessively when I was 9 years old on a Commodore, and then in undergrad I learned hardware and I coded for UNIX and Windows. But now there's a new set of platform architectures that you code to—EC2/S3, Microsoft Azure, App Engine—and I have to learn that just to stay current.

At this point in the interview, the batteries on my recorder died, so I'll have to summarize the rest of the discussion from my notes.

Near the end of our discussion, I asked Ping what he would fix about the US to make it a better place for cloud-based businesses to grow. "If you were king of the world," I said," and could wave a magic wand and fix anything at all, like giving everyone in the US South Korean-style broadband, what would you fix?"

This turned out to be a great question, because it soon became obvious that as a VC, Ping doesn't really think in those terms. I've asked this question in one form or another to any number of academic and policy-minded types over the years, and they can always rattle off things about the country that they'd love to see changed. But this is the first time I've put this question to a VC, and the fact that he just didn't connect with it and had to sit and ponder it was very telling. It's clear from our discussion that Ping spends a lot of time thinking about what's missing from the cloud picture, but unlike a policy type, who's interested in coming up with a consensus solution that would please a set of stakeholders, Ping views any such gap as a profit opportunity.

Ping ultimately responded to the question by shooting down my idea that broadband penetration is a real barrier. In a nutshell, his basic point was that the real bandwidth needs that the cloud has are all on the back-end between datacenters. Users have enough bandwidth to run cloud apps, since they're just doing some relatively light input and output. So broadband penetration isn't really a barrier, because browser-based interfaces aren't as bandwidth-intensive.

I think he's right as far as cloud-based applications go. Swedish- or South Korean-style broadband in the US would be more of an enabling technology like virtualization, vs. the lack of it being a barrier of some sort.

I'd like to thank Ping Li for taking time out to talk with us, and for participating in the Smart Salon panel.