…ou melhor de volta à faculdade, o Instituto de Tecnologia de Dublin!
Acontece que Bryan Duggan, professor na disciplina de Programação Orientada a Objeto, resolveu analisar o algoritmo de um programa em MSX-BASIC (com direito a emulador na sala de aula) originalmente publicado em 1987 na MSX Computer Magazine em uma atividade de C# em sala de aula.
Muito legal a aula dele. Todos os professores de tecnologia deveriam seguir o exemplo: quer começar a programar, tem que começar pelo BASIC, o resto é lógica.
Sergio, permita-me discordar de você.
Falando como professor, honesta e pedagogicamente, “começar pelo BASIC e o resto é lógica” não dá certo. E não adianta dizermos que “comigo deu certo”, porque dentro da amostragem estatística, nós que nos reunimos aqui, em torno do Retrocomputaria são “pontos fora da curva”. E não podemos tomar exceções como regras.
Eu vejo que aulas de Lógica Aplicada ajudam, pseudo-código facilita, uma linguagem de programação que seja fácil melhora (Pascal ainda é uma ótima porta de entrada). Mas requer também um certo talento para isso, coisa que a maioria não tem. E isso é natural do ser humano, tem jeito não. Conheci inúmeros alunos que formaram-se em faculdades de sistemas de informação e fugiam de programação como o diabo corre da Cruz, e eram péssimos programadores. Em compensação, um dos melhores programadores C que eu conheci, só se formou na faculdade porque foi obrigado a concluir o curso.
Acho que a gente “deu certo” programando porque a gente não tinha o que nos dispersar, os requisitos eram mínimos (nada de gigabytes e gigahertz, apenas kbytes e megahertz) e principalmente, porque nós temos esse especial apreço. Quantos conhecemos que usaram micros de 8 bits como nós, e hoje não querem nem saber. Meu irmão é um exemplo, o negócio dele é motor, máquina, petróleo, essas coisas. Em computação, ele é um usuário, apenas.
Então, para alguns dos que aprendem a programar, a coisa sai bem mais fácil, não precisa “disso tudo”. Mas “o resto da massa”… Tá lascado!
Mas venhamos e convenhamos: povo que corre de programação em curso de computação, ou não tem tino para desenvolver programas, não deixa de ser um usuário forçando a barra na área errada? Tiro isso de exemplo das turmas de Ciência da Computação que se formaram comigo, dos 168 alunos que entraram neste curso, somente 20 se formaram e destes, somente 2 estão na área de desenvolvimento de sistemas (o teimoso aqui inclusive). Sim, tem o pessoal que virou DBA, gerenciadores de projeto, gerentes de área, etc. Na época que estava fazendo faculdade, não se existia os cursos especializados mas nos tempos atuais, você pode focar o que mais lhe interessa. Sendo assim, o cara que insiste em um curso que envolva desenvolvimento e este só quer saber de outra área, está nadando contra a maré.
Vamos la.
não existe uma resposta certa. vc pode oferecer Basic e X pessoas vão gostar. pode oferecer C ou Portugol ou Haskell e Y pessoas vão gostar. gostar não significa que elas vão aprender, etc. é complexo.
so que uma universidade não pode ficar em cima do muro: ela tem que tomar decisões. os curriculos se adaptam aos novos tempos, etc. e vc quer maximizar o numero de profissionais aptos no mercado ano-apos-ano, como uma industria.
o ponto é que para ser programador vc não precisa de diploma. alguns lugares padem, alguns concursos publicos vão exigir, mas vc tem ainda um bom numero de lugares onde não importa se vc é oncologista, phd ou só alguem curioso com informatica se vc “sentar e trabalhar”. é claro q não é tão simples, as vezes vai aparecer um carinha com curriculo cheio de estrelas e vai ganhar muito mais que o cara que trabalha de verdade. É um assunto espinhoso e complexo.
felizmente a nossa area tem muito espaço para o cara ser autodidata. eu fui ter contato com computação muito tarde, pq era pobre, mas hoje eu me sinto seguro para fazer determinadas tarefas. não me peça para trabalhar no kernel Linux ou com Cobol, o resto a gente “dá um jeito”.
eu acho que Basic teve muitas vantagens, mas hoje em dia talvez seja mais produtivo abortar Lua. o ideal era ter tudo isso disponivel e a pessoa iria seguir o que quer – “afinal conhecimento não pena nem ocupa espaço” como diz o ditado popular.
quando me perguntavam que linguagem aprender na faculdade eu dizia “inglês”, pq vc tem acesso aos originais, as ultimas discussões, aos textos classicos sem erros de tradução, etc. quando vc pensa nos termos de if/ while/ break/ print … o codigo apresenta menos ruído com a realidade.
eu tenho um colega no trabalho que é excelente, mas ele insiste em umas micro-otimizações que não trazem vantagem – e ainda dificultam o codigo, dificulta testes, etc – quando a aplicação tem gargalo em outro lugar (I/O no caso). nesse caso não é questão de formação, ou de Basic, ou de Ciência da Computação, e sim de experiência ( pq a mesma ajuda a entender como trabalhar em grupos, etc ).
meus dois centavos
Aí é que está a diferença entre grandes empresas e empresas de “fundo-de-quintal”; programadores e “programadores”. Infelizmente o mercado está cheio de gente picareta que só quer ganhar dinheiro com programas ruins, ninguém mais cria programas que tenham a alma do programador de verdade, pois criar programas é uma arte. No tempos atuais, programas são vomitados.