> Пройду бесплатные курсы которые найду в интернете и научусь программированию.
Не научишься. Курсы не заменяют профессионального образования, а в вузе программистов учат не программированию, а другим вещам, которые необходимо знать, чтобы быть программистом. Из профильного выпуска вуза с потока полусотни человек в программирование идёт менее десятка. Остальные менеджерами, сисадминами, просто ит-шниками и др.
Сможешь найти место, где-нить в веб-разработке или подобном, где действительно не требуется профессиональная подготовка и может работать любой школьник, формально будешь числится программистом или разработчиком каким-нибудь, по деньгам может даже и больше будешь зарабатывать, чем многие проф. программисты, если подсуетишься
У компаний нет законов, чтобы не брать без корочки. Есть собеседование с тестовыми заданиями. Если их пройдешь, то welcome. Кроме того, если человек является автором какой-то крутой программы, то также, почему бы такого не взять...
Без диплома и опыта филансить только или неофициально работать.
По закону у программиста должен быть официальный документ, подтверждающий образование по специальности. Но не говорится, что это должен быть именно диплом. Без опыта только кодером. Через годик джуниором.