This year has seen an abundance of change and upheaval in the software industry, from cloud and enterprise booms to shifts in the developer power hierarchy, bookended by highly publicized debacles like the NSA PRISM scandal and HealthCare.gov. SD Times caught up with Christopher Seiwald, CEO of version-management software provider Perforce, who had a lot on his mind about this year’s high-profile software news and enterprise trends like continuous delivery.
On continuous delivery
“Continuous delivery is a ripening trend as a buzzword at least. It’s one of those buzzwords with a lot of ideas about it, kind of like the cloud. It’s like teenage sex—everyone’s talking about it, but nobody’s actually having it. Continuous delivery is still in that category, and there’s some discussion as to what it all means. In the next year there will be a real firming up of what it means to do that. The idea has been around for quite some time, but companies are just now realizing that if they get on this bandwagon, they get to do the thing they’ve always wanted to do: release product faster and better.
“Continuous delivery is essentially extreme agile, as nimble as you can, the tightest loop between the developer and the customer. It’s largely used to deliver SaaS solutions—in other words deliveries all the way to the online presence you have, so Facebook and Twitter and Netflix have a cloud SaaS solution. Basically the developers do something, and it moves down the pipeline pretty quickly to get out the door.
“The notion is necessarily that every time a developer makes a change, the customer has to download a new patch. Rather it’s that the product is always releasable, and keeping your product in a releasable state is one of the tenets of continuous delivery and continuous integration.”
“My favorite part about the whole HealthCare.gov fiasco was that the contracts the government awarded the contractors are a particular kind of open-ended contract. The word isn’t used in the exact same way, but it’s actually called an IDIQ contract, meaning indefinite delivery and indefinite quantity. If you contrast indefinite delivery with continuous delivery, maybe that’s what people are trying to do is avoid the HealthCare.gov scenario.
“HealthCare.gov I’m characterizing as the ‘iceberg style’ of delivery, where you orchestrate this monstrous thing and then dump it on the world in a surprise; the exact opposite of continuous delivery. My mother-in-law, a little old French lady, asked me one night, ‘If your company did it, would it have worked better?’ I said we wouldn’t have tried it that way. You wouldn’t try to build something and release it to a million or a quarter billion people. It’s the kind of thing you try out with five of your friends, and then go onto a thousand or a hundred thousand or a million. The whole approach was out of whack.”
On version management
“We see version management as the pipeline for continuous delivery, but there’s going to be a battle for that pipeline. It’s all about the home system that everyone returns to as they try to flush out how they do continuous delivery. What will be the main harness?
“If you can use versioning as your pipeline, you have this whole continuous chain of custody from requirements to design, to documentation, sales, everything that can possibly go into a product can live in the version-management system—a single source of truth for everything that happens with your release.
“There’s a battle royale out there for who winds up owning more of the software development pipeline, but from our perspective, versioning in on the rise. That’s the trend we’re anticipating, certainly one we’re banking on and something we’re fighting for, too.”
#!On the “developer as king”
“People are starting to emphasize more that the developer is very important in the equation. I don’t know whether the developer was ever really out of the picture, but continuous delivery makes that trend even more pronounced.
“When you look at the feedback loop from customers back into the product, it can go back in as another part of the software development pipeline, but where it really makes the most sense is right where the developers are. The developer is often at the head end of the continuous-delivery pipeline, and I think people will trust developers more and more to process the feedback from customers and do the right thing.
“As a developer who became the CEO of a company, I think many developers have bigger perspectives. When you talk about someone who wants to be the CEO of the next big thing in the world of software, it’s not necessarily the business guys. It’s the software guys. The guys who want to write a game. The guys who like to do infrastructure or clouds, and envision themselves running a company that way.
“I think it’s the rise of the developer, even though they were never really dead. But continuous delivery will accent their position.”
On the cloud and NSA spying
“Another thing we see with our customers, which is also driven by a news item, is the fallout of Edward Snowden and PRISM—this notion that everything’s moving into the cloud and moving online. We now have customers and partners who indicate that the clouds are breaking up.
“Germany, for example, has very strict privacy laws. Companies there don’t really like the idea of their data being hosted in someone else’s cloud, particularly a United States cloud. We have a German partner who’s talking about trying to spin up an alternative to using Dropbox. Then they can ensure the data never leaves the confines of Germany.
“I think it’s going to become an interesting phenomenon, as all this effort to move everything into this single global cloud will become much more complicated as people say, ‘No, no, no, it can’t be that cloud, it has to be my cloud.’ We think in the future, proprietary software is going to be there even if it’s not all there right now, but this national border thing is really going to throw a monkey wrench in the works.”