Re: [PSL-Brasil] Excelente artigo que to ca, meio de raspão, SL e inclusão digital

2006-09-16 Por tôpico Antonio Fonseca
Ensinar programação não siginifica exatamente ensinar a programar em alguma linguagem específica ou a solucionar apenas certos tipos de problemas.Uma das melhores coisas se já li sobre a arte da programação foi uma analogia entre o desenvolvedor e um músico. 
Não há músico que começe escrevendo grandes sinfonias, ao contrário disso, o processo de aprendizado começa com domínio da teoria musical e manipulação de algum instrumento. Depois de algum tempo ouvindo e lendo o trabalho de outros músicos e depois de muito treino, só então, o "jovem" músico se aventura na criaçao de suas próprias composições. E serão poucos aqueles capazes produzir peças realmente originais, menor ainda será o número daqueles capazes de compor sinfonias completas.
Mas voltando ao mundo da programação de computadores vou citar um exemplo que eu acho, ilustrará razoavelmente bem o paradigma moderno de desenvolvimento de software.Vamos escolher para esse exemplo o desenvolvimento de software para o sistema operacional da Apple, o MacOS X. 
Trata-se de uma plataforma moderna, madura e de alta qualidade. Para ela o desenvolvedor contará com pelo menos quatro frameworks de trabalho principais à sua escolha: Java, BSD, Carbon e Cocoa.
Naturalmente ele escolherá um destes conforme sua familiaridade com alguma ligaguem de programação, natureza do problema a ser resolvido ou outra necessidade específica qualquer. Assim sendo, geralmente optará pelo Java se buscar maior portabilidade de sua aplicação, utilizará C/C++ caso deseje programar diretamente para o framework BSD (recursos internos do SO), utilizará Carbon para o desenvolvimento e manutenção de aplicações legadas (MacOS 9) e Cocoa para criar modernas aplicações nativas para o OS X. 
Especificamente para Carbon e Cocoa a liguagem de escolha ficará muito mais a critério do gosto pessoal do desenvolvedor do que qualquer outro fator. Algo semelhante pode-se dizer também ocorre como o desenvolvimento para Linux.
É claro que para aplicações onde a performance é crucial, como rotinas internas de um sistema operacional ou aplicações em tempo real, o uso de linguagens como C e Assembly fazem mais sentido. Para todos os outros casos geralmente não faz diferença.
Podemos concluir então que ensinar programação com uma linguagem simples, moderna e legível como Python só trará benefícios os jovens desenvolvedores. Além de evitar que eles desenvolvam alguns vícios de ruins de programação, certamente fará com que sua experiência seja na maioria das vezes coroada de sucesso e muito prazeirosa.
Caso desejem por algum motivo experimentar algo diferente, certamente levarão consigo uma boa e sólida base de conhecimento.Abraço,ASFOn 9/17/06, 
Ricardo L. A. Banffy <[EMAIL PROTECTED]> wrote:
Concordo. Python é uma ótima ferramenta e eu uso todos os dias.Inclusive tem um interpretador interativo plenamente funcional, que fazcom que ele seja próximo da coisa perfeita pra isso.Eu só acho que um quilômetro de OS entre o programa e o computador não
ajudam muito a ensinar nada. Precisavamos de algo mais "direto".E concordo. Java nem fo^H^H a pau.Antonio Fonseca wrote:> Eu entendi a visão do autor. Apenas discordo da solução proposta.
>> Primeiro porque eu penso que um PC atual na verdade evoluiu muito pouco> em relação a época do Apple II. Todos os mesmos elementos principais> estão lá, no final das contas o que temos hoje de diferernte é apenas
> muito mais poder de processamento bruto e a miniaturização de componentes.___PSL-Brasil mailing listPSL-Brasil@listas.softwarelivre.org
http://listas.softwarelivre.org/mailman/listinfo/psl-brasilRegras da lista:
http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil
___
PSL-Brasil mailing list
PSL-Brasil@listas.softwarelivre.org
http://listas.softwarelivre.org/mailman/listinfo/psl-brasil
Regras da lista: 
http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil

Re: [PSL-Brasil] Excelente artigo que to ca, meio de raspão, SL e inclusão digital

2006-09-16 Por tôpico Antonio Fonseca
Eu entendi a visão do autor. Apenas discordo da solução proposta. Primeiro porque eu penso que um PC atual na verdade evoluiu muito pouco em relação a época do Apple II. Todos os mesmos elementos principais estão lá, no final das contas o que temos hoje de diferernte é apenas muito mais poder de processamento bruto e a miniaturização de componentes. 
E veja que apenas isso já é o suficiente para usarmos interfaces gráficas visualmente exuberantes e para o processamento de sinais de forma eficiente.Mas a maneira como operamos o computador continua praticamente igual.

Verdadeiras inovações como processadores de múltiplos núcleos, interfaces ricas com o usuário e linguagens de programação de muito alto nível estão apenas começando a ser utilizadas e esse finalmente parece ser o caminho viável para uma real evolução do bom e velho PC.
Agora aguardamos o surgimento de alguma forma moderna, eficiente e onipresente de ferramenta para o ensino de programação para crianças. E mesmo nessa área supeito que já existam alguns bons candidatos a espera apenas de um certo toque especial. 
Nada de BASIC, e quem falou em (sic) JAVA? Uma boa pedida está no uso de software livre e mais exatamente em uma linguagem chamada Python. Ela apresenta características que a colocam como fortíssima candidata: dentre outras coisas é multiplataforma e sua sintaxe é simples.
Portanto, morte ao BASIC, à velha BIOS do PC, à interface gráfica 2D e a todas essas quinquilharias do passado. Vamos dar boas vindas ao novo.Abraço,ASFOn 9/16/06, 
Ricardo L. A. Banffy <[EMAIL PROTECTED]> wrote:
Eu sei, mas você leu e não entendeu o artigo.A experiência de ligar um computador e imediatamente poder escreverprogramas simples que podem ser totalmente explicados (vai explicar ogarbage collection do Java a uma criança) e, com isso, ensinar algo
sobre computadores (e não sobre BASIC) está perdida no passado distante.Embora os computadores de hoje em dia sejam coisas de ficção científicacomparados aos nossos Apple IIs, eles não servem tão bem para entender
computadores - os conceitos mais básicos estão perdidos debaixo de umapilha quilométrica de abstrações.Antonio Fonseca wrote:> Maçante? Desculpa mas BASIC really sucks!>> Abraço,>
> ASF>> On 9/15/06, *Ricardo L. A. Banffy* <[EMAIL PROTECTED]> [EMAIL PROTECTED]>> wrote:
>> Me faltam superlativos...>> http://www.salon.com/tech/feature/2006/09/14/basic/> ___
> PSL-Brasil mailing list> PSL-Brasil@listas.softwarelivre.org> PSL-Brasil@listas.softwarelivre.org
>> http://listas.softwarelivre.org/mailman/listinfo/psl-brasil> Regras da lista:> 
http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil>>> >> ___
> PSL-Brasil mailing list> PSL-Brasil@listas.softwarelivre.org> http://listas.softwarelivre.org/mailman/listinfo/psl-brasil
> Regras da lista:> http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil___
PSL-Brasil mailing listPSL-Brasil@listas.softwarelivre.orghttp://listas.softwarelivre.org/mailman/listinfo/psl-brasil
Regras da lista:http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil
-- ANTONIO FONSECA[EMAIL PROTECTED]http://antoniofonseca.wordpress.com/55 91 8114-0209ICQ 233144499
MSN Messenger [EMAIL PROTECTED]Skype antonio.fonsecaLinux Counter 340375Ubuntu User # 5733"Você vê coisas que existem e se pergunta: por quê? Eu imagino coisas que não existem e me pergunto: por que não?"
(George Bernard Shaw)
___
PSL-Brasil mailing list
PSL-Brasil@listas.softwarelivre.org
http://listas.softwarelivre.org/mailman/listinfo/psl-brasil
Regras da lista: 
http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil

Re: [PSL-Brasil] Excelente artigo que to ca, meio de raspão, SL e inclusão digital

2006-09-15 Por tôpico Antonio Fonseca
Maçante? Desculpa mas BASIC really sucks!Abraço,ASFOn 9/15/06, Ricardo L. A. Banffy <[EMAIL PROTECTED]
> wrote:Me faltam superlativos...
http://www.salon.com/tech/feature/2006/09/14/basic/___PSL-Brasil mailing listPSL-Brasil@listas.softwarelivre.org
http://listas.softwarelivre.org/mailman/listinfo/psl-brasilRegras da lista:
http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil
___
PSL-Brasil mailing list
PSL-Brasil@listas.softwarelivre.org
http://listas.softwarelivre.org/mailman/listinfo/psl-brasil
Regras da lista: 
http://twiki.softwarelivre.org/bin/view/PSLBrasil/RegrasDaListaPSLBrasil