quarta-feira, 25 de abril de 2007

Bandeiras de software

Tecnologia precisa de razão ou motivo para se utilizar? Digo, tecnologias são como bandeiras? Ou como time de futebol?

Eu explico. As bandeiras de software são como vejo questões sobre tecnologias sendo defendidas como o time de futebol do coração. Alias, acho que escolhemos um time de futebol por diversas maneiras: o pai torcia, gostava da cor, ganhou o campeonato quando você era criança...

Eu torço pelo Grêmio, campeão mundial em 1983. Não lembro de jogos de futebol antes da final do campeonato no Japão. Mas nunca fui fã de futebol... só lembro disso em copa do mundo.

Eu uso Linux há bastante tempo, de verdade desde 1996. Mas antes já tinha comprado uns disquetes do Mingo, com o tal Unix de um só disco... e oito terminais!

Eu defendo o uso racional de tecnologia. Nem sempre Linux é bom.

O mesmo acontece com orientação a objetos, sistemas operacionais e linguagens de programação. Se houvesse uma só resposta para todo tipo de problema que estas tecnologias podem resolver, não haveriam tantas tecnologias.

Os problemas mudam, as pessoas que tem os problemas também. Cada caso exige uma análise particular que resultará em soluções também particulares.

Penso em linguagens como Delphi. Na empresa que trabalho, reina o C++ e o Java. Mas existem guerreiros do Delphi. Hoje mesmo eu estava resolvendo um problema com JNI, em outro laboratório. Eles perguntaram por que eu havia escolhido fazer o novo servidor em Java?

Pensei um pouco e respondi que conhecia Delphi, mas que o servidor era uma coisinha com múltiplos threads, acesso a banco de dados e inúmeros candidatos a problemas de concorrência. E para este tipo de problema, o Java é excepcional.

Se eu tivesse que desenvolver algo do zero novamente, eu teria que pensar no problema, antes de escolher a solução. Java não é bom para tudo.

No caso do Linux, temos os guerreiros do Ubuntu, e eu estou para entrar nesse exército. Eu realmente gostaria de ter um desktop Linux hoje. Na realidade, meu computador tem dual-boot, mas para acessar a Web e trabalhar, eu ainda uso o Windows. O Linux fica para minha pesquisa e para alimentar meu nerdismo.

Por outro lado, eu quase que não hesitaria em ter outro servidor Linux. Acho que para servidor Web, SVN, email, etc não tem solução melhor que um bom Gentoo. Mas eu já prescrevi Windows para empresas que tinham dinheiro para isso, mas não para contratar um administrador Linux. Não adianta ter Linux se a cultura da empresa é Windows. Mais batalhas...
Pensando em um novo produto de software. Qualquer um. Você escreveria este para Linux ou Windows? Eu escreveria para Windows, pois acho que o dinheiro ainda está com quem usa Windows. Fica aqui meu protesto contra os piratas que abrem a boca pra esbanjar as versões mais recentes do Sistema Operacional, mas que se recusam em pagar por isso. O Linux sempre foi muito claro para mim. A maioria das empresas em que trabalhei caia para trás quando era informada dos custos reais de software. Era quando o Linux tinha uma chance. Onde o Windows custava menos de R$10,00: sem chance. Não pelo Linux ou pela Microsoft, mas pela minha responsabilidade como profissional de informática, isso sim é uma bandeira que eu defendo!

Ainda assim, sou contra defender o Linux como uma bandeira. Eu também não defendo o Python para qualquer tipo de programa. Quanto mais nos especializamos, temos a tendência de encaixar as coisas dentro daquilo que já conhecemos. É nessa hora que a mente deve permanecer aberta.

Como eu sou um cara esquecido, acabo tendo que rever tudo de novo, sempre. Às vezes não ter memória ajuda :-).

2 comentários:

Leo disse...

E aí Nilo,
Gostei do seu blog e já assinei o feed.

PS: eu nasci em Manaus (apesar de não ter sido criado lá). Isso me faz um jungle coder? :)

Abraços!

leodippolito@gmail.com

Nilo Menezes disse...

Todo sobrevivente da selva é um JungleCoder.