I have a person on staff who has been doing a lot of admin type work: support, billing, etc. I am thinking that I will want another programmer (PHP/MYSQL/etc) in the next 6-12 months for some new projects we are working on. This guy is competent generally, but has not experience with programming. I am considering sending him to some kind of online coding school and turn my current employee into a programmer.
I think a junior level programmer is probably okay and it seems attractive to train this person, especially as we are a bit slow through the summer and he will have some slack time that I could use to train him.
Is this reasonable? Or should I only look to people who have experience in programming?
Programming is an art and a science. If the guy is a fast learner and an analytical person who can think out of the box, I wouldn't know why he can't become one.
He must enjoy it, be willing to learn, and be persistent enough. You don't become a programmer overnight!
It is reasonable that someone could get the basics from one of the code schools, but nothing speaks better than actually writing code and shipping things and for that, you need time in front of a keyboard. Years ago about needing time to get all the bad code out of the way.. to get to the point of writing good code: http://www.ericsink.com/bos/Hazards_of_Hiring.html Without significant effort on their front, it's unlikely you'll have someone with more than a cursory understanding of the basics. That doesn't mean they can't contribute or be helpful to the team.. but it means that they're going to need supervision and mentorship.
But if they don't have some sort of aptitude and desire for learning programming, it will be more effort than it's worth.
I am not sure this question can be answered as it totally depends on the individual being trained and the trainer in many respects too - I guess, in theory, you can train anyone to do anything but will they ever be "good" or will it ever justify the time and effort to train them? Who knows? It all comes down to the individuals involved.