Amor e fogo que arde sem se ver;E ferida que doi e nao se sente;E um contentamento descontente;E dor que desatina sem doer.E um nao querer mais que bem querer;E um andar solitario entre a gente;E nunca contentar-se de contente;E um cuidar que se ganha em se perder.E querer estar preso por vontadeE servir a quem vence o vencedor,E ter com quem nos mata lealdade.Mas como causar pode seu favorNos coracoes humanos amizade;Se tao contrario a si e o mesmo amor?(Luis de Camoes) fonte: http://www.hardware.com.br/dicas/iniciando-mundo-programacao.htmlTodas as pessoas que estao dando os primeiros passos no mundo da programacao se deparam com uma questao fundamental: Qual linguagem de programacao aprender primeiro ? Este pequeno texto tenta de alguma forma dar uma resposta para esta pergunta.Antes de mais nada, lembre que esta e apenas a minha opiniao e muitos provavelmente nao concordam com meu ponto de vista, mas pelo menos acredito que possa servir como um ponto de partida.Mesmo que voce ja saiba programar, este texto pode esclarecer alguns conceitos muito importantes, mas lembre-se que ele foi criado para pessoas que estao comecando a escrever suas primeiras linhas de codigo. Eu nao vou ensinar a programar nada aqui, apenas tentarei tracar alguns caminhos para que voce possa iniciar sua jornada da forma mais tranquila e produtiva possivel.Antes de mais nada, vamos ao basico:Para se criar um programa para computador, voce precisa de uma linguagem de programacao e um compilador ou interpretador ou maquina virtual.Definicoes e diferencas entre Compilador, Interpretador e Maquina Virtual:Um compilador e um tradutor capaz de traduzir um texto escrito por um programador (codigo fonte) em um codigo binario de uma determinada arquitetura de processadores. Este codigo gerado e incompreensivel para o ser humano, mas pode ser lido e executado pelos computadores.O ciclo de desenvolvimento entao se estabelece da seguinte forma: o programador escreve um texto seguindo as normas e regras estabelecidas pela linguagem de programacao. Em seguida, o programador executa o compilador, que verifica se este texto escrito pelo programador nao contem nenhum erro e o traduz para uma sequencia de zeros e uns (codigo binario), que o computador (Sistema Operacional) e capaz de entender. Depois disso, basta que o usuario execute o programa final gerado para ver o resultado. Resumindo, o processo seria:1- Programador escreve o codigo fonte e executa o compilador2- Compilador procura por erros de gramatica e de semantica e gera um arquivo executavel (binario).3- Programador executa o codigo binario e o testa.4- Os 3 passos anteriores sao refeitos ate que o programa esteja completo.5- Usuario final executa o codigo binario gerado pelo compilador (no Windows, os conhecidos arquivos com a extensao EXE).Um interpretador difere dos compiladores pelo fato de nenhum codigo binario ser criado. O programador escreve o codigo fonte e este pode ser executado diretamente atraves de um interpretador. O interpretador ira ler o codigo fonte procurando por eventuais erros, e ao mesmo tempo, ja o executa e mostra para o usuario o resultado. Desta forma, com a utilizacao de interpretadores ao inves de compiladores, o ciclo de desenvolvimento se torna mais simples:1- Programador escreve o codigo