Interesting column
I'm happy that Dragon still has a life somewhere, and that people who really need it can still use it. I've always heard good things about Dragon. Nice to see the fire is still alive.
That said, there are some issues which, I think, could be easily solved. The proper noun issue would go away if, when recording a new one, you had the option to Always Capitalize. That should be rather simple to implement.
The issue with Will, or The Sun, is simple to comprehend : the product is not aware of the contect in which it is working. It "hears" something, and code happily goes to the nearest match and, bingo, you've got Will, a person, when you're talking about your will to do something. Maybe, before using the match, the product could detect that more than one possibility exists, and popup its proposal to which you could just say no ? I have no idea how practical that would be, and it would certainly complicate things in all the other cases that work fine.
But before proposing The Sun, the product could have a basic notion of how many times the user has already wrote about newspapers. If it's never, then maybe don't do that automatically ?
Or better : allow the user to invalidate a match. No, I never talk about The Sun, stop using that match.
That shouldn't be too difficult to implement, should it ?