What WAS said early on was that there should be different silos for combat and non-combat capabilities in the game. So that everyone has a combat role and a non-combat role, and lack of combat ability should not be balanced with superior non-combat ability and vice versa. Frankly, I think that failed as well.
I pretty much entirely disagree. For one thing, I don't think the goal was to give every class
identical combat and out-of-combat ability, but to instead ensure that everyone
could contribute in both, generally in different ways. I.e., make every class both combat capable and non-combat capable. To that end, the Fighter might have only three trained skills, but that is still enough to pick up a good selection of abilities (Athletics for physical needs, Intimidate for social scenarios, and Heal, for example.) The Rogue might have twice as many skills, but that is a far cry from the last edition - when an Int 8 Fighter might have one relevant skill to the dozen a Rogue could be good at. The Rogue might still have an 'edge' in terms of out-of-combat ability, but hardly one that puts him on a different playing field from the fighter.
And in terms of combat ability, I don't think any class is truly behind. Some can be optimized in different ways, but every class is pretty combat capable, bard included.
As for feats, the key thing is that each feat is a small enough element that you can easily afford to give up +1 damage in order to get a new trained skill. There are a few obnoxiously strong combat feats, like Expertise, that mess with this paradigm - but they are the exception, not the norm.