Qual deve ser a primeira linguagem de programação para aprender?

No Lifehacker, apareceu uma pergunta: “Qual a melhor primeira linguagem de programação para aprender?”

Java é a melhor primeira linguagem para aprender? Alguém possui outra sugestão?

eu gostei de começa aprendendo por java… mas já vi varias pessoas dizendo que Delphi é bem mais fácil pra começar.

É que, eu acho que as linguagens podem ser divididas em dois grupos, as estruturadas e as orientada a objetos.

A primeira linguagem que eu aprendi, que era estruturada, foi Pascal.
Depois, com orientação a objetos, aprendi Java, mas os meus conceitos de programação estruturada sempre faziam com que não seguisse a risca os conceitos de orientação a objeto.

Hoje, como profissional em Java, eu penso que o melhor é aprender logo de cara Orientação a Objetos.

Pascal foi feita com o intuito mesmo de ser de fácil aprendizado… assim como Basic… Eu comecei com java e acho que difícil mesmo é aprender lógica e OO… linguagem qualquer manual sabe :smiley:

Eu recomendaria Java por um motivo bem simples: as mensagens de erros reportados pelo javac são claras. Muito mais que o compilador gcc ou o interpretador ruby.

Eu comecei por Pascal, acho que foi uma excelente escolha do meu professor.

Eu comecei com uma estruturada, C . Achei fácil, parecida com algoritmo, era fácil de fazer a conversão da lógica para a linguagem.

Para Orientação a Objetos… o mais difícil é A Orientação a Objetos em si, não a linguagem.

Eu continuo acreditando que é melhor começar por linguagens estruturadas simples, como Basic (que foi a minha) ou Pascal. Assim o aprendizado da “programação” em si fica separado do aprendizado de coisas mais específicas de determinadas tecnologias/linguagens (por exemplo, OO ou manipulação de memória e ponteiros).

Também não concordo que seja necessário começar com OO para aprender “do jeito certo” (se é que isso existe), afinal esse é apenas um outro paradigma que pode ser aprendido depois de se passar pelo básico. Como disse antes, melhor aprender primeiro a programar, depois amplie seus horizontes conforme a área que pretende seguir.

Eu comecei com Basic, ainda criança, realmente uma liguagem muito fácil e simples. Óbvio, que para fazer qualquer coisa séria ela se torna um monstro, mas para começar a entender como funciona uma linguagem de programação, é excelente.

Depois fui para o Visual Basic (com 12 anos de idade), é legal para você fazer programinhas simples e se empolgar na arte de programar. Mas quando o negócio fica grande, é um inferno.

Depois aprendi FoxPro, Pascal, C, Delphi, C++, Java, Javascript, brainfuck…

Na minha opinião Java não é uma boa linguagem para começar. É uma linguagem difícil com regras muito complexas. Para pessoas que nem sabem direito o que é uma variável, há um abismo gigantesco a ser transposto até se tornar um programador com um mínimo de fluência.

Mas, java como uma segunda linguagem é excelente. Afinal, a melhor forma de saber o porque de java ter tantas regras complexas é já ter vivido em um mundo muito pior onde elas simplesmente não existiam.

Seguramente começaria por algo orientado a objetos. Mas, leonardo, quanto às mensagens de erro, acho que você está errado em relação ao ruby. Até porque as mensagens de ambos (java e ruby) são extremamente simples de verificar, com a vantagem para o ruby que você testa mais rápido (só dar um reload no console se precisar).

De qualquer forma, seja por onde começar, o importante é não se prender a nenhuma. Aprenda uma linguagem todo ano para comparar forças e fraquezas de cada uma.

Acho o aprendizado deve ser um processo gradativo, do facil e simples para o dificil e complexo. Para quem está começando, aprender portugol, pascal, C, e outras linguagens estruturadas facilitam a abstração que a meu ver é essencial para um bom trabalho com O.O e Java. Eu aprendi a programar com pascal, e quando comecei a trabalhar com Java e OO eu achei tudo muito fácil.

Comecei com C… porém, depois de muito pseudo-codigo, algoritmos, fluxogramas, estruturas de dados na mao, etc…

se nao tiver logica… nao aprende nem pascal! alias nem o velho portugol o cara nao consegue desenvolver nada… entao essa questao de “qual deve ser” é meu abstract…

Com uma boa logica aprende qualquer uma… sem problemas nenhum…

Olá pessoal,

Eu entendo que a maioria das pessoas acredita que o importante não é a linguagem, mas aprender lógica de programação.

No entanto, a maior parte dessas pessoas passou pela faculdade, tiveram cursos de lógica de programação, algoritmos, etc.

E para quem não foi (e nem vai) para uma faculdade, etc? Ele vai ficar aprendendo lógica de programação sem utilizar linguagem nenhuma?

Eu acredito que ter que aprender lógica não desmerece a pergunta de ter uma primeira linguagem para aprender.

Acho que os melhores argumentos agora são para o aprendizado de pascal e basic, não?

Seguramente começaria por algo orientado a objetos. Mas, leonardo, quanto às mensagens de erro, acho que você está errado em relação ao ruby. Até porque as mensagens de ambos (java e ruby) são extremamente simples de verificar, com a vantagem para o ruby que você testa mais rápido (só dar um reload no console se precisar).

De qualquer forma, seja por onde começar, o importante é não se prender a nenhuma. Aprenda uma linguagem todo ano para comparar forças e fraquezas de cada uma.[/quote]

Pensando bem, se o iniciante usar o irb, até que vai ser fácil pra ele.

O problema do interpretador ruby é a qualidade das mensagens apresentadas. Acho que pra quem já tem conhecimento não vai haver problema nenhum, mas pra quem tá no zero, uma mensagem que não explica bem pode ser um problema.

[quote=mtoledo]Olá pessoal,

Eu entendo que a maioria das pessoas acredita que o importante não é a linguagem, mas aprender lógica de programação.

No entanto, a maior parte dessas pessoas passou pela faculdade, tiveram cursos de lógica de programação, algoritmos, etc.

E para quem não foi (e nem vai) para uma faculdade, etc? Ele vai ficar aprendendo lógica de programação sem utilizar linguagem nenhuma?

Eu acredito que ter que aprender lógica não desmerece a pergunta de ter uma primeira linguagem para aprender.

Acho que os melhores argumentos agora são para o aprendizado de pascal e basic, não?[/quote]

E precisa ir para faculdade para aprender logica? ou melhor logica de programacao? Cada pessoa ja nasce com a logica… porem a faculdade apenas desperta ela de seg à sabado(ou sexta) mais para logica de programacao nao precisa ir para faculdade nao… o processo de desenvolver a logica pode ser feito no dia-dia e vc pode fazer tb somente um curso tecnico de logica de programacao com umas 60h para facilitar… ou comprar bons livros com exercicios nada mais… e outra… jogar RPG por exemplo vc aprende logica… ate pq nem dar para evoluir em determinados jogos sem logica… o importante que eu e outros falaram isso… é pq nao podemos ter “apego” a linguagem em si…

C. Aprenda como funciona, depois, se preciso, passe pra uma linguagem mais abstrata.

Eu diria que a maneira menos trabalhosa de ser um proramador de verdade rapidamente é ler o SCIP, e por consequência seria Scheme. É claro que’programador de verdade’ neste contexto é algo que quase ninguém precisa ser no mundo atual.

Aos 16 anos eu aprendia mIRC Scripting, isso justiica algo que “o que você obtem resultado rapido de forma gratificante, que se torne divertido de aprender” é a mais recomendada. o mIRC no Brasil faliu… eu recomendaria, javascript, pois seu ‘‘compilador’’ é seu browser (resultado rapido)

C++.

Orientada a objetos, com diversos recursos, grande encapsulamento, otimas abordagens, didática, consolidada.

Não começar com C, pq vc pega vícios. Comecei com C++ e me senti abençoado, OO grudou na mente e ficou tão natural como programar.

De C++ vc pega qualquer linguagem de forma bem rápida. Java foi mto ezy, entender algumas peculariedades e basicamente não se perder no inferno de siglas, letrinhas e framorks, 1.000.000+ desses que fazem a mesma coisa.

Hoje, trabalho com Java, Delphi, C# e PHP. C++ só em projetos pessoais, o mercado não é muito bom para ela.