Что делает программиста программистом?
В вашем списке нет самого главного. Можно всё перечисленное знать, но не быть программистом.Программиста делают программистом написанные им программы!
Все делает программапрограммиста программирует программа
Самообучение это самопрограммирование