3 ms·
Define quality... Most developers seem to view quality as them not writing any code at all, which implies downloading everything off NPM (or some other package
by austincheney 5y ago
Define quality...
Most developers seem to view quality as them not writing any code at all, which implies downloading everything off NPM (or some other package manager). My opinion on that differs, which is why its important to define what you mean by quality.
- curiousEagle 5y agoSome examples of "quality engineering practices" would be in my mind: - Believes most business logic doesn't belong in models/controllers - Understands the importance of naming things (classes, variables, etc.) well - Writes tests, even if not fully TDD - Intelligently applies SOLID engineering principles ^^ this type of thing. I think the books "Code Complete" [0] and "Practical Object-Oriented Design: An Agile Primer Using Ruby" [1] embody a lot of what I'm looking for, if you're familiar with them. [0] https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670 https://www.amazon.com/Code-Complete-Practical-Handbook-Cons... [1] https://www.poodr.com/ https://www.poodr.com/ Edit: Formatting
- austincheney 5y agoThose are all highly subjective criteria. If you are going to define quality I would do so in a way that is universally clear and immediately repeatable. Examples: * Page load achieved in 0.5 seconds * All variables are explicitly typed, if in a loosely typed language. * Does not use conventions X, Y, Z * Defect resolutions will not be accepted without corresponding test automation coverage * All type interfaces will be explicitly documented in markdown language immediately prior to the interface definition. Another way to think about this is if you cannot automate your quality definitions they aren't that important, because you will almost certainly not enforce them.