Bem, não desfazendo as outras opiniões, acho que esta merece um destaque em particular.
Ponto 1 - Aprender programação ? Por onde começar ?
Aprender é aprender ou seja, começar por uma linguagem mais fácil e depois passar para uma difícil ou vice-versa, desde que se aprenda, pouco importa.
Para mim e provavelmente para muitos será melhor começar pelo mais fácil, para não ser desmotivante, agora se for numa escola ou numa universidade em que não se coloca opção, isto é "Tens de aprender para passar à cadeira" aí faz sentido começar por algo mais difícil, pois não é uma questão de opção é como funcionam as coisas num ambiente académico de exigência.
Ser mais fácil nem sempre é sinónimo de motivante. Eu por exemplo agarro-me mais a trabalhos
INTERESSANTES e que dão trabalho do que a trabalhos simples, mesmo que sejam interessantes.
É certo que ninguém vai dar o projecto de uma cidade a um estudante de arquitectura de primeiro ano, convém não dar passos largos demais para as pernas que se tem.
Quando dizem que muitos "putos" não sabem isto, não sabem aquilo, provavelmente não sabem porque não precisam! e acho bem que não saibam!
Como já alguns referiram anteriormente, hoje em dia o
conhecimento já nem é colocado em causa, mas sim se os problemas conseguem ser resolvidos. Infelizmente muitas empresas estão-se a lixar se um problema é resolvido de forma ineficaz ou se demora mais tempo do que outra forma. Interessa mais que funcione. Existem muitas ferramentas que poupam um programador de informação particularizada demais.
Ponto 2 -A minha visão da programação
Fase 1 - Programação era conhecer a sintaxe de uma linguagem e pensar em como estruturar um programa para resolver um determinado problema.
Fase 2 - Programação era saber a Fase 1 + propriedades + métodos de algo a que se podia mudar a côr, o texto ....
Fase 3 - Programação era saber a Fase 1 + Fase 2 + conhecer os "Objectos" a utilizar e/ou criá-los se necessário. tudo isto acarreta um novo paradigma (POO).
Fase 4 - Programação era saber a Fase 1 + Fase 2 + Fase 3 + utilizar a linguagem mais apropriada para cada tipo de problema, na web umas, em inteligência artificial outras, em .... outras, etc.
Não me leves a mal, mas isto é claramente as fases para quem segue a via mais especificada para o webdevelopment. Falo isto principalmente por referires o ponto 2. A parte gráfica é a parte que não influência muito, colocar isso à frente de POO é quase como dizer que visual é mais importante que POO, e
NA MINHA OPINIÃO é exactamente ao contrário.
Ora bem estamos a caminhar para a ESPECIALIZAÇÃO isso não quer dizer que morra alguém, mas pode querer dizer que os equilíbrios mudem...
Isso também é verdade, cada vez mais se vêm procuras de emprego mais focadas para algumas áreas. Não pedem apenas engenheiros informáticos, pedem engenheiros informáticos com capacidades em tal área.
No futuro, pensem na programação como nos idiomas, ou seja hoje em dia muitos de vocês sabem algo de C/C++, JAVA, VB.net, C#, Pascal, PHP, ... mas no futuro não irão conseguir fazer isso,. irão dominar cada vez menos linguagens devido à expansão de propriedades e métodos para conhecer.
Também ando a ficar um pouco com essa ideia, apesar de continuar a achar que a Algoritmia é a essência da programação, o resto são detalhes (sintaxe e semântica).
Enfim cada vez há mais para aprender e o tamanho do cérebro é sempre o mesmo...
Agora podia entrar por outra área
Mas isso seria offtopic demais
O que é certo é que a programação é a área da informática que exige mais conhecimento. Um programador tem de conhecer a linguagem e
DOMINAR o problema em questão..., imaginem que faz aplicações para fins medicinais....
abraços, HecKel