The PPU address is used during rendering to fetch tiles from the nametables. This shares the same bus and register as the one you use to write data to the PPU. Thus, after you're done messing around with it for writing data, it needs to be set back up in the correct position for reading before rendering happens.
This article might help:
http://wiki.nesdev.com/w/index.php/PPU_scrolling
A write to $2000, $2005, $2005 before the end of vblank should normally be sufficient, though. Usually it's easier to set scroll through $2005 than $2006. Some programmers do seem to write extra zeroes to $2006 as an unnecessary measure of protection? (Maybe from bad experiences while learning.)
The oft-maligned Nerdy Nights tutorial
does two redundant $2006 writes in its examples, which if you're talking about a homebrew game, they might have learned to do it from that example.