I was contacted about an opportunity to do VoiceXML--I don't have any experience with it, but apparently that might be okay. However, I did some initial research on the technology and it looks like it's pretty old, never gained much traction, etc. but I can't figure out what technolog(y, ies) replaced it. Is VoiceXML a good skill to acquire right now or is it dying out/never really caught on that much? If it is dying out, what is replacing it? Why?
VoiceXML is far from dead for developing Interactive Voice Response (IVR) systems. All of the top IVR platforms support VoiceXML because it is an open standards supported by the W3C and is still actively being worked on by the Voice Browser Working Group, along with many other associated standards. There is a good discussion on the progression of VoiceXML and development environments in this blog post.
The other advantage to VoiceXML is that it uses web based technologies for developing voice applications so you can leverage any skills you have in this area for development. But if you are new to IVR development there are other skills you will need to learn to be successful such as Voice User Interface (VUI) design, how to develop grammars for speech applications, and tuning speech applications. You would need to learn these skills regardless of the language or development environment.
Another approach for developing IVR applications that reduces the need for knowing VoiceXML is a framework like the open source project VoiceModel. If you already have skills in ASP.NET VoiceModel allows you to develop IVR application that run on VoiceXML platforms without understanding VoiceXML. It abstracts it to a higher level where you are just piecing together .NET objects to define your voice application. The other nice thing about VoiceModel is you can develop your IVR application once and it will run on a VoiceXML compatible IVR or a cloud-based IVR like Tropo. There are plans to also include support for Twilio.
And maybe that is the buzz you are hearing about VoiceXML dying. There are cloud-based IVR/telephony platforms that are cropping up such as Tropo and Twilio that do not use VoiceXML and use their own proprietary API's. To me this a step backwards towards the old days of IVR development where each IVR vendor had their proprietary development environment and languages. I am a firm believer in open standards like VoiceXML but I have to admit this new breed of IVR vendors are definitely making some traction in the market. I think it is too early to determine whether they will survive or not.
So the main question was; are there alternative to VoiceXML. The answer is yes. Two alternatives are the proprietary API's of cloud-based platforms of Tropo and Twilio. Another alternative is to use something like VoiceModel that abstracts away the need to know VoiceXML but lets you run the application on VoiceXML compatible platforms. And even another alternative is to use a development environment like VoiceObjects which also abstracts away much need to know VoiceXML.
Another question was; is VoiceXML a good skill to acquire. I would say yes, if you are developing a lot of IVR applications and especially if you are supporting existing ones. There are a lot of VoiceXML applications out there that require maintenance and currently the predominant IVR platform in the enterprise is VoiceXML compatible. If you are developing a one-off application you may want to look into something like Tropo or Twilio. With the caveat that if these start-ups go under you will be re-writing the application probably in VoiceXML. That is why I like opens standards. Or get the best of both worlds and look at something like VoiceModel.