Blogs

RedMonk

Skip to content

Applets to Ajax to Apps, with Stu Stern of Gorilla Logic- make all #016

What are people using the develop applications and mobile apps now-a-days? A whole lot of Object-C for iOS, with an eye towards Android and HTML5 – and when it comes to corporate apps, there’s a fair amount of Flex to be had. That’s what the folks over the consultancy Gorilla Logic have been seeing of late, at least. In this episode of make all, I talk with Stu Stern of said gorillas about the stack choices and projects he’s been seeing. We also cover unit testing in Flex and mobile, as well as plenty of other little topics here and there – like the history of applets!

Download the episode directly right here, subscribe to the feed in iTunes or other podcatcher to have episodes downloaded automatically, or just click play below to listen to it right here:

Show Notes

  • Gorilla Logic history.
  • Mobile stack choices.
  • What’s “wrong” with Xcode (Xcode 3 at least)? Team support, stuff that you’re going to do in an enterprise environment is a pain, debugger is laughable – Xcode is definitely no Eclipse. That said, we recommend that for external facing apps, you gotta go native.
  • Web-page driven apps vs. full-on client apps (like mobile apps).
  • HTML5, GWT, Ajax, and all that.
  • Switching to Flex development – how have the Gorillas seen the use of Flex evolve over time.
  • Types of Flex applications seen of late: workflow designers, drag-n-drop, graphically wire things up.
  • “If you don’t have a problem with the Flash Player, use Flash.” For CMS, using other stuff, but for apps, why not Flex.
  • For others, web stuff, seeing lots of GWT and jQuery.
  • What’s the Flex toolchain look like?
  • Testing allt his stuff – comparing Flex to web apps.
  • Java + Flex a common stack? BlazeDS talking to Tomcat, Hibernate, sometimes Spring – Flex on the front-end

Transcript

As usual with these un-sponsored episodes, I haven’t spent time to clean up the transcript. If you see us saying something crazy, check the original audio first. There are time-codes where there were transcription problems.

Michael Coté: Well, hello everybody! It’s another episode of ‘make all’, the podcast about fun and interesting stuff with those damn computers.

And this time, as we have been doing recently, we’re kind of taking a survey of what people are doing out there and the different sorts of technology choices they are making for interesting types of application development. And to do that, we have a guest with us. Do you want to introduce yourself, guest?

Stu Stern: Yes, I am Stu Stern and I am President and CEO of Gorilla Logic and we are an application development firm based in Boulder, Colorado.

Michael Coté: And do you want to give a brief sort of history of the company, because that was one of the reasons I was interested in talking with you as you’ve sort of been around for a while as they say. So it seems like we had an interesting discussion about the evolution of different types of applications and choices and things like that?

Stu Stern: Yeah, so let me — in terms of who I am, first of all, yeah, I am old doing this stuff for almost 15 years, and Gorilla Logic was found in 2002 by myself and a couple of other Sun Microsystems refugees. I was actually a Senior Executive at Sun and ran Java Consulting globally there for many years. I actually started that business in 1996 and right up till 2002 when we started Gorilla Logic, that’s what I was doing at Sun.

So you maybe wondering what I actually know in a real way about programming computers at this point, having been a suit, but actually I am the ‘CEO’ who writes code, and one of the pleasures of leaving Sun and starting my own company is that I did roll up my sleeves again and I’ve written an awful lot of code in the last eight years including two open-source tools, FlexMonkey and FoneMonkey, I was the original author of those tools.

And I also just have a long — before Sun I was building Real-Time trading systems on Wall Street, so have certainly built systems in anger and in dangerous environments.

Michael Coté: That’s right. So you must have been one of these people a few years ago when Twitter was failing where you’re just like, you should figure out these cue things, we used to use these for I don’t know global financial trading that was like up to the millisecond and it worked out just fine, there was a funny time back then. There was sort of like the enterprise crew who was not quite sure what was going wrong over there on the West Coast, if you will.

Stu Stern: It’s funny, when I first started doing the Java stuff at Sun and it was `96 so kind of the not quite the dawn of the Internet of course, but certainly that was kind of the year that the Internet started to get big in business, it’s an interesting Brochureware everywhere, and it was like the Internet it was hep and new, and all the stodgy companies that we are just having their minds blown by completely new technical challenges, and also just you know the need to kind of be hep and kind of the joke back then, I had this pitch I was doing, it was titled Suits and Tie-dye. And it’s kind of like the cool world meets the corporate world.

It’s interesting again I think with the rise of mobile now, additional shock to the system in terms of now needing to create compelling user experiences and certainly, similarly again having to adopt some fairly new, and in the case of Objective-C and Xcode, some kind of nauseating in some cases on new technology.

Michael Coté: Have you come across a phrase like Brochureware for mobile apps, has someone come up with some? And for those who don’t remember I guess Brochureware was basically like you would almost literally and somewhat metaphoric, you have taken a physical brochure, a piece of paper and converted that to a webpage. And so the knock was that it was kind of like why -– it was not useful, it was just like a website for a website, but I don’t know, I haven’t thought about that but there surely, there must be some sort of phrase.

Stu Stern: I suppose we could just -– well it might now be referred to as a static website.

Michael Coté: There you go, the name got more technical.

Stu Stern: No, I mean I think it’s too much work.

Michael Coté: Yeah, you wouldn’t do a Brochureware Objective-C app if you will, that would not —

Stu Stern: Certainly I wouldn’t.

Michael Coté: Well, on that topic like you know I mean since you — it’s sort of like a wide range of plethora if you will, of like technologies and stacks you can use to do mobile app development and a fair amount of or some of what you guys are doing nowadays is just helping companies do their mobile apps, if I remember whether it’s sort of internal or external sort of facing things and I am curious.

Just to lay out the assumption that I come across quite a bit, it seems like there are sort of three tiers of choices that people go through. I’ll be interested to hear the decisions people go through when they are making apps and it’s sort of everything kind of knows that they need to do an iPhone app, right?

(00:05:07)

But they also feel like the better choice would be to do sort of like an Android app for some reason. And then the even better choice would be if they could do an HTML5 app, because it would be more cross-platform and everything. But I kind of feel like the shortest path to an acceptable, if not great victory, in a lot of people’s mind is just to whip out the Xcode and start doing some Objective-C or something.

But I don’t know, I mean that’s kind of a tongue-in-cheek sort of overview of what I see, but when you are sitting down with people that kind of plan out their mobile apps, like what’s the kind of thinking they go through and then what do they end up actually doing?

Stu Stern: Yeah. No, I mean, I think you are right on in the way you have categorized it. I think that in terms of, people would like to use Android I think that’s because it’s good old Java and good old Eclipse. The SDKs are different, obviously the widgets are different but it’s not — I mean, Xcode, as I say, is quite a shock to the system. So it’s a fairly easy transition I think for people that have been doing Java UI Dev to make the transition over to Android.

But kind of an interesting thing I think — well, before I get to that, let me back up and fully answer those current questions. In terms of I think — yeah, I mean, people would like to use HTML to be cross-platform. Theoretically, you can reuse assets you already have on the web, just rescan, obviously the footprint is different.

So what we are seeing is most companies kind of go through anger, denial and realize that yeah, they are just going to have to bite the bullet and deal with native Objective-C and at this point in time you can’t do — with a Mobile Safari app, for example, you cannot get the richness of user experience, you don’t have the palette of user components available, of the fancy input gestures.

And obviously Apple raised the bar very high and so if you don’t want your app to look cheesy, you have got to go native.

Michael Coté: Yeah, in this conversation I always think of — at an even more encompassing level, there was that post that some Evernote guy did a while back saying how they are glad that they chose to do native desktop applications and native iPhone apps and whatnot instead of having a — I guess using the modern day equivalent of Swing, if you will, to have the same platform everywhere.

I guess we haven’t quite solved the write one UI that runs anywhere problem at the moment in the mobile space.

Stu Stern: No. Although I think Adobe, Adobe was kind of on a good track there.

Michael Coté: Yeah, that’s a good point.

Stu Stern: So unfortunately kind of Apple derailed — just refusing to let Flash on the phone. But we certainly, as a Flex shop and other thing that we are really into, we love Flex as a UI development environment, we think it’s really, really well done, really nailed the UI development program I think, the programming problem.

Kind of a lot of stuff that was very weird in the Java space, all these permutations of Swing and JSP and JSF and Adobe just kind of took a step back and said, look, what are the issues we need to really address here in terms of binding values to things and event handling and so on and kind of dealing with the two-headed world of, there’s the world of code and the world of tags.

And with Flex, all that stuff is very nicely united and it’s not like you are moving from — moving from tag world now over to code world now, and this is beautifully interweaved.

So as I said, we like Flex; it produced beautiful apps, killer component kit, so we were very — we had high hopes for Mobile Flash and Flex, but of course Apple has created this artificial stumbling block for Adobe by saying, no Flash Player, although they have loosened things up now and Adobe is working on the Cross Compiler.

Michael Coté: Have you guys had experience with — is that what they officially call it, the Cross Compiler, but with the —

Stu Stern: I don’t know what they officially call it, and I am not — and I don’t know. I mean, I certainly have not heard that it’s ready for prime time yet, but I can’t say that definitively. I am fairly certain that that’s the case.

Michael Coté: Right.

Stu Stern: It’s definitely some days in any case.

Michael Coté: So like — one thing I am curious to hear, you speak to since you guys have experience in this is, in my wording, but you are kind of saying this like to ask the question, so what’s wrong with Xcode and Objective-C, like what’s the problem with it, why is it so onerous?

(00:10:00)

Stu Stern: I go to first say that Xcode 4, I have not put through it pace as yet. So Xcode3 in terms of team support –- stuff that you are going to deal within an enterprise environment and a team environment like you are managing code across a number of people is a bit pain in Xcode, doesn’t work well with tools like Subversion. The debugger is laughable.

Xcode is definitely no Eclipse and it is annoying -– I mean there are folks at Gorilla Logic that like to say, Apple has disdain for developers. It’s like they do it on purpose. It’s annoying and that it seems like that in a lot of ways it’s just Apple going out of their way to be proprietary not that Apple would ever do.

But you have this cross platform IDE out there called Eclipse that certainly they could have used as a basis for their IDE. So I mean, I don’t see anything, and the reason why they had to totally go off with Xcode and why not just go with you know with what’s arguably the industry standard now.

Michael Coté: Yeah, I mean, there is always lots of good and slash and conspiracy theories about why Apple does what it does. And one of them that falls — has a foot in both of those kind of -– both in the hard hat and a foil hat sort of world if you will. I don’t know, there is something about being to be able to control the whole platform and that allows them to deliver good product and so forth and so on.

And to some extent obviously like controlling the app store is nice because you then have the choke-hold on revenue in a good and a bad way and but I don’t know, I mean, I get the feeling that like, I am not sure the development tool is really that important of a control point. Like in this day and age, right? It doesn’t really -– like it is kind of like in the olden days as it were, it was important to control the full stack, but that’s kind of like really old thinking. Like if anything, as new as that kind of thinking can be is kind of like the mid late 90s maybe.

Like I am never really sure why controlling the tooling matters, bubbles up, up the stack as much as some companies seem to think they will.

Stu Stern: Yeah. I mean, certainly one cynical view of it might be that Xcode only runs on the Mac, so certainly they are forcing a lot of developers to move over to the Mac.

Michael Coté: That’s true, I mean there is that, that’s kind of a cheesy – I mean it’s kind of a cheesy motivation in the sense that I feel like those developers would buy a Mac anyways.

Stu Stern: Right. Certainly, as I am saying, as I am sitting here in front of my MacBook Pro and it’s like dearly love. But it just seem like -– of course, they just have to rewrite all the stuff that they would just be inheriting Eclipse and work on things like better debugger.

But again, I have high hopes that Xcode 4 is going to be bit better. But Objective-C in and of itself, I mean, ignoring the id, I mean Objective C is pretty, as I said is a big shock to the system when you are coming from languages like Java and any language really. Objective C is very –

Michael Coté: Yeah, I mean if I remember it’s from the next world, right? It’s a language so it’s like a first generation OO, Object Oriented language, which in the height of utopic OO, there was a lot of onerous things done to use that word again.

It seems like there was a lot of sticking to the orthodoxy of this idea that you had these like almost -– not almost, you kind of have platonic forms or classes and then you have the instantiations, and then I think something that kind of got dropped out of the way in the OO world was this idea that you are always passing messages back between them. As if they are like these orbs floating in the world, passing things to each other where you are sort of like developing random mobile app to maybe like help buy you coffee somewhere and you really could give a damn about all these great platonic forms and messages and everything you just want to sort of like exchange some money.

Stu Stern: Yeah, it is certainly yeah I mean, in terms of the utopic view, I mean, yeah, it’s got this whole weird message thing. I guess it’s supposed to be small talky, so it makes — the syntaxes is awkward. Beyond that there is just the annoying stuff around header files and just throw back to the past.

Michael Coté: And you know what, you said sort of lack of team support is always -– or to put it in another way, the kind of like easiness with going along with whatever tool change your team has to collaborate, right? I mean that’s always that bucket of junk goes by a lot of names and that is always –- that’s kind of the mark of a matured tool that it very easily fits with whatever way people want to manage stuff.

(00:15:08)

Including various version control things and being able to pass things around, and I think it is always easy to overlook that when you are working on a tool, because I don’t know, a lot of people I feel like when they are –- and the Java world is always good at not doing this, but they are not focused on version 4 of an application. They are really focusing on getting that first version out and they are not thinking about the sad sack, we are going to have to support the 4th version of it.

Stu Stern: And there are just other — like things in Xcode and again, maybe this better in Xcode 4, but generally my header file for me, like stuff like that that Xcode just doesn’t do, default property, and you got to go, hack a little amount of code in four separate places like, why won’t you just do that for me. And there is no good refactoring support and like I say, all the stuff that it has just spoiled us with, now we are back.

Michael Coté: So we have the sort of Xcode silo if you will. And so when you are looking at doing mobile apps like what are the other stacks if you will that come up that are sort of buyable options that you feel like you can use with the client?

Stu Stern: We really don’t – certainly for customer facing apps, when you got to provide a compelling user experience, our strong recommendation is you got to go native. But there are certainly other types of apps. It’s nice to be able to -– on the other hand it’s nice to have a full blown client side app that you are building, as opposed to trying to work around, whacked out kind of web application architecture. I think as you and I discussed briefly over the last week, that whole kind of page based model was not -– people did not go to that because it was a intelligent way to build apps, it was really response to technical constraints, bandwidth constraints primarily. You need to have these ultra thin clients.

I think people forgot along the way. I mean people kind of got brainwashed, like yeah, we build apps this way, because it makes sense. But it really doesn’t.

Michael Coté: Yeah, I mean, just to interject like, I was — funnily enough, coincidentally I was driving around yesterday and I was thinking like, I always like to spin up these whacky theories and the theory that I was spinning was that most major technological successes are like a misuse of technology, and I was thinking like the web for one is like what we do with the web now? I mean, it’s been forced into how we use the web, but initially, it was nothing to do with developing applications. Just like you are saying, it was about putting documents on the web and at best linking between them. And as well as HTML and HTTPP are both oriented towards that.

So we get these -– we get exactly what you are just describing, that sort of a page based application.

Stu Stern: Yeah, and in 1996, when I joined SUN the expectation was okay, Applets, this is going to takeover. Now you can actually deliver an application painlessly to the desktop, but again, your bandwidth constraints. There was also a lot of browser compatibility issues at that point in time with VM.

So people started moving and doing this really whacked out page based stuff and it was a couple of years before we settled down on how that stuff would look.

But once that kind of -– so called MVC3 model matured, people are building stuff that way and they are using things like struts, it was always — as I said whacked out way to build an app. The natural way, in un-natural act really. The natural act is to build to the client-side app. It’s not the clients server architecture, it’s massively scaling multi-tier, middle tier all that, but on the desktop, you just look at like writing an app, response to events.

And people I guess — SUN really just never swing — just look like crap in the early days, obviously never got traction.

So Abode, which is like, brought us the Flex, okay, finally client-side framework that lets me just write a client-side app and looks great, and we don’t have the technical constraints any more that kept us from doing that ten years ago.

So on the other hand, I will say, it is still nice to be able to build even an Objective C app and you are building an app as opposed to be doing some kind of whacked out rendering HTML on the server side.

Michael Coté: And when you guys are like collaborating with your clients, are they sort of getting that shift from webpage app to — I don’t know, a client app to use that term or is that something that you sort of have to massage into them if you will, like how do you draw out that distinction?
.

(00:20:10)

Stu Stern: It’s surprising that I have this conversation I am having with you, with customers oftentimes, because as I said, people just have kind got of — they forgot why we started building apps in this weird way.

So a lot of people just don’t know — like I said, they don’t really see a page based app versus a rich app.

The other thing obviously is the lines have been blurred with AJAX, which, as I say about AJAX, I mean, it’s a greatest branding campaign in the world because it’s not really about in terms of asynchronous JavaScript and XML, but it’s really about is JavaScript. When you are deciding to do AJAX development, you are really doing JavaScript development and I guess people were kind of embarrassed to be upfront about it, so they hide behind this AJAX.

Michael Coté: Yeah. No, I hadn’t really thought about that so explicitly, but I think you are right. I think the reputation of JavaScript has been laundered and refreshed through AJAX. I mean, nowadays, like right now especially, JavaScript is extremely — well, relative to what it used to be, it’s extremely respectable and that’s a good point. Probably no one would run around calling it JavaScript programming.

Stu Stern: And look, and don’t get me wrong. I am not a total JavaScript hater. I mean, I have an issue with — my issue with JavaScript is same I have had with a lot of high level scripting language is the tool support is just not as good.

I mean, one of the things that I lament most about Java’s death on the front-end, although — yeah, I think Android is resurrecting Java on the front-end, but the lack of tool support or just the inferiority of tool support for other tools. I mean, Java, the tool support is just so mature at this point. Eclipse, NetBeans, I mean, just beautiful, beautiful environments for doing Java.

So I think you can’t really have a discussion about development platforms without talking about the — or about user interface platforms, let’s say, without also thinking about the entire development tool chain behind it, and again, things like debuggers, refactoring support, how are you going to find the class that the method is being invoked on, all these things that Eclipse does very, very well and NetBeans do very, very well.

So coming back to — so you have got kind of this hybrid model of delivering pages that then have enough JavaScript in them that they all really are client-side apps. Of course that whole AJAX architecture, so to speak, or really more accurately, the whole kind of DOM Based programming model, doing that client-side stuff, also really evolved and fits and starts and it’s not really a coherent architecture.

Michael Coté: Yeah, it’s funny, because it’s very analogous to what I feel like HTML5 is now. There is kind of a definitive core kind of but then it’s a very small sort of maybe here is the thing that we can all agree on, but then everything else is just Venn diagram intersections, it’s all very fuzzy outside of that.

Stu Stern: Yeah, and again, what are you really — HTML5, again, is — it’s not really about HTML5, it’s really about JavaScript, right?

Michael Coté: Yeah, yeah.

Stu Stern: What are you writing in the client-side logic.

Michael Coté: Yeah. And I guess at best — I mean, to be — I am usually overly, I guess, cynical, in my phrasing about HTML5, but to be fair to it, I think the best definition that people work with is sort of — like exactly what you are saying, there is a lot of JavaScript obviously mixed with HTML5 and CSS, but then I think the more important thing that people usually mean is in a mobile context having some access to sort of native things that they wouldn’t normally have access to, whether it’s storing things locally or getting access to like the geo-location stuff or whatever.

Still, it’s not like there is like a 100 page spec of HTML5 you can download, that’s interesting.

Stu Stern: Yeah, and again, what IDE are you using and how are you debugging and all the rest. So HTML5 is — we are going to get there, wherever there is, but I mean today it’s still — as I say, so you are doing HTML5 development, what does that really mean? What are you using?

Now, on the other hand, GWT we like, although even in GWT you develop in Java, then you generate the JavaScript, to try to — they try to protect you.

And actually, recently I was struck, as I was using my iPad, even though I am kind of badmouthing Apple, as I said, they have disdain for developers but I love their products.

Michael Coté: Well, it’s sort of like — badmouthing Apple is like people who are like complaining about government spending as a drive down a federally funded highway and taking an exit ramp to go to an outlet store that was built with federal money. It’s sort of like — it’s just something fun to do.

(00:25:04)

Stu Stern: But coming back to, can you do a browser based app and have a decent user experience? I look at like Gmail, their iPad version, it’s very nice. They did a really, really nice stuff. You certainly don’t have the rich functionality of a native app, it would definitely be hotter, but it’s very, very usable.

So coming back to what’s the right tool for the job, one of the big — certainly one of the big considerations is, how sexy does the thing need to be? And I had an amusing discussion recently with a customer about an app that they were giving to their sales folks and they were very fixated — and for what they needed it. I mean, we believe they needed a native app, but they were very fixated on user experience, compelling user experience.

And I was just discussing like, look, you have got a captive audience here, it’s not like they don’t like your — and this is for their sales people, it’s not like if they don’t like you app, they are going to go use your competitor’s sales support app. This is the only app they can use, so clearly it has got to be usable, benefiting obviously, but it doesn’t have to be sexy.

Michael Coté: Yeah, yeah. And there is like — and you guys must encounter this quite frequently since you work on — like you were saying, internal facing and external facing stuff, and I feel like — when people are thinking about UX, a lot of people haven’t quite internalized the idea that UX on a consumer site, to some extent, means wasting a lot of your user’s time.

Because if you are doing a consumer site, it’s almost like you want your user to stay on your site as long as possible. Like with something like Facebook or something like Google, or Amazon I should say, you want them to buy more stuff, whereas to some extent for a corporate app, it’s kind of like the opposite, especially with some sales enablement thing. Like sales people are notorious for not wanting to fill out their CRM stuff.

So the less time they have to spend entering in the data is almost the more usable the platform is. So there is this stark contrast, if you will, I feel like between consumer usability and I don’t know, corporate usability.

Stu Stern: Yeah. I mean, it’s — and I think — look, there is just hotness. I mean, there is usability and there is sex. Like that Monocle feature in Yelp, the Augmented Reality thing, and clearly like — they don’t have to have that, but it’s totally way cool. It definitely increases your love for Yelp.

Michael Coté: Yeah, we could imagine like a coffee machine salesman having that right in his tool and he holds it up and he looks around him and he sees all the opportunities overlaid onto reality. That would help them do more sales I think. Some AR and prospecting.

Stu Stern: I suppose you can argue that it increases employee satisfaction, but I think you should probably just give people a raise and it will cost you less money than trying to build the sophisticated apps.

Michael Coté: So we have bumped up against Flex development quite a lot and I am curious to hear — kind of starting out with kind of like a historic thing of how you have seen Flex play out to work on application — like mostly corporate apps, but any kind of apps, because I feel like — looking at Flex, I feel like about maybe three years ago there was this moment where Flex was kind of poised to take over the front-end for Java applications, if you will, like there was the whole like Bruce Eckel was all enamored of Flex and other people were looking at it kind of seriously as a, I don’t know, as a Swing or AWT or SWT replacement or whatever, but then it kind of somehow fizzled out.

And I was all into the RAA world of like that’s a great way — as you have said many times, it’s a great way to develop UIs and everything, so we should kind of move towards that.

But I don’t know, something got a little wonky during they way, but there is still a lot of Flex development going on. So I mean, with that sort of spilling my brain on the table there, over the past few years like what’s been the evolution of Flex to how you guys are using it now?

Stu Stern: Well, we were seeing great momentum in the adoption, as you say, I mean, there was kind of initial excitement. It was funny actually, I mean, myself, when I first heard of Flex, which was maybe, I don’t know, four years ago, one of the guys at GorillaLogic, one of our Gorillas, as we say, was saying, hey, we were starting up a new app, new project and we were kind of taking a fresh look at the tools out there and this guy was very strongly recommending Flex. I said, I haven’t even heard of it. I said, what is this thing?

He said, well, it’s this thing, it runs on the Flash Player. I am like, wait a minute, a Flash Player, shut up. What are you talking to me about? Like we are not building an animation here, but you wouldn’t stop and somebody I respect , so finally I took a look and I was just so-so impressed.

(00:30:09)

And so I think that a lot of it was, if more people are taking a close look it was just such a no-brainer, it was so superior as a UI development platform and beautiful, beautiful results.

So, certainly ways you to build an app using Flex and then doing arguably with some –- even with someone like GWT, an evolved framework like that, and the results look killer. So it seemed like a no-brainer to us, we expected it to take over the world. And we were seeing, and what wasn’t happening at lightning speed, we were definitely seeing more and more and more Flex usage up until the infamous Steve Jobs’ letter of Flash over my dead body and that made people suddenly be very skittish about the Flash Player.

So I think that a lot of people have kind of put the brakes on Flex, a lot of people aren’t even looking at Flex now, because they just think, oh, no Flash on the iPhone. On the other hand, you know, again having talked about how you really need to go native on the iPhone, it’s like okay, well, it’s an island over there anyway.

Michael Coté: Yeah, yeah.

Stu Stern: So first the iPhone you’ve got to deal with there is a one-off, but for building certainly a web app today, and again an app, some kind of transactional thing that’s got rich, or let’s say – just something that’s got a rich user interface. We still think that it’s absolutely the best solution, and certainly with Flash Player out there in the world and virtually every buttons are out there. So I think that that companies that kind of take a step back and really think this through, we still see that Flex is a great option.

And Silverlight for that matter and I am not a Silverlight guy myself but I’ve heard good things about it, it’s supposed to be just like Flex, but that type of platform. Something with a client-side runtime that lets you do — put a real app out there. Again as opposed to doing what I still consider to be an elaborate hack using JavaScript and dealing with the Browser DOM.

So we’re still seeing, and certainly companies that are doing like we’ve worked with a couple of companies recently that are doing various types of — and these were kind of cloud service kind of companies that have fairly sophisticated apps that they are giving people access to from the cloud, and things that are doing like workflow designers, things that actually, you’ve got a drag-and-drop things, graphically wire things up, it’s hard to imagine how they would do to things like that without using something like Flex.

Michael Coté: Yeah.

Stu Stern: So certainly for any kind of truly which web app we’re definitely still saying people, look around at what’s out there at the site, yeah, Flex really is the best solution. So it’s not — I don’t know that it’s -– I would the obituary for Flex at this point, I mean there is still plenty of — absolutely plenty of Flex going on out there but it’s certainly not huge, certainly not taken over the world, no doubt about that.

Michael Coté: You are getting into like some of the requirements that would drive you to look at Flex favorably, and can you kind of detail some of the other types of applications that you have been seeing Flex used for, you guys have been helping out with, I mean I am always curious like what the workloads are, to use an archaic term, what the stuff is?

Stu Stern: Yes, what we still tell people is if you don’t have a problem with the Flash Player use Flex, and it’s for anything, I am sorry, not for — there are two sides of the world, as I know, you know Michael, there is content and there is apps. So for the content side, okay, yeah, whatever. Content Management System, Drupals and — we love to hate it.

But things like Drupal, and then there is the actual app dev side, and so if we are going to build an app, even a simple app, you are not looking for rich user experience, Flex is still -– it’s easier to build an app with Flex. And especially with Java on the backend, I mean it just works so beautifully with Java, with stuff just coming down from — over HTTP connection and then binding through objects and your app, it’s the whole blaze, the S framework for talking from the clients and the server, are just beautiful stuff that are going to make building any application easier. So we always recommend it and where customers really don’t have a choice. When there comes this point, where yeah, what we are trying to do is so sophisticated from a UI perspective, that we would be insane to try to do it without Flex or perhaps Silverlight.

(00:35:07)

But then certainly for a simple app, you could get away with using other — we see a lot of GWT and a lot of jQuery for people that are trying to get rich functionality but have some issue with the Flash Player.

Michael Coté: Right, right. And since we are talking about Xcode in relation to like team support and stuff like that, like what’s kind of the, I don’t know, the tool chain of team collaboration or ALM in the lower meaning of that, that you guys use around like Flex app development, like what does it look like?

Stu Stern: Yeah. You have got to use Flash — well, I guess in here you can use the command line tools, but we use Flash Builder, virtually everybody uses Flash Builder. And Flash Builder is — it’s an Eclipse plug-in, so fundamentally it’s Eclipse with ActionScript compiler and various other Flex specific tooling added to it. But it feels pretty much like Java development, thought not quite as good.

Again, as I said earlier, I mean such beautiful tooling for Java at this point in time, but it’s quite good.

And we use Subversion. I mean, there is nothing — I mean, it’s fairly — Flex tooling I think looks just like Java tooling other than you have got this Flex specific stuff in Eclipse.

I am trying to think what are the other key parts of the tool are. Well, things, again, like things that are analogous to Java, like FlexUnit. Obviously we use FlexMonkey, when you plug-on free and open source testing tool for Flex applications.

Michael Coté: That’s right. Let’s speak of that a little bit, because we talked about that when we spoke obviously and I think — is there — whenever you write a testing framework for some framework, you kind of get very intimate with the framework. So, I wonder if you can compare kind of like the testability of a Flex front-end versus the testability of, I don’t know, whether it’s an AJAX or it’s GWT, or jQuery or whatever front-end, is one of them easier or better than the other, or are they just kind of different but sort of the same, if you will?

Stu Stern: No, I think that rich Internet apps, and I am including mobile apps in that category, there are inherent challenges to doing recording and playback for those types of apps, there is just a much wider palette.

When people think about record playback testing tools like FoneMonkey or FlexMonkey, as I did, when I started doing FlexMonkey, the naive view is, well, look, it’s all event based and these RIAs, all I have got to do is just load the events and then I have just got to play it back the events.

Michael Coté: And then magic.

Stu Stern: To me. And then you bump very quickly into reality, which is, okay, well, semantically that’s really low, like you can’t be recording mouse events, like you don’t want to record every mouseover event, every drag event, every click down and click up necessarily, so the first thing is this filtering problem.

But then there is also this kind of semantic issue of, ultimately what — I mean, you could get away with just recording the user interaction, mouse click here, they typed over here. But then you wind up at the script that’s very low level, very unreadable, very un-maintainable. You don’t want to be recording they clicked on this coordinate, you want to be saying, hey, they opened the combo box, hey, they selected this option from the combo box.

So very quickly — then as you are thinking about that problem, you start to realize, oh, I really need component specific recording and playback code for a lot of components. Like there is a lot of inherited behavior, because in a lot of case it is just, they clicked on me and that’s the essence of the recording of the playback, so there is a lot of inherited behavior certainly.

But then there is an awful lot of component specific behavior that you have just got to write code. So it’s definitely — so in terms of Objective-C versus — or more accurately Cocoa Touch versus Flex — you know actually in terms of automation, Objective-C, and it’s not only so much an Objective-C thing, but a kind of lower level language, a language that hasn’t removed the guns and knives, as James Gosling once characterized Java, being C++ without the guns and knives.

(00:40:01)

The guns and knives are actually very, very useful when you are trying to do the kind of whacky stuff, we have to do non-invasively get into your app and intercept, what’s going on and play things back.

So being to be able to do the low level kind of things that Objective-C, that for normal app development are really guns and knives. They are just places to get into trouble and get really nasty bugs to track down.

For that kind of stuff, you can do all kinds of interesting tricks. Certainly one of the big challenges that anybody that’s dealt with any kind of RAA testing and you’ve been using your big money tools like UTP, component identification. So say, I am clicking on this button. Well, how do you identify this button?

So one of the things you bump into very quickly with Cocoa Touch is — yeah, there is no such thing like component identifier. There’s not even an id attribute.

Michael Coté: They are just like events from anonymous sources?

Stu Stern: It’s like it’s not addressed. So we’re looking on like — what can we use and we find, oh, accessibility label. Okay, every bolt components have an accessibility label on them. So, it’s kind of gratify — we thought it was really weird and hacky, but we are like whatever, it’s the only thing we got. So we were kind of gratified, later, last year when Apple came out with the UI automation framework that — that’s what they tell you to do. You got to put accessibility labels on everything, that’s how we do it.

Michael Coté: Yeah, that is clever. Once again, it’s using technology in an unintended way — but it works.

Stu Stern: You are doing well, all doing good, right, so you are at least — you are making. That’s about the same time you are going to make it attestable. So may be Apple was ingenious in this respect.

Michael Coté: That’s right, that’s right. Well, great. — I think we have kind of like — I am sure we could speak for a long time about all these fine choices and platforms and everything. — I think we have gotten a good overview of kind of just like — when you guys are working with people to figure out these different apps, whether they are web apps or internal things like what — the kind of stack that you guys end up using. I guess, there was just one more thing, like on the flex front, that I am always curious to ask you, but then you mentioned that kind of in passing.

So you mentioned having a lot of Java on the back end and using BlazeDS to connect the Flex front-end to the back-end. I am curious like what typical sort of boxes and arrows of the stack reflex that. Is it very typically Java on the back-end, with sort of using Blaze or HP stuff to top with the two of them — what’s kind of like that —

Stu Stern: Very typically — yeah Blaze, talking to Tomcat. The server end of Blaze running in Tomcat and then, it’s just a kind of where we are looking Java back there so, typically hibernate. And sometimes spring — certainly back there, you might be doing Blaze talking — I am sorry to –- I said swing, I mean to say spring. But many of that — kind of a very typical looking Java back end, there’s not — I don’t think it looks different terribly than what you would have on the back end of a web app.

So in terms of multi-tier architecture, just kind of taking that with a page or something, we would go, that’s kind of moving over to the front end. So the usual stuff back there, you don’t — hibernate — so nothing shocking.

Michael Coté: So the back end is kind of like the typical enterprise Java Stack that people are comfortable with. Talking about — more importantly the modern day enterprise stack which doesn’t really have an app server, but its using Tomcat as the container as people like to say.

Stu Stern: Yes, absolutely.

Michael Coté: Sort of the run time environment.

Stu Stern: Or Tomcat or the more equivalent one, you might be using WebLogic or Jboss.

Michael Coté: But it doesn’t sound like there’s a whole lot of EJBs running around?

Stu Stern: There’s not — there’s one customer — a big customer we are working on right now. So yeah, — so it’s not like we don’t run into it. There are definitely people that do the whole EJB thing. Especially if you are building a kind of a captive back-end, you are building a back end to support a specific UI, you certainly don’t need EJBs to do that.

Oh, yeah let me clarify that — EJB3. When you talk about object remoting as one, not really saying too much EJB like that, but certainly EJB 3 is an year-old, something like hibernate, yes, plenty of that. It’s kind of annotation based persistence definitely. But it’s a typical back end Java stack. As I say, I mean Blaze just mixed the integration with Flex so painless, that we just think it’s a great end-to-end architecture.

Michael Coté: Yeah, it takes care of that — going way back — all that fuzzy message passing between the magic orbs.

Stu Stern: Serialization, de-serialization stuff.

Michael Coté: Yeah, that’s always nice to not have to worry about.

Stu Stern: Yeah, absolutely.

Michael Coté: So wrapping up here, if people want to find out more about the Gorillas if you will or yourself, are you guys in the Twitter and you have got a website and all of that, like what do you want to post here at the end for people to get more information if they are curious.

Stu Stern: I am not at Twitter, but www.gorillalogic.com is the home of the Gorilla’s and —

Michael Coté: And I have to say, — I was pleasantly surprised that you guys use Gorilla’s even more than I thought you had pictures of Gorilla’s so that’s fantastic.

Stu Stern: Yeah, when you look at my picture on the management page, I have got a hair cut since then. But gorilla.com, is also the home of our open source projects, you can get information there about FoneMonkey and FlexMonkey. The Gorilla Logic blog is also quite an interesting place, we do actively blog. So yeah, come and see us.

Michael Coté: Yeah, well, great. I appreciate you just sort of hanging out here and diving into the stack stuff that you guys have been seeing. That’s always fun to talk about. So thanks.

Stu Stern: Yeah.

Disclosure: see the RedMonk clients list for clients mentioned, like Adobe.

Categories: make all, Programming.

Tags: , , , , , ,

Links for March 29th through March 30th

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Links.

What's in your stack with Serge Knystautas, PrestoSports – make all #015

Hear what’s in the application stack for a high-scale, college sports-team web application service. I always like hearing about the stack “metal to glass” that a team uses to deliver their software, and we get that here with Serge Knystautas from PrestoSports.

Update: the first version of the file had the audio split between the right and left, which is terrible. I’ve updated the file so that the audio is balanced, or, “normal.” It should be fixed int he podcast feed as well. Apologies for the error!

Download the episode directly right here, subscribe to the feed in iTunes or other podcatcher to have episodes downloaded automatically, or just click play below to listen to it right here:

Show Notes

It’s March Madness which means people in the US freak-out about basketball and want to interact with the teams and their data all the time. This spike in traffic for the duration of the madness would seem to make a perfect case study of applying cloud computing, if not just high-scale web operations and application development. Here, we’ll talk about one such application (from PrestoSports): how it was built, the traffic demands, and what exactly makes the stack “cloud” versus just another web app.

  • PrestoSports – we go over what the application does.
  • Integrating with the social site du jour.
  • The need to federate data over web sites.
  • Getting into the stack: the key driver was scalability and performance. Some cloud talk.
  • Software used: a proprietary CMS, Velocity, lots of Jakarta commons stuff.
  • What are you using to monitor and manage it? Nagios, some JVM requests.
  • Working with failure – how that’s built into the system.
  • What’s the scale of people working on this: 5 customer support people, 2 web tier folks, 5-6 Java developers, with 1-2 on third level support.
  • How does Java work out here?

Transcript

As usual with these un-sponsored episodes, I haven’t spent time to clean up the transcript. If you see us saying something crazy, check the original audio first. There are time-codes where there were transcription problems.

Michael Coté: Well, hello everybody! It’s another edition of ‘make all’, the podcast about fun and interesting things with those damn computers.

As always, this is your host Michael Coté and I have got a guest calling in from remote. This is going to be one of our sort of, for lack of a better phrase, a stack profiles sort of pieces. I had someone over at the ASF, the Apache Software Foundation, tell me about kind of an interesting application using a whole bunch of Apache stuff. So I thought it would be a good chance just to kind of see what one team has used to build the application they are delivering, and to get to that, why don’t you introduce yourself guest.

Serge Knystautas: My name is Serge Knystautas; I am the Founder of PrestoSports, which hosts college sports websites.

Michael Coté: Can you give us an idea of what the websites or the apps look like, like what are they helping people do?

Serge Knystautas: Well, they are the official athletic website for a lot of college team, so very timely for March madness that’s going on. Butler and VCU; there are two Cinderella teams in the final four, they have websites with us, which allows any of those fans or anybody who wants to know more about who are these unknowns in the college sport space. Who are they? Who are the players? What are their schedule, stats, stories? How did the coach name Shaka get his name? Everything that you want to know about these teams, the schools can use our technology to publish that information out for web and mobile and however they want to get to it.

Michael Coté: I mean, can you give us a sense of sort of kind of both ends of the updating the site and people browsing the site? I mean, starting out with sort of like, for lack of a better phrase, what’s the updatability of this site? Like I imagine it’s a lot more than as we used to call brochureware. That like you said, there’s schedules in there and I imagine people are going in there and making it kind of a lively living site.

Serge Knystautas: Yeah. I mean, I think — we call it a Content Management System tailored to sports information. So a lot of it is just ad hoc Content Management System of uploading images and HTML, but then there is a lot of workflow around sports. Both there’s sports specific information, like I mentioned about player bios and schedules and statistics, stuff that you don’t find in most websites.

But then there is also a whole lot of workflow. A lot of the information that they are putting in is happening 30 times in the season and it’s the same kind of, prep my rosters, and then during the game these activities are going on, and then afterwards I have got to email this to the media and I have got to post this to my website and I send this to my opponent. So there is a lot of workflow that they are used to that we build into it.

So it’s both the types of information that they are updating and then how they go about doing it that’s tailored on the entering side.

On the fan side, it is a lot of learning what sports fans really like to do on a website. One information they like to do is certainly schedules and player information is one of the biggest things, but what’s becoming more and more prevalent is video clips, so they can go in and see highlights of what happened recently.

So that’s a merging of something we are integrating into websites. Certainly everybody has always wanted to — like to watch games, but the clips is really taking off as a way that fans can interact on these websites and get to that information.

Most of our customers are sports teams that don’t show up on CBS and ESPN, so this is really a way to get all types of information out to their fans. That you may have gone to a smaller school in the East Coast and you have now got a job in California and you haven’t been able to follow your team even though you are a rabid basketball fan. So this now lets you get access to all sorts of information. So that’s who we go after.

It can be alums. It can be other prospective student athletes. It can be parents, friends, all sorts of different types of people who follow these teams.

Michael Coté: So it seems like basically the teams are using it for most of their external communication as mediated through the web, if you will. And kind of like, like you were saying, for sending emails to media and press; it’s kind of just like their platform for communication.

And also like — I don’t know, I guess people call things like this social nowadays, but just that community around all the fans and the sports and everything, which I imagine is, depending on what’s going on, there’s sort of like a pretty high demand for lots of current updated news from many different people.

Serge Knystautas: Oh yeah. I mean, our customers are people who five minutes after the game is over are getting angry phone calls from fans saying, why don’t I know the score of the game? So it’s very timely information. And as you say, it’s external communication. So when we first started a number of years ago it was primarily web, but now it’s mobile, now we push that out to email, text message alerts, update, post to Facebook, tweets of course. So it has become sort of like this Content Management System which was just driving the website, it’s now driving the external communication.

(00:05:15)

Michael Coté: Well, that raises a point that I always kind of see anecdotally and theoretically, so it would be interesting to hear what you guys are finding, but it seems like increasingly if you have sort of like a web presence, if you will, or a mobile presence, that you are sort of continuously pressured to integrate with these external things like Facebook or Twitter and things like that. It almost seems like integrating with services has become an important feature for people.

I wonder if you have got — like what you are seeing as far as the pace, the fan base in your case or the user base, like what pressures are they putting on people to like, you really need to integrate with this new social site that I am interested in?

Serge Knystautas: Well, yeah, I think it’s huge. I mean, in fact, just from the developer, we have come up with a theme for a year of what we are working towards, and last year it was integration, because, gosh, it was Twitter, it was Facebook, it was photo store service, it was — I can’t even think of — there are like a half dozen other types of services like that where we are pushing out information.

It’s not so much that the website traffic is dropping, it’s just that fans have so many or people in general, consumers in general, just have so many different ways that they can be getting information, and the type of interaction you spend on a website is different than when you are watching tweets fly by or when you are browsing Facebook.

So it’s something that’s challenging for us, because you are not literally posting the same sentence as a text alert on the website and Facebook and Twitter; it’s all different types of engagement.

So you are trying to drive engagement and fan interaction on Facebook, but then you are just sending out little, as fast as you can, alerts on tweets and text messages, and then you are giving a lot of all that background and history and sort of digging into like, so how has this player played over the past three years against different types of teams and research information on the website? So it’s different types of information.

Michael Coté: I mean, it seems like there is this interesting need to I guess sort of like federate your content, and not necessary like federate the content like in a whole piece, but kind of just federate notifications about it, but then even in some mediums, like to have sort of standalone content, like I mean just tweetering the score of a game. That’s a nice piece of content there and it’s not like you really need to drive someone to a link just to see a score.

Also, I remember seeing some headline this morning that, I forget what company it was, but there was some major entertainment company where they have sort of — and it’s almost like I am putting it in air quotes, but they had lost traffic to Facebook. It’s kind of like what you are saying is their audience is still their audience, in the sense that they are paying attention to their content and whatever, but they are kind of in this other island of the web rather than being on their site, which is an interesting change that has gone on in the past few years.

Serge Knystautas: Yeah. And sports information is perhaps the most timely information you have. I mean, aside from maybe ‘American Idol’ or something else, you are not having as many spoiler issues as you do with sports.

The favorite story I like to have is, one of my employees two years ago proposed to his wife, but he did not call any of his family that night to tell them about the engagement because he would have found out the score of that Arizona basketball game and so he had to wait until the next day so he could watch the game and then call all his family to tell them about his engagement.

So it’s something where — yeah, you have got to get your message out. It’s not necessarily proprietary, but you want people to find out as fast as possible, otherwise they are going to go to another source for it.

Michael Coté: Yeah, yeah, definitely. So now that we have got that kind of application down, let’s get into the meat of the discussion and kind of talk about the software and the other parts of the stack that you are using for this — I don’t know, like you were saying, this kind of like hyped up CMS system.

I mean, I guess you can figure out where you want to start as far as the, from the metal to the glass or whatever, but like what did you guys kind of start with when — what did you guys start with when you were building this platform, like what language did you write it in, first off?

Serge Knystautas: The application is almost all written in Java. We used a lot of XML and MySQL. Everything is on Linux.

(00:09:52)

I think the key driver that we had designing this system in the first place was scalability of performance. In the sense that, whether you are updating the score about your kid’s ten-year-old soccer game or the score of VCU making it into the final four, it’s relatively limited our predictable number of updates coming in, but then the number of people who are going to see it can scale astronomically.

So it was really a function of having a predictable read/write interaction and making sure that we could scale that predictably and then have a system that could scale Neeto on a moment’s notice for all the fans, since that was very unknown and uncontrollable.

Michael Coté: Right, right. And when did you guys start out building this with those concerns?

Serge Knystautas: I would say 2004-2005 was when we really began it.

Michael Coté: Okay. So quite some time ago. I mean, I was thinking from — thinking about the sort of bio of the company that you guys kind of — you guys were sort of a pre-cloud sort of thing, if you will. So I imagine you have seen a lot of — I don’t know, it would be interesting to see your take on how those problems have been solved or not solved with all this whacky cloud stuff?

Serge Knystautas: Well, yeah, it was before cloud became a real common term. I would say that just in sort of — we are typically web app and so we are aware of what we need to be able to scale and not scale.

So I think cloud computing has greatly solved the fan side of things, or at least it’s making it more manageable, and there are some parts of cloud talk that’s useful to us and then there is some part of cloud talk that’s not.

But it was originally designed without knowing that we could rely on Amazon or Rackspace’s on-demand virtual computing or anything, anything that’s sort of the core of cloud right now.

Michael Coté: Yeah, yeah. I mean, you guys must have had discussions with your hosters to add in more hardware and things like that.

Serge Knystautas: Yeah, it used to be much harder to scale up like that, or just so much more system administrator time and it was designed to make it easy, but it was still laborious to provision the hardware, configure it, all that kind of stuff.

Michael Coté: Yeah. I mean, I spend a lot of time talking with people about the sort of operations side of cloud stuff, and I think that’s one thing that kind of gets overlooked because that’s part of what cloud is, is that there is a great amount of innovation in automating things, like you are saying, just spending less time scaling up.

Because as with any new technology buzz phrase, there is always the crowd that talks about how they have been doing that for years or whatever, and there is a lot of the practices in automation that seems — and driven by the technology out there, that seems pretty generally new that you get with cloud that wasn’t so available to people in the past.

So I mean, looking at the software, I mean I know you guys use a lot of Apache projects and things like that. I mean, can you give us a sense of what you guys have built this system on?

Serge Knystautas: Yeah. Well, the Content Management System is proprietary, it’s built of — while Velocity is our rendering layer, which is an Apache product, there are probably a dozen or so different types of Apache Commons, and I am trying to think some of the other — there is a lot of little projects in Apache that we are using. Kind of the core updating system, there is a lot of Spring/Hibernate kind of a standard web framework that we are using.

So it’s a lot of cost and code using a lot of the sort of what Java plus all the Apache projects lets you do in terms of building a really robust platform. I mean, I can say like our performance for our rendering system, which is how we generate all these fan pages, is really a lot of handwritten Java code that uses these different libraries as opposed to a single framework that lets us do it, because we really want to be able to control how all that data is done and where the caching happens.

And yeah, it’s a lot of tinkering at the very low level of this system, because that’s very costly for us if we get that wrong.

Michael Coté: I mean, can we dig into that a little bit more, because I think that is one of the interesting architectural decisions or more difficult ones that you are always making is to build something your own or get something, as we used to say, off the shelf or off the web now I guess.

And like you guys, like you are saying, like you have a proprietary CMS and a lot of the processing you do is proprietary. So like when did you sort of cross the line where you thought like, well, screw it, we are going to have to write our own stuff? Like how did that architectural decision get made in your head?

(00:14:55)

Serge Knystautas: There are a number of different web frameworks but a lot of them are geared towards what we call the admin or the updating side of things, whether it was Struts or some of the other frameworks that had to evolve, they are really geared towards more form rendering type of interaction, update this form, save this data in the database. Our system is all about basically taking — building a web page that could involve 40 different regularly updating information.

One of the challenges we had with ours is, we really had no ability to rely on a CDN to sort of push out information and just keep static copies of it, because our information is changing by the minute. So it’s a question that we were going to have to regenerate these web pages all the time, and it was just — back then, whether it was using edge servers or — anyways, it just wasn’t going to work for us. We had to be able to figure out how to generate those web pages very quickly based on our custom types of data.

So that part was done pretty early on, and then we went with more simple web frameworks of Spring and Hibernator, not simple, but kind of out of the box ways for how you are having our users update that information.

So that was kind of the bridges. Where there wasn’t any really great solutions, and it was going to be very costly performance issues, we decided to build that ourselves. And where it was, well, we are going to have hundreds of screens of the way users update information and we just want to make it easy for developers to turn those out quickly and tweak it, we will use kind of a more of an out of box framework to do that.

Michael Coté: Right, right. And how often would you say you guys go in and sort of implement features or do coding that’s based around just scaling up in performance versus sort of adding a new feature or something like that, irrespective of performance concerns?

Serge Knystautas: It used to be, I would say every couple of weeks we were rolling out new stuff to tweak. Where is some piece of data getting cached? The types of data we would cache. Where are we accessing that piece of data?

But over the past — partly because we kind of stabilized some of that stuff and sort of made some stuff easily configurable, we probably only do things every two or three months now that we are actually making changes. Like some of the stuff we are looking at is, we have really adopted clouded stuff in the past two years and then that’s — now, when I am in a situation where we are turning on 20 servers for a weekend, there is almost more configuration management that I need to get in there, and then how do you — I have got to make that stuff more manageable.

So it’s not necessarily — I may be tweaking it towards — in some ways making it slightly slower performing, if I was actually just building this on dedicated hardware, but it’s because I want to be able to just real easily scale up and not have to worry about configuring each settings on every new Java VM that gets going, I am going to make this simpler and just say, okay, we will just throw a little bit more hardware, because we are using the cloud here just to be able to handle this huge spike that’s coming this weekend.

Michael Coté: Yeah. I mean, that’s interesting, there is like the sort of body of thought called DevOps or whatever, where there is people kind of going to that, that similar thing where in order to have the performance and scale up that you want based on cloud, you would need to do a bit of, systems programming is wrong, but you have to do configuration management programming, which I think is a — it’s not really a thing most programmers worry about. But I mean it’s sort of a — it is that tradeoff you make, like you are not working on a user facing feature necessarily, you are just working on tweaking all your infrastructure and everything.

Serge Knystautas: Yeah. And sort of going into that — this was — as we were getting PrestoSports going, I was still doing some tech consulting, and what I did for the most part was helping people with performance issues. And the biggest problem that I always found was people didn’t know where the performance was dying.

I mean, there are just so many layers you can have just within a JVM of anything from heap space to I/O to like little thread contention and all sorts of things. You don’t know why things are slowing down or is this at the app layer, is this at the database layer or is this some caching layer.

So yeah, related to DevOps, we are always building more and more ways to really see, okay, we have changed this cache but is that — are we just wasting our time changing that code or is the problem someplace else, or this is only a problem because we made a mistake someplace else?

Michael Coté: And can you kind of dig into the tools and things that you guys are using or building to do that? I mean, what are you using to sort of like monitor things and then also when you do detect like you need those 20 servers, like what do you use to spin 20 more nodes up or whatever, what’s the kind of management story?

(00:19:53)

Serge Knystautas: Well, it’s a little I would say outdated. We are using Nagios for system monitoring, but then what we have done is built up anywhere from 10-15 specific JVM checks. So we are within the application checking the number of active HTTP requests that are being handled, the number of requests that are being handled per second, down to system load, and all sorts of other nitty-gritty, things that we know that our system fails when these numbers start going up.

So it’s sort of — it’s one of these things where as we have come to know our application and as we are not making as substantive performance changes, we kind of know, okay, this is when a JVM is going to start breaking and we need a new instance of a server.

So we have used Nagios to call on a regular — every couple of minutes these application specific performance metrics and then those get reported, and then we have a mixture of dedicated servers and cloud instances, so we sort of monitor in much more detail the dedicated instances, because they are all getting kind of an equal amount.

If we have 20 servers going and five of them are starting to die, it’s a pretty good chance that the other 15 are dying as well.

And then we have other sort of crude or instruments just to tell whether a server is dying or not. And actually some of that’s getting now put within the actual JVM themselves. They are starting to do more self-diagnostics to say, hey, this is not working.

So for instance, a couple of weeks ago we noticed some of our cloud instances were going into a read only file system mode, something was getting corrupted somewhere. The problem that was happening is, it was still handling a lot of requests.

So from our load balancer it was like, okay, I will keep sending more requests to that instance, and we only start getting these weird support requests bubbling up, that we are getting invalid images every 20 — every 20 images on our site are showing up as an invalid image. And that’s because, well, two of our cloud instances had basically broken themselves and so we are going into having the JVM write code to detect certain problems that have happened. And then if these things are noticed, then it’s like, okay, I am going to shut myself down, so I stop handling any issues, and then the system administrator will know something broke on this server or cloud instance and let’s go back and fix it.

Michael Coté: Yeah. I mean, that’s a — there is sort of this practice in cloud development and just website development of building failure into the system, if you will. It sounds like —

Serge Knystautas: Yeah.

Michael Coté: Or not building failure, I guess developers already do that, because as I recall they are the ones who write the bugs. But I guess it’s expecting and working with failure, not building it into the system. And it is, like I mean, when you have clusters or clouds or whatever, you have multiple nodes, like it’s a lot easier to just kind of let them error out. If there is a certain threshold they reach, then you go fix them. But that’s always an interesting story to hear.

And like I mean, so when you guys go to diagnose these problem nodes, like do you sort of just like blow them away and restart them, or do you kind of spend time figuring out what went wrong and fixing what went wrong, or how do you triage that kind of thing?

Serge Knystautas: That’s a good question. I mean, it sort of depends on the type of error. There is certainly a group of known errors that happen. Some of them are infrequent and so we don’t do too much except for a system administrator who knows to either shut down that cloud instance and restart it, or contact our hosting facility because that’s not fixing it, or run that up to CK or something. And then there is other more frequent errors. Hopefully you realize once this has happened enough times that you are going to build some way to let the system automatically correct itself.

Michael Coté: Yeah.

Serge Knystautas: So it’s a mixture. And it’s also a mixture of recognizing whether this is just some customer using it wrong versus there is actually something that’s going wrong.

Actually like on that image, we had these cloud instances go into read only modes, so we are getting invalid images. In the past historically has always been the user was uploading some PSD that they are renaming JPEG and so that was why it’s not working.

Michael Coté: Right.

Serge Knystautas: So it’s a mixture. That’s what you get paid to do is spend time figuring out those problems.

Michael Coté: Yeah. Like bumping up against the business a little bit more like, like what’s the scale of like the support and development team that you guys have to support all of this?

Serge Knystautas: Well, our customer support team, which is people on call working with customers primarily, is about five people that rotate through the week. We have web engineer group, which is kind of like tier two, and those are about two or three people to handle more complicated HTML or jQuery or Velocity templating issues.

(00:24:55)

And then our development team is, we have actually got five or six Java developers. Typically only one or two of them handle specific issues, sometimes they will get involved if that fourth Java developer just wrote this new feature and now it’s breaking something else and they will get involved to help out with support. But that’s the rough idea.

So we have a handful that work directly with the customer and then it gets escalated, whether it’s just a web engineer versus actual Java programming problem.

Michael Coté: Right, right. So speaking of Java, that’s another thing I was curious before we wrap up to hear about is, I mean, I don’t know, I mean, it’s kind of anecdotal but I feel like I don’t encounter Java as a web application framework as much as I encounter other things, and so I wonder how Java has been working out for this sort of high scale web application.

Serge Knystautas: It has been good. I mean, it gives us a lot of flexibility. I think if I was building this starting a year or two ago, I may have looked a little bit more seriously at some of these other platforms. And certainly with the — in some ways with cloud computing and just the more prevalence of easy access to a lot of hardware you can provision on demand, I may have gone with a platform where you don’t get as much nitty-gritty control, but that’s not why you are trying to optimize anymore, because I think as you are getting to your — you can spend a lot of time paying expensive developers to fix a problem or you can just add a couple of more servers.

It has worked out well for us, but that’s probably because I have been writing Java for 15 years and hiring a lot of good people who can work with this language. We know it pretty well. Eventually we will be dinosaurs and have to move on to the next language, but for now it’s working out for us well.

Michael Coté: Right, right, right. Yeah. But I mean — yeah, I mean to that and I mean if you have good Java developers it’s not really — it would be kind of crazy to start something new, especially with how much you have built into the application already.

But I mean, are there other languages that you mix into there or do you try to just stick with Java?

Serge Knystautas: On the server side it has been pretty much all Java. I am trying to think if we have used anything else. Yeah, maybe a little bit, I don’t know, gosh, there’s Bash, and there’s certainly some XML and XPath and stuff like that, sort of standard language agnostic stuff.

Michael Coté: But pretty much you have been able to make Java work out wherever you needed to in the various layers of the app?

Serge Knystautas: Yeah, yeah, it has been doing well for us.

Michael Coté: So the last thing I was curious to hear about is, and that you are developing an external facing application that, like you said, people are very rabid to interact with. I mean, what kind of development process have you guys used over the years? Like is it sort of standard stuff, or do you kind of come up with your own process, like what are typical release cycles for you?

Serge Knystautas: Well, I would say we do a very agile development. We do weekly releases. So we have working out subversion and on weekly basis we cut a new version that goes to testing. And then sits about a week in testing and then goes live to everybody.

But really from the school of thought of trying to do as fast releases as possible to just to limit the number of bugs and things that possibly could go wrong on each release, we have done, in some cases we create branches and subversion for longer running development that’s going to be a very large new feature and then we will figure out how to merge that back into the trunk.

But for the most part, as much as possible, we try to break up tasks into small increments and roll them out so we can get more customers working with it.

So there’s our production system and then there’s a test system, where — a test server that people test the version that’s about to go live. But then we have a number of development servers which allow, as every developer is making a commit, that other people, the non-technical staff can give feedback and realize where their requirements were wrong or how —

Michael Coté: So just sort of a demo instance running that people can look at.

Serge Knystautas: Yeah, yeah, definitely.

Michael Coté: Yeah. Well, that makes sense. I mean, I don’t want to take up too much of your time, but that’s the barrage of questions I was looking forward to peppering you with.

So yeah, I mean, if people are interested in more, I mean what — I mean, I guess there’s prestosports.com, but are you in the crazy Twitter there anything like that? What do you want to tell people as far as touch points they can go to?

Serge Knystautas: I would tell them go to prestosports.com first, that you can link over. It has got links to our blog site, where you can read more about both technical and non-technical stuff that we are working on. And we are on Facebook and Twitter as well.

But I would go to prestosports.com first and you can find out a whole lot more of us, and as we talked about earlier, the different ways that you want to engage with us you can.

Michael Coté: And there’s definitely — you can find the various colleges that are using PrestoSports stuff, but just kind of looking — on your website you have a few of them listed, so you can see it in action.

Serge Knystautas: Yeah, definitely.

Michael Coté: Well, great! Well, thanks, I appreciate you taking all the time at the conference there to just kind of go over what’s in your stack. That’s good stuff.

Serge Knystautas: Yeah. Thanks. I appreciate the interview. It was fun talking with you.

Categories: make all, Open Source, Programming.

Tags: , , ,

Links for March 21st through March 29th

I see students looking at me

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Links.

OpsCraft, a PaaSing interest, SXSW, MMS2011, John's new job – IT Management & Cloud Podcast #086

Cheeseburger topped with pastrami - this is what they're eating in heaven.

The missing “craft” of operations, what’s up with PaaS-hype, and some updates from conferences like SXSW and the Microsoft Management Summit – that’s what’s going on in this episode. Oh, and John has a new job!

In addition to clicking play above, you can download the episode directly or subscribe to the IT Management & Cloud feed (in iTunes or wherever) to have this episode automatically downloaded for your listening pleasure.

Show Notes

Transcript

Michael Coté: Well, hello everybody! This is 28th of March, 2011. This is the IT Management & Cloud Podcast #86, if I have the number right, which I just looked up the number, John, and all of a sudden I am having doubts that it’s actually #86. I don’t know why I feel like these extreme doubts, can you explain it?

John Willis: Well, I think it should be more than 86, right?

Michael Coté: Yeah? It is 86, because we recorded like three episodes last time.

John Willis: Yeah, we have been slackers for quite a while now.

Michael Coté: That’s right. That’s right. Well, did you have a safe trip back from South by Southwest?

John Willis: I did, yes. It was good.

Michael Coté: I have to admit, I played a little of the disappearing Houdini act there several times. I didn’t hang out as much as I could have with the family in town, but why don’t — how did the Cloudy Awards end up?

John Willis: It was fun. I mean, I guess for anybody who was paying attention — they had to change the venue a couple of times. Originally the venue was going to be at this house. Did you hear this story? It’s hilarious, right?

Michael Coté: No.

John Willis: The Dyn Inc. guys were ready to house — they are just a fun bunch. I mean, if buying software because you like people is a good enough reason, then buy all their Dyn Inc. and all the DynDNS stuff they have, because they are just fun, awesome dudes.

Anyway, so they rented a house for the week, party animals. So they were going to have the Cloudy Award there. So they had like 700 people registered, figuring that maybe only like 300 would show up. But about a week-and-a-half before, the lady who owns the house looks up online, she calls them and says, you know, if you guys have more than 60 people there, I am calling the cops.

Michael Coté: Nice!

John Willis: So then, they go ahead and rent like an used warehouse floor on Congress or something, I don’t know, downtown, and then the day of, the Fire Marshal shows up and says they can’t have an event there.

Michael Coté: That happened to a lot of people I heard at South by Southwest this year.

John Willis: Really? Yeah.

Michael Coté: I mean, I am all for preventing people from being burned alive.

John Willis: Hey, I am glad, I always prefer not to. Well, and then the place they found was — do you remember the name of that place? It was beautiful.

Michael Coté: It was Serranos; it’s Symphony Square they call it.

John Willis: Yeah.

Michael Coté: It’s a Tex-Mex restaurant that’s been there for a while and they have — they are sort of this grotto, I guess is the technical term, that’s all done out. So there is a little stage with the moat along the stage. So there is kind of a theater sort of thing going on.

It’s a very nice setting. It’s kind of well-hidden, if you will, metaphorically and literally from the kind of downtown scene, so there is not a lot of — it’s kind of a surprise when people find it, if they don’t know about it already.

John Willis: Yeah, it was a brilliant venue, because here, again, the Dyn Inc. guys had planned on having bands all afternoon. And I guess one of the guys, Kyle York, he is Head of Sales there at Dyn Inc., he is also somehow in the music business, not really sure how, but they had these bands from like Minnesota and different — there were like bands that came in from different parts of the country and they would play like a couple of set and then we would announce some Cloudy Award and then they would play another set. It was just a blast. They had free drinks and great venue. It was more fun than you should be able to have and get paid to be there.

Michael Coté: That’s right.

John Willis: That was very — and they had a local hero, Michael Coté won, he came up and accepted his award.

Michael Coté: Oh yeah, and then Josh Duncan from Zenoss was there too, right?

John Willis: That’s right. It was fun. Most of the people in the crowd like didn’t really care, but it was kind of fun. At one point, you probably missed it out, I pulled out my little flip camera and I said, hey everybody, my wife doesn’t think I really do anything important, can you all say, hi Vicky? And the whole crowd waved to her, so it was kind of cool.

Michael Coté: That’s right. And then how was the CloudCamp that you went to? I was only there for a little bit during a session that you had, as I recall, about famines and people wearing grass hats.

John Willis: Yeah, we kind of hijacked it, but Dave Nielsen let us run a DevOps — impromptu DevOps kind of meeting within the CloudCamp thing, and it was very cool. We went ahead and Gene Kim, ‘The Visible Ops’ author and Founder of Tripwire, he came in and gave a presentation, and Ernest Mueller, National Instruments, and myself and a couple of other people.

So it was really a nice little — it was fun. We kind of hijacked a nice little South by Southwest DevOps meet up.

(00:04:51)

Michael Coté: That’s right. And so while we are on this little tangent here, can you sort of go over what ‘The Visible Ops’ thing is? I mean, I saw that people were very obsessed with it recently, so I finally got the book and kind of read through it myself. And it has got some good stuff in it, but I am curious to hear another retelling outside of my own head of what the deal is?

John Willis: I mean, I have read it a couple of times around the years. It’s just a good playbook for operations. It’s commonsense, but they talk about why tracking change and incident is so important. It’s really not an ITIL push it down your throat, but it’s very much service management is very important, populations, and case studies of why.

And it really — I mean, anybody in operations should at least read it once because it’s — for me, when I first read it, I am like, big freaking deal. But it’s got — actually — it was kind of the same thing when I first saw ITIL. The first time I was introduced to ITIL, I was like, so yeah, so what?

Michael Coté: So we should have a process where people request us to do things and track us doing them.

John Willis: And track changes and —

Michael Coté: Think genius.

John Willis: Well, it’s funny, because later on, hopefully, we will talk a little bit about all this screaming and hollering about DevOps, but that’s actually what a lot of guys, I guess now to look at it from their perspective, they are saying, okay, DevOps, yeah. Tell me something I don’t already know, right?

Michael Coté: Yeah. As I recall, we had an episode a few ago where I was that guy complaining about that.

John Willis: Yeah. But yeah. So no, the thing — I kind of came back and respected it, but again, when I first read it I was like, big deal. But now what I realize is, very much like I thought, it’s a way to get everybody on the same playbook, and that’s a great thing, because we are all talking from a common perspective, we understand what’s important.

I think that actually to some of the naysayers of DevOps right now, I think that’s probably the reason why people say, well, DevOps, so what? Isn’t it just all commonsense? Why are you guys making such a big deal out of it, right? Well, yeah, it is commonsense, but let’s just get all on the same playbook, because not everybody else — there’s a lot of people that didn’t think incident and change was important, especially lot of web operations companies.

Michael Coté: Right. Yeah, I think how you open it up is — I mean, that is a good explanation from what I saw as sort of — I have come to appreciate when there is discipline and process and stuff involved. Like being able to distill it down into something less than like — it’s basically like an 80-page book. It’s actually — I think if you have ever sort of encountered ITIL or MOF or any of these big process things and they seem really overwhelming and expensive and sort of cumbersome, like it’s good just to like read that book because it kind of like — it gives you the lay of the land, if you will.

I mean, that’s — yeah, I mean, I think it’s a nice book. It’s a kind of book that you could kind of hand to someone and be like, this kind of tells you what the point of IT is. Not what the point is, but like what the day-to-day — it’s sort of one view of what the day-to-day operations of IT is going to be like and it’s not like the view and you need to modify and whatever, but it gives you — when I was a programmer at some point I had no idea what IT management was about and I had to learn that so I could program tools for it, and it would have been nice to have that book at the time, to just kind of lay out all the stuff that you could further build down into.

John Willis: Well, it’s funny, because I mean, I was talking before on our podcast is that, there is this whole thing about NoOps now. It shouldn’t be DevOps, it should be NoOps.

Like I agree but I disagree, and the part — I think we are not speaking the same language. So there almost needs to be this kind of handbook again of, let’s just all get on the same page before we start arguing. Like the idea of operation as being a cumbersome barrier for development to get things done, we need to eliminate, we need to move that out.

But the idea that we don’t need — it depends on what you mean by NoOps, is, do you mean that like you don’t care about all that knowledge and IP of people who fundamentally know how to run IT datacenters?

By the way, sports fans, just because you put it in the cloud doesn’t mean a lot of that secret sauce of running operations goes away. People think, oh, you just use Heroku or you just use Elastic Beanstalk and you are done. Hey! All right, good, good luck buddy, because there is a — there is a secret sauce to running an operations business. It isn’t just cloud and it isn’t just a tool, it’s a lot more. Again, it’s a process of cloud tools and it’s a know-how.

It’s like a great developer and architect understands it has a sense of how to develop great features in a way that makes sense. Well, a great operations guy has that kind of same black magic. You know what I mean?

Michael Coté: I think you are right. I think it’s always easier to find examples of sort of like developer culture, because they are a very chatty bunch, than it is operations culture, and it’s —

John Willis: We are a little chatty bunch. I mean, that’s our problem.

Michael Coté: Yeah, yeah, and so it’s — therefore that’s one of the reasons it’s easy to gloss over, there is actually a lot of craft, if you will, as the programmers would call it in operations.

Back, starting at the beginning of agile development and even before that with books like ‘Peopleware’ and some sort of like back in the Microsoft heyday of code as culture, if you will, there was — I think the development world kind of learned that being navel-gazing about your craft and the way you do stuff in your practice and things beyond the documented path, if you will, was very valuable for the overall community.

And I feel like to some extent there is sort of like Linux people and UNIX people and there is some craft and stuff in there, but it’s not quite at the same level of sharing — of useful sharing that I see in the development world as much.

There are little pockets here and there of people doing it again, but a little bit to your point, somewhat tangentially, but almost directly from it. A lot of the whatever Ops you want to call it that’s fascinating is a chance to kind of jump on that and for everyone to just discuss kind of the craft side of things.

John Willis: Yeah, I think that’s it, and I think there is like — it’s funny, because there is three types of people. There are the people that really don’t understand it and they are like, well, that’s so limited with the cloud, right? In their world operations is about rack and stack and hardware. Over, checkmark, don’t need it anymore.

And there are lots of idiots out there that will just say, well, why don’t we need anything with Ops, Ops has been solved, right? I am like, no, it has it. Go ask — go see how Amazon runs their operational infrastructure or eBay, like there is a lot of craft there.

Michael Coté: It’s like when FoxPro and Filemaker solved programming, you didn’t really need programmers after that.

John Willis: There you go, there you go. But then there is the guys that are in the trenches that are saying, well, you know this, why are you making a big deal out of it, right? The guys who were sysadmin guys. But that’s the point is, we don’t share our craft, we don’t talk about it. It’s the Bob’s, and Bob scripts and Bob directories that like they are in the trenches. They were like, we don’t want this DevOps thing, I have got work to do.

Whereas the guys in the middle, I think, which I like to include myself on is the guys who are really trying to expose the craft of how operations can play really well and is important.

Michael Coté: There you go. Yeah, we need to get the O’Reilly guys to come up with some — or maybe the pragmatic programmers. But see, that’s a thing that needs to exist in the IT world as equivalent of the pragmatic programmers, that’s another sort of code as craft thing, but someone should do some book that’s sort of like operations craft missive.

John Willis: I mean, web operations is definitely a good one, but that’s — it’s still kind of — it brushes over, it’s web operations.

Michael Coté: Yeah. This is a little bit of craft, but you know one of the — I don’t know, I think it kind of directly relates, I was reading, over in Spiceworks they have this community where their admins talk with each other; crazy idea. I am laughing at myself with that phrasing.

But anyways, there was one form post on, some guy was considering using hosted exchange versus on-premise, and it was just fun to read. He was asking what the pros and cons were, and it was fun to read all the admins from different sizes of companies kind of discussing like what the pros and cons were beyond like — I mean, obviously cost is one thing to figure out. Like there is a certain amount of — I don’t know, it’s one think to pay like whatever it is, $5 a user a month I think is what you get for the hosted exchange is kind of the going rate, it’s one thing to pay that for like 20 people.

And if you have like — it’s kind of crazy once you get into like thousands of people, of course your cost are much bigger. Now, that’s one aspect of it.

But then there was also the other aspect, the craft part, if you will, where it’s like, well, ultimately you are going to be responsible for that stuff being up. And there is various levels of support you get from people.

Like, for example, Google Apps is really great and it’s relatively cheap, but there is really no support from anyone. So like if you actually need support, the cost is not that good. There are all these interesting considerations to go over.

And then there was also this sub-thread going on about how, which I thought was funny; funny from an outsider, because I am sure all of them kind of don’t even realize the funniness of it. It was complaining about, or not complaining, but talking about how much disk quota or email quota and attachment quota they had.

I think all of them would say like, well, regular users get a 1 gig quota or whatever it was, but then executives get the 5 Gig quota. And it’s funny, like executives have this whole other quota level associated with their email, whereas everyone else does. And there is just — I mean, I think the variability of levels of service dependent on how high above the hierarchy the user is from you, that’s to put it in wonky terms, is a piece of craft to explore.

John Willis: No, yeah, and I think it’s funny just in general that whole — we run into — we could talk about — I mean literally, when you try to sell it as a service, particularly to systems administrators, there is that kind of — there is a lot to be said about the craft. The hosting thing gets a lot down to — I am kind of wandering all over the place, but it’s losing control.

Michael Coté: Yeah, there was a tremendous amount of it.

John Willis: Yeah. And it’s not even losing control, it’s that you are losing that kind of possibility for secret sauce that — well, and to get a little esoteric here, I mean, that’s what I worry about like Platform-as-a-Service is.

Like Platform-as-a-Service is, like they sound good, Parney thinks they are kind of a primrose path, because like you are going to go put your app there and everything looks good and all the things are handled, but now all of a sudden your company is faced with an opportunity, and there is some technology out there that you can’t use in this Platform-as-a-Service.

And that craft around how well you adapt as a business and all that, you might have given that up. You know what I mean? And I think that lies in the kind of — the people who really think about it think, it’s not just about the dollars, it’s not just about the, I don’t get — you running something for me at scale will probably be more efficient than me running it. It’s that like, there might be something I am not seeing that I will hit that roadblock and I don’t want to be in a position where I can’t take advantage of it.

Michael Coté: Yeah, yeah, you want maximum flexibility for maximum disaster.

John Willis: Yeah.

Michael Coté: You can draw one of those four quadrant things and do disaster level and flexibility and you always want the upper left or whatever. I guess it’s upper right.

John Willis: Upper right, yeah.

Michael Coté: I don’t know what I am talking about with charts; I am not that kind of analyst.

So let me ask you this, since you mentioned it, I have noticed this — let me compare some notes with you and the listeners. I have noticed this rise in people saying how PaaS is a big deal, the Platform-as-a-Service, and this Infrastructure-as-a-Service, that’s all fantastic, but the new thing is Platform-as-a-Service.

I don’t have anything beyond anecdotal sort of conversations here, but it seems like everyone, and let me put a little footnote there that I am going to get to on everyone is excited about PaaS stuff, and now the footnote is, most of the people I hear talking about PaaS stuff are like vendors who have a PaaS.

John Willis: Who sell PaaSs, right?

Michael Coté: Yeah. So I don’t know, I mean, I am a little — so my background is like, I don’t think there is anything necessarily wrong with a PaaS, if you go in — just like you were talking about and kind of evaluate, basically I think any piece of software you depend on instead of writing yourself, and this is a bit of an absurd statement, it’s just all about the time demarcated takes.

Like obviously you don’t want to write every piece of software, including an operating system, because that’s going to take you way too long, so you just keep piling up stuff that you are reusing, and at some point a PaaS is something that you don’t have to write and worry about.

But like you said, there could be limitations that you have, who knows, or maybe not, I don’t know. But what are you seeing out there with this — is this just a passing interest, Johnon?

John Willis: No. Well, I mean, certainly I am working against the tide because the — I mean, everybody is high on PaaS and PaaS is going to accelerate. My concern about a Platform-as-a-Service — the bigger picture is that, to try to put everything that we talk about in the cloud in three buckets is really pretty silly, really, when you think about it, right?

We tend to like say, well, that’s a SaaS and therefore it will do x and y and that’s a PaaS and therefore it’s going to be a, b, and c, and that’s Infrastructure-as-a-Service. Like, well, I mean, like it’s kind of silly to say, look at all the possible things that are associative of cloud computing and say, okay, it’s only in three categories and that’s it.

My point is that, by calling something a PaaS is like anywhere from — like people are even starting to say maybe Amazon’s new CloudFormation, Elastic Beanstalk, are kind of the starter set of a PaaS, and then you go all the way over to something like Force.com, which is on the complete other end, and so it’s hard to make generic statements about a PaaS, and say, well, PaaSs are bad or PaaSs are good.

Because again, I mean, the spectrum of what we are talking about is anywhere from a loosely coupled Infrastructure-as-a-Service that looks like a PaaS, to something like totally proprietary unused force — whatever the language is for Force.com, like that’s like as PaaSy as it’s going to get, right?

So I think the question is not whether I think PaaS is a good idea, I think abstraction of services or abstraction of solutions is like absolutely where we have to be.

I mean, APIs are the root of most of this. Like building a robust API set, or I have seen now people have started using the XaaS, which is Everything-as-a-service. That starts making the sense is like, I don’t care whether it’s IIS, what I want is the ability to be flexible in my business decisions. And so if you throw a technology at me that doesn’t allow me to be flexible on my business decisions, then I get worried.

And even something like Heroku or Force, where yeah, I mean, my time to market can be really quick, but if for tomorrow somebody lays out a solution that’s Cassandra based and they have this and this, and now I am already down, like my business is already in Heroku and they are going to tell me they don’t support it for another 18 months so it’s not even on their roadmap, I don’t want to be in that position.

I mean, if you look at the companies that are kind of following the Lean startup model, they are able to adapt and change very rapidly, and there is price you pay for that. The price about — like I don’t think it’s a smart idea to have a leading edge business idea or company and run it completely on something like Force or Heroku or Engine Yard, I will flat out say it.

Even though it’s easy to get to market, now, if there are pieces of your infrastructure, like the FlightCaster guy, that was a great example. They had the whole backend in Hadoop, with closure and all this stuff, and they credited their web front end on Heroku. That’s a brilliant idea, because they can move their web at front end anywhere. They could throw it up on their own.

But if you start thinking about the PaaS as the end all be all for your business, I think you are going to — you are possibly limiting yourself for opportunities, where your competitors are a little bit smart.

It’s about building composite infrastructure, so that you can kind of decouple things and move them around and become, what I call, bullet proof. So I think that in those cases the pure PaaSs could be dangerous.

Michael Coté: Yeah. No, I think it warrants some more investigation, because I mean, there is almost like two types of PaaSs you are talking about in there, and one of them is just the classic PaaS, or what I would consider a PaaS is just like, someone just has pre-selected some middleware for you and you just build stuff on top of that middleware, whereas there is another type of PaaS, which is kind of like the Force.com model, that’s more — you are really just writing a plug-in for an application, like it’s difficult to imagine a non-Salesforce type of thing you would do on top of Force.com.

Now, I know because people have shown me that you can do non-stuff like that, but it’s sort of like, it’s an application specific PaaS, which I know is another thing people advocate quite a lot.

But yeah, it’s the old cross-platform worrying that you do, like do you write only to Windows or do you write a web application or do you write to Mac or do you write to Solaris or do you write to whatever? You see that in the mobile space nowadays quite a bit where it’s sort of okay to write only for the Apple ecosystem, but increasingly people want to write for Apple, Android, and have a web thing.

So there is like — in my little group of programmer friends we have this — we kind of joke about this thing we called Whichard’s first principle of programming, and it goes back to this guy Brandon Whichard we know, who used to work on identity management stuff, but he also used to be the Product Manager of the group we worked at, at BMC.

And he said that one of the biggest anti-patterns that you always have with the programmers is they always implement a user and a writes management system. Like they never, ever, and I am obviously overstating it, sort of reuse some user management system.

And it’s just funny, because you end up spending all this time writing a user and their permissions and orchestrating all of that stuff, when there is like tons of them available out there.

And because you have this proliferation of user and rights management, which is sort of like an essential part of most software, especially when it becomes enterprise software, it just creates all sorts of problems.

That’s the kind of thing where like you would really like that not to be the case, and that’s one of those things where I feel like, along with the database and some other stuff, it would be great if a Platform-as-a-Service would sort of handle that for you so you weren’t rewriting that stuff.

So I guess what I am saying is looking a Platform-as-a-Service strictly is sort of like component reuse, I don’t really see that big of a deal for it, but if your Platform-as-a-Service is more like you are just writing a plug-in, then you kind of have to be aware of that’s the sandbox you are sticking yourself in.

John Willis: Well, I think that was a great point about the — you don’t want to have to write, like today they are — when you sit down and want to build a business, there are so many abstractions to even build on top of it.

Now, I am a big fan of kind of the roll your own infrastructure as code model, which is harder than building using a PaaS, but I have this — it’s PaaS light, because long as I can build my abstractions, I kind of componentized my infrastructures, if you will, I componentized my web servers, so now I have built it once, it has got its inputs, it has got its outputs, I can put it anywhere I want.

I think that’s a much safer way. I mean, obviously I have the hardest race with Chef, but I mean, I think that’s a much safer way to build, but ultimately what you do want is you definitely want, wherever possible, somebody else to do it. But I think today there is so much opportunity with solutions out there that you can pretty much cherry-pick infrastructure to lay — already built on top of — I mean, to put together a Ruby LAMP Stack on Amazon is pretty freaking darn easy if you Chef, Puppet, or even now CloudFormation.

Now, to make it scalable, a little harder; make it elastic, a little harder, but not incredibly harder. So again, I think I am more of a fan of staying on the do it yourself more than let somebody else do it, but always look for — if somebody has already written that infrastructure for billing, use that open source component, don’t write your own monitor, there are plenty of great monitoring tools. There are pretty of great things out there that you can abstract with and still not be very into the PaaS.

Michael Coté: So you were mentioning like — did we talk about this NoOps business, you said there was some little kerfuffle going on about that?

John Willis: Yeah, there has been a whole bunch on Twitter. There are basically two posts. One was that DevOps is a scam or something like that. The thing is, he makes some okay points. His first point is that agile was a scam and how everybody got so rich on it, now DevOps is the new snake oil.

And I think that, all right, everybody is entitled to their opinion, but if I look at the kind of people that are pulling DevOps, I am like that’s — I am not including myself, I mean, some really — people like — these guys are not salesman, like John Allspaw, Patrick Debois, Andrew Shafer, Adam Jacob, Jesse, Luke Kanies, I mean, these guys are not — they are changing the game out there. I mean, they are doing some real shit. And to just take one sloth and say, well, DevOps is just snake oil sales pitch, like come on, it’s not that simple either way. It’s not as simple to say DevOps solves all problems and it’s not that simple to say DevOps is just some get rich scheme. You know what I mean? It’s neither.

I think, again, a lot of people who are just kind of jumping into the conversation, it’s like cloud two years ago, it was the same thing you saw on Twitter about the cloud, all these people came in and said, what’s the big deal, cloud, we have been doing this for ten years? Yeah, you kind of have but you kind of haven’t.

Michael Coté: Yeah, nowadays all the vendors like to tell you they have been doing it for years too, this stuff, that’s always exciting.

John Willis: So the old Cisco commercial, they are right there. IBM has pretty much owned the — not IBM, Microsoft has owned their silly cloud commercials, but Cisco has, I don’t know if you have seen it now. They have got, we are the guys that connect the clouds. They are more realistic than the Microsoft one.

Michael Coté: Yeah, yeah. Cisco is always weird. I was talking with someone about this around South By South West and it is — Cisco is always annoyingly trying to talk about being a collaboration company and everything and really we just want routers and I guess servers.

They have that video TelePresence stuff which looks impressive, I saw it on 30 Rock! last night they were using it, so that’s good stuff.

I always get being someone who consults with companies about their sort of technology marketing. I was getting frustrated when they market their aspirations a lot more than their here and nows if you will or not even — well now it is a lot more quantitatively but I feel like it’s one thing to speak up to like what you would really like to be doing in the future and everything but you need to make sure you have equal volume on what you are currently doing. I always imagine hoards of conference scores at various tech companies sort of thinking in their head, well this stuff looks great but I have got this laundry list of bugs I would like you to fix with stuff I am already running.

John Willis: Of course the guys who — they get back and then they want to have the like — how come it doesn’t work the way it worked at the conference? Yeah, well, one of the conference had a little bit of extra stuff.

Michael Coté: Yeah, but to be fair, I think Cisco could tell a very incredible story as far as running the networks, so that would be just fine.

John Willis: No, their commercial is actually pretty much it like where the guys connect the cloud, and there is a logic to that but — as opposed to Microsoft ones or some silly, I am going to go to the cloud.

Michael Coté: So going back up at our little hole here to the South By South West thing, let me ask a wrapping up question on that topic. So it’s one of my little hobbies to help people come up with excuses to come to South By Southwest and let me ask you as like a cloud guy if you will, and a recovering normal Ops IT guy like do you think it’s a conference worthy to go to if you are in the infrastructure cloud area?

John Willis: I think it’s a bullet, I mean it’s like – this is the first one I have ever been to and there was some really exciting stuff around IT technology and everybody speaks that language. So I think it’s just going to get better-and-better every year, right?

Michael Coté: Yeah, probably. What I tell people is like a lot of the people who are there, I mean they all need to run their stuff somewhere. So it’s a good idea to go there and kind of see a wide swath of a certain type of customer and I figure it’s more in the small and medium segment, right, like I don’t know if there is a lot of enterprise people who go there, but there is a large volume of people who need to run their stuff whether it’s on — need to run their stuff on the public Internet somewhere and so usually that points towards doing cloud stuff or something else.

And the other thing that’s important to pay attention to is the – no one would use this phrase but as the infrastructure people were kind of tracking the types of workloads and infrastructure I mean, the applications that are running on top of all that, because it does tend to drive a lot of lower level stuff, like I finally got around to — as a somewhat related example, I finally got around to reading one of the posts of my fellow Redmonk’s Steven O’Grady about, he calls it the speaking of link bait, they are coming like data apocalypse or whatever.

And his point is, he was just looking at his own personal usage of his data plan on AT&T and once he discovered that he could watch like NetFlix and his baseball on-demand stuff, it’s like quadrupled or whatever and he costed out how much it would cost to have an unlimited plan and being aware of these huge volumes of data that are traversing around as he gets to in kind of the advice part of his piece. If you don’t see those applications coming they are kind of going to be a shock. A lot of the discussion of South By Southwest is about the types of applications.

And then even more worse, even worse for the point I am trying to make, driving people to needlessly click Reload over-and-over again, or just to use those applications a lot. So there is this sort of peak bandwidth issue that I am sure people will sort out, as all peak issues are sorted out where application writers don’t really care about bandwidth consumption or processor consumption and yet they are driving their users to create and consume more-and-more of it and it’s a nice problem to know about.

John Willis: Well, and I was thinking about South By Southwest and I am obviously have a hammer type of guy, so there was an underlying DevOps theme and he is like, wow, wait a minute, we didn’t get that for yet, but we did, because if you think about all the companies there, like they are all faced with these same problems. They are all like social and big data and media and they are all faced with the same common problem is you’ve got to be able to run IT efficiently and cost-effectively, and these are all the things — and even to the point where Etsy, the reason I came in a day early was Etsy had a craft by code or code by crafting, you were there, where they talked about how they do continuous delivery.

Here they are, right in the middle of South By Southwest Etsy giving like a couple hour presentation and how they do continuous delivery at Etsy, showing a continuous integration, deployment and the room was packed, I mean packed with people, because this is a common like — whether you like it or not, you are in the IT business these days. It goes back to why operations are so important, I mean, whether you like it or not you are in the op business of running operations, and just having your cloud doesn’t solve that, you’ve got to run it effectively, efficiently, and so to me the underlying theme that wasn’t the broadcasted theme or you’d have to be looking for it like a guy like me who sees everything as a nail.

It look like a swarming, everybody is willing to have an infrastructure discussion. I even had this little thing at the Apogee party, there was this party Apogee had with a couple of other companies, there were like three companies that teamed up, had this really soiree party and I was in there and I was wearing my Opscode shirt, and some young guys with ear rings in their noses and eyes and all that – just started talking to them, and they were like what’s the OC stand for, man? And I am like, I said, oh you know that TV show, the OC, and they were like, oh wow, really? That’s cool, and I am like, no, I am just kidding.

And then I said so what is it then? I am like, oh, well we are a company called Opscode, we’ve got this product, and I am trying to explain at the highest level thinking, it’s one of those kind of Christmas party conversations, and he said, oh, is it they were like zoo-keeper, I am like, oh s**t, this kid knows what he is talking about. And then I said, no, I said, you haven’t heard of Puppet. He is like, yeah! I said, well, we have a product called Chef, he says, oh Chef, we use Chef, and I am like, dopey me, trying to be funny about the OC thing. I mean like there were people come up to me and tap me on the shoulder and say, hey, we use Chef, we love your product.

So there was this kind of underlying theme, like anybody who is – all the people are going there – not all the people, but a lot of people are going there, building like high-powered social media, media web or big data type solutions and across the board on all those three kinds has to be lean infrastructure. And most of those people are well aware of kind of the DevOp techniques. So my point is, I had a lot of fun, I had a lot of touch-points with a lot of technology that I love. The Infochimps guy had a nice big data stuff, the Etsy guys had something.s Apogee had an interesting part, I think next year is just going to be even more discussions about infrastructure.

Michael Coté: Yeah, maybe it will have like a track along those lines and everything, I mean I know that they had a fair amount of cloud panels including one that I moderated. So it might be nice if they dug a little deeper if you will.

John Willis: Cloud schmoud. it’s not the infrastructure, dude!

Michael Coté: That’s right, it’s all about the platform as a service.

John Willis: No, it’s not the infrastructure, you haven’t been paying attention.

Michael Coté: So speaking of like cloud like infrastructure stuff, you were telling me, I keep forgetting the name of this IBM thing, but you were telling me you’d come across like a high-scale virtualization automation roll out magic voodoo, what’s the name of it officially?

John Willis: It’s Advanced Virtual Deployment Software.

Michael Coté: There we go.

John Willis: So this is again, IBM shoots themselves in the foot. This name, like if you don’t peel the onion on this, you’ll think, oh jeez, here we go, it looks like a private cloud, I mean it looks pretty darn slick.

Michael Coté: Yeah, when I was at Pulse a few week ago now I was hanging out with an IBM friend of mine, Bill Higgins, who now works at Tivoli and doing all sorts of fun stuff. And he introduced me to the guy doing this project and I got kind of — he was going to do a demo later in the evening, which ended up not working because of VPN issues and all this network stuff.

John Willis: VPN issues.

Michael Coté: That’s right. But anyways, the way he described it, it was kind of like, I am sure you and other listeners have heard of that Dell OpenStack Installer thing, with sitting in the office next to me, Matt Ray worked on that a little bit, and then basically, this thing is somewhat similar in the sense that there is a — you have sort of got a bunch of bare metal laying around and there’s all sorts of like little pixy booting and fun peer to peer stuff to spread things around and automate just sort of — I am wiggling my fingers now doing the sort of magic thing.

All sorts of like configuration magic and provisioning magic which actually looked pretty exciting. They mentioned it in passing in the keynote, but it was the kind of thing where like — and I wrote this up in my Pulse overview thing. I mean, this is the kind of thing where I feel like they should give it like ten minutes on the keynote in a two hour keynote to go over, because everyone will just be like, oh, now I get it. I mean, it will be like a big, even if it is whatever beta released or whatnot, it’s still — that’s the kind of advanced thinking you want to see in this —

John Willis: Yeah, I mean, if I am just coming out with a private cloud that’s ultimately going to pair up against things like Eucalyptus and whatnot, then that’s an interesting start. You know what I mean?

But again, if you like at it and you don’t see that much, you kind of dig little deep and see that — because even the Dell stuff right, so I worked on a little bit with that, Matt did most of the work there, but the Crowbar, I mean, all the Crowbar is, is really kind of — the Dell Crowbar, which is the proof of concept name for their open source project, that it’s just going to — it basically is kick start on steroids.

So you take a rack and just like these machines come online and they will get the bios and if you generate it, the OS will get burned, not burned, but installed.

And what Matt did is put OpenStack on the backend of that to turn — to kind of fulfill, not just the five, six boxes in a rack, but become then an OpenStack cloud controller with nodes in it.

But it sounds like this advanced virtual deployment software is like an OpenStack or a Cloud.com or Eucalyptus. So if that’s what IBM is throwing out there, that could be pretty interesting. IBM writes pretty software.

Michael Coté: No, from the way the demo was — that thing was described to me and the bit of the demo I could see, it was nice. It was sort of like — it was kind of like a right scale kind of thing mixed with a bunch of provisioning and configuration management, and I don’t know, we will see what they do with it.

John Willis: Yeah, I will just go and try to take a look at it and see what — because I am always interested in the IBM angle, I have done so much work with IBM, with particularly Tivoli.

Michael Coté: Yeah, well, also in conference news, I went to the Microsoft Management Summit last week, and that was exciting as an analyst from the angle that I had actually missed going to it last year because we had some family business back then. But it exciting, because they were really cloud crazy there, but in a very a much more defined way than just sort of being very cloud imperative, if you will.

They talked about their Project Concero thing, which is a way of managing your private and your public clouds and things like that, and they had a lot of virtualization stuff. But you can kind of see, and I wrote up kind of a little post along these lines, but you can see there, they seemed to genuinely be working on enabling a lot of private cloud stuff for their customers.

And to be fair, this is the part of the Summit that goes over — the part of — Microsoft has a lot of conferences and this is the one that’s all about sort of on-premise stuff, if you will.

So they weren’t sort of dismissing Azure public cloud stuff, it’s just more like — it’s not exactly their kind of thing at that conference, whereas in a few weeks now MIX is coming up where I am sure we will talk about Azure a little bit, and there is Tech·Ed this summer and so forth and so on.

But yeah, they were a lot more respectable in their cloud talk than I have seen coming from them and even some other vendors, they had a lot of products to speak about.

Now, all that said, it’s not like they were really GA on most of the cloud stuff, if all of it that they talked about, aside from Azure, so it is kind of a, here is what’s coming kind of thing, and you could of course get their Concero — I can’t — your funny way of pronouncing things is messing me up, John. Their Project Concero thing, I think you can get a beta of that or something like that, which sounds good.

And as I wrote up in the post, you know the thing that I would challenge them and anyone else who kind of has a proprietary way of going about this stuff like for Microsoft, the big question is like, so if I wanted to be like a Microsoft cloud developer, right, would I have to use Visual Studio to get like maximum effect and I think figuring out the nuanced answers to that question will sort of point you at that kind of locking that you were talking about earlier, and really there is tons of people who deploy on the Microsoft stack, and it does great for them.

So at some point, one of the many points you get to it makes sense to just go that way, but you know your needs might be more varied and you may not want to become a Microsoft developer if you will, and I don’t think it’s — I don’t quite understand the full openness of their cloud stuff at the moment despite Azure running like Python and Java and things like that. It’s still what it gives down to is that — and you were kind of alluding this earlier, how everyone at South By Southwest, or if you want many people are talking about using Opscode or ZooKeeper are like there is a certain tool belt or tool chain if you will that emerges, and the question becomes how much of that stuff that you can kind of swap in and out versus stuff you’re forced to use to mess with all the configuration metadata.

John Willis: Yeah, no I mean I think about this a lot and I mean again I have this hammering out problem but I look at like these continuous delivery models that seem to be working really well and right now I don’t really from my perspective to me it’s all about how do you officially build a matrix around that, you know what I mean, in other words. And is it Puppet, is it Chef, is it ZooKeeper, there is an interesting guy here in Atlanta called John Winston has written this thing called Nova, and Novas are pretty interesting for ZooKeeper, it’s a Ruby-based implementation with ZooKeeper. And it’s getting a lot of good attraction because ZooKeeper is a little more complex to implement and resisting is really darn simple.

There are some things out of the box that don’t happen with ZooKeeper, it has some opinionated models for just doing the kind of things that everybody choose a ZooKeeper for, but anyway the point is that like if you think about the service pipeline, it has continuous integration, it has kind of a unit test model bill, it has test-driven development or behavior-driven development, it has obviously configuration management, a piece like Puppet or Chef or Cfengine and it has kind of a deployment management model, and I think about that model and I am watching companies that are doing this today at lightening speed and delivery models.

So I don’t think much about like how would somebody who has their own kind of model fit into this. I don’t think about that much, you know what I mean? That’s just an out there problem for somebody else to solve.

Michael Cote: Yeah, and two more things on the MMS stuff just for people who care, what are the few more things, one of them and I am kind of summarizing the little post I wrote is there is — they released this interesting product called Advisor like System Center Advisor, it’s basically a SaaS hosted knowledgebase kind of thing to get to like pulling best practices that integrates onto the tool and as long time listeners know I am always fascinated with the idea of sticking any expect of IT management in SaaS, and more importantly like what I would call Collaborative IT Management is this idea of applying like the learnings from community and the web to sort of doing operation stuff, all that craft stuff we were talking about before.

And to be fair like I think the Advisor thing is sort of — not sort of, is locked down to just Microsoft and put its stuff, so it’s not open like the Spiceworks Community is, where similar stuff kind of goes on, and a less than kind of and kind of kind of way, if you will.

Anyways, but it is and lots of people have tried to do this, or a fair amount of people tried to do this in the past, but it is — it’s I haven’t seen a large organization be excited about it in the same way that Microsoft seem to be, so that’s an interesting thing to look at and they also released I think Windows Intune which has been a Beta for a while, and it’s basically from managing client desktops which means desktops that employees use not servers and Microsoft Lingo and it’s a SaaS-based thing.

But what’s interesting is I am pretty sure that they would like to do it for servers at some point, I mean they didn’t really say that but it kind of makes sense, like if it works for clients, one day it should work for servers, and overall that is kind of like some reading between the lines that I was getting is that they would like to do a lot more IT management as SaaS stuff, which I think that’s overall good and I mean like in the OC they are all about managing servers.

John Willis: Yeah, that’s true, that’s nice.

Michael Coté: So a similar sort of thing going on there. But yeah, there is more — you can read more detail on this stuff in the little wrap-up post that I did, but I think overall it was a usually when I have been to MMSs in the past as some people in the audience will attest to its all – well you know what I am talking, about what it’s all about, SML and SDM and MOF and modeling the IT process and they pretty much are done with that in all senses of the word ‘Done’ as they’ve quoted enough of it and they are not really interested in talking about that stuff anymore.

They are more interested in talking about private clouds and things like that, they even mentioned DevOps several times. And Microsoft within the Microsoft world which is always the big caveat, they have a very credible footing to talk about having a unified tool chain if not culture between the application development and the delivery of it. They have some pretty good actual working code to do stuff like that. I don’t know if it’s sort of in production for a bus cell code, but they have good demos and stuff going on there.

So anyways before I make you fully fall asleep, because I know Microsoft, I know Microsoft is about as invigorating to you as drinking a full bottle of cough syrup, so I’ll wrap that up and there is more if you want to read about it.

John Willis: Yeah, so anyway it was going to kind of wrap up a little bit of big news.

Michael Coté: Oh yeah, that’s right.

John Willis: Big news, wow! So I am going to be — this is my last week at Opscode.

Michael Coté: At the OC as it were.

John Willis: At the OC, yeah, there was those kids and all there, the party is on the beach and all just getting too crazy. Yeah, and I am going to be going –

Michael Coté: This means you are not going to be sleeping with your best friend’s mother anymore, right?

John Willis: That’s right, the whole – the volleyball on the beach and best friend’s mothers and all sorts of crazy stuff that goes on at the OC. Now it’s all good stuff, I am going to go over to work with DTO and it’s actually a good fit for. I had some great conversations with Adam Jacob, the Founder of Opscode and we both think it’s a great idea.

Part of what I did last year was a lot in Opscode which was evangelism, kind of like you meet my metaphors. I felt that I was helping build the religion last year and I think I was pretty effective in building the religion and I know Adam and Jesse agree and are very happy to know what I did and now it’s time for Opscode to build the church, if you will. Construct the church and really figure out how the cells, models and they are really building a company.

So that’s part of it. I like the building, the religion and I am really fascinated with the DevOps portion of the next step. I love Chef, I think it’s my favorite product on the market and the infrastructure’s code is absolutely the way this has to be done and when somebody comes up with a better way, so I am big fan, but I think the bigger picture is what we talk about is how do you solve the whole problem and that’s the religion I want to fight this year and are embraced. So it’s all good.

The other part is I really, in heart and soul of me, you’ve talked about this before I am a services guy and Opscode is a product company primarily and I am a services guy. So I really want to go out and build service organizations and that’s —

Michael Coté: Yeah, it sounds like it will be exciting for you.

John Willis: Yeah, it’s exciting and DTO is already a part. I just want to say that DTO is already in partnership with Opscode so we are always talking about working on deals already together.

Michael Coté: So why don’t you tell people what DTO does for those who don’t know?

John Willis: So DTO stands for Dev to Ops, but basically we are a service company. We actually have an open-source tool. We kind of work around the open-source tool chain and the DevOps, we call the DevOps tool chain and we work around infrastructure’s code products like Puppet and Chef, and then also a continuous integration, building models for continuous delivery, release management, help service companies, help provide services to company, help them fulfill kind of what continuous delivery model in the services, very strong Java, very strong DevOps, so good stuff.

Michael Coté: And along with Andrew Shepherd back when they — I think when he worked at Puppet lab still or Reductive Labs as it was called, I think DTO and I think it was Damien and him wrote the — I still show it around as like when people ask me what DevOps is, it’s one of the few sort of things to point at, I think isn’t it the fully automated provisioning tool chain, speaking of IBM names John I think –

John Willis: Yeah, I don’t really —

Michael Coté: It is, that paper came from — it’s like ’09 paper.

John Willis: Yeah.

Michael Coté: It’s been aged now but it’s kind of it gives you — it’s one of the few like I said kind of grounded senses that gives you a sense of what’s going on and I think having — we actually, DTO was a client of ours for a little while back, I guess, in 2010 or something and having done work with them, those guys are very busy actually out there building stuff. So they always — you’ll be simmering in the soup if you will of all this business.

John Willis: Yeah, and that’s the fun thing is that they are delivering real-life continuous delivery models for large customers right now kind of under the radar, people don’t know and they just didn’t — plus the other thing is they recently released an interesting product that fills the gap in the space which is called RunDeck which is — it’s kind of a Run Book Automation, I would say orchestration product, open-source, and it really, really works well with products of Chef and Puppet. So yeah, it’s going to be a lot of fun. I am looking forward to it.

Michael Coté: Well, that will be great.

John Willis: Great stuff!

Michael Coté: You’ll have a good time.

John Willis: Yeah.

Michael Coté: So let me see if I can scrape the bottom of the bucket here before we wrap. I think we can come in at 60 minutes, John. That would be because we are professionals.

John Willis: Yeah, that’s right.

Michael Coté: Well, let me put in a little ad here at the end and then I’ll let you wrap up with anything you have. But I started, speaking of Spiceworks, I started a little project with them where they do this thing every quarter called the voice of SMB IT, I think they put SMB in there.

They also do a lot of things where they have this big pool of data of what people are kind of — they have a giant asset database in the cloud and a bunch of other stuff. So they kind of along with their own surveys, they look over all this data and kind of do what are people actually doing out there and they had one post recently that was like in various sectors like education and construction and manufacturing and software like how much virtualization are people using.

It’s a very short to the point post and there’s also a ranking of hypervisors use which as you can predict is pretty much an order is VMware, Hyper-V and then XenServer are what people are using according to their study.

Anyways, so I am doing a little series with them where I am kind of adding the — I’d like to think that I am kind of like the John Madden color commentary on this where I am just kind of adding some commentary on some of their data posts, and I put the first one up which I’ll put a link to in the Spiceworks Community where — so they did this thing like I said and the lowest users of virtualization were the education sector and the highest user of course was the software sector.

So I talk to some folks that I know including our very own Matt Ray about — he represented the software sector, I talked to this other guy that in West Texas who is kind of — I think he Director of IT for the Winters ISD for Education and I kind of asked them both like so, what’s up with your virtualization usage so you could kind of figure out the extreme ends of the scale there? And it was fun to see what they are talking about and what their plans were with virtualization.

It’s interesting because in the high-end on the software scale like people don’t really even realize that they are kind of using virtualization. I mean they realize they are using it but they don’t think about it as a novel concept, it’s so engrained in software developers’ heads whereas in things like education, it’s still kind of some new magic on the horizon for many people.

So yeah, I am curious to see if anyone has commentary and why or why not they are using virtualization kind of by the sector they are in.

John Willis: Well, I think with Spiceworks you are probably going to skewed view too, because I mean it’s funny, I think there’s still a lot of enterprises that still will — oh yeah, we use Virtualization for test out but not production. There is still quite a few surprisingly that actually still have that kind of little bit of a boogeyman about, you know, well we don’t use virtualization production. Why? No, no, no… we are not sure or its performance we take.

Michael Coté: Yeah, that’s true. Yeah, well that reminds me of a principle I came up when talking with the Microsofties about — they spend a lot of time and I talk with them a lot about dividing up legacy IT versus Greenfield stuff, the legacy stuff which is kind of difficult to get in the cloud way maybe. I kind of derive this principle from them I think which my phrasing is if it ain’t broke, don’t cloud it. We’ll see — I don’t know. It will be interesting to sort out how far the stuff goes just like Virtualization.

John Willis: Well, I am just the opposite like the phrase I want to remove from all IT lexicon is and I am so when I hear it, my cringe is like well how would we be able to do that companywide, John? You don’t?

So like you were talking about the cloud, I would say, when in doubt, cloud it, you know what I mean. I just don’t like, cloud everything —

Michael Coté: So you are saying — so I am typing this in right now. If it ain’t broke don’t cloud it versus when in doubt cloud it out.

John Willis: Yeah, like I am not really sure what the hell, let’s throw it into cloud.

Michael Coté: And I think there’s another phrase that we could say versus — for what is it? Like build on top of cloud and let ops sort it out.

John Willis: Yeah.

Michael Coté: That’s right. Cloud it all and let ops sort it out.

John Willis: Yeah — no I think that but that’s why a little bit of my pet peeve is that kind of, I am not yelling at you but that whole like when in doubt don’t cloud it and that is it goes back to the whole, people think it’s a binary thing. It’s like cloud or nothing, like we can’t do that because it would just destroy our organization.

Michael Coté: Yeah, yeah, oh that reminds me of another sub-project that I have going on. Have you noticed I started these sub-projects whenever I actually do them? It’s very exciting.

John Willis: Yeah.

Michael Coté: But I emailed you about this one too but for the listeners, I want to — I actually have some input from people and I am kind of just waiting for permission from their people to use it. So it’s a just kind of a matter of paperwork if you will, but I am trying to gather just at this very moment, if you will, being this year or something. Like when people are building a public or a private or a hybrid or a dancing or maybe an elephant cloud, whatever kind of cloud do you want to call it, like I am very curious about —

John Willis: The black cloud.

Michael Coté: There you go. I want to know like the exact kind of like infrastructure they are using from like servers to routers to their wiring and the infrastructure. Like there was one thing that I thought was really missing from the Microsoft management thing.

Being a software company, it’s fine, and they have partners with HP and Dell to be their cloud partners or whatever, which is cool, but I think at this point in the cloud world, especially if this whole private cloud thing is going to take off, I mean we really need — and by ‘we’, I mean people on the buying side of the fence. We really need to sort of out what that means hardware-wise because I mean I kind of feel like there’s sort of this — the iceberg under the water is like, oh yeah, all those datacenters, you are going to need to totally replace all those guys with these crazy cloud boxes and that’s — I don’t know, I don’t feel like there’s quite enough conversation going on about below the software layer of cloud stuff in the private cloud area.

So I am curious for people who are doing anything that they would consider cloud, I don’t really care of the orthodoxy of it, like what the hardware situation looks like. I would appreciate any input people have.

John Willis: There you go. Good!

Michael Coté: So we are only two minutes over the 60 minutes, John, which means that we are professionals with icing on top.

John Willis: There you go.

Michael Coté: Do you got anything else you want to throw up there before we wrap up on this fine Monday?

John Willis: No, I think that’s it. It’s good.

Michael Coté: So are you officially with the DTO now or do you have a little —

John Willis: No, Monday — I’ll start Monday.

Michael Coté: So you can say anything crazy this week that you want, but come Monday, you are a company man.

John Willis: That’s right. Well, I can’t — yeah, I guess like that, I don’t know. But yeah, we’ll see, it all under adventure.

Michael Coté: All right, well that sounds good. I am going to look forward to all of your new IM names and Skype names and email names.

John Willis: Yeah.

Michael Coté: Every time John has an organizational change, he generates a bunch of new identities for me to keep track of. So that will work out well. Well, thanks as always for everyone for listening and we’ll see everyone next time.

Disclosure: see the RedMonk client list for clients mentioned.

Categories: Conferences, IT Management Podcast, Systems Management.

Who's using virtualization?

Education, construction, and lawyers are using virtualization the least, according to a recent data sample of 100,000 companies from Spiceworks. On the other end of the spectrum, software, energy, and aerospace companies are big users. Spiceworks asked me to write-up some commentary on this (and a few more future) data analysis over their massive, mostly SMB IT user-base. They also ranked hyper-visor usage by vendor.

I wanted to get a sense from the two end the usage spectrum, Education and Software, of how and why virtualization is being used. Do do that, I talked with Jeremy Fluhmann (Technology Director for Winters ISD) and Matt Ray who works at Opscode (one of the more advanced IT management startups). Both gave me good insight into how their industries are using virtualization.

I wrote up my commentary over on our brand-spankin’ new Spiceworks page. Tragically, the page doesn’t let me link directly to the post, but it’s at the top of the discussion forum, so you can get to it pretty easily: check it out if you’re interested in how folks are (or are not yet) using virtualization.

Disclosure: Spiceworks is a client, as is Opscode, VMWare, and Microsoft.

Categories: Systems Management.

Tags: , , , , , , ,

Tech companies hoarding cash – Back of the Envelope #003

Chip with the single monk and surprise-socks

What’s up with tech-companies building up huge piles of cash? We talk about those big piles of cash tech companies are hoarding in episode #3 of the Back of the Envelope podcast. Along the way we end up talking about corporate and investing financial fundamentals as always. As always, I’m joined by co-host Ed Goodwin (@egoodwintx). Pardon my “breathy talking,” I must have been climbing a flight of stairs as I recorded this:

In addition to clicking play above, you can download the episode directly or subscribe to the Back of the Envelope podcast feed (in iTunes or wherever) to have this episode automatically downloaded for your listening pleasure.

Show Notes

Since Ed works in a highly regulated job as a portfolio manager, his lawyers require this exciting disclaimer, which you’ll get to hear my friend Charles Lowell read at the beginning of the episode:

This podcast is for entertainment purposes only. The content and opinions expressed in this podcast are merely the opinions and observations of Mr. Goodwin and Mr. Cote. Michael Cote is a technology analyst who may have conflicts of interest concerning the companies mentioned. Ed Goodwin is an investment adviser to various funds that may have a financial interest in any companies mentioned. This podcast should not be construed as investment advice of any kind. Both Mr. Goodwin and Mr. Cote may be buying or selling any of the securities mentioned at any time; either for themselves or on behalf of clients of theirs. The content herein is intended solely for entertainment purposes only. This podcast is not a solicitation of business; all inquiries will be ignored.

Seriously, don’t rely on this podcast for investment advice. Ever.

Now sit back and enjoy the show.

Disclosure: see the list of RedMonk clients for clients mentioned.

Categories: Back of the Envelope.

Why pitching "productivity" to developers fails

Charles Atlas

Why pitching development tools as “making you more productive” doesn’t work as well as you’d think.

Developers don’t care about money – in the same way doctor’s don’t care about money. That is, they actually do care about their personal income, but don’t like to admit it, and are not always motivated to think about the company’s income. Business owners and manager care about money. At small companies, they may be the same, but for many shops (at companies and ISV) across the medium and “enterprise” spectrum, they’re not.

This means that discussions about “productivity,” as in saves and/or makes the company more money, are often not useful conversations to have with developers.

The success of Eclipse Mylyn, TaskTop, tools from Atlassian, and Agile are interesting exception here. Each of those may contribute to the overall success of the company employing the developers, but they mostly increase the ease at which developers can do their own job, irrespective of how profitable that ease becomes. Something like Mylyn makes working on a bug or feature less boring and tedious because all of the relevant context is presented to the developers: it also isolates the developer from the “productivity” tools the rest of the company uses (the way TaskTop 2.0 layers on-top of and hides all the ugliness of wonky, never-gonna-be-replace ALM back-ends is a good example here as well). Chances are, whatever project management, issue, and bug tracking systems and process a company is using, developer loath it. They want to stay in their IDE, coding.

Agile is successful, at the developer level, because it seems to empower developers and make their lives easier. It gives them a tool to talk to the rest of the organization through in terms that work, helping developers do expectation management (not overselling their abilities and then suffering when they have to deliver on unrealistic goals). Much of the excitement you see in developers eyes when they’re exposed to dev/ops comes from a similar function: finally, a way to see what their software is doing in production without involving mind-numbing conversations with “IT.” (I like to think of these types of phenomena as The Developer Landgrab.)

Whether using Agile makes a company more or less money is irrelevant to a developer: what matters (as with all “productivity” tools) is if it makes the developer’s life easy and allows them to block out (or, at best “manage”) the non-developers in the rest of the company. Developers don’t want to be made productive, they want to be empowered.

Disclosure: TaskTop is a client.

Categories: Development Tools, Marketing.

Tags: , ,

3 Important Things from the Microsoft Management Summit 2011

Windows Intune "lounge"

This week in Las Vegas, Microsoft came out with some strong, confident direction in their IT Management portfolio. There were numerous products announced in beta or GA’ed and endless nuance to various stories like “what exactly is a Microsoft-based private cloud?” Rotating in my head though are three clusters of important offerings and concepts to keep track of, whether you’re a user of IT Management or a vendor looking to compete of frenemy with Microsoft:

  1. IT Management delivered as SaaS – thus far, success has been the exception, not the rule in delivering IT Management as a SaaS. Service-now.com has been the stand-out success here, driving incumbents BMC, CA, HP, and IBM to start offering IT Management function as a SaaS. Others have had rockier times getting IT heads to move their tool-chain off-premise. The common sentiment as told me by one admin last year was: well, if the Internet goes down, we’re screwed. Windows Intune, GA’ed at MMS 2011, is a SaaS-based (or “cloud-based,” if you prefer) service for desktop management – keeping the Microsoft portions of desktops up-to-date for $11-12/month/desktop. It’s not hard to imagine that Microsoft would want to extend this to servers at some point, as Opscode does now. The System Center Advisor product line (covering SQL Server, Exchange, Windows Server, Dynamics, and SharePoint) is knowledge-base served up as a SaaS – something klir (RIP) and Splunk have played around with – to make this kind of collaborative IT management work, you have to layer in a strong community like Spiceworks does, something that seems missing from the Advisor line at the moment. The feel I get from this momentum is that Microsoft would like to (after a long, multi-year “eventually”) move much of its portfolio to SaaS delivery. Admins can be “special snow-flakes” when it comes to moving their tools to SaaS, but at a certain point of cost & hassle avoidance vs. the risk of the Internet going down, it starts to make sense. And, really, if the Internet goes down, many businesses would be dead-in-the-water regardless of the IT Management tools available.
  2. Private cloud is what you need – while the focus on “Cloud and Microsoft” is often the public Azure cloud, Microsoft is also amped up to provide companies with the technology needed to use cloud-based technologies and practices behind the firewall, creating private clouds. Microsoft’s Project Concero is the spearhead of this, but there’s some interesting training wheels towards cloud that Microsoft wants to do with its virtualization management product. Strapping on the recently released System Center Service Manager and System Center Orchestrator (formally Opalis), and you have the self-service, highly-virtualized view of “private cloud.” The troubling aspect for Microsoft is the hardware layer. Time and time again, Microsoft executives rightly pointed out that “true” clouds need standardized hardware – at the same time they pointed out that most IT shops are far from “standardized.” When I asked them what that transformation would mean, being a software company, the answers weren’t too prescriptive. One hopes that the answer is more than “keep your eye on those Azure appliances we mentioned awhile back.” The issue is this: if private cloud means rip-n-replace of your existing hardware to get “standardized” hardware…then we’ve got some rocky budget hijinks ahead for anyone considering private vs. public.
  3. The War Against VMWare – judged by the amount of kicking in VMWare’s direction, Microsoft is freaked out about VMWare. They see VMWare’s plan as using their hypervisor dominance (which no one, including Microsoft, denies them having in the present) to infect all the way up to the application stack and, as one executive put it, “all the sudden you’re re-writing your apps in [Spring-based] Java!” While VMWare would certainly love for you to do that – as would Microsoft! – its unclear if that strategy is a realistic enough one to fear so much. More importantly, arguing that a VMWare-carved path to Java applications is somehow more costly, closed, and otherwise un-desirable than a complete Microsoft Hyper-V/.Net stack is a dangerous glass house to start throwing rocks in. I’d say the real enemy of both of these companies is the vast, un-quantifiable mass of open source developers out there who don’t want allegiance to any vendor – not to mention the public cloud IaaS and PaaS options out there (how exactly “cloud development” plays out with the ages-old lockin/closed source/single vendor stack architectural decisions is incredibly murky at this point). Clearly, with moves like buying WaveMaker, you can see some pitched VMW v. MSFT battles involving Lightswitch and other post-VB RAD development. As I told one Microsoft executive, if VMWare buys into an entirely different, non-Java ecosystem (e.g., Engineyard for Ruby, Zend for PHP, etc.), then it’d be time to doff the foil-hats for the real helmets.

They Did a Good Job

Overall, Microsoft did well with the announcements, products, and conversations at this MMS. Their focus on explaining how technology is used to further the goals of IT (and the evolution of those goals to align with business) stands in stark contrast to the wider, dual-messages going on at most Big 4 conferences of this type. Microsoft in the IT Management area is typically good at speaking to their products rather than pure vision.

The VisualStudio Test

The primary issue revolves around one question you can ask of any transformation story from Microsoft: does it require the use of VisualStudio? There’s nothing wrong, really, with VisualStudio, but that questions shows you how much of a Microsoft shop you have to become to follow their vision, here, of a private cloud. As Microsoft, I think rightly, said, cloud is ultimately about applications: a business needs applications, not just a bunch of “services.” How you develop that application, ideally, should be very open and up to you rather than, as Microsoft criticized VMWare for lusting after, requiring the use of the application stack from the same company that provides your cloud technology. Sure, there may be time-to-market trade-offs and all sorts of other concerns, but last I checked, mono-vendor approaches were still something to be concerned about and evaluate carefully before going “all in.”

(The same test should be applied to VMWare, Amazon, IBM, Oracle, HP, and anyone else looking to be your cloud-dealer.)

Disclosure: Microsoft, VMWare, IBM, and WaveMaker are clients.

Categories: Cloud, Conferences, Systems Management.

Tags: , ,

SXSWi, Austin fundings, mobile – Austin Tech Scene #011

QR codes everyhwere

How did SXSW go? Have you seen all the funding news for Austin companies of late? Will Austin become known for its mobile community? We talk about all of that in this episode.

Download the episode directly right here, subscribe to the feed in iTunes or other podcatcher to have episodes downloaded automatically, or just click play below to listen to it right here:

During the “free meat party” at SXSW last week, Brandon and I say down for an Austin Tech Scene recording, talking about mostly those questions. We also discuss the etsy operations event and a handful of other goings on. You can hear the buzz of the “entrepreneur’s lounge” in the background.

Categories: Austin Tech Scene, Conferences.

Tags: ,