по работе пришлось читать очень много чужого кода. И я заметил одну особенность которуя я до этого не соблюдал. Все переменые вынесены в начало процедуры и по ходу процедуры не объявляются. Я в свое время читал книжку мак конелла совершенный код и там наоборот рекомендовалось переменные по ходу процедуры объявлять прямо рядом с местом использования.
А как делаете вы?