Изучение языков программирования: с чего начать, какие навыки нужны