The crispness with which the 49ers went through their Day 1 practice mostly vanished on Day 2. The long, graceful passes to receivers Torrey Smith and DeAndrew White on Saturday were replaced by ugly, short incompletions intended for running backs Carlos Hyde and Mike Davis and others on Sunday. Passes were batted down. Nice guy Jim Tomsula even lost his temper at one point.
Of course, there are two ways to look at it: It may be that the offense was bad. Or perhaps the defense was really good. If you go with that second story line, then you were impressed by Ahmad Brooks, who drew the ire of his coaches last year for arriving to training camp out of shape. With Aldon Smith suspended nine games, the 49ers hoped Brooks would step forward and lead the way. He did not.
Brooks, however, looks as fit as he's ever been in the recent camp. During one-on-one pass-rush drills he put a spin move on tackle Erik Pears in which he looked as nimble as Mikhail Baryshnikov (see, he's a ballet dancer). Brooks, 31, also leaped up to bat down a Colin Kaepernick pass in the second half of practice as the defensive players mostly frustrated their offensive counterparts. At one point this offseason it seemed as if the 49ers would unload hefty Brooks and his hefty contract. Now he seems poised for a big year.
The team's other starting outside linebacker, Aldon Smith, also had a would-be 'sack' during the no-contact session. So did Lawrence Okoye, who has been playing right defensive end with the third-team defense and who chased down quarterback Dylan Thompson on a broken play.
Never miss a local story.
Cornerback Tramaine Brock had his second straight solid practice. On a busted play, Kaepernick scampered to his left and hoisted a long pass to Anquan Boldin down the seam. Brock, who has always been a ball hawk in practice, jumped in front of the wide receiver for the interception.
The offensive players weren't entirely shut out of the highlight reel. White had another solid day, though it wasn't as spectacular as Saturday's session. Instead, the offensive MVP was receiver Bruce Ellington, who caught a number of passes, including a 15 yarder along the sideline he broke up field for a big gain. Ellington also had two deep catches in one-on-one drills, the first coming when cornerback Chris Cook took a poor angle on a pass that Ellington caught deep. He also outmuscled would-be starting cornerback Shareece Wright for a catch.
Darnell Dockett, Reggie Bush, Jimmie Ward and Aaron Lynch practiced sparingly again. While Brooks looks fit, Lynch does not, which may explain why he landed on the non-football injury list last week. He has not taken part in 11-on-11 drills, though he did appear on special teams coverage units on Sunday.
As for Dockett, Tomsula explained that because the 49ers dedicated Saturday's practice to their base defense, Dockett, who is earmarked for work on nickel defense, was not needed. The team mostly worked on base defense again Sunday, although there were a few snaps in the nickel alignment. Brock got the first-team snaps at nickel cornerback with Dontae Johnson playing on the outside. Johnson and Keith Reaser also received some snaps opposite the slot receiver when the second- and third-string defenses were on the field.
Guard Marcus Martin bounced back with a better practice after struggling at times Saturday. He beat Ian Williams in one-on-one blocking drills, then battled Arik Armstead to a draw.
Earlier today, I wrote how Camp Tomsula is a kinder, gentler, more congenial event than previous 49ers training camps. Don't tell that to backup tackle Patrick Miller, who drew Tomsula's wrath when he was on the field at a time when Alex Boone, not Miller, was supposed to line up at left tackle.
That forced the team to halt practice as the error was sorted out. It also disrupted the "Tempo! Tempo! Tempo!" that is paramount to Tomsula this offseason.