 Hi, I'm Alex Williams of SiliconANGLE here at the Node Summit, live with theCUBE, our world-class online new streaming service that we do at events like this here at Node Summit with James. James, Richard, how are you, sir? I'm doing great, man. It's so good to see you again. Good to see you. And it's kind of weird to be on this side of the discussion with you, having been a fellow blogger for so long. But, you know, great venue, amazing crowd here at the show. And I'm really excited to be on theCUBE again. The last time I was on was a great time, so... What's up with Node.js and kind of your perspective of the world? Well, you know, one of the aspects of Node that's really interesting came up on the panel that I moderated this morning. We had Nojitsu and Heroku and Azure and Cloud Foundry represented. And we talked about Passle, but one of the things that really came out of it is, you know, in some ways, Node is just another language. And, you know, in the sense that there are things it's great at. There are things it's not so great at. But I think what's really exciting about Node in the cloud space is it's a venting model and it's JavaScript-based nature really makes it something that is quite portable and quite kind of re-assembleable and componentized by nature. In fact, you heard a lot of the talkers at the show talking a lot about how Node kind of gets you to break down to the smallest denominators as quickly as possible to make event management that much easier to deal with to get help with things like debugging and deployment and other things. And that's kind of the nature of where the cloud's taking applications in general in a lot of ways, in that because it's a very service-based environment, people are beginning to break down capabilities into smaller service units and then bring them together, compose them in different ways that may or may not have been expected up front. Node is a great representation, I think, of a language that takes this into account, not maybe not intentionally, but it does fit very nicely. And one of the things that are enticed at Heroku is that one of the places we're seeing the Node version of their environment use the heaviest is in machine-to-machine communication. They have a very high traffic level in machine-to-machine communication. And to me, that's really kind of the next frontier. We've done the Web 2.0 thing and it will continue to grow. There's a lot of room to grow in that space, Facebook apps, consumerism, but really a big growing area is going to be this machine-to-machine capability where now the automation environment that underpins a lot of, you know, the traditional automation will become much more cloud-like in that it integrates with third-party components that protects, takes information from some source that's not within the four walls of the company and begins to bring that together. And Node seems to be very well-suited to that. Yeah, it does. I mean, talking to people about how they're using Node.js, for instance, I was talking to a FlowDoc, I think that's the name of their company, but they take group messaging and activity streams, but they take activity streams from GitHub, they take it from Jira, they take it from email, and they're going to start adding Twitter into it. And so Node.js is really, really ideal for that, as they say. And it seems like it's, you know, we're hearing a lot of it, you know, a lot of people saying that it's great for that real-time communication, so that's what it's great at. What is it not so good at? Well, I think when you get into situations where thread control, where concurrency and managing what's happening from a concurrency perspective gets to be a little bit more detailed and a little bit more finesse-oriented, some of the kinds of things that an Erlang would do really well. I think that's the point at which Node's eventing model means it's much less predictable about what's going to happen when, or whether you're even going to have work that is stacked up, intended to be completed, but it's not completed yet. There's not that serial nature to it. It's much less, it's much more about sort of the flow of information through different things taking their part of it and then passing it on to the next thing. When you get into something where you're really getting into the need to really finally work at a high performance on a given processor or just in general on computing, I think that's the point where a lot of people would say there's some things that Node does that aren't the smartest things to do in those particular architectures. That's interesting. You know, that really then speaks to the need for really good tools, doesn't it? To really be able to see what's happening with the deployment, for instance. I mean, I think about joint in the data visualization tools that they have, really to kind of see what's happening inside the network. And it's a big reason for something like Instratis to exist as well, right? Tell me, let's talk about that. Yeah, so Instratis is the leading enterprise cloud management solution. And by cloud management in this situation, what we mean is the consumption of cloud. So as opposed to being something that delivers a cloud service, we're about how do you take your applications and consume cloud services in a way that is under control, allows you to do some governance around who can do what, potentially financial controls. You're making sure that people are only consuming as much budget as they're supposed to be consuming for something. And these are the problems that enterprises deal with when they look at cloud that are very, very, they're exemplified by the enterprise. A big difference being, in a Web 2.0 space, typically you have a few development teams, they have some number of processes, they're growing number, but they're still a well-managed number of processes. And the idea is they have to scale these things across hundreds or thousands of nodes. The enterprise problem is, they've got hundreds or thousands of applications. Each of which may scale on an average need of five to 10 nodes. Right. But the problem is each of those applications have different owners, they have different requirements, they have different budgets, they have different compliance constraints that they have to meet, policies they need to apply to the cloud environments that they run in. And so it's that bringing together the governance and the automation of the application from the application's perspective in a multi-team environment, in an enterprise environment that we really focus on. So we give you basically the one way to think about it is as a console for managing and operating applications in the clouds that you consume for those applications. So managing those applications inside the enterprise. And we're hearing a lot of popularity for Node.js in the enterprise. Is that one of the, that's one you just outlined, some real reasons why it has viability there. What are some other reasons that you're seeing that they're talking about? That enterprises are talking about nodes in particular? Yeah, you know, again, I think when you look at the types of applications in enterprises, they span the full gamut end to end. One of the things that's happening is the cloud has introduced the ability to build some applications that were economically unobtainable, frankly, in the past. So a lot of big data, a lot of the excitement about big data comes from the fact that you can now experiment with processing data in certain ways. And if it doesn't work out, you release the resources back into the public cloud or private cloud environment when you try something else. And so there's a lot of agility in experimentation, a lot of things. Node fits into that really well because it begins to give you a very componentized way of thinking about the world so that as you have components that are successful, you can continue to use them, even turn them into services themselves. And you can continuously begin to glue things together in different ways, a very agile way to find solutions that really work. But this really leads to some significant disruptions inside IT, doesn't it? Well, absolutely, but it's an interesting way of, it's an interesting balance. One of the big problems that's going on is we're shifting from a server-centric operations world in IT, where IT was, their number one thing was primarily operating servers to make sure that the applications got delivered and were available. We're shifting from that now to a world where, instead of getting the server putting the OS on, putting the applications on, assigning your identity to the server, hooking it up to the network and measuring server things like CPU utilization and memory utilization, we're beginning to shift the picture a little bit to an application-centric world with cloud. Where when I come to the cloud, I don't come with a server, I come with an application, I come with, and by application, I mean it's some combination of code, data, and or config, and or policy that makes up something that turns that cloud service into something that's useful for a specific purpose, a specific application for your business. And so from that perspective, one of the things that's happening is that there's still a need for a lot of the things that IT did, but with a different focus. You still need operations. You still need overall architectural advice in terms of how to put the pieces together into a system that's going to work and that's going to survive. Right, the data design, the data management. To a certain extent, you still need all those things, although I would say that trying to do one data model for the company is kind of a dead thing in the cloud world. Because if you integrate with one third-party service all of a sudden they're defining data that you don't have in the data model. And if you change that, then your data model's constantly changing. I think though the idea that of having an idea of what the components are, what the data is that's available overall in the organization, having most importantly an API layer that allows you to then bring together the pieces that you want in one way or another, and that API could be direct call APIs, REST APIs, it could be events. Could be any number of things. So how is this representative of this evolving DevOps culture that, I mean there's a lot of marrying here of developers and operations here. It seems to be quite representative. Well and again it depends on the company. I think the argument that we're making is for most enterprises it won't make sense to have your developers operate their own applications. For a lot of enterprises that your best developers, you need them to be able to bounce from project to project and do what they do best which is develop code. However, you may want them to be involved in the development of the automation logic around the applications that they deploy. But once you've done that and you deploy that into the environment, you now need to be able to monitor and make sure that that is working correctly and be able to tweak the automation of the environment so that when you run into situations where the application either is hit performance wise or is unavailable, that you're able to adjust to those situations and make the application that much stronger. So where that really comes in, the DevOps part comes into play is we have great tools for development. We have great tools for operating a data center. We don't have great tools or until now don't have great tools for operating the applications that were developed in any arbitrary data center. That hasn't been a focus and Cloud's forcing that focus right now. And so we think we have a really important solution that almost every enterprise is going to need from the perspective that you're all going to have an application running on multi-core. That's that solution, tell me about it. Well, I think again, I talked a little bit about what Enstradus is about, but really, we offer a SaaS version of the environment, on-premises version of the environment. It's basically that gives you the ability to sort of say define what your application looks like, define what the components of the application are, how that can be brought to bear into the Cloud. And what are the configuration scripts that need to be executed in different situations? How can I, what are the right configuration scripts for one Cloud environment versus another? And how can I make sure that those get triggered? All those nuances. And then do all of that in an environment where you can define, this is the team that should be allowed to launch servers for this application. This is the team that should be able to stop the application or start the application or start components of that. This is the budget they have to work with. So for this particular part of the application functionality, they were allowed to have up to 50 servers. And if they go higher than this, then we need to go address that and figure out what that means. It also has some feedback mechanisms to make sure you understand what the application is doing in the environment. And by the way, when I say environment, it could be one Cloud, it could be one of the 14 that we support, or it could be multiple Clouds so that we can help you deploy that same application to the part where on say, one tier with some of it running on Amazon and some of it running on Rackspace. So that you get that increased availability, even if one Cloud entirely goes down, or cross regions, or whatever it may be that you want to do. Are you seeing that more often now where companies aren't using multiple Clouds? Is that a trend that is establishing itself? You know, I would say that the truth of the matter is that at this point in time, the theory is established. The theory is established that the more regions, the more data centers you can use, the more you increase your resiliency. But on top of that, when you have dependencies within Cloud environments as well, if you have multiple Cloud environments that don't have dependencies with each other, that increases the possibility of availability more. A good example of an availability event that being in multiple regions and one Cloud wouldn't help you with is if that Cloud provider for some reason went out of business. Or if that Cloud provider for some reason was suddenly told to shut down by the government or in a data center you're using in some country. So what we want to do is make sure that for disaster recovery purposes, for just general availability purposes, perhaps even eventually for market purposes, that you get a better price over here. So maybe it's time to start up some more nodes over here where the price is better than over on the other one where the price isn't as good. Those kinds of things are things you can do when you have an environment that's independent of the Clouds that you're operating against. But they can actually operate an application against that Cloud. And again, right now the focus is a lot on infrastructure service, but we're really excited about the idea of platform as a service and of languages like Node and others that make sense for this to come in the play and to be able to operate your applications with all those same traits at pass and infrastructure service and so on. So pass is an interesting, kind of, you know, is a good segue here to talk about. We're seeing, you know, today we talked to .Cloud. We talked to, oh, Cloud Foundry. We talked to Heroku, you know, you know, Cloud Foundry is a hybrid really, you know, .Cloud is fully public. Heroku is fully public. I don't think they have any hybrid capabilities. What are you seeing, you know, what are you seeing in that marketplace right now and that landscape and how you see it reflected here with the discussions about Node.js in particular? Yeah, I think that Orin Tike put it really well this morning when he said to call it nascent might actually be a little bit of an understatement. I heard that, yeah. And I think that doesn't mean that the technologies aren't mature and that you can't build production systems on that. What that means is the form that the past marketplace will take and the ways that you will consume it are still being discovered. Right, yeah. And so I think the answer is, you know, you look at something like Microsoft's strategy with Azure, what they're beginning to look at in terms of the private Cloud capabilities they're bringing to bear. You look at what VMware is doing with Cloud Foundry. You begin to look at what the possibilities are with someone like a giant or even potentially with Heroku, but knowing Salesforce, I'm not putting a lot of weight into the fact that they might come out with a private Cloud version anytime soon. But the, you know, you begin to look at that and you begin to say there's definitely an understanding of going to where the enterprise sees the requirement for the application components to exist. But right now for certain classes of applications, if you're going to try those types of applications, it makes a ton of sense to run them in the public Cloud anyway. So big data is one, I think you see a lot of Web 2.0, your consumer websites for marketing purposes, community sites, social sites that get developed in the public Cloud for the most part anyway because you can experiment with it. And again, if things go down, you don't own the equipment, if things don't work out. And I think you're starting to see, you know, I mean, even Google App Engine, which hasn't been mentioned a lot because it's here because it's not a node environment, but you look at the types of applications that are being built out there and there's still a huge demand for that. And I think now, whereas infrastructure service spread its wing from its core base two years ago, I think now passes at that beginning point where over the next year to a year and a half, you're going to see it, find the other classes of applications that does well and find the models that it needs in order to be able to address the enterprise, to address, you know, other types of applications. Machine-to-machine systems and those kinds of things that begin to come down the pike. And so, you know, I'm very excited about what's coming in the space because I think we haven't seen all of the aha moments in the past space by any means yet. Right. The issue that we hear about is, you know, these business critical apps and I mean, that's been discussed as something that enterprises aren't willing to do, but there is more movement, isn't there? Toward, you know, starting to use, maybe I'm not sure what the environment would be, you know, for it, but are you starting to see examples of business critical apps? I mean, there's SaaS applications that uses business critical apps, but like I'm thinking about like the 20 year old systems that companies have been using and they're thinking, wow, this infrastructure is just costing me a bundle. Yeah, I don't think you can look at it that way because I think when you look at core systems that are, they're core to the business but they're not differentiating, the decision to go grab a new environment to run something that you've already made the investment in is a lot harder to do that, right? Yeah, you can't work for a place. When you look at new applications that are becoming core to the business or they're becoming mission critical to the business, you know, I would say that pick any Facebook game developer and ask them, you know, is this a mission critical application for your business, right? And there's a ton of those that are running in platform as a service environments, infrastructure as a service in general. You look at the big data and how it's becoming increasingly important to business decision making, to financial services, to even government and you begin to say, you know, some of these systems are becoming mission critical. They're right now, they're not context, excuse me. They're core, these ones are the mission critical ones. The context ones that I was talking about earlier, I think I used the wrong word those applications are, you know, those other applications will be slower to move, although the SaaS world, I think will eat those up. So I don't think you're going to see a lot of people develop new non differentiated applications in the cloud. I think they're going to find people who built those for multiple tenants. Well, that makes sense that that does speak to a direction for platform as a service when you put it in those terms, in terms of the context of what is really mission critical. Right, and I think, you know, one of the things that I've argued, and I've backed off of this, but for a while there I was arguing that the only pass that'll really survive in the long term is pass on SaaS, meaning platforms that were built to extend SaaS environments, because that's what the data is, right? So the data that you gather, that's your core customer data, that's your core sales data, that's your core ERP resource planning data, that stuff ends up in a SaaS environment. You're going to want to write the applications that consume that to do your mission, your differentiated stuff. Against where that data resides. I think there's a little bit more to it when you look at different kinds of businesses. Some will actually use standalone pass for certain types of applications and it makes sense to do so. But I also still think that, you know, when you look at aforce.com, you have to really respect what Salesforce did early on there and understanding that they, I mean, there's a lot of businesses built onforce.com that are built on salesforce.com data and that are quite successful. And I think that that's something that will begin to expand out and you'll see a lot of, you know, it's why Cloud Foundry is somewhat interesting to me and Microsoft to a certain extent as well is not only are they multi-language, but in reality, they could take the exact same platform and have, you know, have somebody in a SaaS world spin up a Cloud Foundry pass to support their platform and have me have my local enterprise Cloud Foundry environment and I can then pick and choose how I distribute components across the. It just passes the data into the application where it's integrated. And you just put the code where you want it to go and it's consistent in theory, consistently operated and executed across the two different environments. That salesforce.com looks pretty smart then. I think salesforce.com is very smart. They're not the only smart company in the space, but you have to look at them. You have to look at them. When you look at SaaS and sort of the leadership in defining the space in the same way that Amazon really has defined infrastructure services and services as infrastructure, I think you've got to really give the salesforce credit for defining this is what a true software as a service environment really is and really operates. And there's still sort of the benchmark by which I personally, and I think a number of other people compare other SaaS environments against. Doesn't mean that some of the others don't hold up quite well against them. And it doesn't mean by any means that they're the only game in town when it comes to CRM or enterprise, or enterprise software in general. But boy, they, you know, at one point in time I said Microsoft and Google were the two companies I looked at that I would put money down at 10 years from now. They'll still be a major, major play. Now I would include Amazon in that picture. I'd probably push Google down a little bit. Although they're getting their legs back again, so they'll be back. But I put Salesforce in that place. I'd say Microsoft, Salesforce and Amazon, those are the three companies. At 10 years from now. You do have a lot of great technology. They obviously had a blowout quarter yesterday, right? So I could be wrong, and I may change my mind about this. But in reality right now, their business is still largely VMs. And I think they have yet really to prove themselves as sort of having defined a space in the cloud space that really makes them a marquee player. Do you think they can move up the stack? I mean, that's obvious. Well, they're going to do that with Cloud Foundry. I think Cloud Foundry. And socialcast. Cloud Foundry, in my opinion, will probably change that story. The one thing they have in their arsenal, in my opinion, that will really change the story for them in cloud is the success of Cloud Foundry and their ability to build a business around Cloud Foundry. I think it's a little early to declare victory there though. But it was a very phenomenally smart risk for them to do Cloud Foundry. Yeah, it's interesting about this discussion about platforms as a service and the SaaS integration and this rise of really these developers who have just become such a force in building ASPE. They're independent or folks who hack after work and stuff like that. That just, isn't that what's... That's the driver, isn't it? Isn't it? Yeah, I've got to say, this may be one of the first real movements where startup success with a new approach has put significant pressure on enterprise. If you look at a lot of what happened with web in the early days in client server, it was the success of enterprises and beginning to really identify how to use hyperlinking, how to use client server, right? Those things generally came out of the overall enterprise world trying to solve problems for the enterprise and then they bled out into, hey, wow, this creates a whole new marketplace for websites. In a lot of ways, I think this, when you look at cloud, the phenomenal success of startups in the cloud space has really opened the eyes of the enterprise world to what's possible outside of their own four walls and the enterprises are now struggling to get to the point where they understand how to address that and how to take advantage of the same things. You see it in big data already. I think there's been a lot of success in big data and a lot of enterprises beginning to understand that there's value there to be had. Infrastructure service to a certain extent for certain types of apps, but I think that we're seeing, we're going to see an explosion from enterprise of beginning to understand what it means to them, to be able to be very component-based in the approach to AT, very application-focused rather than server-focused in the way they do things. And yeah, it's all about the little developer, developers of the new king makers. I think Stephen O'Grady says that, right? Yeah, Stephen O'Grady says that, yeah. And I think that- I think it's right. I think that that's absolutely true in the cloud because cloud is an application-centric operations model like we were talking about earlier, not a server-centric operations model. So you made the move from Citrix to a startup. How are you enjoying it? Actually, I was Cisco. Cisco, excuse me. I mixed the Citrix and Cisco up, I'm sorry. Not really, I mix them up. But you know, Cisco, how is that transition? Well, I've worked for startups before. I like the somewhat established startup culture quite a bit. So I'm having a blast. This is a really good time. I'm doing what I want to do. I'm focusing on the problems I want to focus on. I have the opportunity to make this work by having some real strong say in terms of how things turn out. I'm excited about that. I think there are things about large companies, about the resources that are available, about the benefits and those kinds of things that certainly are very strong pros on their side. But the ability for me to go and make a couple of phone calls and sit down with the person who's going to make a decision about a key part of our user interface or whether or not we should integrate with a certain partner and being able to say, here's my argument for why we should or shouldn't do it. And have that be acted on is phenomenal. And at a company like Cisco, you have to spend some time setting up a major decision before it gets taken on. So this is the great thing about startup life that I'm really enjoying right now. And hopefully it won't be a startup life for long. And you're spending most your time in the valley then? No, I actually work from home quite a bit, which is really nice. What about your talking and spending most of your time in the region? But I spend most of my time in the Bay Area right now, although the company's based in Minneapolis, so I go there occasionally, going there tomorrow and it's going to freeze for a couple of days. And then, we're expanding worldwide. We've got the New Zealand development offices in place. We're going to open up some development offices in other countries soon. And we live online. We know how to do this as a company. Everybody is really enjoying the culture that we have. And so we intend to continue doing that. And the California office will grow as well. And eventually, we may do office buildings, who knows. But at this point in time, our offices. But at this time, we're very much being very agile and it's fun. It's a good time. Well, James, it's great to see you. Thank you very much. It's a pleasure as always. You're going to keep blogging though, right? Oh yeah, I'm blogging on Gagum now. And so you can find me just about every other week on average on the Gagum Cloud coverage. And I'm going to start my own personal blog again here pretty soon so people can watch me on Twitter, James Zerkert on Twitter. And when that launches, I'll be talking a lot about the science of complex adaptive systems and how that applies to cloud computing, which is all about how things can survive in a changing environment and how developers can help them do that. And yeah, I love blogging. That won't stop anytime soon. It's how you learn, right? It's how you learn. Well, it's one way you learn, yeah. It's how you learn, yeah, exactly. Well, good. Thanks, man. We'll have a good trip. Thanks, I appreciate that. Talk to you soon.