A friend pointed me at a new design pattern called Big Ball Of Mud. I found it to be a very interesting read despite it reiterating things that I've learned over the course of my career. I can't help but wonder "what the hell is going on?" because it seems to me that no matter how we progress in the Software Engineering field, we still manage to produce crap.
Despite all the research done, the papers written, the conferences attended, and the methodologies followed, writing software still comes down to the professionalism of the people involved. Sure, we have unrealistic deadlines imposed upon us by senior management, we have poor requirements, and we have insufficient resources to do the job. Does that mean that we do an unprofessional job? The ideal answer is NO - but is that the whole story?