I should say at the outset that I'm referring to bad programming habits. I have plenty of generally bad habits (drinking, smoking, cursing, being rude to certain kinds of project manager), but I'm interested to hear what bad programming habits people have got into, and what they've done to break them. An indicative list of mine would include:
- Excessive use of double quote interpolation - I'm really doing myself no favours with print "$variable"; but I use print "$variable\n"; very heavily so the " gets to be a reflex, even where I'm not using \n.
- Excessive use of foreach, where join or map would be preferable
- Excessive use of eval. I've just about cured myself of that, since I found out how slow it is.
- Using / as a regex separator, when the regex would be clearer with an alternative.
- Using quoted strings where print <<END_BLOCK would make it clearer.
(Oddly enough, the exercise of writing them down has brought them to the front of my mind, where I can watch out for them. Useful!)
So, anyone care to join in?
Update: As per jhourcle I overlooked the Stupid mistakes I repeatedly make thread. But as Nevtlathiel pointed out, 'bad habits' ne 'stupid mistakes' #IMHO bad habits work but are not the best idea whereas stupid mistakes don't work
--------------------------------------------------------------
g0n, backpropagated monk
In reply to On bad habits
by g0n
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
|
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.