Боюсь. что мой ответ будет очень субъективным - я ведь смотрю со своей колокольни, и мой взгляд, бесспорно, сильно ограничен (я не очень интересуюсь областями, отличными от моей работы).
Начать надо с того, что ты упомянула программирование и веб-дизайн. Это две разные профессии. Веб-дизайнер создаёт интернет-сайты (некоторое программирование может присутствовать в его работе, а может и не присутствовать, ведь существут множество шаблонов сайтов - тут важней художественный вкус и умение работать с графикой). Программист-же пишет программы. Бегут эти программы на разных платформах - UNIX, Windows, Android, iOS и т.д. Программы создаются в том числе и для работы в веб-браузере - в этом случае речь идёт о веб-программировании. В моей области - области баз данных - это называется "web-client" - т.е. клиентская программа с графическим интерфейсом (окошки, менюшки, кнопки и т.д. - пример такого веб-клаента у тебя сейчас перед глазами - этот форум), с помощью которой пользователь взаимодействует с базой данных (где данные хранятся), к которой веб-клаент подключается через промежуточное звено - так называемый аппликейшен сервер, на котором зачастую программируется бизнес-логика. Не говоря ничего плохого о других областях программирования, хочу сказать, что базы данных это ходовая и перспективная область, с хорошим рынком труда если речь о современных средствах разработки.
Из технологий, с которыми мне приходилось иметь дело, укажу каркас .Net (язык програмирования C# - произносится "си-шарп") и Java (это название как самого языка, так и технологичской области - джавовских библиотек есть несколько). Именно между дот-нетом и джавой я бы сегодня и выбирал (и выбрал бы, пожалуй, Джаву). Хотя возможно, что на рынке появляется новый серьёзный игрок - HTML5.
Если твой сын выберет программирование под базы данных (веб или не веб - неважно), то знакомство с этим миром (кстати, очень интересным на мой взгляд!) ему следует начать с изучения языка SQL. Это язык не программирования, а запросов и манипулирования с базой данных (например, вставка, изменение, извлечение и удаление строк таблиц). Книжек по нему нагугливается море. Программирование под базы данных существует и на стороне базы данных, т.е. когда вызываемые процедуры выполняются внутри самой базы данных (а не на стороне аппликейшен-сервера, как, например, в случае дот-нета или Джавы и не на стороне клаента). В этой области на рынке царит два языка прогаммирования: PL/SQL (в базах данных Oracle) и T-SQL (в базах данных SQL Server и Sybase). Но знание этих языков зачастую требуется в дополнение к дот-нету, Джаве и т.п.
Какое бы направление твой сын бы ни выбрал, я советую получить по нему официальный сертификат вендора (т.е. фирмы - владельца продукта, например, это Microsoft для .Net и Oracle для Джавы). Сертификат не только увеличит шансы найти работу, но подготовка к нему сама по себе полезна для повышения уровня владения технологией.
Хотелось бы услышть и другие точки зрения - боюсь, я слишком окостенел, варясь в своей области программирования.