[stdlib-sig] standardizing the deprecation policy (and how noisy they are)

Kevin Teague kevin at bud.ca
Tue Nov 10 00:43:58 CET 2009

On Nov 9, 2009, at 10:02 AM, Guido van Rossum wrote:

> [Laura]
>>> Experience has shown that when people get used to seeing 'a bunch of
>>> warnings that don't really matter' they either a) turn them off or
>>> b) ignore them, even when they are telling them valuable things that
>>> they should be paying attention to.  So constantly spitting out
>>> DeprecationWarnings as soon as something becomes deprecated is a
>>> most excellent way to train people to ignore DeprecationWarnings.
> On Sun, Nov 8, 2009 at 10:39 PM, Antoine Pitrou  
> <solipsis at pitrou.net> wrote:
>> Well at least people get a chance to see them. If some people think  
>> the
>> warnings are useless (even though the messages warn about removal  
>> of a
>> construct), they won't run a code checker either.
> You're misreading Laura. She's not saying that some people choose to
> ignore the warnings. She's pointing out that it is a scientifically
> known fact that people will *learn to ignore warnings* if they occur
> frequently enough, and that once this is learned the warnings have no
> effect. Look up Jef Raskin's diatribes against modal dialogs. (Or read
> the "cry wolf" fairy tale. :-)

Case in point, Plone collected more and more deprecation warnings over  
the years. When Zope started down the DeprecationWarning road, there  
were just a few warnings, but people got used to them. After a few  
years went by, starting the application server used to emit a truly  
hideous amount of warnings. End-users saw these warnings and it was  
embarrassing. 3rd party developers using it as a framework saw these  
warnings and it just frightened them off. Despite being such a bad  
situation, the Plone core developers saw these warnings and did  
nothing to fix them, they just learned to ignore the situation when  
starting Plone - despite it being a major source of embarassment for  
them, everyone just got used to ignoring them (until finally Hanno  
took mercy and the led the charge to clean-up the morass).

Andy McKay complained, "Do I really need to see all this? Can we put  
this into a unit test that will do something like test --show- 
deprecations? Deprecation warnings in products I develop are useful,  
but I fear, I like most or just ignoring these logs. If that's the  
case we are losing the battle."


More information about the stdlib-sig mailing list