Assuming she has both the skill and the time to understand and patch the codebase herself. Otherwise she will be just as beholden to said developer as she is to Microsoft.
More in fact; at least MS has some incentive to add features its users want rather than those that are merely interesting to code...
> Otherwise she will be just as beholden to said developer as she is to Microsoft.
She can buy a book and learn how to bend the program to her will. It may be a daunting task, but it's possible because she has the source code. In the Microsoft product case, she can't because she doesn't have the source.
Actually, she can, but she will have to learn how to program, apply for a job opening at Microsoft for the desired group, get hired and then convince the product manglers the change she wants deserves to be included in the product.
Oh please! How many months, or years perhaps, working at it every day, would it take a normal, not-particularly technical end-user to get their C++ to a level they could add meaningful features to a full blown office suite? Or at a typical hourly rate, how much would it cost to hire a C++ programmer who's never seen this code before to do it, and how long would it take? Weeks probably.
You might as well say, there are books in the library, go build a rocket and fly to the moon.
But users, collectively, can decide what feature any commercial organization implements next, by indicating what they are willing to pay for.
At the hourly rate of a decent C++ hacker, that will cost more than Microsoft's entire product range at retail...
There is an entire industry of VB and VBA programmers who customize MS Office for organizations. I gather even OpenOffice.org has some of that capability. But to do something to OOo that you can't do in VBA with MS Office is a substantial amount of work.
> Oh please! How many months, or years perhaps, working at it every day, would it take a normal, not-particularly technical end-user to get their C++ to a level they could add meaningful features to a full blown office suite?
And it also depends on what you call meaningful. And then, you are completely ignoring every other person who shares the same problem and that can cooperate in solving it - or hiring someone for that.
Look, this is about power. In the commercial world, the power ultimately, albeit indirectly, lies in the hands of the end user who decide what he or she will and will not pay for. In the "free software" world the power is in the hands of the high priests who are beholden to no-one, and users are expected to be grateful for whatever they're given.
Do you think the average user wouldn't want something for free? But the cost can't be avoided in software - it only depends what currency you want to pay in.
More in fact; at least MS has some incentive to add features its users want rather than those that are merely interesting to code...