I made a web service use REST and JSON when one of our major users called us to ask if we could make it available in SOAP. Grinding my teethes, I searched CPAN for SOAP in the hope of finding an easy way to implement it...
Let's say that I was not reassured when I started reading the docs for SOAP::Simple: "Let's face it. SOAP is painfull. It's a dumb idea, the only reason you should ever consider using SOAP is if someone holds a gun to your head or pay you a lot of money for it."
I then stumbled upon guide.soaplite.com/ and things started looking good. In in couple hours I was able to extend my web service to SOAP with very little effort! :)
The only thing that took me a while to find out was that I was using 'use warnings "all"' and it caused the script to return a warning to the web server, causing a "Incomplete headers" error to be sent to the browser, while not showing any warning when running it from the command line...
At work, I need to parse several huge XML files (~50MB) every day to get just about 1-2 MB of data. With XML::Simple it used to take a very long time to parse each file. I was so desperate that I started doing some regexp on the XML files before sending them to XML:Simple!
I got a great speedup by switching to XML::Bare: between 5x and 25x depending on the size of the XML file!
In short, XML::Bare is great if you just want to quickly parse big XML files.