Jan 282013
 
begin
  with_good_coding_practice (
    naming_our_parameters     => 'Y',
    so_our_code_was_robust    => true,
    but_emergency_fixes_later => 3,
    'quality control slipped',
    'and our good intentions fell down',
    'leaving us with a horrible mismash');
end;
/Naming your parameters is an excellent way to protect against unexpected parameter changes
and make mixed-up parameters much easier to spot...
Jan 232013
 
begin
  $if $$deploying_to_many_environments and 
      $$these_have_different_setups $then

    use_conditional_compliation();

  $else

    you_have_to_change_your_code();
    to_solve_dependency_issues();

  $end
end;
/
Dealing with conditional compliation can bring it's own complications,
but at least it means you can have a consistent and repeatable release process

For a script showing this in action, use this. For a more detailed description, see this article on the always excellent oracle-base.