I do it constantly. I have been banging out code in perl ( as opposed to perlish code), for around 3 years now. I look at some of my earlier works and shudder. But at that point my goal was A) learn how to code, and B) code everything to be as clear to the next maintainer as possible. Verbose comments, always creating bracing groups for conditionals, avoiding tie and map and grep, cause they were perlish, and not very clear on what they do in given contexts compared to other looping structures. I always used foreach $something (@blah), as opposed to any other loop because it was very clear what was being looped through, and what contained the element, etc.. you get the drift.
Anywho, I have been really hunkering down with perl over the last few months, and I've noticed that it takes me longer to make the code overly verbose and clear (as to function of the code) for the next admin, than to just bang out my code and be done with it. I have started moving to more useage of the perl idioms cause I can, and its how I now "think" as I'm coding.
I think the point you are raising, everyone acknowledges along the way. On the whole, how many ways would you like to skin you cat *today*. I like the variety of perl. It allows me to make simple (and even moderately complex) loops simple, and not take up huge amounts of space. If give me multiple ways of expressing my thoughts in regards to the data set being processed.
In my mind, it probably is easier to 'master' another language, you can maybe even master perl I mean look at tye, sauoq, and merlin, to name just a few, and their depth of perl knowledge. But I've found a funny thing happening in my career as I gained knowledge. There is ALWAYS something else to learn within any given aspect of this thing called computing. A few people I know simply state, "You need something done, no matter what, he can get it done" and my jaw kinda drops and I babble "but I dont know half of this or even a quarter of what I should of that, and nothing about this" and they laugh a say "what ever your the man, you know it all"...
So I guess what I'm trying to say is, hopefully you will never become complacent in regards to the quality of your code, and that you will more than likely continue to realize that there are whole new problems that you have never thought of solving, or even knew existed. Along the way, sometimes you will feel giddy with the knowledge you have accrued, other times you'll gnash your teeth at the lack of progress you seem to be making (or is it not making). But in the end, looking back at whatever point, you should be able to review and notice what you have learned since then, and how you applied it from that point forward. And you may end up rewriting something a dozen, or even 2 dozen times, and other times you'll sit down, bang it out, reveiw in 3 or 6 months, nod and say "yup still looks good"... For me thats just programming
/* And the Creator, against his better judgement, wrote man.c */
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.