Visite também: Currículo ·  Efetividade BR-Mac

O que é LinuxDownload LinuxApostila LinuxEnviar notícia


Pai do Java pede: parem de usar Emacs!

O que me surpreendeu mais nesta história foi descobrir que James Gosling, conhecido como “pai do Java”, também é um dos pais do Emacs: a sua implementação foi a primeira para UNIX, e trechos de código dela foram inclusive aproveitados anos depois por Richard Stallman quando ele lançou a primeira versão do GNU Emacs.

Mas para Gosling o ambiente oferecido pelo Emacs não evoluiu o suficiente nestes 30 anos para ainda fazer frente a outros ambientes modernos (e também livres) de desenvolvimento. Por esta razão, quando ele perguntou em uma palestra quantas pessoas da audiência ainda usavam o Emacs, e algumas dúzias ergueram as mãos, ele pediu: simplesmente parem. Minha teoria é que o pessoal do vi deve ter pago uma nota preta a ele!

Saiba mais (computerworld.com.au).


• Publicado por Augusto Campos em 2008-03-06

Comentários dos leitores

Os comentários são responsabilidade de seus autores, e não são analisados ou aprovados pelo BR-Linux. Leia os Termos de uso do BR-Linux.

    Anom (usuário não registrado) em 6/03/2008 às 11:12 am

    E eu (pai de pn) digo: parem de usar java!
    Porque? Porque não acompanhou a evolução das linguagens (se bem que nem é evolução, já que nada acontece nesse meio desde os anos 80)

    Esse cara é um babaca, assim como a porcaria de linguagem que ele criou.

    Não sei o que é pior… Java ou NetBeans…

    Ainda não entendo por que escolheram essa linguagem nas universidades… que coisa mais triste.

    tux (usuário não registrado) em 6/03/2008 às 11:34 am

    Não costumo responder a flames, mas vamos lá….procure por integridade de dados!!!

    liquuid (usuário não registrado) em 6/03/2008 às 11:38 am

    Não sei o que é pior, Java ou Emacs :P

    @Cadu ensinam Java porque ‘é o que se usa no mercado’. Queria eu ter um curso de computação no Brasil onde tivesse LISP como em grandes universidades lá fora.

    Concordo! JAVAitarde!!!!!!

    Rael (usuário não registrado) em 6/03/2008 às 11:46 am

    Engraçado como vocês atacam o cara e a linguagem sem nem fazer idéia de como ela foi criada, ou a motivação.

    Sempre coisas como “não acompanhou a inovação”, ou “será que os caras não conheciam isso quando criaram?”…

    Não estou dizendo que Java é melhor ou pior, mas que há um motivo forte para que exista e continua sendo usada, principalmente nas faculdades e grandes corporações.

    Assim como existe motivo para muita gente ainda usar PHP, e para que RoR esteja fazendo tanto sucesso.

    Abra sua mente, e aprenda bem todas estas linguagens (inclusive C, para você saber como tudo é feito debaixo dos panos, para saber porque strings são tão pesadas, etc).

    Com certeza, um dia você irá usar conceitos que aprendeu em uma delas, em outra.

    E sobre o Emacs: foi meu primeiro editor de texto nos Unix, mas depois que eu descobri o tamanho do trambolho (em Megas), eu me recusei à instalá-lo em minhas máquinas antigas, e passei à usar o Vi.

    Se o Stallman parasse de portar tudo do sistema operacional para o Emacs, e jogasse essas coisas no Hurd, ele já estaria pronto [frase flamer, podem ignorar].

    CalmPelem (usuário não registrado) em 6/03/2008 às 12:01 pm

    Nem sou de responder flames tipo isso… mas o que se ve é a total ignorancia… Não existe a melhor linguagem. Todas terao seus pontos fracos e fortes. Como foi dito, em grandes corporações como bancos e seguradoras o pessoal adota Java (maioria) e .Net tantos outros… Por que? Com certeza não foi por serem linguagens que não evoluiram! São linguagens que trazem um custo/benificio.
    Quem acha que Java não evoluiu.. da uma olhada nas especificações mais recentes de J2EE e do agora no pacote JPA!
    Nem vou me prolongar mais, mas para a piazada que acha que PHP é tudo e o resto é lixo: abram suas cabecas! Bom é aquele que te paga! Se agora estou com Java, Java é a melhor linguagem para mim! Se amanha voltar a um projeto ASP, ASP será a melhor!

    Pierre (usuário não registrado) em 6/03/2008 às 12:09 pm

    Bem, eu vou dar minha opinião sobre o assunto.
    *** PAREM DE USAR EMACS
    Ponto em relação ao emacs eu sempre usei o VI, mas para quem gosta de ou precisar sempre usar o modo texto é uma opção sim. Esta ideia de parem de usar isto ou aquilo acho uma imensa bobeira, imagino que a boa ferramenta é aquela que se adequa aos momentos.

    *** JAVA NAS FACULDADES
    Estou concluindo minha faculdade este semestre, tivemos aulas de programação com JAVA, PHP. Mas s tenho uma opiniao que o C++ deveria ser ensinado em qualquer faculdade computação, é uma linguagem que sempre será utilizada e não se tem tantos profissionais no mercado e alem de tudo ele abre um leque de possibilidades para os programadores que a dominam.
    Imagino que o Brasil carece deste tipo de profissional.
    Quero deixar claro que nao tenho nada contra Java, Pithon ou qualquer outra linguagem. Apenas minha opinião.

    Pierre (usuário não registrado) em 6/03/2008 às 12:10 pm

    Corrigindo Python!!! E nao Pithon.

    :)

    Eu também não gosto do Emacs mas nunca pediria para quem usa parar de usar.

    Se java fosse tão ruim a M$ não teria criado o C# (na realidade foi a Borland que criou) e o .Net.

    Java pode não ser uma linguagem fácil nem a melhor para desenvolver programas com GUI mas é muito boa para diversas coisas. Pelo menos a Sun não faz como a M$ e disponibiliza o software somente para windows.

    Concordo com o pierre de que C++ deveria ser ensinado das faculdades, inclusive, para que o aluno aprendesse orientação a objetos.

    Pelo amor de Deus; cout e cin são muito melhores do que System.out.println, e melhor ainda do que os métodos de entrada em Java, que ora são feitos por meio de gambiarra (os professores trazem uma classe pronta), ou são feitas instanciando-se um objeto da classe Scanner tendo como argumento System.in. Sinceramente… isso é uma violencia contra o cérebro dos alunos!

    “Minha teoria é que o pessoal do vi deve ter pago uma nota preta a ele!”

    Como se sabe, Gosling trabalha na Sun Microsystems, fundada por ex-alunos da famosa Universidade de Berkeley, responsáveis pelo BSD. Dentre esses fundadores está Bill Joy, o pai do vi. Portanto, o pai do vi paga, sim, o salário do Gosling. ;)

    Ou talvez tenha sido simplesmente porque o manutenedor principal do Emacs tenha pulado fora… :)

    Mas, brincadeiras a parte, o verdadeiro motivo é que há uma campanha muito forte dentro do movimento open-source para se apagar por completo as contribuições originárias do projeto GNU iniciado pelo Stallman. São as mesmas pessoas que se afastam do software livre para se aproximar da Microsoft. Gente que nasceu ontem e não conhece o histórico do campo…

    À propósito, o Netbeans tem vários recursos saídos direto do vi, como uma pilha de localizações entre saltos pelo texto.

    C:WINDOWS otepad.exe

    Concordo com o Manuel Pinho. Usem o que quiserem usar! Para aqueles que não precisam de muita “frescura” – como os vastos recursos das e complexas IDEs em Java -, um bom editor de texto que salve em texto plano já é o suficiente.

    O ruim é quando o cara fica preso à somente de uma ferramenta, e não sabe utilizar nenhuma a não ser esta.

    Conheço muita gente que usa e gosta do GNU-Emacs, e não tive vontade de esganar nenhum deles por isso, até agora ;-)

    Nobody (usuário não registrado) em 6/03/2008 às 1:08 pm

    Pierre, quer dizer que o fato dos professores usarem uma biblioteca feita por eles de maneira tosca desmerece a linguagem? Dizer que C++ é melhor porque tem como vantagem cin e cout sobre os streams, é de fato desconhecer bem pouco de ambas linguagens.

    E concordo que C e C++ devam ser vistos na faculdade.

    hell (usuário não registrado) em 6/03/2008 às 1:14 pm

    Engraçado eu uma vez instalei o Emeacs, contudo achei ele tão estranho e pesado que resolvir voltar para o velho e bom VIm, sei lá que por ter uma idéia diferente do VIm que nem conseguir usar, mas pelos poucos segundos que passei com Emeacs, minha única bronca é com o peso do programa, enquanto no VIm eu abro algum arquivo quase que instantaneamente no Emeacs demora em torno de uns 10 segundos para abrir, mesmo numa máquina com Semprom 3000+ e 512 de RAM, o que para mim é impraticável usar um editor de texto de linha de comando com esse peso todo.

    Talvez um EmacsIm resolvesse o problema, a exemplo do vim :) acho que o emacs tá um pouco antiquado, e pouca coisa foi feita no sentido de “moderniza-lo”.

    Particularmente acho o vim mais simples de usar, e mais intuitivo (pra quem tem noção da língua inglesa). No vim eu consigo facilmente mudar a fonte, a sintaxe, configurações, etc. e tudo fica perfeitamente ao meu gosto… as configurações default do emacs não me agradam nesse sentido, coisas básicas como fonte/sintaxe. Eu iria perder um tempo considerável pra saber como funcionam essas coisinhas, apesar de saber usar os comandos do editor de texto.

    André Luís Toledo (usuário não registrado) em 6/03/2008 às 1:47 pm

    “Na sua opinião o pessoal do vi pagou uma nota pro cara”, como assim? Não existe uma grande organização do vi, o que “os caras do vi” ganhariam com isso?

    Eu uso o vim, tenho um vimrc prático e não vejo necessidade de usar o emacs, e na minha opinião a vantagem e a desvantagem do emacs são a mesma coisa, o excesso de recursos, eu não uso emacs simplesmente porque não tenho 6 dedos em cada mão, entendem?!

    Dizer que C++ é melhor porque tem como vantagem cin e cout sobre os streams, é de fato desconhecer bem pouco de ambas linguagens.

    Se ele desconhece bem pouco de ambas as linguagens, eu suponho que ele conheça muito de ambas. =)

    Eu sei, eu também gostaria de voltar a editar comentários. =P

    AlphaZine (usuário não registrado) em 6/03/2008 às 2:12 pm

    Ele, que criou a primeira versão do Emacs pra Unix, que é funcionário da Sun, durante uma apresentação num evento da Sun, falou pro pessoal largar o Emacs e sugeriu a IDE NetBeans da Sun.

    Simplesmente não existe vi nessa história. :P

    Pierre (usuário não registrado) em 6/03/2008 às 2:24 pm

    Nobody e Diego, este comentario nao foi feito por mim:

    “Dizer que C++ é melhor porque tem como vantagem cin e cout sobre os streams, é de fato desconhecer bem pouco de ambas linguagens”

    Ele foi feito pelo cppware.

    Eu apenas falei que o C++ deveria ser ensinado assim como o Java, da uma olhada nos comentarios la em cima.

    Abraco.

    Paulo Pontes (usuário não registrado) em 6/03/2008 às 2:51 pm

    O pessoal que adora criticar Java programa profissionalmente em C++?

    Vcs sabem que o mercado para Java e .NET é muito maior que C++?

    Não existe linguagem pior ou melhor, existe ferramenta adequalda a um determinado problema, e se o profissional tem conhecimento sobre os conceitos, ele vai poder utilizar a melhor linguagem para cada caso.

    O que tem que ser ensinado na faculdade é algoritmo, lógica, orientação a objeto, etc… e não lisp, c/c++, java ou .net

    Anônimo (usuário não registrado) em 6/03/2008 às 2:59 pm

    Vá tentar desenvolver uma aplicação corporativa de missão crítica, com processamento em tempo real, com controle de transações, e que processe mais de 150 requests por segundo, aonde o processamento esteja diretamente relacionado com o faturamento do cliente, que gira em torno de 5 milhões por dia. Vá tentar fazer isso em PHP, Python ou Ruby e depois diga novamente se java é tão ruim assim.

    Existe espaço para todas as linguagens, mas cada uma com o seu nicho. Java é para aplicações parrudas, PHP é para aplicações que não sejam de missão crítica.

    Procurem estar no mercado antes de falar as coisas.

    Pika (usuário não registrado) em 6/03/2008 às 3:59 pm

    Como se le merda por ae.. meu Deus lol

    Gosto e programo em Java, mas nem por isso desmereço o resto…

    Poe o php pra rodar num server decente pra ver se ele não suporta o numero de transações que você citou…

    Missão Crítica ?

    Ja tentou acessar o site da SPTRANS, feito em jsp em época de recadastro de bilhete único ?

    Ne mesmo a página abre..

    Ae vc me diz, mas o servidor é fraco, pode até ser, mas php, java, c++ não teria então influencia, pois java e php rodam no mesmo apache…

    flws

    Nobody, eu não sou o Pierre. Heheh. Sou o cppware.

    Sua tese é de que eu desconheça muito de ambas as linguagens. Ok. Uma ótima maneira de me atacar. Invalide meus argumentos simplesmente dizendo que eu sei bem pouco de ambas as linguagens. Ah, sim, quando eu tiver uma opinião sobre o Linux, diga-me que eu sei bem pouco sobre ele também. Aì meus argumentos serão invalidados também. É uma ótima tática essa.

    Ensinar orientação a objetos usando JAVA é uma volência contra o cérebro humano. Não estou desmerecendo A LINGUAGEM, mas estou sim, falando contra o uso de JAVA nas faculdade para ensinar OO. Acho que as faculdades devem, sim, ensinar o Java ou qualquer linguagem que esteja no mercado; mas usar o JAVA para ENSINAR a orientação a objetos, repito, é uma violência contra o cérebro humano.

    Sem falar que meus melhores professores de OO, programavam em C++. Agora vejamos. O professor chega, no primeiro dia de aula após a explicação dos conceitos da orientação a objetos, após ter confundido os alunos por ter explicado polimorfismo como se fosse sobrecarga, e vai lá, abre o Eclipse, e a primeira coisa que faz é um programa que faz um cálculo lá e o exibe na tela. Nada mais ótimo. Não é preciso instanciar uma classe. System.out.println(). Muito bom. Agora, vamos para a parte seguinte. Vamos ler coisas digitadas pelo usuário. E agora? E agora, vai dar m. Por que os métodos de entrada e saída do JAVA, ao aluno iniciante, é menos lógico do que métodos de entrada em C++. Talvez se eu fosse algum doutor em computação você acreditasse em mim, mas FELIZMENTE não sou. Não obstante, convenhamos que, se em vez de JAVA, a orientação a objeto fosse apresentada ao aluno por meio do C++, tudo estaria mais lógico.

    No curso técnico em informática em que dou aula, nós ensinamos Java, mas paresentamos a OO usando C++, e os alunos compreendem muito bem. Temos pessoas que não somente saber programar, mas compreendem o que estão fazendo.

    Agora, ilumine a minha ignorância e me responda porque devemos instanciar uma classe para obter entradas em Java, mas não precisamos instanciar uma classe para obter uma saída. Me responda porque os projetistas do Java, a tão maravilhosa linguagem que vai salvar a Pátria e libertar os cativos, fizeram essa coisa de artificializar a entrada de dados em Java. Me explique, tire a venda dos meus olhos.

    Ah, sim:

    1. Eu concordo que não existe linguagem melhor ou pior absolutamente.
    2. EU concordo com o ensino de Java na faculdade.
    3. Eu concordo com o ensino de outras linguagens comerciais, cujo mercado pede profissionais.
    4. EU concordo com o ensino de Windows na faculdade.
    5. Eu concordo com o ensino de .NET na faculdade.
    6. Eu gosto de aveia.
    7. Gosto de açaí.
    8. Não gosto de gatos.
    9. Não gosto de sol quente.
    10. Gosto de Smalltalk, C++, Ruby, e não odeio Java, só acha que não deveria ser idolatrá-lo a tal ponto de usá-lo onde não é preciso, como, por exemplo, o ensino de orientação a objetos. Os alunos ficam tão vidrados em Java, que pensam que o JAVA É a orientação a objetos.

    Espero que tenham me compreendido.

    Paulo, o mercado de operários é sempre maior que o de engenheiros ou arquitetos. C/C++ não é usado por essa massa, é usado pelas empresas e indivíduos que criam a infraestrutura de software que move o mundo digital, incluindo seus sistemas operacionais, transacionais, compiladores, interpretadores e a maior parte das bibliotecas de código open-source.

    Enquanto não houver um SO em Java ou .NET, isso não vai mudar.

    tsc (usuário não registrado) em 6/03/2008 às 5:24 pm

    Não é querendo ser chato, porém o assunto da conversa era outro hehehehehe e não discutir se ele era o criador do java ou não.
    So que uma coisa, ele é um dos caras da “nata” da computação, é fácil desmerecer alguem…agora…quem falou mal, diga o que fez.
    Vamos ver quem é pior…o fanboy que não entende nada sobre projetos de software ou o cara que criou o java.

    obs: eu não sou um fã de java porém o cara que fez o comentário é merece respeito por o que fez.
    E vale apena dizer que muitas ide’s ajudam na produtividade.

    Fabio (usuário não registrado) em 6/03/2008 às 5:42 pm

    emacs e vi fizeram sentido no passado, com interfaces de caractere, e ainda fazem sentido hoje, se vc quer fazer algo via acesso remoto via terminal de texto. Usar emacs ou vi no dia a dia, em seu desktop gráfico… não vejo o menor sentido, há ambientes muito melhores para isso.

    Muitas pessoas reclamam da sintaxe pesada de Java, mas acho que essa é justamente uma característica positiva para ela ser escolhida como linguagem inicial nos cursos de CC, pois é uma linguagem rígida, que deixa pouca chance para o programador inexperiente (o aluno) fazer besteira.

    C++ é uma linguagem poderosa, se vc já tem alguma experiência, e se vc deseja dominar as profundezas da arte da programação. Concordo que ela deveria ser ensinada nos cursos de CC, logo após Java.

    Agora, ilumine a minha ignorância e me responda porque devemos instanciar uma classe para obter entradas em Java, mas não precisamos instanciar uma classe para obter uma saída. Me responda porque os projetistas do Java, a tão maravilhosa linguagem que vai salvar a Pátria e libertar os cativos, fizeram essa coisa de artificializar a entrada de dados em Java. Me explique, tire a venda dos meus olhos.

    Hum? Precisa instanciar a entrada?

    Além do System.out, também existeo System.in. Assim são feitas aplicações ultra básicas de console… Não precisa instanciar…

    Se não sabe usar a linguagem e sua API, aí são outros 500.

    “emacs e vi fizeram sentido no passado, com interfaces de caractere, e ainda fazem sentido hoje, se vc quer fazer algo via acesso remoto via terminal de texto. Usar emacs ou vi no dia a dia, em seu desktop gráfico… não vejo o menor sentido, há ambientes muito melhores para isso.”

    Até onde pude averiguar, emacs, vi, Eclipse, notepad, Delphi, Visual Studio ou scite atuam todos sobre texto, cadeias de caracteres. A interface de caracteres ou gráfica não interfere ou acrescenta nada a que tipos de processamento você executa em cima do texto.

    Não é a interface gráfica que provê IDEs com qualquer vantagem sobre os editores de texto puros, mas sim a integração com module e class browsers, gerenciadores de projetos, indexadores de documentação, debuggers etc…

    cppware (usuário não registrado) em 6/03/2008 às 7:43 pm

    Bruno, me desculpe, mas você está errado.

    Eu vou ensinar para você uma maneira simples de fazer leitura em Java. Observe só:

    Scanner p1 = new Scanner(System.in);
    int x = p1.nextInt();

    Agora, veja como, em Java, é relativamente mais simples a saída:

    System.out.println(x);

    Agora, por favor, mostre-me que estou errado argumentando tecnicamente. Me mostre uma maneira de ler valores SEM instanciar objetos de classes algumas. Eu sei que o método println() é estático. Agora, me mostre um método estático que leia valores..

    Faça isso, me convensa tecnicamente, e eu admitirei que estou errado, e que voc~e está certo. Me desculpe se pareci ofensivo, mas eu desde já peço desculpas. Vai. Me mostra. Estou preparado para assumir meu erro.

    Eu até te pago uma pizza. hahaha!

    Anônimo (usuário não registrado) em 6/03/2008 às 7:48 pm

    “Como se le merda por ae.. meu Deus lol”
    Depende do ponto de vista. Não adianta o cara que só desenvolve site para empresa de perfumes querer entender porque o PHP não pode ser usado em aplicações de missão crítica. Principalmente se nunca participou do projeto de uma.

    “Gosto e programo em Java, mas nem por isso desmereço o resto…”
    Também não desmereço o resto. Mas cada linguagem tem a sua aplicação. E, sinceramente, PHP, não tem estrutura para missão crítica. E sim, eu adoro PHP.

    “Poe o php pra rodar num server decente pra ver se ele não suporta o numero de transações que você citou…”
    Rodar até roda, mas e como ficam quesitos como segurança, uptime, estabilidade…

    “Missão Crítica?
    Ja tentou acessar o site da SPTRANS, feito em jsp em época de recadastro de bilhete único ?
    Ne mesmo a página abre..”
    Não, não sou de SP.

    “Ae vc me diz, mas o servidor é fraco, pode até ser, mas php, java, c++ não teria então influencia, pois java e php rodam no mesmo apache…”
    Se você tem uma aplicação de missão crítica que vai ter que suportar 200 requisições por segundo, você não pode colocar essa aplicação para rodar em um 486. Missão crítica não envolve somente a linguagem, mas também todo o hardware que irá suportar a aplicação. E sim, java é uma linguagem pesada, e precisa de servidores parrudos se a aplicação for para esse fim. E sim, a linguagem tem diferença, pelos quesitos que já falei acima.

    Cronnosli (usuário não registrado) em 6/03/2008 às 8:04 pm

    Essa discução já esta ficando cansativa,mas vamos lá

    Formado em engenharia da Computação sei do que estou falando.

    C/C++ são as melhores linguagens atuais que existem. tenta fazer um acesso em baixo nivel em seu HD, ou programar um processador, por acaso java faz isso?

    Vamos por cada qual no seu lugar:
    – Java não é melhor do que PHP, vide php5 e o lançamento do php6;
    – missão critica? usa c++ depois a gente conversa;
    – qualquer linguagem é segura o suficiente para ser utilizada em bancos, se eles usam java, é porque foi conviniente para eles!
    – sem duvidas existem linguagens melhores que java, apenas não estão sendo divulgadas pela midia.

    Concordo com James Gosling, Emacs é muito antiquado e muito pouco atualizado em termos de código e desempenho, porque não apoiar o VI, o nano ou quem sabe o mcedit ?

    Concordo com James Gosling, Emacs é muito antiquado e muito pouco atualizado em termos de código e desempenho, porque não apoiar o VI, o nano ou quem sabe o mcedit ?

    Eu não tenho vergonha nenhuma de dizer que, depois de 10 anos de Linux, edito meus scripts muito mais confortavelmente no mcedit !

    Agora mcedit ou mesmo usar o VI para fazer ‘pergaminhos’ em python ou bash, já é outa história… muito mais produtivo é usar uma ferramenta desktop, completando sintaxe, debugando com main tranquilidade, etc… ;)

Este post é antigo (2008-03-06) e foi arquivado. O envio de novos comentários a este post já expirou.