I think I'd actually prefer a pure domain expert who can express their business and ideas well than a half-assed programmer.
No offence, but what often ends up happening is you turn into a know-it-all client. "This should only take an hour. You just have to loop over these results and format them...".
Finding a technical co-founder is a sales process where you need to prove that it's a good idea and that you've made a significant investment yourself (I would prefer if it wasn't code) like thinking through the interface, and as many use cases / stories as you can think of, and describing in detail the problem(s) being solved.
The pitches we hate are the guys who know you through a friend who want you to make a Groupon-like application for their specific market, without having invested more than the 5 minutes it took to write it down while baked. I'm still not going to be sold on this idea even if they manage to throw together some terrible PHP site that sort of acts like a real application.
That being said, I'm in the boat that thinks at least some rudimentary programming skills would be useful for everyone.
> you need to prove that it's a good idea and that you've made a significant investment yourself ... like thinking through the interface, and as many use cases / stories as you can think of, and describing in detail the problem(s) being solved.
That sounds exactly like the skillset of a good software engineer. This whole debate is about the fact that a whole bunch of people don't know how to break down a large problem into small logical pieces.
"describing in detail the problem(s) being solved" is about the most concise and accurate description of programming I can think of. Asking someone non-technical to do this is like asking a ramen noodle-eater to describe in detail the process of flambéing Steak Diane.
I agree it's a good skill to have in many careers, software engineer included, but it is definitely not the definition of programmer. If you wanted to map this skill to a profession, I'd probably go with Business Analyst being the closest.
Breaking a problem down into solvable parts is something I was taught in math and it was invaluable. I'd written programs before and after that, so I wouldn't say that this technique makes you a programmer. Rather it's an approach you'll need to be a good programmer.
Asking someone non-technical to describe the problem they want to solve in detail is completely within the realm of reason. Non-technical != moron. Knowing how to do this, does not make you a programmer. Likewise, being a programmer doesn't make you good at this.
What about knowing enough coding to understand the amount of work that needs to be put in to transform an idea into reality? Also to be able to construct the interface is easier when you know some code. Those are some reasons why I'm investing time to learn programming.
I think the assumption that you will understand the amount of work needed for a given solution is part of the problem. Estimating a project accurately is NOT a skill you're going to pick up by learning a bit of programming.
As a programmer of many years, I still miss-calculate the amount of work required to solve a problem. It's something you get better at over time, but I totally sucked at it when I was starting out as a programmer. It's one of the hardest skills to attain IMO.
I think it's great that more people learn to code. I'm just saying it's not some magic faerie dust that solves all your problems. It's just another piece of the puzzle.
No offence, but what often ends up happening is you turn into a know-it-all client. "This should only take an hour. You just have to loop over these results and format them...".
Finding a technical co-founder is a sales process where you need to prove that it's a good idea and that you've made a significant investment yourself (I would prefer if it wasn't code) like thinking through the interface, and as many use cases / stories as you can think of, and describing in detail the problem(s) being solved.
The pitches we hate are the guys who know you through a friend who want you to make a Groupon-like application for their specific market, without having invested more than the 5 minutes it took to write it down while baked. I'm still not going to be sold on this idea even if they manage to throw together some terrible PHP site that sort of acts like a real application.
That being said, I'm in the boat that thinks at least some rudimentary programming skills would be useful for everyone.