“Are you a glass half-full person or a glass half-empty person?”

You’ve heard that question before reading the first sentence of this column. If you’re reading this, I’m guessing you’re a Michigan fan looking to bask in the Wolverines beating a top 15 team for the fifth time in the Jim Harbaugh era.

Well, I might’ve just guessed it right there. You’re probably a “glass half-full person.” Good. You’ve come to the right place.

But just in case you are indeed a “glass half-empty” person in need of some post-game clarity about what Michigan is right now, well, I’ve got you covered, too.

You see, we in the college football world love everything black and white. Michigan was trash after the Wisconsin loss, and the Badgers were suddenly a force to be reckoned with. There’s no in between.

After watching Michigan play football for 60 minutes on Saturday against Iowa, I’m more gray than ever on the Wolverines. And needless to say the “glass half-empty” is the offense.

Let’s start with the positive because as I teased earlier, there was indeed a positive of Saturday’s mid-20th century football game in Ann Arbor. It was Michigan’s defense. Obviously.

Keep in mind that entering Saturday, the Wolverines allowed an average of 39.5 points per game in their last 4 Power 5 matchups. Well, that’s excluding Rutgers. Sorry, but you get it.

So yes, watching Don Brown’s defense actually play 60 minutes of quality football against a legitimate Power 5 team was a welcome sight after how last year ended and this year started. Nate Stanley got sacked one more time by the time you finished reading this sentence.

(I don’t know who it was, but I’m assuming it was Kwity Paye.)

Nothing Iowa did up front worked. It felt like Stanley had a different Michigan pass-rusher in his ear every time he dropped back. Compare that to a couple weeks ago when Michigan had a whopping 1 sack against Wisconsin.

Or better yet, how about the turnover battle? Against Wisconsin, Michigan lost it 4-0. Against Iowa, Michigan won it 4-1. Not bad considering Iowa had 1 turnover in its first 4 games of 2019.

These things, believe it or not, matter.

On a day in which everyone questioned whether Michigan would cave, the defense answered that question with an emphatic “no.” The most telling stat about that was probably the fact that Iowa had 6 trips inside Michigan’s 40 … and had a whole 3 points to show for it. That’s a credit to some relentless defense and some disastrous Iowa offense. The Hawkeyes got another penalty by the time you finished reading this sentence.

Tip of the cap to the Michigan defense. Ambry Thomas, Lavert Hill AND Josh Metellus all picked off Stanley, who finished a miserable afternoon without a touchdown pass and -65 rushing yards (because of all the sacks he took).

Ok, “glass half-full person,” is that enough? You might want to start skimming. Or if you’d like a little dose of reality, feel free to continue.

If you were hoping that Michigan’s offense had turned the corner after the Rutgers win, I imagine Saturday was just a touch disappointing for you. Like, when you woke up on your birthday and thought your parents were going to surprise you with a trip to Disney World and instead you found out you were going to Chuck-E-Cheese.

Where were the adjustments? Why wasn’t Shea Patterson willing to take advantage of the mismatch he had with Nico Collins on that smaller Iowa secondary? And what about Donovan Peoples-Jones? Remember him? How was his longest catch of the day for just 10 yards?

Me ending 5 straight sentences with a question mark says a lot about the Michigan offense right now. Patterson is still making the wrong reads — he misread Iowa’s zone completely on that first half interception — and Michigan still looks like it completely lacks an offensive identity.

I mean, I get that Iowa’s defense was one of the nation’s best entering Saturday, but 3.6 yards per carry in a home game with that kind of desperation? Goodness. The worst thing was, it almost felt like in the second half that Michigan’s offense knew it couldn’t do anything, and it just put the entire game on the defense.

That might’ve been enough to get it done on Saturday against Iowa, but that won’t fly against Ohio State or Penn State. The latter will host the Wolverines in 2 weeks. Does Michigan’s offense look 2 weeks away from beating a borderline top 10 team on the road? Nope. Not at all.

There were people who were ready to get back on board with the Wolverines if they showed up on Saturday and made a statement against a strong Iowa squad. And to their credit, they did improve to 4-1 overall and 2-1 in the B1G after a pair of conference wins in which they didn’t allow a touchdown. Michigan knows all too well that life can be much, much worse than that.

But as we near the midway point of the season, time is running out on the offense to figure things out. Even the glass half-full person who believed in Gattis when he likened Michigan’s slow offensive start to what Penn State did in the first month of 2016 has to be worried about that group.

For how good Ohio State, Penn State and Wisconsin have looked this year on both sides of the ball, it still feels like Michigan isn’t on that level. And it doesn’t seem like you can’t be one-dimensional and win the conference this year. Michigan is still as one-dimensional as it gets.

Harbaugh called Saturday “a defensive masterpiece.” I’d agree with that. You let up 3 points to the No. 14 team in the country and you should give that group a hearty pat on the back.

It’s just becoming more and more evident that watching Michigan’s offense is like drinking out of an empty cup.