Программировать можно решения самых разных задач, где-то нужно иметь и высшее образование. Например, чтобы применять факторных анализ или решать системы дифференциальных уравнений методом Рунге-Кутта, нужно знать что это и как это. Без образования можно решать задачи, суть которых можно объяснить простым житейским языком без специальных знаний.