Some background first: I have been a freelance developer for the last 5 years and I am doing very well. So well actually that I have too much work that I can handle. I have decided then to take it to the next step and hire someone.
For my experience in my area of expertise, there are very few good developers and those are as overbooked as I am. There are a lot of people presenting themselves as "experts", but who produce very low quality code.
So I am thinking that it would be better to find someone who is willing to learn and that I could teach. This way I am sure he/she learns what I consider to be the right way of coding directly and I don't have to fight bad habits.
So the actual question I want to ask here is, what can I ask a non-technical candidate in order to determine if he would be a good developer
ask him problem-solving skills questions. What would he do if he realized he didn't know what a piece of existing code does? Does he enjoy being a problem solver?
Indeed, in my point of view, programming is essentially solving problems.
So I'd like to expand on this and get your ideas on what kind of questions can I ask someone who has no (or very little) programming knowledge in order to determine his/her problem-solving skills.