Vitaliy wrote: > We could have spent weeks agonizing over the details, but we chose not > to You are grossly overstating what a reasonable amount of up front planning would have cost. > -- because our time is limited, and engineering makes money only > when it creates value for the customer. Of course, but engineering the wrong thing doesn't make money at all. Everything is a tradeoff, but some amount of effort is worth spending to make sure you are designing the right thing in the right way. > Most customers don't expect to > see a Bluetooth module in an ECU Sim, they are interested in its > primary functions (read the knobs, simulate OBD messages). But we saw > that adding Bluetooth would essentially be free, so we dropped it in. My point is that this should have been clear from the start and you could therefore have made the decision at the start. > Then we saw that multiplexing the plug-in modules would be a piece of > cake, so we added two more PIM sockets, and the switch and an LED tower > to go with them. UART over USB sounded like a no brainer, so it ended > up on the main board as well. These are all things that should have been apparent up front. Perhaps I misunderstand, but it sounds like you bumped into these realizations partway thru the design. If so you got lucky. It could have worked out the other way too. > We kept making changes to the design, adding improvements here and > there, long after the first release. Design changes and multiple versions cost money. From the description here alone it's not obvious whether your approach was the most efficient at arriving at the desired outcome. I'm sure you think it is, but I'm also not sure you are clearly imagining the alternative possibilities. > I don't subscribe to the notion that experience can be measured in > years. I've worked with enough different people to know that some > programmers are still idiots at 60 (no matter what their resume or > references say to the contrary). There are plenty of examples where > great projects were led by young people. And, of course, vice versa. Experience by definition takes time. You are confusing experience with ability. Not all abilities require experience, and experience is no guarantee of ability. However, experience seems to be necessary for certain abilities. It is my obervation that being a good architect is one of those things that requires experience. >> Perhaps, but all too many don't understand development of any kind, and >> don't want to. That's why they hire out the project to someone that >> can magically make it all happen for them. > > Customers want their project to succeed. Educating them about ways that > help the project succeed, sounds like a worthwhile endeavor. You clearly haven't tried to do projects for a lot of different customers. Selling the result of your projects to customers is very different from doing projects directly for customers. ******************************************************************** Embed Inc, Littleton Massachusetts, http://www.embedinc.com/products (978) 742-9014. Gold level PIC consultants since 2000. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist