|
|
If architects had to work like software developers |
| by Neil Middleton 2:05 pm Wednesday, 18 February 2009. |
Dear Mr. Architect:
Please design and build me a house. I am not quite sure of what I need, so you should use your discretion. My house should have somewhere between two and forty-five bedrooms. Just make sure the plans are such that the bedrooms can be easily added or deleted. When you bring the blueprints to me, I will make the final decision of what I want. Also, bring me the cost breakdown for each configuration so that I can arbitrarily pick one.
Keep in mind that the house I ultimately choose must cost less than the one I am currently living in. Make sure, however, that you correct all the deficiencies that exist in my current house (the floor of my kitchen vibrates when I walk across it, and the walls don’t have nearly enough insulation in them).
As you design, also keep in mind that I want to keep yearly maintenance costs as low as possible. This should mean the incorporation of extra-cost features like aluminum, vinyl, or composite siding. (If you choose not to specify aluminum, be prepared to explain your decision in detail.)
Please take care that modern design practices and the latest materials are used in construction of the house, as I want it to be a showplace for the most up-to-date ideas and methods. Be alerted, however, that kitchen should be designed to accommodate, among other things, my 1952 Gibson refrigerator.
To insure that you are building the correct house for our entire family, make certain that you contact each of our children, and also our in-laws. My mother-in-law will have very strong feelings about how the house should be designed, since she visits us at least once a year. Make sure that you weigh all of these options carefully and come to the right decision. I, however, retain the right to overrule any choices that you make.
Please don’t bother me with small details right now. Your job is to develop the overall plans for the house: get the big picture. At this time, for example, it is not appropriate to be choosing the color of the carpet.
However, keep in mind that my wife likes blue.
Also, do not worry at this time about acquiring the resources to build the house itself. Your first priority is to develop detailed plans and specifications. Once I approve these plans, however, I would expect the house to be under roof within 48 hours.
While you are designing this house specifically for me, keep in mind that sooner or later I will have to sell it to someone else. It
therefore should have appeal to a wide variety of potential buyers. Please make sure before you finalize the plans that there is a consensus of the population in my area that they like the features this house has. I advise you to run up and look at my neighbor’s house he constructed last year. We like it a great deal. It has many features that we would also like in our new home, particularly the 75-foot swimming pool. With careful engineering, I believe that you can design this into our new house without impacting the final cost.
Please prepare a complete set of blueprints. It is not necessary at this time to do the real design, since they will be used only for construction bids. Be advised, however, that you will be held accountable for any increase of construction costs as a result of later design changes.
You must be thrilled to be working on as an interesting project as this! To be able to use the latest techniques and materials and to be given such freedom in your designs is something that can’t happen very often. Contact me as soon as possible with your complete ideas and plans.
PS: My wife has just told me that she disagrees with many of the instructions I’ve given you in this letter. As architect, it is your responsibility to resolve these differences. I have tried in the past and have been unable to accomplish this. If you can’t handle this responsibility, I will have to find another architect.
PPS: Perhaps what I need is not a house at all, but a travel trailer. Please advise me as soon as possible if this is the case..
[Author Unknown]
RSS feed for comments on this post. TrackBack URL
Sounds just about right, except that often the client does like to focus on the colour of the carpet from the start, in my experience, before we even know which rooms get carpet.
Comment by betty — Wednesday, 18 February 2009 @ 2:18 pm
Very few technical blog posts make me laugh and cry at the same time. This is one of the best articles I have read on software development in a long time. Thank you so much this is fantastic!
Comment by Dan — Wednesday, 18 February 2009 @ 2:43 pm
[...] Middleton has a great read for all software developers. His post if architects had to work like software developers will make anyone involved in software laugh and cry while reading. Great post Neil! [...]
Pingback by Great Article on Software Development | Flex Cubed — Wednesday, 18 February 2009 @ 2:56 pm
hey - isn’t this the real world!!!
happens weekly here…
Comment by Richard Sams — Wednesday, 18 February 2009 @ 3:20 pm
To bad this only gets read by developers.
Comment by roppert — Friday, 3 April 2009 @ 3:51 pm
[...] Direct Link » Share: [...]
Pingback by If architects had to work like software developers | 71² - The ramblings of two 30-something developers — Wednesday, 19 August 2009 @ 7:19 am
The only way to fix all these problems begins with “Dear God, …”
Comment by ardelian — Wednesday, 19 August 2009 @ 1:28 pm
Great post which I am sure made all Software developers around the world laugh and cry in the same time.
….and how true it is!!!!
Comment by Nihilus — Wednesday, 19 August 2009 @ 1:30 pm
I do a bit of development but mainly work in graphics production in architecture. This isn’t really a joke…. standard architectural working practice… TERRIFYING !!!
Comment by Samuel — Wednesday, 19 August 2009 @ 6:18 pm
Pass it on to your clients ;).
Comment by Josejulio — Wednesday, 19 August 2009 @ 6:19 pm
The worst part of this is that a lot of the time, the customer wants the design stages done at no cost to themselves, only paying for the end product.
The client doesn’t know what they want.
The client wants you to know their requirements.
The client wants you to determine what they want/need… for free.
The client wants a few initial examples of your work put into the context of their project… for free.
Only then does the client want to say yes or no on the project…
It sucks, but that’s how customers are… and while low paid students are willing to work this way, it wont change.
The biggest issue with the computer industry is the way that all responsibility for software is shirked off onto the customers. If like architects, we were forced to take responsibility for our bad designs a lot more, then we would get more respect for what it is we do and be paid to compensate. (Albeit with a lot of attrition of the lower end of the industry)
Comment by DarkFlib — Thursday, 20 August 2009 @ 6:31 am
[...] ganzen Artikel lesen bei http://www.monochrome.co.uk [...]
Pingback by Wenn Architekten wie Software-Entwickler arbeiten müssten - Mariusz Henke — Thursday, 20 August 2009 @ 3:21 pm
Brilliant!
Just brilliant. I laughed my head off. Too bad it’s pretty accurate.
Comment by Horia Dragomir — Friday, 21 August 2009 @ 8:23 am
Absolutely nailed it! Sometimes parody illustrates reality so clearly. As a software developer myself I can totally relate, swap “house” for “web site”, and “architect” for “software developer” and it’s exactly what it’s like sometimes.
Comment by MB — Friday, 21 August 2009 @ 8:46 am
true true…
Comment by Angela — Tuesday, 8 September 2009 @ 7:54 am
RE: Carpet.
I also find that the customer likes to talk carpet from the very start, even when the project is a swimming pool.
Comment by fogus — Tuesday, 8 September 2009 @ 4:20 pm
It gets read by designers, too! Painfully funny.
Comment by Rachel Nabors — Tuesday, 8 September 2009 @ 4:45 pm
lol - they got it right for the most part. Maybe i should send this to a couple of architect friends to see what they think from their point of view.
Comment by Luke — Tuesday, 8 September 2009 @ 4:47 pm
Epic
Comment by Bryan — Tuesday, 8 September 2009 @ 5:07 pm
If I knew this before I became a developer, I’d rather decided for something else!
I’d like to stay anonymous because I need my job nonetheless.
Comment by Inco Gnito — Tuesday, 8 September 2009 @ 5:14 pm
Fantastic…! Hope some architect reads this….
Comment by Prakash — Tuesday, 8 September 2009 @ 5:19 pm
[...] Monochrome Blog – If architects had to work like software developers Category: Web [...]
Pingback by Daily Digest for September 8th | piersonthe.net — Tuesday, 8 September 2009 @ 6:56 pm
Ugh. Rings close to home.
Comment by Sam Wilson — Tuesday, 8 September 2009 @ 7:12 pm
Unfortunately the grass isn’t greener on the other side of the fence. Architects often have to deal with this kind of stuff pretty much as you describe. Throw in the fact that on a big job the responsibility for the design and implementation is split across upwards of 50 different companies you’ve mostly never worked with before and who traditionally mistrust each other and often resort to litigation and you might even begin to feel sorry for architects…
Comment by Will — Tuesday, 8 September 2009 @ 7:36 pm
Funny stuff. However, as I’m sure you’re aware, in a well run s/w company most of this stuff would never reach the developer. That’s what BA’s and PM’s are for
Comment by Eyal — Tuesday, 8 September 2009 @ 8:04 pm
We used to do this to year one university students. Four days to complete a big project and change the requirements on days two and three. Nasty people.
Mind you, happened all the time where I used to work.
Comment by Steve in Hungary — Tuesday, 8 September 2009 @ 9:55 pm
so true
Comment by dazz — Tuesday, 8 September 2009 @ 10:28 pm
I hope to be a software developer once I get out of college and I have this to look forward to? This frightens me. :p
Comment by Jacroe — Tuesday, 8 September 2009 @ 11:29 pm
@ roppert
not if a client gets too far out of line and you send it to them to read…
Comment by William — Wednesday, 9 September 2009 @ 12:36 am
It has been read by testers as well! Great article and too accurate for real comfort.
Comment by Debbie (a tester) — Wednesday, 9 September 2009 @ 2:22 am
This article shows the stack of constraints a software engg has to work under. They are asked to be open and innovative in their thought process, but at the same time the clients chop off their wings and put them in a cage surrounded by their never ending demands.
GOD SAVE US!!
Comment by Sumit — Wednesday, 9 September 2009 @ 6:22 am
While this seems like the current state of affairs, I think we have no one to blame but ourselves. Developers need to have more backbone when dealing with clients; The software equivalent of a 75-foot swimming pool is going to cost a pretty penny and if the customer really wants it, they are going to have to pay for it. Making the customer pay a fair price also forces them to focus on just the features that they really want.
Developers also have to be willing to turn down unreasonable customers. These customers are never going to be happy and will make your life hell, no matter what you do.
Admittedly, the above is not always possible if there are bad sales people in between the developers and the customer.
Comment by whitewabbit — Wednesday, 9 September 2009 @ 6:58 am
It would be more funny if it was less accurate! I’d say at the moment it is a rather understated description of what software developers have to deal with every day
Comment by Dennis — Wednesday, 9 September 2009 @ 8:45 am
hehe… well the solution is simple. Charge them by the hour and explain to them why their 75 foot pool is going to take 1000 hours. That should give them something to think about. Also explain to them the consequences of hiring a 10$ and hour programmer (their pool will leak, create a sink hole and cause the earth to swallow up their house and the entire surrounding neighbourhood)
Comment by Kelly — Wednesday, 9 September 2009 @ 10:10 am
I am an architect in South Africa
It is uncanny how close some of the comments are to our profession. We are openly asked to do design work at “Risk”‘ and provide fee proposals often in competition with other architects, even when we or the client has no idea of his requirements or the size of the building. In order to design a building or give a fee proposal we have to know the requirements of the client, understand his orginization, make his orginization work, and definitely think of the colour of the carpet on day one!
Comment by Leon — Wednesday, 9 September 2009 @ 11:56 am
[...] Monochrome Blog – If architects had to work like software developers – [...]
Pingback by Bookmarks for September 8th through September 9th « LostFocus — Wednesday, 9 September 2009 @ 12:20 pm
good post !!!!
Comment by chandan — Wednesday, 9 September 2009 @ 12:56 pm
*nod*
Thankyou for this.
Comment by AngryAnt — Wednesday, 9 September 2009 @ 6:35 pm
[...] Monochrome Blog – If architects had to work like software developers [...]
Pingback by Daily Digest for September 9th | piersonthe.net — Wednesday, 9 September 2009 @ 6:53 pm
Excellent! You forgot to add… the customer wants this house built on the shifting desert sands. Or maybe in a swamp. Or perhaps in space.
Comment by Birdy — Wednesday, 9 September 2009 @ 7:54 pm
You left out this gem:
Halfway through the construction, the client wishes to ‘go back to the drawing board’ and create new blueprints that move walls around and raises the foundation - and maybe, once we’re “at that point”, add another story. When told this is expensive we’re admonished by being told our design is too inflexible.
Comment by Cogivore — Wednesday, 9 September 2009 @ 9:35 pm
What a great recruiting tool to show them new college grads.
I must have missed the part where the DOG had some input or was that wishful thinking?
Comment by JohnC — Thursday, 10 September 2009 @ 2:40 pm
Why even mention the developers here???? This is what architects, analysts and PMs have to do to make the big bucks they make. Not getting it…
Comment by g.s. — Thursday, 10 September 2009 @ 7:19 pm
You know the sad thing is this is pretty much how I explain things to my clients. They all nod their heads that they understand you can’t just start moving doors and windows at the 90% completion point without major repercussions.
Then when they come along and ask for all the doors to be moved and a few walls to be altered they act surprised when I tell them how much it will cost.
Comment by John — Thursday, 10 September 2009 @ 11:16 pm
Where I currently work it’s the PMs that start talking carpet to the client - even when the project is a swimming pool.
Comment by Gareth — Friday, 11 September 2009 @ 3:05 pm
[...] funny (and sad): If architects had to work like software developers I advise you to run up and look at my neighbor’s house he constructed last year. We like it a [...]
Pingback by refactr blog on software development, design, agile processes, and business Blog Archive » If architects had to work like software developers — Friday, 11 September 2009 @ 3:45 pm
Obviously the dynamic has to change… books have been written by Brooks, DeMarco, etc… but they’ve addressed the software side, not the customer/businessperson side, which is often where the randomness comes from…
We have to admit that:
1. Salespeople are terrified that the client will say “NO” at the last minute, or feel disrespected and act accordingly, so they are loathe to “upset the relationship” by not saying “yes” to random ideas from the client… they’re also loathe to “scare the programmers” so they tend to try to filter info… often leaving out certain details but emphasizing others, often based on the emotional appeal of those items to the client, not knowing the interrelatedness of those items to the invisible tentacles of infrastructure the programmer is building.. and why should we expect them to know that part?!?
2. Developers are terrified that assumptions are wrong, that we’re making a submarine when we really should be making an airplane, that we’re going down the wrong road entirely… We often are guilty of trying to make things seem simpler than they really are, because we fear that if we explain all the details we’ll get that blank stare and scare people who have budgetary authority, or somebody will just go and hire 10 more developers at the last minute (nobody reads Brooks anymore) or somebody will suddenly put things on hold and try to switch to a “buy not build” solution, then ask us to customize a car into an elephant by “just adding some legs and a trunk!”
So… rather than ranting, what’s a useful way of trying to fix this?!?
1. Try to be aware that emotional appeals from the clients often are a clue to a not-yet-articulated need that nobody’s paying attention to yet, but that might be the central insight that makes this thing work, if we miss it, we may have a last minute surprise….
2. Be aware that some people can previsualize much better than others, and that many people previsualize differently from the same specs….
3. Don’t let anyone take flexibility for granted, but try not to scare people into inflexibility either
4. Remember that for us, interrelated things are are daily life, for most people, they have no idea how dependant things are on each other… they think in terms of PEOPLE being interdependant, we think in terms of SOFTWARE dependencies…
Comment by vaxorcist — Friday, 11 September 2009 @ 4:27 pm
[...] is hard to get this across to clients, so I love this: If architects had to work like software developers. Dear Mr. [...]
Pingback by Closer To The Ideal » Blog Archive » Changing your mind is expensive — Friday, 11 September 2009 @ 9:31 pm
[...] If architects had to work like software developers Please don’t bother me with small details right now. Your job is to develop the overall plans for the house: get the big picture. At this time, for example, it is not appropriate to be choosing the color of the carpet. However, keep in mind that my wife likes blue. [...]
Pingback by almost effortless » Weekly Digest, 9-11-09 — Friday, 11 September 2009 @ 10:55 pm
Funnily enough architects do have to work like that!
Comment by Simon — Saturday, 12 September 2009 @ 4:03 pm
Its not a what if; Architects do have to work like software developers. This is how so many clients are. I am only sorry to read that other industries have to work like Architects.
Comment by rallenf — Saturday, 12 September 2009 @ 4:31 pm
Hahaha, gotta love clients.
You just missed the part where clients want their wooden hut turned into a “brand new” house using the same materials they have. Because, you know, all you’ll need is already there. Bricks? Don’t get fancy! This needs to be modern, but you totally can do it with wooden sticks.
Comment by Enrique Ramírez — Saturday, 12 September 2009 @ 4:58 pm
[...] http://blog.monochrome.co.uk/2009/02/if-architects-had-to-work-like-software-developers/ [...]
Pingback by Hey Clients! | Typocracy.net — Saturday, 12 September 2009 @ 4:59 pm
As a web site designer / coder, my life is reduced to those meetings, design by comitee, vast changes to the site structure at the very last moment, and input by the bosse’s nieces third removed uncle’s neighboor’s dog.
and people complain that i charge too much, then they go to a studio that charges them about 300 bucks for the whole site and complain its not working.
Comment by Rav — Saturday, 12 September 2009 @ 7:31 pm
This is why I switched from being a developer to being a PM and briefly a BA. This is exactly what PM’s do. They take the requirements and develop plans showing the stakeholders the conflict in requirements and what the outcome would be if you carpet the pool! It’s not until the high end requirements begin to get detailed that the developers are brought in, and no work begins (other than prototyping) until feasibility studies, requirement iterations, scope statement and WBS and other planning work is done (risk, quality, etc.) that actual work begins. And yes, there will be changes, that’s why you need a change management plan, process, etc. Sounds like your organization is missing a PM and you’re left to deal with your job and the PM’s job.
Since your organization will probably not be hiring a PM anytime soon, read up on PM methodologies, and agile/lean development, prototyping and once you become an expert in PM skills you’ll laugh at your own post.
Comment by pmp — Saturday, 12 September 2009 @ 11:26 pm
Wow thank you for this article! I have definitely experienced some of this at work. They didn’t give us a PM or at least one that understood our work.
And Thank You vaxorcist for your added input. That is really helpful. I got to check out the books you mention.
Comment by Michelle — Sunday, 13 September 2009 @ 3:04 pm
amazing article… Its reality for me. Thanks for making me laugh.
Comment by papo — Sunday, 13 September 2009 @ 4:28 pm
Brilliant!
Comment by Tomalak Geret'kal — Sunday, 13 September 2009 @ 8:46 pm
Although it feels good and is healthy to rant to get it out of your system, the reality is customers in any industry rarely know what they want -exactly-. And it’s a fantasy that will never be fulfilled. Why?
Customers aren’t experts in whatever it is you do… software, construction, interior design… FYI - that’s why they’re coming to you, because you’re the expert. But it’s their money at stake, so of course they have opinions.
I’ve got plenty of buddies in the construction industry (commercial and residential), and whether the customer is the city superintendent or a home owner they’re not 100% sure what they want or need, requirements do change, etc…. and they’re paying good money so they expect the job to be done right.
So those mediocre developers who wallow in frustration will have a mediocre career, but those who accept that dealing with ambiguity is the nature of business, are able to understand the customers perspective and are able to act as a guide, will be the ones that will flourish as they provide top notch value to the customer.
Comment by Tariq Ahmed — Tuesday, 15 September 2009 @ 5:08 pm