o notepad
Estou a brincar, embora ao longo dos anos já tenha feito muita coisa mais ligada a web em editores de texto.
Há muita discussão e variadas opiniões sobre quais as melhores linguagens para aprender a programar. Na faculdade poderás ter de início aprendizagem de algoritmia antes de passar à programação propriamente dita, programação essa que poderá ser em Java, C++, Scheme, etc. depende um bocado da instituição.
Em termos de linguagens eu tive programação no secundário e comecei por Pascal, depois passamos para C e depois acho que foi VB.net, já não me lembro. Na faculdade comecei com C++ salvo erro.
Na minha opinião, antes de começares a programar na prática deves procurar perceber alguns conceitos mais básicos/teóricos. Nada de muito aprofundado mas são coisas que te vão ajudar a conhecer e distinguir, por exemplo, uma linguagem de programação de um IDE (Integrated Development Environment - o tal "programa" a que te referes).
Lê sobre o que é um IDE, diferenças entre linguagens de programação orientadas e não orientadas a objectos e outros conceitos mais básicos de programação. Lê também sobre o que é a sintaxe de uma linguagem de programação (resumidamente cada linguagem escreve-se de uma maneira e essa forma de a escrever é a sua sintaxe).
Depois, em segundo lugar, deves aprender a fazer algoritmos em português/inglês estruturado.
Um algoritmo é basicamente toda a lógica do teu programa: o que é que faz, quando é que faz, como é que faz, etc. E ele ser em PT/EN estruturado é não ser feito em nenhuma linguagem específica, ou seja, não tens que conhecer a sintaxe de nenhuma linguagem.
Algo como isto:
Isto pede dois números ao utilizador e imprime a sua soma para o ecran. Mas não está feito em nenhuma linguagem de programação, é apenas o algoritmo feito em "texto". A partir do momento em que souberes estabelecer um algoritmo, transcrevê-lo para uma linguagem de programação é quase só uma questão de saberes a sintaxe dessa linguagem.
E depois podes tentar começar assim nuns sites tipo CodeAcademy ou Coursera em que tens exemplos e tutoriais e desafios para começar a programar em algumas linguagens
Isto tudo pode parecer muita coisa para assimilar. A tua vantagem é teres tempo para criar algumas bases que, não sendo obrigatórias, te irão ajudar.
Cumps
P.S.: pelo caminho até podes perceber que não gostas de programar. Com a massificação da tecnologia vejo muita gente que sabe mexer num computador e que, como o mercado de trabalho em IT se vai safando, acha que o seu futuro é por ali. Depois chegam ao curso e não gostam daquilo porque é muito diferente de saber trabalhar com word/excel ou saber formatar um PC e instalar o windows...