• Good day,

    I disagree with the notion of what is being presented as "best practices" and I strongly disagree with the presumption that "we are different" is an argument for not adopting best practices. We are all different, our solutions are all different, factor out what is common and you will be well informed by best practices for that discipline.

    Software design (an activity within software development) and information design are two separate disciplines so contemplating best practices from one and applying them to the other constitutes a "straw man" argument. The SDLC best practices around code management, structured design, documentation, requirements gathering, testing patterns are all applicable to the management of design and artifacts for database architecture and SQL coding. There is very little in common once you get into the nuts and bolts of information design (entities, attributes, relations) vs. the structure of UI, business and data access software objects.

    Best practices with regards to implementation via patterns are proven to work for specific problems and should be applied when that is the problem, most of our data design is not unique, most of our business rules have been encountered and solved before, there are unique challenges that occur and they may cause us to deviate from direct implementation of a best practices pattern. That is the developers art and we are entitled to it via experience and education.

    As for code tidiness and policies, these need to be considered in regards to the overall project because poorly written (messy, undocumented, obfuscated...) code is technical debt that will accrue interest over time. If the project is large or long term then there is very little to be gained by cobbling together something that "works" but isn't pretty. We all understand urgency and timelines so let's not spend time rehashing that.

    One of your core best practices should be to review your current best practices with regards to the evolution of your technology.

    Complacency and Fools are a problem unto themselves irrespective of the cause they are proposing, we could accrue their malignancy to any aspect of our jobs so it's not justifiable to bring them into this discussion.

    I see best practices as guidelines not absolutes, perhaps that's where our positions on this subject differ.

    Respectfully,

    Derek.