Joe Ryan Addresses His 2020 FanGraphs Scouting Report

Nathan Ray Seebeck-Imagn Images

Joe Ryan has developed into one of the better pitchers in the American League. So far this season, the 28-year-old Minnesota Twins right-hander has a 5-2 record to go with a 2.57 ERA, a 3.19 FIP, and a 29.8% strikeout rate over 63 innings. Moreover, he’s been rock solid since debuting with the AL Central club in September 2021. His career ledger includes a 3.76 ERA and a 3.77 FIP over 533 1/3 frames, with all but one of his 95 appearances coming as a starter. The lone exception was working five innings as a bulk reliever in the resumption of a suspended game earlier this month.

His prospect profile wasn’t particularly high. Drafted 210th overall by the Tampa Bay Rays out of California State Stanislaus in 2018, Ryan proceeded to pitch well in the minors, but he was largely overshadowed. When our 2020 Tampa Bay Top Prospects list was published in March of that year, Eric Longenhagen wrote that the Rays possessed “one of the, if not the, best farm systems in baseball.” He ranked Ryan 13th in the organization and assigned him a 45+ FV. The Rays subsequently sent Ryan to the Twins in their July 2021 trade for Nelson Cruz.

What did Ryan’s 2020 FanGraphs scouting report look like? Moreover, what does he think about it all these years later? Wanting to find out I shared some of what our lead prospect analyst wrote and asked Ryan to respond to it. Read the rest of this entry »


The Kyle Stowers Power Hour

Kamil Krzaczynski-Imagn Images

Kyle Stowers used to be part of that Baltimore Orioles position player prospect fire hose, but it’s OK if you forgot about him. Said fire hose has turned to a dribble as the Orioles’ fortunes have reversed. You also might have gotten him confused with Colton Cowser, which might be why the Orioles felt like they could trade him to Miami last summer for Trevor Rogers. (The other prospect in that trade, Connor Norby, has the same similar-name-mixup thing going with Coby Mayo. This town ain’t big enough for the two of us, etc.)

And if you still had your eye on Stowers after all that, you were probably put off when he hit .186/.262/.295 in 50 games for the Marlins after the trade. A better team, with a deeper talent pool, might’ve removed a 27-year-old outfielder with that batting line from its major league roster. But in Miami it’s more like a talent splash pad, so Stowers remains.

So much the better, because after 52 games, the former Stanford slugger is hitting .291/.362/.508. He has the same wRC+ as the much-celebrated Pete Crow-Armstrong, a higher wRC+ than Fernando Tatis Jr., Vladimir Guerrero Jr., and Bobby Witt Jr., three second-generation big leaguers with more than $1 billion in contracts among them. Read the rest of this entry »


Effectively Wild Episode 2328: Rogers Tat

EWFI
Ben Lindbergh and Meg Rowley banter about the Rockies’ historic series losing streak and their rest-of-season projections, an Orioles fan’s decision to get the name of Trevor Rogers tattooed on his butt, a Patrick Corbin innings-eating update, draft prospect Jace LaViolette’s dedication to staying in the lineup, the late-career struggles of Clayton Kershaw, Justin Verlander, and Max Scherzer, the Yankees’ shame about their rings commemorating their 2024 pennant, and more.

Audio intro: Austin Klewan, “Effectively Wild Theme
Audio outro: Jonathan Crymes, “Effectively Wild Theme

Link to Rockies stat
Link to Opta interview
Link to Kamka tweet
Link to BaseRuns standings
Link to FG playoff odds
Link to ESPN SoS
Link to Baltimore Banner article
Link to Rogers tweet
Link to Kjerstad tweet
Link to best Orioles starts
Link to Rangers IP leaders
Link to LaViolette article 1
Link to LaViolette article 2
Link to LaViolette article 3
Link to LaViolette homers
Link to Kershaw article 1
Link to Kershaw article 2
Link to Yankees rings article

 Sponsor Us on Patreon
 Give a Gift Subscription
 Email Us: podcast@fangraphs.com
 EW Subreddit
 Effectively Wild Wiki
 iTunes Feed (Please rate and review us!)
 Spotify Feed
 Facebook Group
 Bluesky Account
 Twitter Account
 Get Our Merch!


Carson Kelly Has Caught on With the Cubs

Katie Stratman-Imagn Images

As one-half of the majors’ most productive catching tandem, Carson Kelly doesn’t have enough plate appearances to qualify for the batting title, but like the Dodgers’ Will Smith, he’s been incredibly productive so far, particularly with runners in scoring position. Unlike Smith, he doesn’t have a lengthy track record of success; in parts of 10 major league seasons with five teams, Kelly has not only never made an All-Star team, he’s only played 100 games in a season twice, and finished with a 100 wRC+ or better just twice. But thanks to some changes to his swing mechanics over the past couple of seasons, he’s in the midst of a breakout campaign for the NL Central-leading Cubs.

The 30-year-old Kelly is hitting .290/.412/.589 with nine homers and a 179 wRC+ in 131 plate appearances. He’s started 28 of the Cubs’ 56 games behind the plate, while Miguel Amaya started 25 before landing on the injured list this past weekend due to an oblique strain, an injury that interrupted a promising start to the 26-year-old backstop’s season. Though Kelly homered after replacing Amaya in Saturday’s loss to the Reds, he was limited to a single late-inning cameo over the next three days due to an unspecified illness before returning to the lineup on Wednesday night. Instead of recalling 21-year-old prospect Moisés Ballesteros, who spent five games DHing for the Cubs earlier this month but whose defense needs more refinement, the Cubs brought up Reese McGuire from Triple-A Iowa to replace Amaya on the roster; he started all three games while Kelly was ailing, homering twice in his season debut against the Reds. All told, the trio of Cubs catchers has been great offensively:

Cubs Catchers Batting
Player G PA HR BB% K% AVG OBP SLG wRC+ WAR
Carson Kelly 30 120 9 15.0% 13.3% .310 .417 .630 190 1.7
Miguel Amaya 26 96 3 4.2% 22.9% .267 .295 .467 111 0.7
Reese McGuire 3 11 2 0.0% 27.3% .200 .200 .800 171 0.3
Totals 56 227 14 9.7% 18.1% .285 .356 .565 155 2.7
Includes only statistics accumulated while playing catcher.

Read the rest of this entry »


No One Is Running on the Royals

Jay Biggerstaff-USA TODAY Sports

No team has been caught stealing more than the Royals this year. As hard as it might be to believe, their 20 thwarted stolen base attempts are the most in the league. Their 70.1% stolen base success rate ranks 27th, as do their -2.1 weighted stolen base runs (wSB). This stands in stark contrast to what many think of as the Royals’ brand of baseball. After all, you’d have to go back to 2017 to find a full season in which the Royals didn’t rank among the top five AL teams in wSB, and all the way back to 2010 to find the last time their wSB was below league average. Thanks to players like Whit Merrifield, Jarrod Dyson, Adalberto Mondesi, Alcides Escobar and, most recently, Bobby Witt Jr., the Royals of the 2010s and 2020s developed a reputation as the most larcenous team in the league. From 2011-24, no team stole more bases, and no team racked up more wSB.

Kansas City’s stolen base supremacy hasn’t been limited to one side of the ball, either. From 2011-24, only two teams allowed fewer stolen bases than the Royals, and none caught would-be basestealers at a higher rate. According to the stolen base component of DRS (rSB), their catchers were twice as productive as any other team’s backstops in that period, while their pitchers were 12 runs better than the next-best team (the Diamondbacks) and more than three times as valuable as the next-best AL club (the Orioles). The Statcast numbers tell a similar story, although they only go back to 2016. From 2016-24, Kansas City catchers ranked second in both catcher and pitcher stealing runs. No other team placed within the top five in both metrics. So, you could make a pretty convincing case that preventing stolen bases is even more essential to the Royals’ brand of baseball than stealing bases, especially with the way things have gone in 2025. Their baserunners might be struggling to swipe bags like they did in the past, but their defense has taken control of the running game like never before. Read the rest of this entry »


Pete Crow-Armstrong Just Wants a Hug

Patrick Gorski-Imagn Images

You can’t keep Pete Crow-Armstrong away from the baseball field. I mean that in the sense that he’s a passionate young star who loves the game and plays with his hair on fire all the time. But I also mean that in a more literal sense. The Cubs might need to devise a system for keeping Crow-Armstrong away from the baseball field. He has a problem.

The Cubs walked off the Rockies on Monday night. The score was 3-3. With one out and two on in the bottom of the 11th inning, rookie Matt Shaw stayed back and punched a Tyler Kinley slider into right field, scoring Jon Berti from second base. It was thrilling. (For the Cubs, anyway; for the Rockies, it was probably akin to the feeling you have when you go to bed with a tickle in your throat and you just know that it’s a really bad cold coming on even though there’s no tangible basis for that certainty, and then you do in fact wake up in the middle of the night with a terrible cold.) As you’d expect after a thrilling(-slash-miserable) walk-off hit, Shaw got mobbed by his teammates.

Well, he got mobbed by one teammate, anyway. There’s Shaw, moments after his big hit, engaged in an intimate leaping chest bump with Crow-Armstrong. I mean “intimate” in the sense that it seemed like a special moment, but I also mean it in the sense that it’s just the two of them all alone on the grass under the romantic Chicago skies, smiling at each other like there’s nobody else in the whole wide world. The rest of the Cubs are just out of frame, celebrating too. Read the rest of this entry »


The Run Expectancy Matrix, Reloaded for the 2020s

Gary A. Vasquez-Imagn Images

This is a public service post of sorts. If you’re like me, when you type “Run Ex” into Google, it will auto-complete to “Run Expectancy Matrix.” It knows what I want – a mathematical description of how likely teams are to score in a given situation, in aggregate. I use this extensively in analysis, and I also use it in my head when I’m watching a game. First and third, down a run? That’s pretty good with no outs, but isn’t amazing with two.

There’s just one problem with that Google search: It’s all old data. Oh, you can find tables from The Book. You can find charts that are current through 2019. There’s a Pitcher List article that I use a lot — shout out to Dylan Drummey, great work — but that’s only current through 2022. And baseball is changing so dang much. Rather than keep using old information, I thought I’d update it for 2025 and give you some charts from past years while I’m at it, so that you can understand the changing run environment and use them for your own purposes if you so desire.

First things first: Let’s talk methodology. I downloaded play-by-play logs for all regular season games played between 2021 and 2025. For each play, I noted the runners on base, the number of outs, and then how many runs scored between that moment and the end of the inning. I did this for the first eight innings of each game, excluding the ninth and extras, because those innings don’t offer unbiased estimates of how many runs might score. Teams sometimes play to the score, and the home team stops scoring after the winning run. If you have the bases loaded and no one out in the bottom of the ninth, one run will usually end it, and that provides an inaccurate picture of run scoring. That’s also why I skipped 2020; the seven-inning doubleheaders and new extra innings rules produced a pile of crazy results, and the season was quite short anyway. No point in trying to wade through that maze. Read the rest of this entry »


Less Slappin’, More Whappin’

Charles LeClaire-Imagn Images

Count me among the multitudes who have been borderline obsessed with the emergence of Pete Crow-Armstrong as a superstar this season. I’m sure he’ll reach a saturation point eventually where hardcore fans get tired of him — it happened to superhero movies, and bacon, and Patrick Mahomes — but we’re not there yet.

Every time I write about PCA, I revisit the central thesis: This is a player who’s good enough to get by on his glove even if he doesn’t hit a lick. But out of nowhere, he’s turned into a legitimate offensive threat. Great athletes who play with a little flair, a little panache, a little pizzaz, tend to be popular in general. The elite defensive center fielder who finds a way to contribute offensively is probably my favorite position player archetype; the more I compared PCA to Lorenzo Cain, Jackie Bradley Jr., Enrique Bradfield Jr., Carlos Gómez… the more I understood why I’d come to like him so much.

In fact, let’s take a moment to talk about Gómez, and his offensive breakout in the early 2010s. Read the rest of this entry »


Kansas City Royals Top 35 Prospects

Kevin Jairaj-USA TODAY Sports

Below is an analysis of the prospects in the farm system of the Kansas City Royals. Scouting reports were compiled with information provided by industry sources as well as our own observations. This is the fifth year we’re delineating between two anticipated relief roles, the abbreviations for which you’ll see in the “position” column below: MIRP for multi-inning relief pitchers, and SIRP for single-inning relief pitchers. The ETAs listed generally correspond to the year a player has to be added to the 40-man roster to avoid being made eligible for the Rule 5 draft. Manual adjustments are made where they seem appropriate, but we use that as a rule of thumb.

A quick overview of what FV (Future Value) means can be found here. A much deeper overview can be found here.

All of the ranked prospects below also appear on The Board, a resource the site offers featuring sortable scouting information for every organization. It has more details (and updated TrackMan data from various sources) than this article and integrates every team’s list so readers can compare prospects across farm systems. It can be found here. Read the rest of this entry »


Job Posting: Boston Red Sox – Backend/API Engineer

Backend/API Engineer

Location: Boston, MA
Status: Full-Time / On-Site

DEPARTMENT OVERVIEW:
Members of the Baseball Systems team at the Boston Red Sox are focused on designing, building, and refining the software and data pipelines used within Baseball Operations. These tools and applications are an integral part of the decision-making process, are directly integrated in the workflows of all departments within Baseball Operations, and provide an efficient, consistent, and accessible experience when interacting with our internal data sources and applications.

POSITION OVERVIEW:
We are seeking a skilled and motivated API Engineer to join our dynamic Systems team. This is a brand-new role critical to our evolving architecture. You will be instrumental in designing, developing, and managing our API ecosystem, acting as the subject matter expert for our Hasura GraphQL engine and driving the development of our new serverless API layer using Azure Functions and Python. If you thrive on building efficient data access layers, designing scalable serverless solutions, and shaping API strategy, this is an exciting opportunity for you.

RESPONSIBILITIES:

  • GraphQL Subject Matter Expert (SME):
  • Act as the primary technical expert for our GraphQL engine deployment.
  • Define and evangelize best practices for GraphQL schema design, permissions, actions, and remote schemas within GraphQL Server.
  • Collaborate with development teams on integrating applications with GraphQL Server.
  • Azure Function API Development & Roadmap:
  • Lead the design, architecture, and development of new APIs using Azure Functions, primarily in Python, but occasionally running R in Docker, to handle high-compute tasks and serve complex data.
  • Implement robust error handling, logging, and monitoring for Azure Function APIs.
  • Integrate Azure Functions with various data sources (databases, other APIs, event streams) and internal systems.
  • General API Management:
  • Collaborate closely with front-end developers, data engineers, and SRE/DevOps to understand requirements and deliver effective API solutions.
  • Develop unit and integration tests for APIs to ensure reliability and correctness.
  • Monitor API performance and usage, identifying bottlenecks and implementing optimizations.

COMPETENCIES:

  • [3-5]+ years of professional experience in software development, with a strong focus on backend systems and API development.
  • Proven, hands-on experience designing, building, deploying, and maintaining APIs (RESTful required, GraphQL strongly preferred).
  • Strong proficiency in Python programming, including experience with relevant libraries for web frameworks/APIs (e.g., Flask, FastAPI) and data handling.
  • Demonstrable experience developing and deploying serverless applications using cloud platforms, specifically Microsoft Azure Functions.
  • Experience working with relational databases (e.g., PostgreSQL, SQL Server) and understanding of data modeling concepts.

ADDITIONAL QUALIFICATIONS:

  • Experience with version control systems (e.g., Git) and CI/CD concepts.
  • Solid understanding of API security principles (Authentication, Authorization, etc).
  • Excellent analytical and problem-solving skills.
  • Strong communication and collaboration abilities.
  • A passion for learning new technologies and a strong work ethic.
  • Experience with Agile development methodologies (Scrum, Kanban).
  • Experience with cloud platforms (AWS, GCP, Azure).

In addition to the above requirements, all roles within Baseball Operations are expected to effectively demonstrate our universal competencies related to problem solving, teamwork, clarity of communication, and time management, along with embodying our culture of honesty, humility, relentlessness, and commitment to DEIB.

To Apply:
To apply, please follow this link.

The content in this posting was created and provided solely by the Boston Red Sox.