Необязательно, но очень полезно. Программирование хорошо развивает логическое мышление, умение строить алгоритмы, видеть причинно-следственные связи, ставить перед собой задачи и искать для них решение.
Сейчас дети активнее изучают программирование еще в школе. Думаю, в будущем этот навык станет одним из базовых. И конечно, это хороший задел на будущее: если ребенок заинтересуется, то сможет продолжить и углубить свои знания, стать разработчиком. В детстве мы отдаем детей во множество разных кружков, просто чтобы они могли попробовать и понять, какое занятие больше по душе. Так же можно поступить и с программированием: пойти на занятия, а если не понравится — перейти к чему-то другому.
Начать можно в любом возрасте!
В 5-6 лет это могут быть самые простые визуальные среды вроде Scratch Junior. Для него даже не нужно уметь читать, потому что программы создаются путем соединения «кирпичиков» с картинками.
В 7-8 лет можно перейти к более взрослой альтернативе — Scratch. Здесь больше команд, больше возможностей создавать классные проекты, строить большие ветви из блоков.
А уже в 10-12 лет и старше можно взять за текстовое программирование: Python, JavaScript, PHP и др.
Начните с бесплатных материалов, которые есть в общем доступе, так будет проще разобраться, что ребенку больше нравится.