For me, I love every single part of creation of software. From dreaming up its function and laying it down elegantly in code, to designing the user interface, the logo and making everything smooth. Then looking at it - deciding it's shit - and iterating the whole thing again. It's a creative process and I love every bit of it.<p>When people come to me with ideas or wireframes it takes away from that creative process by a huge factor for me, which in turn makes me not want to take a client. I love seeing the idea in my head and having it all click, that catalyst of motion needed to take it from idea to execution. I love it. People giving me ideas, deadlines, precise functions and that the logo has to be "right there" just kill stuff for me. I can't do it and be happy, so I won't do it.
If this post was more straight-to-the-point, I would have been in agreement with it. The problem with the metaphors here is that there are architects that are also good interior designers, just as there are developers who can implement good design. There's also resources for people that want to design their own house but need to make sure all of their bases are covered.<p>I would have phrased it more like: designers with project ideas are great, but their contribution is going to need be a lot more than just providing some PSDs and an image-only concept website. A big reason why I argue that people that design for web but don't code aren't really web designers (something I understandably get crap for) is because you need to understand the possibilities as well as the limitations if you plan on spending your time creating something truly worthwhile. Blog posts alone aren't going to keep you afloat on the state-of-the-industry, and can do more harm than good (i.e. the designer that says "I know we can do this because there's a jQuery plugin for it!" without understanding how it could impact existing code). The designer also needs to be able to answer questions that their mockups don't provide and be able to back up reasons why they made those decisions. You need to be able to iterate throughout the development process when something doesn't work as planned and do so alongside your developer, not just hope you're going to be able to nab one that is willing to both do the heavy-lifting on the front- and the back-end for you so long as you provide hugs and high-fives.<p>Anyone can come up with a static image of their dream app based on re-imagining favorite features from others like it. I just worry that if every designer with an idea thinks they deserve a pocket-programmer, we're going to end up with a lot more half-baked apps and services than we already have and a lot of unhappy developers who didn't know what they were getting themselves into. Something something everyone should learn to code.
This post is mixing metaphors a lot. Software developer as architect, electrician, plumber and building code expert. I don't see anything about understanding and meeting the needs of people that actually use the final, functioning system. That is what a structural architect does.<p>I know we have a mess of terms on the digital side. Lots of people with different specialties are trying to claim the architect title. People tend to say they are "architecting" the design of the backend system. Aren't they really "engineering" it? Maybe it doesn't really matter. Debating the meaning of "architect" is about as much fun as debating the real meaning of "design."
I think the answer to both the architectural example and the software comparison is more education. The only way to stop the onslaught of poor interaction is if the client better understands the development process.