Author of:
and maintainer of:
This entry is somewhat in line with my previous journal entry on comments in code.
Way too often we are so busy we do not get our code completely prepped for production.
This mean commented-out code is not removed, code is not peer-reviewed and POD is not updated (if written at all).
I have other issues like lacking tests, documentation aso. but lets stick to the topic.
I would live to see a proper staging process and use of a staging platform, I looked up the word in my dictionary and it said (somewhat edited):
stage |stāj| noun
*snip*
- each of two or more sections of a rocket or spacecraft that have their own engines and are jettisoned in turn when their propellant is exhausted.
*snip*
Man, this is exactly what I mean, throw away the parts you do not need. I would love if we could would just go over the code at least once and remove the debris of the development.
And next we go over the code and isolate all debugging and verbose logging so it
can be controlled using flags from a single point.
Other things we could do?
We can always adopt peer reviews when we get the time.
Logging (Score:1)
Did you mean: Log::Log4perl [cpan.org]
Re: (Score:2)
print STDERR "We are now in func2\n";
print STDERR "we got params:\n", Dumper \@params;
We have a lot of such code. I attempt only to inject
when really desperately debugging or atleast isolating it behind
if (DEBUG) {
Re: (Score:1)
That’s the point: with Log4perl, you can leave it in. You configure at runtime precisely which logging messages you’re interested in (yes, while the program runs – not just at startup).
Furthermore, if you worry about expensive computations in your logging statements, you can pass a closure instead of a string, which will be invoked only if that statement is enabled. The logger call still happens, so this is not as efficient as
if (DEBUG) { ... }(which is completely optimised away at comRe: (Score:2)
Thanks,
Re: (Score:1)
Ah, didn’t know you knew it already. A lot of people don’t, and logging is one of those things where it’s really really easy to understand and solve 30% of the problem, but it’s hard to imagine the whole problem and a lot of work to solve it well, so it’s common to get stuck at the 30% threshold.
I was stuck there too before I read an article about Log4perl. It really opened my eyes – I had been doing things in a pretty crappy way but it never occurred to me I could have
Re: (Score:1)
*Light Bulb Moment*
Oh wow, why did I never think of that before.
Re: (Score:2)