in reply to Perl Test
From there, I go back and look at what areas I think can be improved on and why. Most of the time, there is probably a "better" way to do it. I look around on here and the internet in general and see what I can find that may or may not help me create better code.
Sometimes, a search reveals a solution that is better than my own and that I understand, so I use it. For me, understanding why I am doing something and how it works is far more important than having code that is "the best solution". If I don't understand how the code works, I generally bookmark it for later and move on with my own code. Other times, I find no other solution that will do what I need even though one may exist, and probably does. Sometimes, I post here about a problem and get an answer that I understand, so I use it.
I try to break down what I am doing into small easy to understand chunks that can be modified without breaking too much, and that seems to be key for me. Taking it in little bites when I can, and getting it all working.
My current project is an internal perl module to interface with our Cable Modem system. My previous solution worked fine, but ended up being a few thousand lines of code too many and with a lot of convoluted routines that I have since looked at and went "!@@!@!!!!! WTF did I do that for!@@$@#!!!!". So now I am rebuilding that entire thing as a module which will be reusable in many different applications that I am building that all interface with the Cable Modem System.
Fortunately I don't have any strict timeline, so I am able to spend a lot of time working through problems. My most recent was a Hash of Arrays.
So as for your question, if there is nobody that has a higher level of knowledge than the developers, you are kinda in a tough spot. If you care about the apps working more than best practices, I would say let them continue on their way, learning as they go. They will eventually look back and go "Why did I do that?" and then fix it up :)
Just my $.02. I haven't been developing in perl for very long either at least not in a meaningful way as far as I am concerned. So take it for what you will.
|
|---|