Hot cannot exist without cold. Shadow requires light. A head football coach cannot be pleased with his defense in a scrimmage without being agitated at his offense.

Georgia Tech coach Paul Johnson achieved that balance Saturday morning following the Yellow Jackets’ second scrimmage of spring practice. The closed session at Bobby Dodd Stadium was Tech’s eighth practice of 15 planned this spring.

Tech’s quarterback play was “horrendous,” Johnson said, but on the flip side, “I thought the defense played pretty well. They got a lot of turnovers, a lot of big plays. They probably played as well as they’ve played since I’ve been here.”

It is encouraging for defensive coordinator Ted Roof’s unit, which lost six seniors off the 2013 team. Last season, Roof’s first back at Tech, the defense gave up 22.8 points per game after averaging 28.3 in 2012. After losing All-American defensive end Jeremiah Attaochu and star defensive back Jemea Thomas, Roof is searching for playmakers. On Saturday morning, at least, finding them wasn’t difficult.

“Anybody on defense made plays,” Johnson said. “Nobody was touching ’em.”

Roof saw his unit’s play in a similar light.

“I thought we flew around today, and it was more physical than it has been, which is always a plus,” Roof said. “We did a good job of getting after the ball. But we’ve got a lot of things we’ve got to work on and just got to keep working to get better.”

Linebacker Quayshawn Nealy was one of the stars of the scrimmage, sacking quarterback Justin Thomas on a third-down play and later intercepting a Thomas pass and returning it 15 yards for a touchdown. Nealy is a three-year starter at linebacker, and as of early this past week was paired with linebacker Tyler Marcordes as the first-string linebackers.

Roof has switched this spring from using a 4-3 defense as the base defense to the nickel, which has a 4-2-5 configuration, as a reaction to the proliferation of offenses that operate out of a three-wide receiver alignment.

“He’s working hard at it,” Roof said of Nealy. “He’s in a different spot now because he’s a leader now. His role has changed, and it’s time for him to step up, and he’s been working hard to do that.”

Walk-on cornerback Zach Allen had his own scoring play, picking up a fumble and going 40 yards for a touchdown. Allen is in competition for a spot on the depth chart at cornerback, along with D.J. White, Lynn Griffin, Chris Milton and Step Durham. Demond Smith has led the competition at nickel back ahead of Domonique Noble, who was moved from safety with the return of safeties Isaiah Johnson and Jamal Golden.

Regarding the offense, Johnson said that walk-on backup quarterback Tim Byerly played the best of the quarterbacks. Byerly is the No. 2 behind Thomas. Asked what he thought of the play of the offensive tackles, Johnson replied, “Not much.”

Errin Joe and Chris Griffin have alternated at left tackle while Bryan Chamberlain has held down the job at right tackle.

“Nobody could get a block on the perimeter, either,” Johnson said.

Johnson’s distaste for the offense’s play followed Wednesday’s practice, when, on a warm afternoon, Johnson said, “some guys pushed through it, but we had a lot that didn’t.”

A-back Tony Zenon scored on a 27-yard run early in the scrimmage. Kicker Harrison Butker was 2-for-2 on field goals, including a 42-yarder.

But the defense won the day. The Jackets will conclude spring practice with their spring game April 18 at Bobby Dodd Stadium, the third consecutive year that it will be held on a Friday night instead of a Saturday afternoon.