It's been a great first month-plus of the season for Phillies pitchers, both in the majors and at the upper levels of the farm system.
Let's take a look in Week 3 of the Future Phillies Report:
RHP Jake Thompson (AAA)
Thompson did not get off to a good start in his first month at Triple A Lehigh Valley, but he rebounded on Tuesday to pitch by far his best game of the season. Thompson allowed one run on just two hits over seven innings in a game the IronPigs eventually won in extras on a Nick Williams walk-off home run.
Thompson, 22, lowered his ERA from 6.16 to 4.85. He made the necessary adjustments against a Pawtucket Red Sox team that hit him around three weeks prior, this time generating a season-high 10 groundballs.
Thompson's pitch count was efficient on Tuesday, but he needs to get himself in better counts. For the season, he's thrown 60 percent strikes and 40 percent balls. He's been slow to get back to the command he showed in seven starts at Reading last season.
RHP Zach Eflin (AAA)
Eflin has been fantastic in four starts this season, going 3-0 with a 2.05 ERA and 0.76 WHIP. He's struck out 22 batters, walked three and hasn't allowed a home run in 26⅓ innings.
Eflin is still getting plenty of weak contact with his sinker, but he's also generating the swings-and-misses the Phillies needed to see this season.
Complete coverage of the Fightin' Phils and their MLB rivals from NBC Sports Philadelphia.
"I feel better this year. Just basing everything off of last year, I prepared better this season to start off. And I've really just been focusing and locked in," Eflin said in an interview that will air next Monday on CSN's Phillies Clubhouse.
"To me it's just getting early contact, I love going deep into games. And I think as a starter that's what you should set your goal to. I'm working on striking guys out when I want to, runner on third with one out."
Last season, Eflin struck out just 68 batters in 131⅔ innings. He's already one-third of the way to matching that K total this year.
The craziest thing about Eflin's season so far is that he allowed five runs in the first inning to Pawtucket on April 22, and aside from that he's allowed just one run in his other 25⅓ innings.
In that start against Pawtucket, he threw up all zeroes after that first inning.
"I think the strongest part of my game is the mental side and recovering well from a tough outing or tough inning, really just flushing it, understanding that it's just a game. It's supposed to be fun," Eflin said. "I don't like going out there with a bad attitude because then it's not fun for me."
RHP Mark Appel (AAA)
Appel is having nearly as much early-season success as Eflin, entering Thursday night's start with a 3-0 record and 1.64 ERA. Appel's secondary numbers aren't quite as nice as Eflin's - 1.32 WHIP, 17 strikeouts, nine walks in 22 innings - but he's gotten the outs when he's needed to.
(Update: Appel started on Thursday and allowed five runs in five innings, pushing his ERA to an even 3.00.)
Whether his new mindset has led to better results or the better results have helped him feel more free, Appel has looked like a different pitcher so far in the Phillies' system than he did with the Astros.
"I've seen him in the past years and he just looks different - he looks like he's not scared to challenge a hitter," Eflin said of his LHV teammate. "That's exactly what I like doing and pride myself doing as well."
"I think my mindset, my approach to this season is a lot different than years past," he said in that Phillies Clubhouse interview. "Just really going out and enjoying it, not trying to be anybody else than myself.
"I think honestly it was a process from whenever the trade happened and then just through spring training, just going out and taking a lot of pressure off, being myself and having fun. And not really worrying about making mistakes and messing up or having a bad game. Honestly, I think a big part is not taking yourself so seriously all the time."
Appel did finish on a decent note last season at Triple A, going 4-0 with a 3.67 ERA and .222 opponents' batting average in his final eight starts, striking out 47 batters in 49 innings.
Perhaps he's finally on his way.
OF Nick Williams (AAA)
Williams is hitting .395 with a triple, two homers and eight RBIs in his last nine games. He's had multiple hits in six of his last 11 games to raise his season batting line to .289/.313/.434.
He's also held his own against lefties, going 5 for 17 with five RBIs.
Williams admitted this week that his early-season slump "really bothered" him and could have been a result of looking ahead to his eventual call-up to the majors. He realizes now that he just needs to do his thing - if he hits, he'll be up soon given the Phillies' ridiculously low offensive output at both outfield corners.
Williams has played 75 innings in left field, 48⅔ in right field and 40 in center field so far this season.
SS J.P. Crawford (AA)
Crawford is all about symmetry. Over his last eight games, he has eight hits, eight walks, eight strikeouts and eight runs scored. He continues to get on base at a high clip and walk more than he strikes out - through 107 plate appearances with Reading, Crawford is hitting .279/.421/.395 with 21 BBs and 17 K's. Make it 181 walks and 180 strikeouts in his minor-league career.
Crawford's .421 OBP is third in the Eastern League among players with more than 50 plate appearances. And the kid is 3.5 years younger than the Eastern League average.
Defensively, Crawford has settled in. He has just five errors in 126 defensive chances in 213 innings at shortstop, so the routine plays are becoming more routine for him.
Triple A is calling his name. Barring a slump, he should advance to Lehigh Valley by the end of the month.
C Jorge Alfaro (AA)
Alfaro was on fire, winning Eastern League Player of the Week the first week of the season by going 18 for 36 (.500, obviously) with six extra-base hits and 10 RBIs. Then he hurt his oblique, perpetuating the theme of his career: a whole lot of production and a whole lot of injuries.
There was some thought Alfaro could return to the field this week, but he was out of Reading's lineup again Thursday. He's been out since April 18. Oblique injuries are tricky because the recovery process doesn't follow a straight line. Just ask Cody Asche, who's been out with his oblique strain for three months.
1B Tommy Joseph (AAA)
The question Phillies fans love to ask in 2016 is, "Who will be the first prospect called up?" In the past, I've said Williams because of the positional need, but the way Joseph is hitting, it could be him. At 24, he's still young enough to be considered a prospect but old enough to warrant a look sooner rather than later from the Phillies.
Joseph is hitting .344 with a 1.030 OPS through 67 plate appearances at Triple A. He's seventh in the International League in batting average and second in homers (five), slugging percentage (.672) and OPS.
Darin Ruf just isn't hitting at the major-league level, so if Joseph continues to rake, he could soon find his way to Citizens Bank Park as the right-handed portion of the Phillies' first base platoon. Defense would be the concern at the moment as Joseph is new to the position. But really ... could Joseph's defense truly be that much worse than Ryan Howard's?
C Andrew Knapp (AAA)
So Knapp is human after all. For the first time in nearly a year, Knapp is slumping.
The 24-year-old, switch-hitting catcher is 1 for his last 16 and 5 for 33 over his last nine games. His season batting line is down to .238/.329/.444, which is still respectable for a catcher but not up to the standard Knapp has set for himself.
The Phillies also want to see better defense from Knapp, who has four errors and five passed balls in 17 games. Opposing base stealers are 10 for 12 against him.
CF Roman Quinn (AA)
The speedy centerfielder is finally heating up, going 12 for 31 (.387) with two doubles, two triples, three RBIs, five walks, eight runs and four steals in his last seven games.
Quinn has reached base in 17 of his last 36 plate appearances, which is always what you want from your leadoff man.
Quinn's manager, Dusty Wathan, said recently that his timing from the left side has been slow to return this season following last year's season-ending hip flexor tear. But it looks like it's back: The switch-hitting Quinn, who is naturally right-handed, is up to .308 from the left side.
OF Cam Perkins (AAA)
Perkins, 25, is older than the Phillies' other outfield prospects like Williams, Quinn and Dylan Cozens, but he's been the best of the bunch so far in 2016.
Perkins, who had a 15-game hitting streak snapped Wednesday, is hitting .367 in 63 plate appearances with six extra-base hits.
The right-handed hitting corner outfielder doesn't have a ton of upside in the power department, but could be worth a look this summer just to see if he has a shot to catch up to big-league pitching. Keep in mind that Aaron Altherr wasn't really regarded as a top prospect by the national outlets coming up, but Altherr proved capable in a brief look last season.
OF Dylan Cozens (AA)
Cozens has been an on-base machine since our last Future Phillies Report, reaching base in 16 of 32 plate appearances over the last week. He has two doubles, a homer, six RBIs and seven walks in his last seven games.
Cozens, 22, is fifth in the Eastern League among players with at least 90 plate appearances in slugging percentage at .495. His 19 RBIs and 47 total bases are both third in the league.
In 154 plate appearances at Double A dating back to his promotion there at the end of 2015, Cozens has hit .289/.364/.533 with nine doubles, eight homers and 28 RBIs in 36 games.