Every developer has been there--late at night, deadline looming, piling hacks on top of hacks to get a little closer to being finished, there are no tests, edge cases are totally forgotten. Many of us think these situations lead to the worst code we could possibly write. Under such conditions, it is difficult to write robust, well architected code--true--but this is not the only situation that leads to that end. Software development is a complex, creative process that can easily get out of hand. This is because one large factor is often forgotten about--the human factor. Avoiding writing the worst code ultimately comes down to how the people writing, spec'ing, testing, validating, and tracking the code interact.
59. References
Balsom, M., Barras, R., Michela, J., & Zdaniuk, A (2009). Processes
and Attributes of Highly Effective Teams. Retrieved 6/10/2015
from https://uwaterloo.ca/psychology/sites/ca.psychology/files/
uploads/files/processesattributeseffectiveteams.jm_.v4.pdf
Kozlowski, S. W. J. & Bell, B. F. (2001). Work groups and teams in
organizations. Retrieved 6/10/2015, from Cornell University, ILR
School site: http://digitalcommons.ilr.cornell.edu/articles/389/
Pentland, A (2012). The New Science of Building Great Teams.
Harvard Business Review. Retrieved 6/10/2015, from https://
hbr.org/2012/04/the-new-science-of-building-great-teams
Eckstein, J (2010). Agile Software Development with Distributed
Teams. Dorset House.