<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>Audium VoiceXML Blog</title>
      <link>http://blog.audiumcorp.com/</link>
      <description></description>
      <language>en</language>
      <copyright>Copyright 2008</copyright>
      <lastBuildDate>Thu, 17 Aug 2006 10:27:37 -0500</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/?v=3.2</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

            <item>
         <title>Stop DB Connection Pool Leaks with Handy Tomcat Debug Modes</title>
         <description><![CDATA[<p>If you're using JNDI to connect to your database through Tomcat, then it's possible you've had to deal with database connection pool leaks.  Your code tests fine, it's been reviewed, but in load tests or in production your app is unable to acquire database connections, the pool is empty!</p>

<p>Fear not, there are some handy parameters which can be set in your application's XML configuration file (in tomcat/conf/Catalina/YOUR_IP/YOUR_APP.xml):</p>

<p><strong>removeAbandoned</strong>: Enables automated monitoring of pooled DB connections, and closes them if they time out.  This is a catch-all, which prevents bugs in your code from bringing a system to its knees.  If your app fails to close a connection, this will close it after a certain time period.</p>

<p><strong>removeAbandonedTimeout</strong>: Sets the timeout value for use with the removeAbandonded parameter.</p>

<p><strong>logAbandoned</strong>: Logs stack trace information when a pooled DB connection times out.  This is invaluable information which can help you quickly track down the offending lines of code which failed to close the connection.</p>

<p>These helpful parameters are documented <a href="http://tomcat.apache.org/tomcat-5.0-doc/jndi-datasource-examples-howto.html">here on the Apache Tomcat site</a>, along with many other hints and suggestions.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/08/stop_db_connection_pool_leaks.html</link>
         <guid>http://blog.audiumcorp.com/2006/08/stop_db_connection_pool_leaks.html</guid>
         <category>Programming</category>
         <pubDate>Thu, 17 Aug 2006 10:27:37 -0500</pubDate>
      </item>
            <item>
         <title>Score your IVR</title>
         <description><![CDATA[<p>Mark Gibbs over at Network World has put together a spiffy little <a href="http://www.networkworld.com/columnists/2006/021306backspin.html">scoring system for customer service systems</a> (including many criteria for IVR systems).  How would callers score your IVR using Mark's guidelines?  Place a call and find out, you may be surprised.</p>

<p>Even if you are still in the development stages, it's worth a read; many of his observations are a quick-n-dirty VUI design lesson.  However, I don't necessarily agree with all of his criteria, such as "Subtract one point if there is music on hold" and "Add one point if a human answers".  Different callers will value these things in different ways, and an IVR that your customers enjoy using may be more welcome than a live agent.</p>

<p>Here are some highlights:</p>

<blockquote>Subtract three points if the person or IVR tells you that you have to call another number for the service you want. Subtract 1,000 points if the other number is wrong, busy or discontinued.</blockquote>

<blockquote>...subtract three points if you have to listen to a long menu of choices and the IVR won't let you enter your selection until it finishes. Subtract 10 points if the choice you're looking for and what you are offered are completely different.</blockquote>

<blockquote>Subtract 10 points if the first person you speak to does not have [your call] details, and if you get transferred, subtract 10 points for each subsequent person without your details.</blockquote>]]></description>
         <link>http://blog.audiumcorp.com/2006/08/score_your_ivr.html</link>
         <guid>http://blog.audiumcorp.com/2006/08/score_your_ivr.html</guid>
         <category>VUI Design</category>
         <pubDate>Wed, 16 Aug 2006 17:52:34 -0500</pubDate>
      </item>
            <item>
         <title>Be Forgiving</title>
         <description><![CDATA[<p>Earlier today, as I was typing a comment in our internal issuing-tracking system, I hit backspace to correct a typo.  WHAM!  I go back to the previous page, and my long-winded comment is gone.  Apparently I somehow left the context of the text area (did I tab, or spuriously click, or??), which causes backspace to act as a hotkey for "Back".  The web browser was not very forgiving of my mistake.</p>

<p>Are your IVR applications forgiving?  They should be.</p>

<p>I can think of one great example.  When I call <a href="http://t-mobile.com/">my cell phone provider's</a> voicemail system, and I delete a message, I am immediately given the option "To undelete this message, press 1."  If I am checking my voicemails on the go and accidentally hit the 7 key (delete) instead of what I meant to do, this is a lifesaver!</p>

<p>I can also think of many calls (I won't name companies) where I've ended up in some part of the app where I was destined to hear a message and be disconnected.  What if I got there by mistake?  What if I would prefer to leave a message?  Forgive me for not using the app in the way you had forecasted.  If I feel that it's impossible to make mistakes while in your app, I probably won't mind using it again.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/08/be_forgiving.html</link>
         <guid>http://blog.audiumcorp.com/2006/08/be_forgiving.html</guid>
         <category>VUI Design</category>
         <pubDate>Tue, 01 Aug 2006 10:21:39 -0500</pubDate>
      </item>
            <item>
         <title>Velocity offers a revolution in MVC servlet development</title>
         <description><![CDATA[<p>MVC, or <a href="http://en.wikipedia.org/wiki/Model-view-controller">model-view-controller</a>; most programmers have heard this design lauded, but why?  Simply put, it allows any one of the trio to be modified (or swapped-out) without affecting the other two.  Want to change the label of a menu item?  You only have to modify the view.  Want to store the information in a database instead of the proprietary format you are currently using?  Only update the model.</p>

<p>While the MVC design is commonly used in desktop application development, getting it to work in the web world was previously tedious; that is, until <a href="http://jakarta.apache.org/velocity/">Velocity</a> (from the <a href="http://jakarta.apache.org/">Apache Jakarta Project</a>) came along.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/07/velocity_offers_a_revolution_i.html</link>
         <guid>http://blog.audiumcorp.com/2006/07/velocity_offers_a_revolution_i.html</guid>
         <category></category>
         <pubDate>Wed, 19 Jul 2006 16:35:10 -0500</pubDate>
      </item>
            <item>
         <title>What would you do differently?</title>
         <description><![CDATA[<p>First, read <a href="http://www.alwayson-network.com/comments.php?id=13586_0_5_0_C">this woman's story</a> of a customer service nightmare she encountered when her stock trading company was bought out.  When the new company's website wouldn't let her login, she turned to their main phone number (an IVR).  But the system failed, and it failed miserably.</p>

<p>Ask yourself, as a VUI designer, what could have been done better in this company's IVR, to ensure that customers like her receive quality service?</p>

<p>Continue reading to see some of my suggestions.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/07/what_would_you_do_differently.html</link>
         <guid>http://blog.audiumcorp.com/2006/07/what_would_you_do_differently.html</guid>
         <category>VUI Design</category>
         <pubDate>Tue, 18 Jul 2006 15:41:14 -0500</pubDate>
      </item>
            <item>
         <title>IVR as a Gaming Platform Part 2</title>
         <description><![CDATA[<p>I hadn't intended this to be a multi-part blog thread, but then I noticed that SpeechTEK's website had <a href="http://www.speechtek.com/news/exhibitor/201-1.html">a short article about a new IVR mini-game</a> that is being used to hype the launch of Ubisoft's new Splinter Cell title.  In short, you can call into the system and have a "live chat" with Sam Fisher, who is one of the key figures in the game.</p>

<p>The idea of using IVR for viral marketing campaigns is nothing new.  Halo 2, which released not that long ago, included one of the most extensive viral marketing campaigns ever seen, involving movie trailers in cinemas, mock websites, and even outbound calls to various public payphones at certain GPS coordinates that "players" have to discover.  While this is very intriguing, it's not really a game in and of itself.  It's a prelude to a game, it's a non-repeatable experience.</p>

<p>More along the lines of my previous post is a game called Majestic, which is now several years old.  This game tries to create an alternate reality for the player, by interfacing via telephone, fax, IM, and email.  But it was over-hyped and <a href="http://www.gamespot.com/pc/adventure/majestic/">received very poor reviews</a> on release.</p>

<p>We are still waiting for that killer app I previously alluded to.  And using IVR games solely for marketing purposes is not going to get us there.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/07/ivr_as_a_gaming_platform_part.html</link>
         <guid>http://blog.audiumcorp.com/2006/07/ivr_as_a_gaming_platform_part.html</guid>
         <category>Fun</category>
         <pubDate>Tue, 11 Jul 2006 09:38:51 -0500</pubDate>
      </item>
            <item>
         <title>IVR as a Gaming Platform</title>
         <description><![CDATA[<p>The game development industry has been <a href="http://www.igda.org/mobile/">busting</a> at the <a href="http://www.gamasutra.com/resource_guide/20010917/puha_02.htm">seams</a> with buzz about game development for cell phones.  But what about games for the telephone everyone has at home?</p>

<p>And I'm not talking about <a href="http://www.icgroupinc.com/interactive-promotions-services/IVR-Games.html">odds-based contests,</a> where you may or may not win a prize depending on if you're the lucky caller.  I'm talking about games that people actually want to call in and interact with on a daily basis -- for fun.</p>

<p>Think about the potential:<br />
* Everyone has the required gaming console at home (neither Sony nor Nintendo can beat that).<br />
* People are familiar with the interface and may already engage in fun via phones (e.g. chat lines, walkie talkies, etc.)<br />
* Inherent ability to support a multi-player environment (everyone is calling into a central location, can have a DB, etc.)</p>

<p>I believe the market is just waiting for the first killer app, and then this unknown industry will break wide open.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/06/ivr_as_a_gaming_platform.html</link>
         <guid>http://blog.audiumcorp.com/2006/06/ivr_as_a_gaming_platform.html</guid>
         <category>Fun</category>
         <pubDate>Mon, 26 Jun 2006 14:03:11 -0500</pubDate>
      </item>
            <item>
         <title>Sometimes, automated customer service makes me feel good</title>
         <description><![CDATA[<p>Cory has <a href="http://blog.audiumcorp.com/2006/01/automated_customer_service_sho.html">started a thread below</a> encouraging people to share their IVR pet peeves.  I want to open up a thread to explore the flip side - times when an IVR really gets things right.</p>

<p>I opened a new savings account a few months back, and this weekend called the bank for the first time.  The first thing their IVR did right was immediately tell me how many people were ahead of me in the queue, and then offer me the choice of live or self service.  </p>

<p>Since I hadn't been able to find the answer to my question on the website, I chose to wait for live service, and it was after my call was answered by an agent that the bank really distinguished itself.  The representative asked me for my account number, and then briefly transferred me back to the IVR to enter my PIN number - the same two pieces of information I use to authenticate myself in all my interactions with the bank, and something I felt much more comfortable doing in a potentially public environment than giving the agent my social security number and mother's maiden name.</p>

<p>Share your favorite IVR experience in the comments below.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/06/sometimes_automated_customer_s.html</link>
         <guid>http://blog.audiumcorp.com/2006/06/sometimes_automated_customer_s.html</guid>
         <category>Customer Service</category>
         <pubDate>Wed, 21 Jun 2006 10:37:30 -0500</pubDate>
      </item>
            <item>
         <title>Take pity on support, create readable voice browser logs!</title>
         <description><![CDATA[<p>There are many reasons why storing data in <a href="http://www.w3.org/XML/">XML format</a> is often a great choice, not the least of which is that it results in data which is easily human-readable.  Please, voice browser developers, apply this same concept when developing your voice browser's log files!  Not that logs should be in XML, but they should serve their purpose: while debugging, it should be easy to scan through the log and find what you need.</p>

<p>I spent a good deal of this afternoon working my way through the arcane logs of a particular voice browser, trying to determine why a particular VoiceXML file was causing errors.  To find the error in question, each time I ran a test call I then had to scroll through over 20 pages of unrelated information, and scan it with a fine-toothed comb to find the one line I needed.  To say it was <a href="http://ce.eng.usf.edu/pharos/wonders/pyramid.html">tedious</a> would be an understatement.</p>

<p>On the other hand, some vendors have it right.  Using the online <a href="https://studio.tellme.com/">TellMe voice browser</a> logs is a pleasure, I wish more voice browser developers would follow this model.  Yes, there is sometimes a need for lots (20 pages even) of technical information.  But 90% of the time, I am looking through the logs for a simple error; make it easy to find.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/06/take_pity_on_support_create_re.html</link>
         <guid>http://blog.audiumcorp.com/2006/06/take_pity_on_support_create_re.html</guid>
         <category></category>
         <pubDate>Tue, 20 Jun 2006 16:31:28 -0500</pubDate>
      </item>
            <item>
         <title>Preparing for VoiceXML certification</title>
         <description><![CDATA[<p>We've been expanding our development team lately, and that means lots of developers who are suddenly tasked with becoming VoiceXML certified.  Having gone through this myself (I'm certified, now if only the VoiceXML Forum would update their <a href="http://voicexml.org/certification/cert_developers.asp">Certified Developer's list</a>), I am often asked "how much do I need to study?".</p>

<p>There is a <em>lot</em> of content to cover for this exam, I spent about a month studying before my exam and I feel comfortable recommending the same to others.  As VoiceXML developers, we're lucky to have <a href="http://www.w3.org/TR/voicexml20/#dml1">a user-friendly specification</a> to study from, unlike some other languages.  It's actually quite remarkable that both platform developers and application developers study and work from the same source (the spec).  How many people do you know that learned Java from the Java spec?</p>

<p>Spend at least half of your time reading and working with the spec, and the other half of your time studying from a <a href="http://www.amazon.com/gp/product/0471207373/qid=1137108051/sr=1-1/ref=sr_1_1/103-5839436-2166258?s=books&v=glance&n=283155">good VoiceXML book</a> or two, and give yourself at least a month to absorb the material.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/06/how_much_should_you_prepare_fo.html</link>
         <guid>http://blog.audiumcorp.com/2006/06/how_much_should_you_prepare_fo.html</guid>
         <category>Programming</category>
         <pubDate>Thu, 01 Jun 2006 09:08:44 -0500</pubDate>
      </item>
            <item>
         <title>Automated Customer Service Shouldn&apos;t Make Me Feel Bad</title>
         <description><![CDATA[<p>I'm fed up with automated customer service that treats me like I'm a v-e-r-y s-l-o-w minded person.  If I'm calling a company there is a <strong>reason </strong>for it:</p>

<p>1.  I can't find the information I need online (or I need it clarified).<br />
2.  I can't complete the transaction I want to complete online.<br />
3.  I have a billing dispute that is complex and I don't feel like writing a letter or e-mail (like anyone reads those really).<br />
4.  Some inquiry that requires some sort of human reasoning.</p>

<p>I really think most customers don't like how most of the automated systems treat them (and I've blogged about <a href="http://blog.audiumcorp.com/2005/12/bypassing_the_ivr_to_find_an_a.html">what they're doing to get around them</a> before).  I know I don't.  What drives me nuts?   My top 5:</p>

<p>1.  Non-interruptible prompts telling me to go to the website to get my answers (see #1 and #2 above, duh!)<br />
2.  Bragging about all the "basic" things you can do on the website (oooh.. see your bill)<br />
3.  Reminding me that I really shouldn't hold on the line because their website is available.<br />
4.  Suggesting that I can get out of queue, leave a voicemail and get a return call (this doesn't work most of the time, just like email doesn't often work)<br />
5.  Prompting me to put me into the right queue then having an operator ask me the same questions the IVR just did (Verizon has been doing this for months, and it's a big pain).</p>

<p>Why not personalize the call (and the on-hold prompts)?  The company knows how often I call; they probably know how old I am (or could find out with a quick check of their records); and I they can guess why I'm calling.  I'd use their website to set my IVR preferences.  Put me in a behavioral demographic and guess how to treat me correctly for crying out loud!  Look at when and why I called the last 3 times and guess why I'm calling this time.  Don't make me feel like one of the masses and talk down to me!</p>

<p>Comment and let me know what your pet peeves are and I'll compile a best-of list.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/05/automated_customer_service_sho.html</link>
         <guid>http://blog.audiumcorp.com/2006/05/automated_customer_service_sho.html</guid>
         <category>Customer Service</category>
         <pubDate>Tue, 30 May 2006 16:26:27 -0500</pubDate>
      </item>
            <item>
         <title>A truce in my personal war with Checkstyle rules</title>
         <description><![CDATA[<p>How many times have you ran a <a href="http://checkstyle.sourceforge.net/">Checkstyle</a> ruleset against your Java code, investigated a problem line, and then wanted to scream out "but I did it the way it's <em>supposed</em> to be done!"  <a href="http://www.imdb.com/title/tt0120601/">If you're me</a>, the answer is many.  Additionally, some of the suggestions Checkstyle makes can leave you scratching your head, depending on how many of the more esoteric rules have been enabled.</p>

<p>One particular rule I have been wrestling with for some time now states, for each public method (paraphrasing here):<br />
<blockquote>"This method must be declared as either abstract, final or have an empty implementation."</blockquote> </p>

<p>It's not immediately clear (unless you wrote this rule) why this is required.  But then I discovered <a href="http://checkstyle.sourceforge.net/availablechecks.html">this wonderful index</a>, which made it all clear.  Using this index, you can lookup each of the generic Checkstyle warnings and see their justification.</p>

<p>So <a href="http://memory-alpha.org/en/wiki/Khitomer_Accords">the war is over</a>, Checkstyle and I have made peace now that I can determine the impetus behind its often cryptic warnings.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/05/a_truce_in_my_personal_war_wit.html</link>
         <guid>http://blog.audiumcorp.com/2006/05/a_truce_in_my_personal_war_wit.html</guid>
         <category>Programming</category>
         <pubDate>Mon, 22 May 2006 09:14:14 -0500</pubDate>
      </item>
            <item>
         <title>The Future of Speech Applications</title>
         <description><![CDATA[<p>Intervoice has a pretty cool <a href="http://www.csrwire.com/article.cgi/5583.html">press release out</a> describing some of the voice applications built by students in a class co-taught by one of their employees at Tufts University.  While all of the applications in the release sound pretty creative, I was particularly impressed by one called iRing:</p>

<blockquote>This application leverages the students' patent-pending technology enabling users to call into a speech recognition system, select a song from their iTunes music library and send it, as a ring-tone, to their cell phone or to a friend's. Users can simply say the title of the song they would like to download or they can navigate the system using voice commands such as "get favorites" or "search by genre" to narrow down their song choices.</blockquote>

<p>Were this available as a service on my phone, I'd gladly pay a few dollars to be able to get exactly the ringtone I wanted, whenever I wanted it.  </p>

<p>It's a pity there isn't a demo line that people can call into to try these applications out.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/05/draft.html</link>
         <guid>http://blog.audiumcorp.com/2006/05/draft.html</guid>
         <category>Fun</category>
         <pubDate>Thu, 18 May 2006 17:49:43 -0500</pubDate>
      </item>
            <item>
         <title>BusinessWeek Online Highlights Customer Service</title>
         <description><![CDATA[<p>BusinessWeek Online recently posted an article on some of the challenges facing the telecommunications industry as they roll out bundled service packages (telephone, internet, television, and sometimes wireless).  Of these, the article's author identifies customer treatment as the most important.  He writes:</p>

<blockquote>In the past week, I have received six advertisements via text message. They were all from my own provider and all about changing to a plan that is suitable for a chatty teenager or a plan that assumes I make three phone calls a month -- and all on weekends. The fact is -- and my service provider should know this -- none of these plans would suit my needs as a businessman who spends a significant part of his life out of the country. Please understand me as a customer. Make it easy to do business with you, and I will be yours forever.</blockquote>

<p>I couldn't agree more.</p>

<p>The full article is available <a href="http://www.businessweek.com/technology/content/may2006/tc20060510_952684.htm?campaign_id=rss_daily"> here</a>.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/05/businessweek_online_highlights.html</link>
         <guid>http://blog.audiumcorp.com/2006/05/businessweek_online_highlights.html</guid>
         <category>Customer Service</category>
         <pubDate>Thu, 11 May 2006 15:37:18 -0500</pubDate>
      </item>
            <item>
         <title>August is just around the corner</title>
         <description><![CDATA[<p>For companies in the speech industry, it's time to start making plans for the industry's biggest show, SpeechTEK Fall, held every year in New York City.  And since the show is in our own backyard, we at Audium always make a point of encouraging all of our employees to make their way there.</p>

<p>Checking out the schedule for this year, I was very pleased to see that Paul English, the man behind the <a href="http://www.gethuman.com/">IVR Cheat Sheet</a>, will be appearing as a <a href="http://www.speechtek.com/ME2/Audiences/dirmod.asp?sid=D99DD951F8D64377A500D3EF415E4350&nm=CONFERENCE&type=WebTitle&mod=WebTitles&mid=8ED369E0A6EE427AB822BFB43842DE89&tier=3&AudId=9E1BD4264D064A88BFA71DC73D68B05C&id=599C81815B704420B59F657FE7DC6923&PageId=81587F0186694014BCA1AAF5D6EEA6AB">keynote speaker</a> at the conference.</p>

<p>If Paul English's keynote manages to start a substantive discussion in the industry about how we really should care that the public is by and large entirely lacking in warm and fuzzy feelings towards our product, that would be pretty exciting.</p>]]></description>
         <link>http://blog.audiumcorp.com/2006/05/august_is_just_around_the_corn.html</link>
         <guid>http://blog.audiumcorp.com/2006/05/august_is_just_around_the_corn.html</guid>
         <category>Industry News</category>
         <pubDate>Wed, 10 May 2006 19:00:41 -0500</pubDate>
      </item>
      
   </channel>
</rss>
