Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re^5: Legacy Code: "Dominoes = Bad"

by ruzam (Curate)
on Apr 29, 2011 at 03:38 UTC ( #901915=note: print w/ replies, xml ) Need Help??


in reply to Re^4: Legacy Code: "Dominoes = Bad"
in thread Legacy Code: "Dominoes = Bad"

You can write bad, un-maintainable code using moose just as easily as you can without. Just because moose might be your flavour of the day today, that's no guarantee that it will be in anyone's favour in 10 years. When that day comes you've taken Perl, which a certain population of developers are proficient in, and slapped on another layer which reduces your 'proficient' developer pool down to a much smaller fraction (if they exist). Then you'll have monks posting about all the crapped up legacy moose code that nobody can maintain and the cycle will repeat all over again.

Legacy code is what it is. Take the heat or get out of the kitchen as they say. The code was conceived under the requirements and restrictions of the day just as the code you write today is. Some day your code will also fall under the same scrutiny, if you're (un)lucky enough to have it survive that long, by somebody who will most probably not be you. Will that person share your beliefs and definition of maintainable code? I doubt it.


Comment on Re^5: Legacy Code: "Dominoes = Bad"
Re^6: Legacy Code: "Dominoes = Bad"
by BrowserUk (Pope) on Apr 29, 2011 at 03:55 UTC
    Some day your code will also fall under the same scrutiny, if you're (un)lucky enough to have it survive that long, by somebody who will most probably not be you. Will that person share your beliefs and definition of maintainable code? I doubt it.

    At last. Realism from someone who has obviously been there, instead of book-learnt theoretic evangelism or purist dogma.

    Knowing enough to not put aspirations above requirements, does not mean you disregard maintainability. It means you achieve the best possible compromise between that aspiration and the hard requirements. If the requirements can be met with best possible maintainability, there is no conflict, but when there is, the requirement comes first. S'not rocket science.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.
Re^6: Legacy Code: "Dominoes = Bad"
by Boldra (Deacon) on Apr 29, 2011 at 07:07 UTC
    Will that person share your beliefs and definition of maintainable code? I doubt it.
    Given that my beliefs about the definition of maintainable perl largely agree with the defininitions in Modern Perl, PBP, and apparently even BrowserUKs definition, I doubt it less.

    Simplicity is a core practice of maintainability. Did someone say otherwise?



    - Boldra

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://901915]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (5)
As of 2014-12-18 04:14 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (41 votes), past polls