I am just spit balling and could be completely off base here, and feel free to let me know if am, but I think the MLB is trending towards how European soccer/futbol operates. You have the powerhouses who spend on transfers and players and the other teams who develop talent and sell them for profit. That's just the reality.
Now I don't necessarily think the answer is a salary cap, but rather other tweaks (which probably aren't feasible but still pose questions). Harsher "penalties" for the big spenders for one, trading draft picks for another (I don't understand why this is not allowed other than not allowed in CBA).
For the spending issue, I think the pay structure of <6 year service time players is really out of touch. And I say that in terms of, if I am a team that is rebuilding, I am going to want to play a lot of rookies to develop them and see what I have. Is it the team's fault that they all make 820k and my payroll is then around 24.6M for 3/4 of my 40 man? It makes no sense to pay 10 random guys 60M to "hit" my ~85M or whatever floor. I think the salary floor stipulation is a joke.
Again, my take, and just needed to get it out
