Are we doing this for what we need? Or are we doing this to reach the "specs of the modern programs"? Those might be very different things...
I think this whole fuss is about having program with compatibility with modern programs and their formats. And I think that requires that most features have to be supported then. I think they save pretty complex things in their doc files and all those should be reproduceable on our programs. So, we have to reach their standards... and that is a really big job to write from scratch or glue into old software.
If there wouldn't be desire for compatibility, then Final Writer and other old programs would be just fine for the needs of the most people.
And I've always been a fan of native code for native OS/hardware for speed and simplicity...
Me too, but in some cases it's just not possible with today's requirements and resources. Many things have ran away from single/small coder base project's capabilities. Like with movie players, browsers... and I think with this office/wp case too.