Philip Humber was the third-overall pick in the 2004 draft. The Mets believed he had ace potential, selecting him right after Detroit took Justin Verlander and before Anaheim took Jered Weaver.
A standout at Rice, Humber had all the credentials of a top-three pick. He struck out 422 in batters in 353 collegiate innings with a 2.80 ERA, with scouts raving about the movement on his fastball and his tight curveball.
But his pro career got off to a rough start. With A-level St. Lucie, Humber's ERA ballooned to 4.99. Injuries stunted a successful 2006 that saw his ERA fall to 2.83 between rookie ball and Double-A. With those successes in mind, the Mets fast-tracked him to Triple in 2007 despite just seven career starts at the Double-A level and two one-inning appearances in the majors.
It was in New Orleans that Humber hit a wall. His ERA was a mediocre 4.27 and he allowed 21 home runs. Those poor numbers led him to be a mere throw-in when the Twins decided to trade Johan Santana to the Mets, as the two big prizes of the deal for Minnesota were Carlos Gomez and Delois Guerra.
Humber only got worse in the Twins' farm system, as his ERA rose 4.56 in 2008. He allowed another 21 dingers that year, but his walks rose and his strikeouts fell. The same thing happened in 2009, as his strikeout-to-walk ratio fell to 8745 with Triple-A Rochester.
He pitched a total of 20 23 innings in the majors with Minnesota, walking 14 with just 15 stikeouts while allowing five home runs.
The Twins cut him loose after 2009, and Humber landed with Kansas City. He threw 21 23 mediocre innings with the Royals -- nothing that was going to land him a permanent spot on the team. The same team that didn't have much pitching to begin with.
Finally, in 2011, something clicked for Humber. The White Sox took a flier on him, one of those throwaway invites to minor league camp. But with Jake Peavy not ready to return to the Sox rotation until May, Humber finally got his chance -- even if his spring training performances were underwhelming.
Humber's White Sox debut is generally forgotten given how well he pitched last year. But, entering a losing effort against Cleveland in the eighth inning on April 3, Humber failed to record an out, allowing two hits and two runs before he was yanked.
He made his first start six days later, holding the Rays to one run in six innings of work. After back-to-back mediocre starts against Los Angeles and Tampa Bay, Humber finally broke out.
His April 25 start against the Yankees -- in New York, no less -- was the Philip Humber the Mets had waited for and the Twins had hoped they could resurrect. Humber took a no-hitter into the seventh, preventing the Yankees from getting a hit through 6 13 innings. The only hit he allowed broke up his no-hitter.
It was a rare bright spot in a miserable month for the White Sox. And after it, Humber went from rotational afterthought to legitimate All-Star candidate and leading reason why the Sox tinkered with a rare six-man rotation.
Humber didn't make the trip to Arizona with the best players from the American League, but he did everything in his power to make his case. In 15 starts from April 9 through July 2, Humber had a 2.57 ERA with 63 strikeouts and 25 walks.
But it looked like Humber's magic spell on the majors had worn off when August rolled around. The Sox lost his next six starts, with Humber allowing 22 runs in 27 23 innings -- a 7.16 ERA. He was K.O'd right when the Sox needed him most, taking a sharp line drive off his head Aug. 18 against Cleveland.
Humber returned Sept. 5 and made five more starts, although the end product was unimpressive (4.26 ERA, 30 K, 15 BB). He had pitches his way into the 2012 Sox rotation, but his ability to repeat 2011 was in question.
A perfect game, though. No matter what happens to Philip Humber the rest of his career, he'll be able to say he threw a perfect game. He's previously said that he's just happy to have found a steady career in the majors.
Two, three, four years ago, Humber could barely stick in the major leagues. Now, he'll stick in the record books forever.