All year long we've been highlighting what's right and what's wrong with the NHL on a weekly basis. For all the things there are to love about the NHL and its product, there's also plenty to hate and criticize. 

image-from-ios.jpg
Photo illustration by Pete Blackburn

For our final "Wins and Sins" installment of the regular season, we're picking one big win (aka a positive) and one big sin (a negative) for each of the league's 31 teams.

Loving and/or hating something about the NHL at any given point throughout this season? Feel free to drop your praise/complaints in my email inbox at pete.blackburn@cbsinteractive.com.

Anaheim Ducks

Win: Starting the rebuild. It seems the Ducks are finally facing the reality that they have an aging core that is steadily declining and no longer capable of carrying them. Unfortunately, Anaheim is still tied to a number of those older vets for a few more years, but the club seems to at least recognize that it needs to start heading in a different direction.

Sin: One of the worst stretches of hockey in quite some time. The Ducks lost 12 straight (a franchise record) and 19 of 21 in the middle of the season. Not ideal but it eventually led them to cutting ties with Randy Carlyle, which is probably a blessing.

Arizona Coyotes

Win: Darcy Kuemper. After Antti Raanta went down with what would prove to be a season-ending lower-body injury in December, the Coyotes looked to be in trouble. However, Kuemper, in his first full season in Arizona, emerged as the full-time replacement and has been quite tremendous. He has posted a .925 save percentage in 55 starts with the Yotes.

Sin: Their leading scorer has 47 points.

Boston Bruins

Win: Their stars. With depth concerns and a number of key early-season injuries threatening their outlook, the Bruins needed their star players to carry the load. They certainly delivered, as Boston has gotten career years from Brad Marchand (100 points), David Pastrnak (38-41-79 in 65 games), Patrice Bergeron (32-47-79 in 65 games) and Jake DeBrusk (27 goals in 67 games). David Krejci and Brandon Carlo also stepped up and made significant contributions to help the Bruins to their second straight 100-point season.

Sin: Shorthanded goals. The Bruins have had one of the league's most dangerous power play units this year, which comes as no surprise considering their front-end talent. However, they've also allowed a league-leading 14 shorties. They're going to have to limit those opportunities in the postseason.

Buffalo Sabres

Win: A promising start. The Sabres looked to be a wagon coming out of the gate. You saw what this team could be when it was firing on all cylinders, and it looked dangerous. Jack Eichel was tearing it up alongside new acquisition Jeff Skinner, while some other new additions -- including rookie phenom Rasmus Dahlin on the blue line and Carter Hutton in net -- played well and helped Buffalo hang near the top of the Atlantic for much of the first half. 

Sin: The rest of it. Turns out that start wasn't sustainable and the Sabres came crashing down to earth in the second half. Their depth proved to be an issue and Eichel's production slowed down as the team began to struggle. They eventually turned into what many expected them to be  -- better compared to last season, but still not good enough.

Calgary Flames

Win: Fixed their scoring woes. After finishing last season 26th in offense, the Flames have been one of the best offensive teams in the league. Their big-time output has helped them overcome some early goaltending woes and capture the Pacific Division title. They've also scored a staggering 18 goals shorthanded.

Sin: James Neal's contract. They signed Neal to a big deal (five years, $28.75 million) this offseason to help fix those scoring issues. Neal has seven goals on one of the best offensive teams in hockey.

Carolina Hurricanes

Win: Storm Surges. The Hurricanes have managed to completely rebrand themselves as a fun, non-traditional group with a lot of personality. Their "Storm Surge" celebrations (and the "Bunch of Jerks" label they spawned) have been a big reason for that, and fans seem to love it. Also, rebranding as a playoff team.

Sin: Don Cherry's tears stained his custom suit jacket.

Chicago Blackhawks

Win: The Nick Schmaltz trade. Schmaltz has potential, but had sputtered with the Blackhawks. Chicago improved its depth by acquiring two solid pieces (Dylan Strome and Brendan Perlini) from Arizona in exchange for Schmaltz at midseason. Strome is starting to develop into the player he was projected to be (16-33-49 in 56 games) and Perlini has been a decent middle-six piece (11-3-14 in 44 games). 

Also, the Blackhawks mascot is handing out street justice.

Sin: Firing Joel Quenneville. The Blackhawks struggled last season, didn't really do much to fix their issues and then fired Coach Q when they didn't start as well as they could have. As it turns out, firing one of the best coaches in hockey didn't really solve any of their problems or magically make their terrible defense any better.

Colorado Avalanche

Win: Their top line. The Avs worked to add a bit of depth to their roster over the summer, but they still came into the season with a very top-heavy group and an understanding that their top line would likely once again have to carry them if they were going to be in the playoff picture. That group, led by Nathan MacKinnon (40-58-98), has been up to the task, accounting for more than 100 goals.

They also have the best chance at wining the draft lottery and will pick no lower than fourth. Not bad for a playoff team.

Sin: Inconsistency. Colorado has had a roller coaster of a season with some heavy fluctuations in play, but that's somewhat to be expected when you rely so heavily on one line. However, the goaltending has also been quite unpredictable. The overall numbers look solid, but a major dip in save percentage during January and February nearly cost the Avalanche a playoff spot.

Columbus Blue Jackets

Win: Their trade deadline. Instead of throwing in the towel and selling off expiring assets while they're still in the hunt, CBJ aggressively attacked the deadline to acquire some nice pieces (Matt Duchene, Ryan Dzingel, Adam McQuaid) in order to make a postseason run.

Sin: Still could miss the playoffs. As much as I want to commend them for being aggressive, they basically mortgaged their future by trading all their draft picks and picking up more impending free agents only to barely sneak into the playoffs ... or miss completely, if they have a disastrous final two games. Knowing they could have gotten a package of futures for Artemi Panarin but instead chose to get demolished by Tampa in round one and let Panarin walk for nothing might sting for a while. 

Dallas Stars

Win: A strong finish. The Stars made a strong push down the stretch and snuck into the playoffs, and they've managed to succeed in a completely anti-Stars fashion this season ... with great defense and goaltending. What in the bloody hell is going on here? 

Sin: "F---ing horses--t." The Stars' low point this season had to come when CEO Jim Lites publicly ripped into two of the team's biggest stars, Jamie Benn and Tyler Seguin, for their "terrible" play. I'm all for accountability and maybe his comments lit a fire under those guys, but viciously throwing your best players under the bus in an interview probably isn't the greatest way to approach that situation.

Detroit Red Wings

Win: Dylan Larkin. With Henrik Zetterberg out of the picture, the Wings were banking on Larkin to prove he's capable of being the leader and top center on this squad moving forward. He has been able to do just that during a tough season in Detroit, posting a career-best stat line of 32-41-73. He's a guy you can start building around.

Sin: Extended Jeff Blashill for two years. Someone please explain to me why that happened?

Edmonton Oilers

Win: Fired Peter Chiarelli. After a much-too-long list of questionable moves that methodically turned the Oilers back into a rotten pumpkin, Chiarelli was finally given the heave-ho by Edmonton. Now the Oilers just have to hope that the next guy turns things around before Connor McDavid absolutely snaps and burns the city to the ground.

Sin: Another wasted year of McDavid's prime. Oh look, another wasted 100-point season from a star. [checks notes] Wait, make that *two* more wasted 100-point seasons from a star.

Florida Panthers

Win: Offensive production. Florida jumped from the middle of the pack to a top-10 offensive team this season thanks to career years from pretty much all of their top talent, including Aleksander Barkov (34-60-94), Jonathan Huberdeau (29-61-89), Mike Hoffman (35-34-69) and Evgenii Dadonov (28-41-69). Hell, they even got 24 goals out of Frank Vatrano

Sin: Another lost season with a talented core. Despite all that offensive talent, the Panthers failed to make any real noise because of their defensive deficiencies and leaky goaltending. How many more years are we going to allow Florida to be irrelevant while they hold onto elite talents like Barkov and Huberdeau? 

Los Angeles Kings

Win: Ability to have fun with a lost season. It became clear pretty early in the season that the Kings stunk and weren't going to accomplish much. To the team's credit, it found some creative ways to still have fun down the stretch -- including letting special guests such as Snoop Dogg and Ron Burgundy do play-by-play.

Sin: Turns out signing a slow, 35-year-old Ilya Kovalchuk didn't solve their problems of ... being old and slow. 

Minnesota Wild

Win: Acquired some nice young pieces at the trade deadline. The Wild recognized that they were sort of stuck in no man's land between being bad and a legit contender, so they decided to start heading in a different direction. They used the trade deadline to pick up some talented young players that could be impact players for them down the road, including Ryan Donato and Kevin Fiala. They've still got a ways to go, but it's a start.

Sin: Play at home. The Wild had their worst season ever on home ice, going 16-18-7. Not exactly a treat for The State of Hockey. Also, they still remain an incredibly boring team with a pretty unremarkable outlook. 

Montreal Canadiens

Win: Promising young players. After parting ways with several key pieces in the offseason, there was a lot of skepticism about the Habs' offense heading into this season. But Montreal has breathed new life into Max Domi (28-43-71) and gotten a solid rookie campaign out of first-round pick Jesperi Kotkaniemi. They're not much more than a playoff bubble team right now but they have some pieces to build around. 

Sin: The power play. Montreal's man-advantage was league-worst, converting at a 12.5 percent clip. While the Canadiens have been surprisingly fluid offensively at 5-on-5, their power play hasn't done them too many favors. Also, this seems like a team that is potentially at risk of being stuck in no man's land. They were better than expected but still not good enough to make the playoffs, which isn't exactly ideal during a rebuild.

Nashville Predators

Win: They haven't been particularly great this season and yet they've remained one of the top teams in the Central Division. Says a lot about the West. 

Sin: Their numbers against good teams. While Nashville remains in play for the Central Division title, there's certainly concern about them heading into the playoffs. They've struggled to beat good teams, having gone 11-15-1 against Western Conference playoff teams -- including just one win apiece against divisional rivals in the Jets and Blues.

New Jersey Devils

Win: Their social media team. After emerging as a surprising playoff team on the back of an MVP campaign from Taylor Hall last season, the Devils reverted to painfully mediocre. But their social media team was anything but, so that has to count for something.

Sin: Their most exciting highlight this season was a guest appearance from a bit character on a sitcom that last aired over 20 years ago.

New York Islanders

Win: A stunning turnaround. Went from the worst defensive team in hockey to one of the best and made the playoffs despite losing the cornerstone of their franchise in John Tavares last summer. 

Sin: Somehow still crying about Tavares?

New York Rangers

Win: Pavel Buchnevich. A promising prospect who has also been quite frustrating at times, Buchnevich has begun to blossom under coach David Quinn this season. Getting a chance to play regularly with some top players, the 23-year-old winger hit the 20-goal mark for the first time in his career and looks like he could be a nice piece moving forward in their rebuild.

Sin: Breaking Henrik Lundqvist's heart. It was a sad moment when the Rangers finally pulled the trigger on sending fan-favorite Mats Zuccarello out of town at the trade deadline. It was the right call considering Zucc's expiring contract, but it still made a lot of people sad. Nobody was sadder than Lundqvist. 

Ottawa Senators

Win: They're an absolute mess but at least they finished the season with the best odds to win the draft lottery.

Sin: Don't actually possess their own lottery pick this year. Whoops.

Philadelphia Flyers

Win: Gritty, obviously. The Flyers' biggest win came before the season even started when they unveiled the mascot that would change all of our lives forever. But I guess if you want an in-season win, we can point to the emergence of Carter Hart, the goaltending phenom who has been very solid in his rookie campaign. Hart has a .919 save percentage in 30 games with Philly and he looks to be the steady goaltender the Flyers have needed for so many years.

Sin: The Dave Hakstol saga. Given the way the Flyers struggled out of the gate, it wasn't a surprise that Hakstol got fired, but it was surprising how he got fired. During a tough stretch in December, reports leaked that they'd dismissed him; the team denied those reports and gave him a vote of confidence, only to fire him the following morning. I guess in order to make up for an overdue dismissal, you have to fire the guy twice in the span of 24 hours.

Pittsburgh Penguins

Win: Kris Letang. After a tough 2017-18 season, the Penguins' top defenseman has bounced back in a big way. He has played some of the best hockey of his career for large stretches, even while battling various ailments. He continues to be a minutes-eating monster (nearly 26 minutes of average TOI) and has tied a career high in goals (16). Among defensemen with over 1,000 minutes of ice time, he ranks eighth in 5-on-5 shot share (55 percent) and second in goal share (61 percent). He has been huge for the Pens.

Sin: Jack Johnson. Remember when everyone laughed at the Penguins for giving a five-year, $16.25 million deal to the 31-year-old Johnson this past offseason? Well, turns out everyone might've been onto something! Among all Penguins D-men, Johnson ranks second-worst in 5-on-5 shot share (45.2 percent) and goal share (43.2 percent). Good thing he's averaging nearly 20 minutes a night and is signed for four more years!

San Jose Sharks

Win: Joe Thornton. There were questions about how effective Thornton would be at age 39 coming off of two major knee surgeries in as many years, but Jumbo's still got it. He continues to be a key piece of the Sharks' forward group and has hit a number of milestones this season -- including 1,500 games played, 400 goals and eighth place on the league's all-time assists list.

Sin: Goaltending. The Sharks were among the league's best teams and near the top of the Pacific Division all season despite getting some of the worst goaltending in the entire league. I'm not sure whether that classifies as wildly depressing or wildly impressive. Probably both.

St. Louis Blues

Win: Jordan Binnington and an incredible second half. The Blues were dead-last in the league on Jan. 2, but they managed to make a miraculous second-half turnaround that made them into a divisional playoff team. A lot of that second-half success can be attributed to Binnington, a 25-year-old rookie goaltender who came out of no where to post a .927 save percentage in 31 starts. He probably won't win the Calder, but he certainly deserves to be in the conversation.

Sin: That first half. Think about where the Blues could be right now had they not gone 17-20-4 through their first 41 games. Even a remotely decent first half and they're probably Central Division champs, possibly looking at the No. 1 seed in the West. Instead, they have a tough first-round playoff matchup against the Predators. 

Tampa Bay Lightning

Win: Better than everyone else. Yeah, that about covers it. 

Sin: These uniforms.

Toronto Maple Leafs

Win: John Tavares. Hey, that Tavares guy has done pretty well in delivering on his end of that new mega contract. He has set career highs in goals (47) and points (88) in his first season in Toronto. It's probably worth noting that he has scored 37 times at even-strength, which matches his previous season-high in total goals. Pretty good.

Sin: Developed a love affair with losing to the Senators. Did it three times. The Ottawa Senators.

Vancouver Canucks

Win: Elias Pettersson. Even though his scoring rate has trailed off, Pettersson has proved to be an elite talent in his rookie season. He's a human highlight reel that almost single-handedly makes the Canucks worth watching on a nightly basis, so that's a pretty good pillar to build around in Vancouver. 

Sin: The back end. The Canucks have some exciting young talent up front but they have a ways to go when it comes to filling out their blue line and providing those play-makers up front with some security behind them. They're not a good possession team and they could still really use a talented play-maker/quarterback on their blue line, but luckily Quinn Hughes should fill that role soon.

Vegas Golden Knights

Win: Added Mark Stone. Vegas won the trade deadline by picking up the biggest prize in Stone, and it was able to extend him at a very fair price shortly thereafter. His numbers haven't been great  (5-6-11 in 18 games) but Stone is a tremendously valuable three-zone player who has proven to be an impactful addition to an already dangerous top-six in Vegas. The production should come and he'll be a key two-way play-maker as the Knights look to follow-up on last year's incredible postseason run.

Sin: The Deryk Engelland drop-off. After a career-best first season in Vegas, the 36-year-old Engelland hasn't been nearly as good. He's still being deployed as one of the Knights' top defensemen (almost 20 minutes a night) despite the fact that his shot share (48.5 percent) and goal share (46 percent) are the worst of all Vegas D-men. Maybe even more concerning is the fact that every partner that Vegas has paired him with has better numbers away from Engelland. 

Washington Capitals

Win: No Stanley Cup hangover. Still Metropolitan Division champs with a strong shot at another deep postseason run. A 33-year-old Alex Ovechkin shows no signs of slowing down and is on his way to collecting another Rocket Richard trophy, hitting the 50-goal mark for the eighth time in his career. Maybe they didn't party hard enough last summer? Something to think about.

Sin: Michal Kempny. The Caps suffered a brutal late-season blow when Kempny tore his hamstring as he fell awkwardly to the ice in a physical altercation. He's expected to miss the rest of the season, including Washington's playoff run, after undergoing surgery. That's terrible luck for the second-pairing defenseman, who was one of the Caps' most important players during last season's championship run.

Winnipeg Jets

Win: The top line. Much like Nashville, Winnipeg hasn't been as impressive as a lot of people expected coming into the season, but the Jets are still hanging around the top of the division. The Jets' biggest strength is their firepower up front, specifically on their top line, and those guys continue to get job done. Blake Wheeler hit the 90-point mark for the second straight season, with Mark Scheifele not far behind as he set a career high in goals (37). Kyle Connor also hit the 30-goal mark for the second consecutive year. 

Sin: Patrik Laine. Normally, you wouldn't complain about a guy scoring 30 goals, but Laine has been wildly inconsistent and he's about to put up his worst of three seasons in the league. Again, 30 goals ... not bad. But when you compare it to the 36 he had as a rookie and the 44 he put in last season, it's a bit disappointing -- especially when you consider that over one-third (11) of those goals came in three games. The Jets need Laine to focus and return to form as an elite marksman in order to give them their best chance at making a Cup run.