А уточните пожалуйста, ЧТО ИМЕННО собираемся программировать.
Создавать сайт, писать программу для микроконтроллера стиральной машины или уличного светофора,
разрабатывать ПО для промышленного контроллера, обслуживающего линию по розливу парного молока или сборки зажигалок ?
Может интересует разработка программного обеспечения для смартфона на базе Simbian или Android ?
Может есть непреодолимое желание создать что нибудь для яблочный девайсов - это сейчас модно.
А может нужно разрабатывать крупную, или не очень, базу данных (Oracle, MS SQL, Access...)
Или банально - приложения для Windows ?
Вы уж определитесь сначала с направлением в программировании, а потом конкретно спрашивайте.
А азам прекрасно учат в школе на уроках информатики. Если конечно их не пропускать...