Sure would be nice to have just one program do it all, but guess we aren't there yet.
It would be nice to have one perfect program that did everything. BUT it will never happen because nothing is perfect, and certainly not perfect for everyone.
Some programs have reports that I like and you may not, while other programs have reports that you like and I won't. Some programs have an interface that I like and you may not, while others have an interface that you like best and I can't use.
This is the nature of software, Functions/Screen Views/ Reports/etc.that make me happy may not make you happy. So owning multiple programs can be a solution, unless you are lucky enough to be able to "roll your own" software.
HOWEVER, when programs don't talk to each other, or can't support a common interface 100% of the time (GEDCOM for example), or highjack your data, this puts genealogists in a bind. If software is not open to the user finding and using the best features of each software program then we all lose.
For many syncing to A.com is so important that they can't use any other program that may have a better reporting system. For some, data input may be very important, but the reporting features are non-existent or incomplete prevents someone from creating reports that they can send out to their family.
I would happily own multiple programs if they talked well to each other. But they don't. So I am forced to use one program that supports my most important feature and hope that the other features are "good enough".
I 'm off my soapbox now!!