in reply to Should We Have A "Red Flags" Area?

Thank you all for your input. I hope it's been useful.

Thank you especially to extremely for pointing out the specific case that is a red flag, the $varN thing.

Also, what's a red flag anyway? A lot of you seemed to interpret it as "if you do this, you're a bad programmer" which is certainly not how I saw it at all.

To me a red flag is more like "that way works, sure, but did you know there's a much easier way?". Or in fact, it's maybe "that works, but you don't have to write code that way in Perl -- who told you you did?".

How about this example, to stimulate further discussion.

When I first started, the only way I knew how to iterate through an array was

for ($x=0;$<@array;$x++){ # .. do something with $array[$x] }
but I would never do that any more. It looks horrible to me, plus, extra variables, more syntax to go wrong, scary for beginners and so on.

Is that a red flag? It shows either that the person's a refugee from another, less accomodating language, or it shows that they've learned from sources that don't understand how easy iterating through an array is in Perl.

Maybe it's just red flags for beginners that I'm interested in, er, flagging..?
--

“Every bit of code is either naturally related to the problem at hand, or else it's an accidental side effect of the fact that you happened to solve the problem using a digital computer.”
M-J D

Replies are listed 'Best First'.
Re: Should We Have A "Red Flags" Area?
by Abigail-II (Bishop) on Feb 17, 2003 at 23:01 UTC
    Frankly, I don't see the for loop as a red flag. So what if people have experience in other languages. I started coding long before Larry started thinking about a new language. Besides, I do use the for loop every now and then. Why? Because it's more flexible. It requires just minimal changes if you want every other element instead of each element. Or if halfway during the pass, you decide you have to skip the next few elements. And sometimes, it's just very convenient to have the index number.

    To me a red flag is more like "that way works, sure, but did you know there's a much easier way?". Or in fact, it's maybe "that works, but you don't have to write code that way in Perl -- who told you you did?".
    For me, such an attitude doesn't differ much from
    A lot of you seemed to interpret it as "if you do this, you're a bad programmer"
    For me, a red flag is nothing more than "hmmm, why is (s)he using this? Bad coding, or is there something else?".

    Abigail