Pages

Thursday, December 22, 2016

There has been a lot to reflect on in 2016. Some of those year-in-review pieces are serious; others are more light-hearted. This is the latter. Having already shared my thoughts on politics, I now turn to another year-endtradition around these parts: revisiting my preseason baseball predictions. Because predicting ball is an exercise in futility, grading my MLB predictions is always a humbling experience; more often, it's a hilarious one, filled with "boy, was I wrong" moments as well as the occasional "jeez, that wild guess was scary accurate." Let's dig into my 2016 American League and National League predictions to see how I did.

Prediction: The AL playoff teams would be the Blue Jays, Rays, Indians, Astros, and Rangers. The NL playoff teams would be the Mets, Nationals, Cubs, Cardinals, and Giants.What Really Happened: The Blue Jays, Indians, and Rangers made it, but the Red Sox and Orioles replaced the Rays and Astros. In the NL, I missed only the Dodgers, who replaced the Cardinals. Overall, seven out of 10 playoff teams was pretty good! I also estimated the win totals of 14 teams within five; my average error of 6.4 wins was better than any of the five years I've been making official predictions.

Prediction: The Dodgers would lead baseball in days on the disabled list. The injury bug would be particularly devastating to their starting rotation, with only Clayton Kershaw surpassing 200 innings en route to another Cy Young Award.What Really Happened: One of my eeriest predictions. The Dodgers' snakebitten starting rotation was the story of the summer in Los Angeles, and not even Kershaw was immune: a herniated disk in his back interrupted an historic season and cost him over 10 starts, enabling Washington's Max Scherzer to steal the Cy Young trophy. Kenta Maeda ended up leading the Dodgers with only 175.2 innings, and LA set new major-league records for most players put on the DL in one season (28) and man-days spent on the DL (2,418).

Prediction: The Orioles would slug 250 home runs as a team—a number not seen since the 2010 Blue Jays—but would be led in OBP by slap hitter Hyun Soo Kim.What Really Happened: Baltimore hit 253, 28 more than the next most powerful team. Kim's .382 OBP led all Orioles with at least 16 plate appearances.

Prediction:Julio Teheran would struggle his way to a 4.00 ERA, clearing a path for Ender Inciarte to be the most valuable Brave. He would even be better than the man he was in part traded for: Shelby Miller. Patrick Corbin and maybe even Robbie Ray would allow fewer runs than their new Arizona teammate.What Really Happened: Inciarte put up 3.8 WAR, third-best on the Braves. Freddie Freeman (6.5 WAR) led the squad, and Teheran righted the ship to the tune of a 3.21 ERA, 4.07 K/BB ratio, and 4.9 WAR. As for Miller? He was worth just −0.8 WAR for the Diamondbacks. Corbin (5.15 ERA) and Ray (4.90) both had terrible seasons, but not nearly the disaster that was Miller's (6.15).

Prediction: The Royals would have a better record when Raúl Mondesí Jr. starts at shortstop than when Alcides Escobar does.What Really Happened: Trick question: Mondesí never started at shortstop but instead played almost exclusively second base. Meanwhile, Escobar and his .261/.292/.350 batting line inexplicably started every single game the Royals played. Yet sure enough, Kansas City's record in just Mondesí starts was 23–17, and overall (i.e., in Escobar starts) it was just 81–81.

Prediction:Jon Gray would be dominant on the road—posting a 2.80 ERA—but would be unable to solve Coors Field, stumbling to a 5.20 home ERA.What Really Happened: The Rockies phenom actually struggled more on the road: a 4.91 ERA. At home, he was a surprisingly good 4.30 ERA pitcher, limiting hitters to an excellent .241/.291/.383 line at altitude.

Prediction:Kevin Cash and Bruce Bochy would be voted 2016's Managers of the Year. Terry Francona would be runner-up in the American League. Buck Showalter would have such a disappointing season he would be shown the door.What Really Happened: Neither Cash nor Bochy came close to sniffing the award, which went to Francona in the Junior Circuit. Showalter kept his job, but he did take heat after failing to use Zach Britton in a key situation in the Wild Card Game.

Prediction: Age would catch up to Justin Verlander and Ian Kinsler in Detroit. Verlander's fastball velocity would tick down until he led the Tigers with the highest WHIP on the team. Meanwhile, Mike Pelfrey would boast the league's highest ERA.What Really Happened: Verlander's WHIP did lead the team—in a good way. It was the lowest in the entire AL, in fact. According to PITCHf/x, his fastball averaged 93.7 miles per hour, his best mark since 2013. Likewise, the highest ERA in the American League didn't belong to Pelfrey—but rather his teammate, Aníbal Sánchez. Far from deteriorating, Kinsler upped his WAR for the fourth year in a row (to 6.1) and won a Gold Glove.

Prediction:Bryce Harper would disappoint in the follow-up to his insane MVP season of 2015. He would maintain the same beastly rate stats, but he would miss a third of the season due to injury.What Really Happened: Bryce stayed healthy for the second full season—or at least that's what he claimed. His OPS mysteriously dropped a staggering 295 points to .814, perhaps the result of playing through a right shoulder injury for… yep, a third of the season.

Prediction: Three Twins would finish in the top five for AL Rookie of the Year: José Berríos, Byung Ho Park, and eventual winner Byron Buxton. In the NL, Corey Seager would waltz home with the trophy.What Really Happened: None of the three Twins even got a single vote. Berríos started 14 games with a hellish 8.02 ERA, Park hit just .191, and Buxton notoriously scuffled through his first two cups of coffee with a .193/.247/.315 slash line before coming to life (.287/.357/.653) in September. The Tigers' Michael Fulmer, of course, ended up winning the award in the AL. In the Senior Circuit, was there ever any doubt? Seager's .877 OPS and 6.1 WAR made him an easy choice.

Prediction:Jay Bruce would be one of the only good hitters on the Reds, earning him a trade out of town. Brandon Phillips, meanwhile, would slip to a .300 OBP and cease to be an asset on defense. His final WAR: 0.0.What Really Happened: Bruce put up an .875 OPS for Cincinnati, better than anyone not named Joey Votto, and on August 1 he was traded to the Mets. Phillips held on in the OBP department (.320), but for the first time since 2006 he put up a negative DRS (−7) to finish with a 0.8 WAR.

Prediction: The penny-pinching Astros would keep Ken Giles out of the closer's role in an effort to suppress his salary in arbitration—but this would also allow them to use him in the highest-leverage situations.What Really Happened: Indeed, the Astros handed Luke Gregerson, then Will Harris the closer's role before giving Giles a crack; he finished with 15 saves. Giles didn't lead the AL in leverage index like I predicted, but his 1.83 LI was higher than any other Astro.

Prediction:Marcus Semien would be one of the Athletics' best players and would even be a net positive on defense.What Really Happened: Semien slugged 27 home runs and was worth 3.0 WAR, both tops among Oakland hitters. On defense, he was barely an asset (0.1 dWAR), thanks to the positional adjustment of playing shortstop.

Prediction: The worst infield defense in the AL would doom Rick Porcello's second season with the Red Sox. Meanwhile, in Chicago, Chris Sale would sail to his first Cy Young Award with a sub-2.50 ERA.What Really Happened: The Boston infield actually saved nine runs defensively, helping Porcello along to a 3.15 ERA and the Cy Young. Sale was no slouch either, posting a 3.34 mark for the Pale Hose. By December, of course, who was better is a bit of a moot point: they're now teammates in Boston.

Prediction:Prince Fielder and Shin-Soo Choo would turn in carbon copies of their superb 2015 seasons.What Really Happened: Fielder had the worst season of his career, hitting just .212/.292/.334 through 370 plate appearances before being forced to retire. Choo had a similarly snakebitten season, going on the disabled list four times with four unrelated freak injuries. On April 10, he was shelved with a calf strain; he returned May 20, and then pulled a hamstring after just three innings. On July 20, he hit the DL again with back inflammation, returning on August 4. On August 15, he was hit by a pitch that broke his forearm and ended his season.

Prediction: Pittsburgh wouldn't need to worry about slipping offensively with the losses of Pedro Alvárez and Neil Walker. John Jaso and David Freese would prove shrewd free-agent signings.What Really Happened: The Pirates went from a 97 OPS+ in 2015 to a 95 OPS+ in 2016. Jaso hit an above-average .268/.353/.413, and the team also rewarded Freese's .270/.352/.412 line with a two-year, $11 million extension.

Prediction:Mookie Betts would contend for AL MVP, but Carlos Correa would actually win it. The shortstop's 40 home runs would distract voters yet again from Mike Trout. In the National League, Paul Goldschmidt would finally step out of others' shadows and claim his first MVP award.What Really Happened: Trout deservedly won the AL hardware for just the second time. Correa still turned in a great season, but he slammed just 20 taters. For his part, Betts more than contended for MVP: he came darn close to winning it, with nine first-place votes and a second-place finish. As for Goldschmidt, a down year (for him) doomed him to "just" an 11th-place finish in the NL race.

Prediction: The Diamondbacks would regret the Jean Segura trade. His bat would continue to drag down the lineup, and his poor defense would contribute to Arizona tumbling from 63 DRS to a neutral fielding team.What Really Happened: Segura had one of the best come-out-of-nowhere seasons in a long time, hitting .319/.368/.499 for a 5.7 WAR. He was average on defense, although the D'backs did fall all the way to −12 DRS.

Prediction: A 5.0 K/BB ratio by Anthony DeSclafani would see him selected to the All-Star Game.What Really Happened: DeSclafani was injured for much of the first half and did not debut until a month before the All-Star Game, but if he had frontloaded his first 16 starts (8–2, 2.93 ERA, 1.14 WHIP, 4.1 K/BB ratio), he surely would have earned a ticket to San Diego.

Prediction:Marco Estrada and J.A. Happ would fall dramatically back down to Earth, with 9.0 hits per nine innings and a 90 ERA+ respectively. Aaron Sánchez would show he belonged in the bullpen all along by struggling as a starter.What Really Happened: Estrada followed up a 2015 in which he led the AL with 6.7 hits per nine with a 2016 in which… he led the AL with 6.8 hits per nine. All Happ did was win 20 games with a 135 ERA+. Sánchez led the league with a 3.00 ERA as one of the breakout starters in all of baseball.

Prediction: Under the tutelage of hitting coach Barry Bonds, Marcell Ozuna would take his game to the next level, setting career highs in all three slash categories.What Really Happened: Ozuna had a good year but not quite a full breakout. His .321 OBP was a career high, but his .266 average and .452 slugging percentages were each three points shy of his historical best. Oh, and Bonds was fired at the end of the season for allegedly losing interest in the team.

Prediction:Andrew Heaney would establish himself as the one sure thing in an injury-plagued Angels rotation, while Jered Weaver would shockingly retire midseason when it became apparent he couldn't throw above 80 miles per hour.What Really Happened: Heaney got in just one start all year—a six-inning, four-run effort against the Cubs—before feeling elbow discomfort. He had Tommy John surgery in July. Weaver did indeed have a tough time getting outs with his 84.0-mile-per-hour "heater," but he stuck it out the whole year and ended with a 5.06 ERA.

Prediction:Ian Desmond would look so lost in the outfield that the Rangers would bench him. He would enter career purgatory, bouncing around on the free-agent market as a utility man for the rest of the decade.What Really Happened: With −4 DRS, Desmond wasn't an asset in the outfield, but he ably remade himself into a useful player there, amassing 2.7 WAR. As for his financial future, Desmond just signed an inflated five-year, $70 million deal with the Rockies.

Prediction:Domingo Santana would put up a vintage Adam Dunn season: a .230 average but a .340 OBP, 180 strikeouts but 30 home runs.What Really Happened: Santana lost significant time to two injuries in 2016, but he still did the following in 281 plate appearances: a .256 average, .345 OBP, 11 home runs, and 91 strikeouts.

Prediction: Milwaukee would be the only team in baseball with zero complete games in 2016.What Really Happened: Indeed, no Brewer starter pitched a complete game. However, three other teams also shared this ignominious distinction: the Marlins, Yankees, and Blue Jays.

Prediction:Jason Heyward, Kris Bryant, and Anthony Rizzo would all rank among the NL's top 10 position players by WAR. Ben Zobrist, meanwhile, would continue to decline thanks to poor defense.What Really Happened: Bryant (at 7.7 WAR, the NL MVP) and Rizzo (5.7) ranked first and fifth, respectively, in WAR, but Heyward's contract infamously proved a bust, as he could muster just a 70 OPS+ and 1.5 WAR. Zobrist did cost his team multiple runs defensively for the third straight year, but his excellent hitting (.272/.386/.446) made him Chicago's fifth-best position player (3.8 WAR).

Prediction: The White Sox would be a fountain of youth for Mat Latos, who would be worth 2.0 WAR, and Melky Cabrera, who would begin to justify his $42 million contract.What Really Happened: Latos bombed out of Chicago, and then Washington, with a 4.89 ERA and 0.1 WAR. Yet in a development no one outside the South Side noticed, Cabrera was great in 2016, putting up an .800 OPS that almost matched his 2014 performance.

Prediction:Sonny Gray's 2015 luck would reverse itself, with a .340 BABIP leading to a 3.95 ERA.What Really Happened: Gray was unlucky—and then some. He offended A's fans with a 5.69 ERA, far worse than an already poor 4.67 FIP. His BABIP was a not-great .319, but the real culprits were a terrible 64% strand rate and artificially inflated 1.4 home runs per nine innings.

Prediction:Yasiel Puig would rediscover his 2013–2014 form, and Joc Pederson would discover new heights.What Really Happened: Puig had his worst season in the majors yet, hitting just .263/.323/.416 between hamstring injuries. He fell so out of favor with the club that they demoted him to AAA in August, and they still found room to criticize him for his behavior while in Oklahoma City. Back in California, Pederson continued to blossom, pairing his previous on-base ability and home-run power with more well-rounded hitting: more doubles and more selective baserunning.

Prediction:Mike Leake would be the one weak link in the Cardinals' rotation, with a 100 ERA+, and Jaime García would land on the DL yet again.What Really Happened: García pitched a full season for the first time since 2011, starting 30 games. Leake had his worst season yet: an 87 ERA+. He wasn't even the worst St. Louis pitcher, though, as Michael Wacha spat out an 81 ERA+ despite a pretty good 3.91 FIP.

Prediction:Trea Turner would grab ahold of the Nationals' shortstop job so surely that Stephen Drew wouldn't even collect 100 plate appearances.What Really Happened: Turner had nothing to do with Drew amassing just 165 plate appearances for Washington's $3 million investment. The infield prospect remained exiled to AAA until mid-July, when he finally came up… only to be moved to the outfield. He certainly made a statement, though, with his .342 average and 33 stolen bases.

Prediction:Rich Hill would prove to be an illusion, finishing with a 4.00 ERA.What Really Happened: Hill extended his four-start dominance from the end of 2015 into his first 14 starts of 2016 with Oakland, posting a 2.25 ERA. Then he was traded to the Dodgers as one of the deadline's biggest gets and did even better: a 1.83 ERA. He went into the offseason as the top pitching prize on the free-agent market.

Prediction: Led by Craig Kimbrel and Carson Smith, the Red Sox bullpen would strike out a quarter of the batters it faced, second in the league only to the hated Yankees.What Really Happened: It took Smith just 2.2 innings to succumb to season-ending injury, but the Sox bullpen still struck out 25.4% of batters. That's not as impressive as it sounds, though; five other bullpens, including the Yankees' (27.1%), fanned more.

Prediction:Tanner Roark would be mediocre, and Noah Syndergaard would go under the knife at midseason.What Really Happened: Both Roark and Syndergaard garnered downballot Cy Young votes. Roark finished with a 2.83 ERA, and Syndergaard had the game's strongest peripheral stats (a 2.29 FIP) in his 30 starts.

Prediction:Yovani Gallardo and Kevin Gausman would swap 2015 ERAs, with Gallardo finishing at 4.25 and Gausman at 3.42.What Really Happened: The two Orioles hurlers did undergo a freaky Friday situation, with Gallardo regressing to a 5.42 ERA and Gausman improving to 3.61, establishing himself as the team ace.

Prediction:Ray Searage would not be able to fix what ails Ryan Vogelsong or Jon Niese, but Juan Nicasio would thrive in Pittsburgh.What Really Happened: All three reclamation projects fell flat. Vogelsong pitched to a 4.81 ERA in 82.1 innings, and Niese mustered just a 4.91 ERA before being traded back to the Mets. Nicasio boasted strong strikeout numbers (10.5 per nine innings), but he had just a 4.50 ERA in a swingman role.

Prediction: PETCO Park would help James Shields to a bounceback season of a 3.30 ERA, a 1.20 WHIP, and 2.0 walks per nine innings.What Really Happened: Shields limped through 11 starts in San Diego with a 4.28 ERA before getting traded to the White Sox, where he was lit up in the bandbox that is U.S. Cellular Field. He finished with a 5.85 ERA, 1.60 WHIP, and 4.1 walks per nine—all career worsts.

Prediction: Breakout seasons by Steve Pearce, Blake Snell (who would strike out 10 batters per nine innings), Drew Smyly, and Chris Archer would lead the Rays to the World Series.What Really Happened: Pearce did return to his 2014 self, slashing .288/.374/.492, and Snell struck out 9.9 per nine (so close!). However, Smyly finished with a 4.88 ERA and Archer lost 19 games, the most in baseball. The Rays stunk up the joint to the tune of 94 losses—my biggest whiff on any team.

Prediction: Even-year magic would strike again. New ace Johnny Cueto would make up for free-agent bust Jeff Samardzija (0.5 WAR), and the Giants would win the World Series for the fourth time in seven years.What Really Happened: Samardzija did not disappoint (2.7 WAR), and Cueto was even better (5.6 WAR), but the Giants were bounced from the playoffs in four games by their atrocious bullpen and the eventual World Series winners—the Chicago Cubs.

Friday, December 9, 2016

This year was a bad one for people in the political prognostication business. I'm not afraid to say that I failed as spectacularly as anyone: throughout the Republican primary, I clung to the orthodoxy that "the party decides" and that the GOP would never let Donald Trump become its nominee. Throughout the general election, I dismissed Trump's chances of winning over a country with sexism, racism, and scare tactics. Now, we're 41 days away from him taking the oath of office.

I believe that any responsible pundit must reflect on such a failure before reengaging in the profession. We—or at least I—make our predictions based on past information. The election of Donald Trump represented a new piece of information that we must add to our calculus going forward. But we also must avoid overreaction. Throwing our hands up and declaring elections unpredictable is an overreaction. Saying that polling and other hard data are useless is an overreaction.

The truth is that Hillary Clinton did win the popular vote by about two percentage points, as predicted by the national polls. Under different rules of the game, that would be enough to hand her the presidency, and none of this Democratic and media handwringing would be happening. That's right—not a single person could have voted differently and everyone who currently looks so dumb would actually have been totally correct. Not a single person could have voted differently and the prevailing narrative would have been the implosion of the Republican Party instead of the meltdown of the Democratic. But because the votes were distributed just right, and because we use the Electoral College, not the popular vote, we got the outcome we did.

To me, the lesson of 2016 was randomness. Sometimes, data have errors. Sometimes, you have bad luck. Sometimes, unlikely things happen. In looking back at my predictions, I have a hard time seeing what I should have done differently. To predict a Trump win (in the general, at least) would have required a series of assumptions that, at the time, would not have been well grounded in fact or theory. Given the information I had before the election, I actually still think I made a sensible call in expecting Clinton to win. But my mistake was being so sure of it. In an effort to draw attention and project confidence, I treated an event that was likely to happen as one that was certain. I didn't fully appreciate that we live in an uncertain world. I didn't properly allow for the possibility of a polling error or something else weird happening. I didn't stop to think that a 90% chance still comes up empty 10% of the time.

On May 21, 2010, with two outs in the third inning, the Los Angeles Angels intentionally walked St. Louis Cardinals outfielder Skip Schumaker to load the bases for pitcher Brad Penny, a career .157 hitter. Six out of seven times, Penny makes the final out of the inning, preserving the 4–4 tie. On this occasion, though, Penny promptly hit a grand slam for what proved to be the winning hit. Was it the wrong decision by the Angels? I would argue that it was the right call; it just didn't work out this time. Sometimes, the right strategy can still lead to a bad result (and vice versa). It doesn't automatically discredit the strategy, as long as the strategy has been proven sound over a larger sample size. Data and political science remain the most accurate tools for predicting elections over the long term; one bad year doesn't change that.

Going forward, I will continue to use factors like polls and demographic trends in predicting elections. But I will change my attitude to be more humble about my own fallibility. Never again will I declare anything as a "slam dunk" or a "sure bet"; the fairest analysis acknowledges that anything can happen while still pointing toward the overall likelihood of one outcome. To those who heeded my political advice in 2016, I apologize for being overconfident. In the future, I promise that I will retain a more open mind and always be aware of my own limitations as a soothsayer.

One way to do that is to move away from the language of "calling" states and toward a probabilistic election forecast. The Cook Political Report uses such a system through its Solid-Likely-Leans scale of handicapping races. Every year, I use the same scale to make my annual constitutional-office election predictions, with much more favorable results than my failed presidential prognosis. Indeed, while I wasn't perfect in calling downballot races this year either, my more nuanced assessments of each campaign stand up better to post factum scrutiny.

Democrats won all 11 races I rated as Solid Democratic, including three that lacked a Republican opponent.

Democrats won five of the six races I rated as Likely Democratic.

Democrats won five of the seven races I rated as Leans Democratic.

Republicans won 10 of the 12 races I rated as Tossup.

Republicans won all five races I rated as Leans Republican.

Republicans won all three races I rated as Likely Republican.

Republicans won all eight races I rated as Solid Republican, including two that lacked a Democratic opponent.

Here is the Democratic margin of victory or defeat in each of the elections (save Washington treasurer, which was a Republican-on-Republican contest). Note that these numbers are unofficial election results from the Associated Press.

As in 2014, I underestimated Republicans across the board, but not egregiously so. Democrats' average 3.2-point margin of victory in Leans Democratic races, for example, is right where you want it to be, and it isn't a shock that one or two (OK, two) of the elections I rated thusly actually flipped the other way. However, the same can't be said of the races I dubbed Leans Republican. The GOP won them all, by at least 7.1 points (an average of 15.5). My Tossup races behaved more like Leans Republican should: the GOP won them by an average of 6.1 points, losing only two of the 12. That's what happens in a wave election, though: close races all tend to break the same way.

I can console myself with the fact that my biggest errors were isolated to just a few states. Misread the political climate in just one state, and you can blow several races, even as you accurately predict the rest of the nation. For me in 2016, that state was North Carolina. The Tarheel State was responsible for my biggest miss: declaring Democrat Wayne Goodwin and Republican Mike Causey's battle for state insurance commissioner a Likely Democratic contest. Instead, Causey defeated the two-term incumbent by 0.9 points. Almost as embarrassingly, Democratic Auditor Beth Wood—whom I deemed Likely to beat Republican Charles Stuber—prevailed by only 0.1 points in initial returns. (The race isn't even officially called yet, as Stuber has requested a recount.) North Carolina also played havoc with my projections by almost ousting Democratic Secretary of State Elaine Marshall (Solid Democratic) and rejecting Superintendent June Atkinson (Leans Democratic).

Oregon and Missouri were two other states that I misjudged. Democrat Tobias Read won the Oregon auditor's race by only 1.9 points, even though I had dismissed the contest as Solid Democratic. Meanwhile, my third and final incorrect "call" came in the Oregon secretary of state election, where Republican Dennis Richardson defeated Democrat Brad Avakian in a Leans Democratic competition. Farther inland, Missouri singlehandedly goosed the average Republican margin of victory in my Tossup and Leans Republican races when it swung much farther to the right than anyone was expecting. Its Democratic candidate for lieutenant governor lost a supposed Tossup race by double digits, and, while I expected its attorney general and secretary of state races to Lean Republican, I didn't anticipate them doing so by 17.4 and 19.5 points, respectively.

Elsewhere, I called most races right on the money. I'm especially proud of my performance in West Virginia, where I correctly foresaw a close race for secretary of state (presumed favorite Democrat Natalie Tennant was stunned by a 1.8-point loss) and GOP wins for agriculture commissioner and auditor, despite the state's ancestral Democratic tone. Clearly, handicapping downballot races is my calling more than presidential forecasting is—and that's OK by me. I'm looking forward to bringing these understudied races even more into the light as we turn the page to 2017 and the busy midterm year of 2018, when the biggest batch—over 140—of constitutional offices are on the ballot.

Saturday, December 3, 2016

Last winter, I embarked upon an experiment: build a hypothetical baseball team entirely from free agency. The rules were straightforward. I would simulate, as faithfully as possible, the circumstances of the offseason and the economic constraints that real GMs work under. I set a budget of $200 million and "signed" players to the same contracts they received in real life. I required myself to make decisions in real time, as quickly as possible after news broke of a new signing—like real GMs, I could not benefit from the hindsight of knowing that, say, Dexter Fowler would sign a bargain $13 million contract after Alex Gordon signed his $72 million one. I forced myself to find two players to play each position on the field—one to start, one to back up—and a full complement of five starting pitchers and a seven- or eight-man bullpen. It was harder than I expected—but I did ultimately field a roster of 25 for a combined salary of $193,990,833. Here's my 2016 "fantasy" team:

Now for the big question—how did I rate as a GM? Did I score some good bargains, or did I saddle my franchise with regrettable megacontracts? Most importantly—did I build a winning team?

It was a good lesson in the unpredictability of baseball and the dangers of the free-agent market: for the most part, I crashed and burned as a GM. But my team wasn't totally hapless, and there were some pleasant surprises in the bunch.

Overall, my players amassed 17.5 wins above replacement (using the FanGraphs version of WAR, including RA9-WAR for pitchers), which would theoretically translate to a record of 65–97. My team exhibited a capable offense, slashing .263/.335/.419. That would have been the fourth-best OBP in baseball but the 15th-best slugging percentage, as my hitters couldn't keep up with 2016's home-run-happy scoring environment. However, my team was miserable at pitching, posting a 4.63 ERA, 1.35 WHIP, and 4.76 FIP. Even worse, many of my pitchers, including C.J. Wilson, Henderson Alvárez, and Kris Medlen, were injured and barely played. My pitchers only amassed 947.1 IP, compared to the MLB average of 1444. If you use replacement players to fill in the gap, my team's stats would rise to a 4.72 ERA, 1.39 WHIP, and 4.77 FIP.

Easily the worst contract on my books is James Shields's $75 million deal. He actively harmed my team this year with a 5.85 ERA, 10.3 hits per nine innings, and the worst peripheral stats of his career. My attempts to cobble together a bullpen on the cheap also fell flat. My best signing was Yusmeiro Petit, who gave me a 4.50 ERA in 62 innings for the $3 million I paid him. Meanwhile, Matt Albers stunk up the joint to the tune of a 6.31 ERA, and Carlos Villanueva wasn't much better at 5.96 despite pitching in PETCO Park. The rest of my bullpen, Jason Frasor and Neal Cotts, didn't pitch in the majors at all.

Offensively, I caught lightning in a bottle with Mike Napoli, who led my team with 34 home runs, although it only translated to 1.0 WAR; still, at $7 million for one year, I'll take it. Steve Pearce was another great bargain signing. For $4.75 million, I received a .288/.374/.492 batting line, positional flexibility, and 2.0 WAR. Carlos Beltrán anchored my lineup with an .850 OPS and 2.3 WAR. Finally, my faith in Hyun Soo Kim was validated when, after a terrible spring training for the Orioles, he bounced back by hitting .302/.382/.420 over half a season. Even Jason Heyward produced 1.6 WAR, although this was far below everyone's expectation when he signed with the Cubs for $184 million and eight years. He slashed just .230/.306/.325 and was the most disappointing member of my lineup. His is another contract that could cripple my pretend franchise, although personally I think Heyward was more unlucky than bad last year and would reserve judgment for one more year.

So let's find out, shall we? I'll carry over my imaginary team into this offseason and again try to build it into a contender—on budget—using only free agents. Like in real life, though, I'll have to do it while operating under existing payroll commitments: the handful of players on my old team still under contract for 2017 and beyond. It's a list that includes some bad—Heyward and Shields—but also some good—Kim, John Lackey, and José Abreu. Stay tuned to see which players from this winter's historically shallow free-agent class I decide to roll the dice on this time.