Ideal vs Necessary Evil

Someone confronted me about Ideal vs Necessary Evil in regard to coding to best practices. 
Today there was a loud debate among myself and two other developers regarding how to handle some legacy code. One developer wants the the legacy code refactored and testable the other wanted to modify the code quickly since the company plans to rewrite the application after the next deployment in a month.  I wanted to make a code branch of existing code then refactor as much as possible as long as the new functionality was working first.  At the end of the long discussion there was still no agreement. One of the developers sent me this email after the meeting. (yes I have his permission to post)

 

"In few years back, Dental flossing is Ideal, but now enough studies are done to prove it’s necessary now. But still some people with bad habits, (sometimes including myself), think that it’s  not necessary.
Whatever view we have, the reality of dental impact on the health doesn’t change. Same goes to SOLID principle in specific, agile practices, values in generals.
An agile developer expresses values through practices. Like daily dental flossing for health.  For some, dental flossing is ideal ( I used to have that view). Now I know enough, it’s not ideal for me anymore. My point is that you learn agile practices, principles till the point you see there are necessary for your professional development. The danger of view of Idealism where necessity is demanding is that as long as we have that conviction, our minds can trick us to give up easily in daily pressured activities. There were cases in my learning experience, I got tricked , and I paid for it. This is from my years of observation.  I am writing this to elaborate more on my point on ideal, and its impact on us. "
 
I was trying to find a way to refactor the code and to not break existing code.  Lesson learned: Making everyone happy makes no one happy it seems.
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Do you have potential to be a great agile developer?

 

Over all I think the best indication that someone will be a good agile
team member is:

  • Demonstrates  a long-term desire to move from journeyman to craftsman. (study groups, software related blogging, seeks out training)
  • Demonstrates that they will share knowledge insights with others.(mentoring,being mentored not just for newbies all team members)
  • Open to debate and new ideas. (question whenever a quick solution does not follow solid principles, or adds unnecessary technical debt)
  • Willingness to work closely with non-developers (users, business owners, managers)
  • Patience with the process (complex problems are not easily solved it takes time and investigation).
  • Can make the argument for refactoring code.
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati
«November»
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345