When it comes to building a major league roster, there are three primary ways: drafting and developing, free agency, and trading. Drafting and development leads to better trades should an organization decide to sell prospects for proven talent.
The St. Louis Cardinals typically don't spend in free agency, and they historically haven't made blockbuster trades (excluding Marcell Ozuna, Nolan Arenado, and Paul Goldschmidt in recent years). Therefore, the team must fill in a roster mostly through drafting and developing high school and college players. In recent years, the Cardinals have seen their prospects thrive in other cities (see Randy Arozarena, Sandy Alcantara, Zac Gallen, and Adolis Garcia, to name a few). The front office has received some flak for these moves. On the flip side, however, the Cardinals traded prospects who aren't succeeding on other teams for superstars in Nolan Arenado and Paul Goldschmidt.
Deciding if a team is "good at developing talent" is a bit of a tricky question. How much do fans value the pieces received in trades from prospects? When does a player become a part of a team's development pipeline? If the Cardinals trade for a guy who is already in AAA, can they really take credit for his development?
In recent history, the Cardinals have really shied away from big-name free-agent signings and in-season blockbuster trades. Therefore, they have been able to keep their prospects and farm system stars. When looking at the rest of the league, how successful has this mold been?