4 ms·
"How long is a piece of string? It's impossible to answer that question. But, if I had to guess... in my experience, the string is 19 inches long." This is the
by netcan 14y ago
"How long is a piece of string? It's impossible to answer that question. But, if I had to guess... in my experience, the string is 19 inches long."
This is the kind of thing a lot of consultants seem to post, including the anecdotes of clients going with the cheap guys and the project failing. At the end of the day, the OP's answer is no more convincing then the hypothetical "outsource to Pakistan for 1/10th the cost." I think it's a consequence of someone trying to "sell" to an inappropriate market. If you expect to pay $120 for a mattress, sitting you down and lecturing you on why you need a $1,200 mattress is unlikely to convince you. If you expect to pay $10 for a meal, a $100 restaurant will not be getting your business. This post is the chef hanging out with other chefs and restaurant people to have a chuckle at those lame tourists who expect to pay $10 for a meal. The problem is that you are dealing with people who don't go to restaurants. They're comparing eating out to things they do know about like buying food in a shop.
The reality is that pricing development is tricky. Getting an "app" developed if you know nothing about making software is tricky, even if you are willing to pay "well". A lot of projects fail. A lot of projects are not realistic to begin with. Cost, development time, quality, the definition of MVP, exactly how "bespoke" a project is, etc. all vary hugely. Quality is not always correlated to price. You can pay $60k for your MVP and have that die too. Developers will blame the clients and the clients will blame the developers.
- brudgers 14y agoAn experienced consultant - that is someone who is experienced in the technical area as well as experienced consulting in that area can fairly accurately estimate the amount of time a project will take. They can because they know how they work and know how to lead the process to match their workflow. I've been in architecture for more than twenty years. I estimate how much and what resources will be required all the time. Nobody has been developing iOS apps that long, of course, and the iOS app industry doesn't go back to the days of Vitruvius. Reading the article, I am reminded of stories about the early days of building websites.
- netcan 14y agoThe issue is that if you are dealing with an inexperienced client, the project you are quoting for and the project another consultant is quoting for is not the same project, especially if it's an "MVP". I like your comparison to website building during its early days. Gives us the benefit of hindsight. One consultant was going to take a html page from a previous project. Find and replace the client's colours in. Make 5 pages (home, about us, product catalogue..) and then wait 6 months for his client to fax over the "content." Another consultant was going to use coldfusion to make a dynamically updating copyright notice, & contact form and use templates to make the site "ecommerce ready". He was going to hire a copywriter to work with the client. And (as an optional extra), do CSS.
- deleted 14y ago[deleted]
- deleted 14y ago[deleted]
- robomartin 14y ago"I've been in architecture for more than twenty years. I estimate how much and what resources will be required all the time. Nobody has been developing iOS apps that long" I do not mean this as a personal attack or an insult aimed at you. Not at all. I've heard versions of this idea from others. This is a really naive view of software engineering. Recruiters are famous for firewall-ing good candidates because they think they don't qualify. The conversation goes something like this: R: How much iOS experience do you have C: Two years R: Oh, our client requires three years C: Sure, but I have 15 years of software development experience. Most of it doing OO work on various platforms. R: Well, sir, my client needs someone with three years experience in iOS, sorry. I've had highly qualified friends not get jobs because of such ignorance. Whenever I've worked with recruiters I have made sure they understood my instruction to not filter-out anyone due to rigid metrics on the targeted platform. A good software engineers is far more than the "bling-bling" they happen to know about today. I have been developing software and hardware for more than twenty years. iOS is just a new platform to work with. From the perspective of an experienced software engineer there really isn't anything particularly different, special or challenging about creating product for the platform. With such new landscapes it is down to learning the language and the API's and libraries available. Not a big deal. If you've been in this game long enough you've done that exact thing many times over. In the case of an experienced software engineer, the idea that "Nobody has been developing iOS apps that long" somehow correlates to not being able to estimate time and costs is nonsense. Yes, one can draw from past experience and have a reasonable idea. And, yes, if you've been around, you probably resort to applying some multiplier to your estimate because, well, you've been there and you've seen what happens. And, yes (number three), you have to have invested some time (three to six months, that's it) to get into the new platform. I've done quite a bit of building construction (tenant improvement and other major projects in commercial buildings). Estimating architectural projects can be far more accurate because in places like the US things are hugely standardized. Unless you are doing something way off the norm or run into snags everything is fairly well known and quantifiable. Foundation, framing, electrical, plumbing, low voltage wiring, A/C&Heating, drywall, stucco, paint, finish, install built-ins, flooring, etc. On the other hand, there are projects where you get hit with surprises that you could not have foreseen. I had the experience of doing a fairly large commercial TI project where we discovered that the soil had been contaminated with chemicals by the prior owner. It had to be removed properly and replaced with clean soil. Hundreds of truckloads of dirt were removed. This blew the budget right out to the moon. Software is different in that, save language structures (if, for, while, switch, etc.) and patterns, everything can be different from project to project. And, of course, the other problem is that naive clients can inject features and functionality into a project that can easily double the amount of work required to complete it. Not to mention the lack of specs altogether. It's like hiring an architect, pointing to a house down the street and saying "build me a house like that". Then, of course, no input or solid specs exist for anything inside or outside the house. This would be costly. Or, even better, a client asking to build a house raised off the ground and supported by a single column, completely solar and wind powered. The client also does not want the solar panels to be visible from the ground or the wind generator's noise to be heard. The client also wants the house to rotate so that a room of his choosing faces the sunrise every day. They he scoffs at you for suggesting that this is going to cost more than doing a typical home design of average American specs. Oh, yes, he is happy to point out that he can hire an architect in Pakistan who will do the design for 1/10 of what it costs of doing a typical house design in the US.
- frogpelt 14y agoIn life in general, you don't have to compromise as much as you think you do in most negotiations. Sometimes you just have to keep searching until you find the right person to negotiate with. Consultants are empowered by having to redo another's work and sometimes they are convinced that their answer is the right answer for everyone and every project. Maybe it's not.
- FredFredrickson 14y agoIn my experience, as a graphic designer, who has seen my type of work be outsourced (right in front of me) to some cheapo place overseas, I think it's best to just shut up and let the client do it. Most of the time, they will get something back that is awful, and if they actually have an eye for quality, it'll make them better appreciate the work you do. You might even get some more work from them after they've satisfied their fantasies of cheap labor. If they don't have an eye for quality, and they go with the garbage the outsource comes up with, then you probably didn't want them as a client in the first place.
- ChuckMcM 14y agoThis is a great policy. Sometimes a follow up at just the right time can really help too. Always be respectful, after all it's the client's choice, and be understanding that they are going to feel a bit embarrassed when the first results come back from the cheap place. Have a supporting story that lets them save face "I can see you're really a cost conscious guy, that usually correlates with a good sense of value too, while my stuff is a bit more expensive let me share with you what we do to make sure you will be satisfied ..."
- adriand 14y agoThe problem is that these clients have a particular budget. Perhaps they have $15,000 to spend. I tell them it's going to be $18,000. Someone else tells them they can do it for $7,000. They go off and spend $7,000, then come to me because it wasn't done properly and say, "Unfortunately, it really didn't work out with these other guys - can you please, please help me out?" Now the problem is that they only have $8,000. Where before I might have been able to cut scope a bit to get down to $15,000; or perhaps they could have scrounged up another $3,000, they are now completely out of luck. And it sucks to see this happen to people. On the other hand, sometimes people who charge less do a great job. As much as I'm not the cheapest person around, I'm also not nearly the most expensive, and I still do good work. To someone at the high-end, perhaps I'm one of those low-cost, risky alternatives, although I don't see it that way. The problem for the average client, though, is they generally lack the experience and understanding they need to properly evaluate all of their options.