David Berlind asks where are the ODF developer kits.
I guess it depends on what you want to do but for my money, there are lots of ODF developer kits out there. They are called XML processing toolkits:-) Ok, I'm being a wee bit cheektongued when I say that.
We do a lot of ODF processing and, where possible, we do it in XML processing pipelines that are outside of ODF itself. We use Jython for most of this heavy lifting, ODF munging work.
When it comes to working interactively with OOo, our preferred method is PyUNO. Using Python for inside OOo work and outside OOo work minimises the seams between the two activities.
For deep integration of OOo into custom applications, there are a number of options ranging from headless execution through to OfficeBeans. Somebody even did an ActiveX control if memory serves me right :-)
There is also the VB-like scripting language that ships with OOo itself.
Now I'm a bits-on-the-wire kind of guy so I like my XML served up straight. I'm not a fan of endless abstractions that hide the "complexity" of text and thus not a great fan of APIs for applications that are fundamentally about text.
I fully realise that not everyone thinks the way I do and people see complexity in different places and prefer to deal with it in different places.
So, my perception of the state of the OOo developer kit landscape is skewed to my way of thinking and from my viewpoint, things ain't too bad.