So I've been spending the past week and a half or so working on a new app: a web-based sprint board. Weapon of choice: Ruby on Rails (of course).
It's all interactive AJAXy goodness, with some CSS 3 styling (drop shadows anyone ?). And Rails makes it really easy. I've been using the newest edition (version 3), and I really enjoyed working with it. It tries its hardest not to get in the way, which I love. There is a bit of a learning curve, though, as it requires knowledge of the basic patterns and idioms on which it is based. But the online documentation is, for the most part, excellent. I can also recommend the newest 'Agile Web Development with Rails' book, especially if you're a beginner.
I was planning to give my sprint board a bit of a killer feature (in my eyes): Jira integration. I figured this would be real easy, making use of the JIRA4R Ruby client. This is basically a Ruby front for the SOAP interface which JIRA exposes. And there's the downer: as easy as Rails tries to make life for a developer, that's how hard the JIRA SOAP interface makes your life again.
Only the most basic of information is easily available. But if you want to know, for instance, the remaining time estimate on an issue, you can forget it. I don't see a way to do this with the SOAP service they set up. Same thing for updating a status; how do you even do that ? And why can I get the custom field values but not their names (administrative privileges required) ?
When you google for solutions, here's what people come up with: submit forms programmatically and parse the resulting HTML... Really, when you force developers into these kinds of patterns you have failed.
So: Rails great; JIRA ('s SOAP interface) bad.