Open source has been a disruptive influence across a swath of industries. One of the areas in which it has made significant inroads is the VoIP space, particularly due to the tremendous success of the Asterisk open source VoIP PBX project.
Version 1.0 of Asterisk was released in September and includes traditional PBX services, as well as IVR, three-way calling, call conferencing, voicemail with directory and caller ID. It’s also a gateway for VoIP interoperability handling the SIP
Mark Spencer began the Asterisk development and, to support and sponsor the project, launched Digium.
Spencer, a 20-something wunderkind, is no stranger to the open source community. He was also responsible for launching the multi-protocol open source Gaim instant messaging client, which has been one of the most active open source projects in the SourceForge.net open source repository.
Internetnews.com caught up with Spencer at the recent VON Canada event where he delivered a keynote address.
Q: What do you think of the current state of Gaim?
Gaim was the first open source project I ever did. I only worked on Gaim for two or three months in terms of real organized programming before Jim Duchek, Rob Flynn and several others took over. I haven’t been involved for a long time.
The success of Gaim really demonstrates how open source works. I got it to where it was for what I needed it to do. It has totally become something that is just amazing through all the other people that have kept it going.
I’ve had other projects, one called Cheops [network discovery tool], and I never got a maintainer for it, and it really hasn’t done anything. Not every project is a winner.
Q: Contrasting Asterisk with Gaim, why do you think Asterisk has taken off to the degree that it has?
Telecom has been really ripe for open source for a long time, especially recently. There are certain things that predispose a certain area for open source success. The size of the market is one thing. The telecom market is enormous, and virtually every business has a phone system.
Secondly the audience is highly technical. As a percentage of users, those that are able to contribute back is very high. With Gaim, it has a tremendous user base. But as a percentage of people that use Gaim, the numbers that are actually contributing is relatively small because most people that use an IM client are not necessarily technical people that are able to program on it. In telecom, much more significant numbers are able and do contribute back.
Another thing is that there is a huge price discrepancy between open source and proprietary telecom solutions. In instant messaging, AIM is a free download. There is no cost associated with it; it’s more a feature-differentiating thing. Another thing is that we’ve been able to build a business model around open source telecom with Digium.
Telecom is also an area where people want to be able to customize and tweak and make their system behave exactly the way they want it to behave.
I would say also there weren’t some of the same roadblocks that there are in other areas. If you think of Linux on the desktop, there is a very significant roadblock in that people know how to use Windows. So it’s very hard to overcome that.
There is no such equivalent in the telecom space. There is no user interface that is so ubiquitous that you have to be able to get passed it.
Q: In the Linux space, Red Hat and Novell/SUSE have both leveraged relationships with IBM, HP, Dell and others to penetrate the market. Do Digium or Asterisk have any such relationship with tier 1 vendors? Have they ever approached you about a partnership of some form?
Digium currently has eight stocking distributors worldwide, and we have resellers. Those resellers sell Asterisk whether it’s with Digium’s hardware or not. We’re just now seeing the bigger companies decide what they want to do about Asterisk.
We got an e-mail from IBM a while back that said we were in the top 100 most influential suppliers, which I thought was kind of an interesting description. I think we’re trying to figure out how to work with these people. SGI, for example, is starting to make a push with Asterisk on its platform, so we’re starting to see that happen. Really it started with the smaller companies and VARs that are more nimble and more able to deal with something new that has come along.
Q: Do you have any involvement with the OSDL and its Carrier Grade Linux (CGL) initiative? Does it matter at all?
I haven’t done a whole lot with the OSDL. All this effort to make a Carrier Grade Linux is important, though, as Asterisk can only be as reliable as the platform that it’s on. Our traditional answer is to take a RAID approach — the idea being to separate things out onto multiple machines so there is no single point of failure.
Q: What’s your Linux distribution of choice? Is there a preferred distribution for Asterisk?
It is really very analogous to a religious debate. At Digium, we have people that are running Debian and Gentoo, which are the most popular distributions at our company. I actually run Fedora. Then we’ve got someone running SUSE.
We’d rather that people stick to more traditional distributions, or, at least if you’re going to use one of these other Asterisk-based distributions, use one that doesn’t move all the files around and change the naming conventions.
I haven’t worried very much about getting Asterisk into distributions themselves. The pace of Asterisk development is unimaginably fast. Every project has its problems, but you can tell a lot about a project by the quality of its problems.
One of the problems that we have with Asterisk is that there are so many contributions; it is hard for us as a team to be able to filter through all the contributions fast enough. That is definitely something we’re working hard to improve upon. But on the scale of things, it’s a good problem to have.
Q: Are there too many open licenses out there now? Too few? Does the whole debate really matter?
Insofar as licenses can be incompatible, there may be too many licenses. On the other hand, I would say that the role of the open source mark is to be able to certify that a license meets the criteria of being open source. I don’t think it’s their mission to say, “This license is too similar to another one, therefore we don’t think we should approve it.” If the license is open source, it’s really their task to say it’s open source. After that, it’s up to different people to pick the license that they need to use.
We picked the GPL because we thought that the GPL is a very well-understood license and it’s a good balance. You have to remember that the GPL was written for the customer, for the user. It wasn’t written for the supplier. In order for us to be able to offer a dual license, we have to get people to sign a disclaimer that allows us to use their changes.
Q: Are software patents something that you worry about with Digium and Asterisk?
Submarine patents are always a concern — the ones that you don’t know are there. Telecom is so old that, to a great degree, a lot of the patents have already expired. All the root of what we’re doing — basic things like CallerID — are so ancient that any patents on it have expired.
On the new VoIP stuff, you’ve got G.729. But that’s the advantage of having a commercial entity in that we can license the patent for G.729 and then resell to users. As a pragmatic solution, that works well, even though obviously I’m not a big fan of software patents. Being a commercial entity, it allows us to give end users a choice, and that’s really what this is all about.
For me as a developer, it’s hard to look at something and say that’s obviously patentable. For me, the concept of non-obvious is maybe a bit more stringent than is generally viewed. I guess I almost look at it like, I though of it so it can’t be that non-obvious. I don’t see anything right now that we’ve done that is patentable so far.
Q: What does the future hold for Asterisk?
I get asked that question a lot. The best answer I can give you is that Asterisk is driven by customers and developers. Where Asterisk is going is a function of those two things. Either it will go where paying customers want it to go, or it will go where developers want it to go, or both.
It’s fantastic to have so many people that are trying to contribute that it’s overwhelming. You couldn’t ask for much more.