sexta-feira, 15 de junho de 2007

Linguagens, teclados e Ruby

Hoje, pela segunda vez esta semana, eu li um texto que me chamou a atenção sobre a hipótese de Sapir-Whorf, isto é, a maneira que a linguagem pode influenciar o comportamento e a forma de pensar das pessoas. Eu fiz um paralelo entre linguagens de programação e teclados.

Lendo sobre Ruby, fiquei observando os inúmeros símbolos e a freqüência que estes são utilizados na linguagem. Para um pobre coitado como eu, que usa um teclado Belga no trabalho e um teclado Francês em casa... os símbolos importam muito. O criador da linguagem Ruby, Yukihiro Matsumoto , utilizava provavelmente um teclado Japonês. Ok, é parecido com o teclado QWERTY ocidental... mas fica aqui meu registro quanto aos símbolos e linguagens. Lembro que li anteriormente um texto sobre como a @ foi escolhida como símbolo do e-mail e como alguns símbolos foram escolhidos no FORTRAN devido ao reduzido teclado da época (1956~1957) e depois usados por outras linguagens. Uma página que encontrei e que ilustra a dureza daqueles tempos pode ser vista aqui.

O "Mat" não teria utilizado tantos pipes("|") se estivesse usando um teclado francês ou belga :-). Eu estou estudando Ruby novamente devido ao RubyOnRails. Ando tendo novas idéias para sites e francamente, escrever em PHP está fora de questão. Eu continuo programando em Python. Eu acho Python uma linguagem muito mais clara que o Ruby, fora meu vício com a identação e meu ódio a chaves (antes mesmo de utilizar teclados estranhos) e end qualquer coisa. Talvez uma busca mais demorada no Google pudesse indicar outro framework para aplicativos web em Python. Mas meu problema de usar o Python para esta tarefa é que eu não quero utilizar vários frameworks, criando um monstro ainda maior, eu quero instalar um pacote único. Resolver o problema. Com Python, eu teria que utilizar vários pacotes com nomes de bichos e frutas que eu não sou doido suficiente para usar. Existem alternativas em Python amadurecendo, mas ainda longe do que eu posso obter hoje com o Rails.

Com certeza existe arte na programação, mas eu preciso testar algumas idéias rapidamente. Quando estas idéias são novos sites, fica claro que o belo cede lugar para o rápido, funcional e seguro. Eu poderia fazer alguma coisa em Java, mas eu estou realmente tentando diminuir a complexidade desta tarefa, reduzindo o número de frameworks no meu futuro site.

O César ainda não escreveu sobre Ruby e eu acho que não vou conseguir convencê-lo a escrever nada mesmo. Então vou aproveitar a necessidade e postar aqui um pouco do que vi diferente em Ruby.

Voltando a hipótese de Sapir-Whorf, fico analisando a forma como as pessoas pensam pela linguagem de programação que elas mais se identificam. É fácil, basta lembrar de um programador C++ e de um programador Java. Programadores em Visual Basic, Python, Perl ou PHP também invocam lembranças diferentes a minha mente. Embora todos sejam profissionais, sempre tem algo no comportamento destes que marca nossa lembrança, como uma característica e até mesmo como um novo estereótipo. Alguns programadores gostam de trabalhar com coisas difíceis ou coisas que os outros consideram difíceis.

Esses padrões de comportamento são também visíveis quando você aprende uma nova língua estrangeira. Quem nunca teve vontadade de dizer que o programa está correndo ?

Nenhum comentário: