sexta-feira, março 23, 2007

Microsoft e a W3C

De carona neste post do Marco Gomes, e especialmente na onda da campanha No More IE Hacks, gostaria de trazer à tona uma coisa meio esquisita.

Bom, a World Wide Web Consortium (W3C) é o grupo de pessoas e empresas que produz as famosas especificações para aplicações WEB, como o HTML, CSS, XHTML, XML, etc. Até aqui, tudo bem. Nada de estranho.

A razão da esquisitice, é a presença da Microsoft na lista dos membros da W3C. Se o IE é tão conhecido por ignorar certas especificações, o que estarão fazendo os representantes da Microsoft na W3C?

quarta-feira, março 21, 2007

João e o pé de cana

Além de ser uma fonte alternativa de combustível, o etanol também está sendo largamente utilizado para explodir o saco do povo brasileiro!

É profundamente irritante tomar conhecimento de que existem pessoas como os donos da Google, fundadores da SUN e da AOL, que muito provavelmente não entendem patavina de etanol, interessados em investir na sua produção.

Quem será que vai ser beneficiado? Será que ainda somos ingênuos o suficiente para pensar que isto trará algum benefício para o povo desse País? Será que temos condições, nós, o povo, de entrar nessa balada?

Bom, não sei quanto à vocês, mas eu vou começar a procurar terrenos desocupados e plantar os meus pezinhos de cana. Também pretendo comprar algumas caixas d'água, que após entupir de terra (ainda não sei de onde), serão a minha plantação de cana "móvel". Inclusive, pretendo plantar cana nos fundos da minha casa e até dentro da minha privada.

Na pior das hipóteses, no futuro, posso vender caldo de cana enquanto assisto aos poderosos da informática ganharem rios de dinheiro com combustível. Perfeito. Não sou lá muito fã de Renato Russo, mas, que País é esse?

segunda-feira, março 19, 2007

Allen Holub, a ovelha negra

Você trabalha na área de TI, procura melhorar o design das suas aplicações orientadas à objeto a cada dia, preocupa-se com a facilidade de manutenção e utilização de patterns, e nunca ouviu falar em Allen Holub? Talvez devesse. Não necessariamente para concordar com ele, mas ao menos para ser instigado à reavaliar sua própria maneira de pensar nas coisas, especialmente naquelas que sempre foram consideradas triviais.

Allen Holub trabalha como consultor em empresas de desenvolvimento de software e, às vezes, vai além e acaba também desenvolvendo a aplicação. Ele diz que sua motivação vem da frustração que sente ao ver empresas gastando muito dinheiro e ainda assim falhando no desenvolvimento de seus produtos. Ele também afirma que, com alguma ajuda, esta situação poderia ser evitada. E é claro, oferece tal ajuda.

No campo da orientação à objetos, Allen defende um certo "purismo", recorrendo à alguns conceitos bastante antigos, e que vem sendo sistematicamente ignorados.

Como exemlo, gostaria de citar uma das suas principais "broncas", que envolve os acessors (getters e setters). Os acessors são tão comuns hoje em dia que até fazem parte de algumas linguagens, que criam "facilitadores" para sua utilização (properties), como é o caso do Delphi e do C#. Já no mundo Java, por exemplo, temos os getIsso() e setAquilo() utilizados como padrão. Quase todo o mundo usa. Segundo Allen Holub, isto viola o conceito do encapsulamento, pois permite que os atributos de um objeto sejam lidos por outro. Segundo ele, um objeto não deve expor nenhuma informação e deve ser conhecido apenas por aquilo que pode fazer, e não pela informação que seus atributos contém. Você não deve solicitar que um determinado objeto lhe retorne informação para que você as manipule externamente, e sim, pedir à este objeto, onde está contida a informação, que faça o que deve ser feito. Qualquer informação contida nos atributos de um objeto, deve ser vista e manipulada apenas pelo próprio objeto. Ele alegou, também, que esse padrão de get e set utilizado no Java, não passa de uma maneira de publicar os membros privados de um objeto.

Agora, imagine o estardalhaço que ele fez quando publicou isso no site Java World. Sua cabeça deve ter ficado à prêmio por lá, na época. Alguns comentários feitos pelos leitores, de suave, não tinham absolutamente nada. Ele teve que aguentar algumas pancadas e se defender bastante, sempre buscando novos argumentos.

Ele fala de muitas outras coisas, também. Quase todas no mesmo nível do exemplo que citei acima. Como este post ficaria muito grande se eu relacionasse tudo, apenas gostaria de fazer uma recomendação - Se tiver oportunidade, leia os artigos de Allen Holub (os links podem ser encontrados em seu site), e depois de fazer as devidas considerações, veja se pode dizer que ele está errado ;-)

Ele também está procurando um bom software de blog. Sugestões são bem vindas. Contudo, já adianto que ele se referiu ao Wordpress como tendo uma "implementação miserável".

sexta-feira, março 16, 2007

A Arte de Desenvolver Software

Quando me perguntam o que faço, referindo-se à minha profissão, digo logo que sou programador. Às vezes as pessoas torcem o nariz, e eu consigo ler seus pensamentos - Como pode, um cara que trabalha na área de TI há mais de uma década, "ainda" ser um programador? Ele não deveria ter "evoluído" para algo "melhor"? Será que ele é incompetente?

As pessoas estão habituadas demais ao modelo hierárquico - Aquela "maldição em forma de pirâmide" onde os participantes esquecem seus deveres e princípios, passando a maior parte do tempo metidos em joguinhos políticos com o objetivo de obter uma promoção.

Modelos hierárquicos não funcionam no desenvolvimento de software. Ponto final - E não sou eu quem está dizendo. Isto já foi jogado aos quatro ventos há muito tempo.

Na realidade, programadores são indivíduos auto-suficientes providos de todas as ferramentas necessárias para a execução do seu trabalho. Com exceção de um vendedor, eles não precisam de intermediários. Se você faz parte de uma equipe de desenvolvimento de software e não "mete a mão na massa", provavelmente você está atrapalhando. E muito. Em uma equipe ideal de programadores, todos são amigos, todos programam, fazem churrasco, bebem cachaça, e ninguém é chefe de ninguém. É simples.

Exceto pela cachaça e pelo churrasco, que obviamente são opcionais, alguns sábios estão conseguindo formalizar este velho anseio através das metodologias ágeis de desenvolvimento de software. Eles realmente estão de parabéns. Contudo, ainda encontram muitas barreiras, pois os nossos gerentes-panacas-de-plantão estão ocupados demais, enfiados em suas reuniões improdutivas, e não têm tempo para "analisar" este tipo de coisa "louca e moderninha".

Também não posso deixar de mencionar aquela situação ridícula onde uma equipe de desenvolvimento é gerenciada como se fosse uma espécie de time de futebol, com seus titulares e reservas. É o modelo hierárquico novamente - Mas e se o Fulano de Tal sair de férias, quem fará o trabalho dele? - Oras bolas, qualquer um!

Considerando que é facílimo observar a realidade e perceber grandes falhas nos métodos atuais, a conclusão é que não estamos sofrendo pela falta de educação, e sim, pela falta de QI.

[Editado em 17/03/2007]

Obviamente, programadores irão elogiar este artigo e gerentes irão detestar. Apesar da crítica pesada, quero dizer que não estou, de maneira alguma, desmerecendo qualquer profissional. A idéia é apresentar o quadro mais comum dos dias de hoje, que aliás, não é uma regra.

E também, quando eu digo "programador", estou considerando o profissional em um sentido bastante amplo, o de desenvolvedor.

quinta-feira, março 15, 2007

A Credibilidade do Blog

Existem pessoas que escrevem muito bem. Outras nem tanto, mas se esforçam. Também tem aquelas que estão pouco se lixando, bem como as mais desprezíveis, as que copiam e colam indiscriminadamente, entupindo a internet com informação redundante.

Os dois primeiros tipos geralmente proporcionam uma boa leitura, onde podemos encontrar seriedade e opinião. Se estivermos lendo algo que seja do nosso conhecimento, poderemos facilmente avaliar a qualidade da informação. Por outro lado, se não conhecermos o assunto, ainda assim poderemos avaliar a qualidade através dos argumentos do autor e comentários dos leitores. Um artigo de um blog é posto à prova quando é publicado, e caso seja ruim, futuramente será conhecido como tal.

Quando um artigo é tomado pelo descrédito, seu autor também é penalizado, perdendo pontos com seus leitores habituais. Ele provavelmente será marcado por comentários negativos e conseqüentemente isso afetará também os novos leitores. Como as pessoas querem que seus textos sejam lidos, caso contrário escreveriam em diários pessoais, acredito que haja um certo apreço pela qualidade do conteúdo.

São os leitores desses blogs que vão definir o futuro. Com o passar do tempo surgirão nomes. Alguns autores se transformarão em "celebridades virtuais" (isto já acontece), outros cairão no esquecimento e alguns se arrependerão de ter iniciado. O fato é que, no futuro, quem merecer crédito, o terá.

E para "fechar o boteco", gostaria de lembrar daquela tragédia com o vôo 402 da TAM em 1996. Lembro muito bem de uma emissora de TV dizendo, na época, que a última frase do piloto teria sido - "estou salvando a escola". Em um video que pode ser encontrado no YouTube, que supostamente mostra a análise da caixa-preta da aeronave, incluindo o som da cabine, podemos perceber que a última frase é - "meu Deus, não!".

Antes mesmo de questionar a autenticidade desse vídeo, pense naquilo que você diria caso estivesse pilotando um avião prestes a bater no chão. Você provavelmente estará próximo da verdade. E ela não virá, necessariamente, de uma emissora de TV. Esse é o ponto. Se tivermos a capacidade de digerir a informação e evitar "notícias mastigadas", provavelmente encontraremos a verdade e saberemos a quem dar crédito.

terça-feira, março 13, 2007

Agora fedeu!

Em casa, amontoado no canto do quarto no meu pequeno escritório, tenho três computadores. Um é o computador da empresa onde trabalho e os outros dois são meus. Em horário normal de expediente, utilizo o computador da empresa. Nessa hora, às vezes, minha esposa utiliza um dos nossos dois computadores (o mais novo), enquanto o bom e velho P3 700 fica desligado. Aliás, ele quase sempre fica desligado e é utilizado eventualmente para armazenar meus backups.

Hoje, somente o computador da empresa estava ligado. Era mais uma terça-feira-chuvosa-normal de trabalho, quando derrepente senti um forte cheiro de queimado - Aquele cheiro característico de quando se queima algo que em hipótese alguma deveria estar queimando - Meu Deus, este computador, que nem é meu! Desliguei imediatamente o estabilizador na intenção de "salvar" alguma coisa.

O próximo passo era saber exatamente o que tinha sido destruído. Lá estava eu de quatro por debaixo das mesas na tentativa de poder identificar a origem daquele cheiro, que neste ponto já tomava forma de cheiro de conta bancária negativa, pois este equipamento está sob minha responsabilidade. Estranho, pensei - O cheiro parece estar vindo do outro lado (o lado dos meus computadores). Senti até um pouco de alívio porque os dois estavam desligados. De qualquer modo, fui "farejando" para o outro lado, já que aparentemente era lá a origem do problema.

Como os outros dois computadores estavam realmente desligados e meu roteador e HUB estavam intáctos, só pude pensar que era algum problema na fiação elétrica. Verifiquei todos os cabos. Nada. Bom, eu sabia que precisava ser mais minucioso.

Começei a cheirar as CPU's, começando pelo meu computador mais novo, passando por meu computador de backup e... - Ahá! É você? Mas você não estava desligado? Coloquei a mão por trás do gabinete e pude perceber que estava excessivamente quente para algo que estava desligado. Só para constar, quando eu digo desligado, não estou afirmando estar desconectado da rede elétrica.

À partir deste momento ficou fácil. Abri a máquina e constatei que a fonte tinha ido pro beleléu e era a causa do problema. Ainda não abri para ver o que aconteceu. Quem sabe encontro um inseto esturricado lá dentro (o famoso bug).


Lição do Dia

Sempre acreditei que eletrodomésticos desligados, mesmo que conectados à rede elétrica, não queimassem. De hoje em diante, se por alguma razão a casa ficar sozinha, vou puxar tudo da tomada antes de sair.

sábado, março 10, 2007

Não aposte na poluição visual!

Você conhece o Google? Esta pergunta, hoje em dia, corre o risco de ser considerada estúpida. Mas e se eu perguntar - Você repara no design dos produtos Google?

Neste momento, pode ser que você esteja resgatando mentalmente a imagem do site de pesquisas do Google, que é o mais popular. Agora me diga - Quantas "coisas" estão piscando ou se movendo pela tela, tentando desesperadamente chamar a sua atenção?

O Google, até que alguém prove o contrário, pode ser considerado o melhor exemplo de negócio na internet dos dias de hoje. E para atingir esta posição, sempre utilizou maneiras bastante discretas para veicular seus patrocinadores. Ao invés do famoso estilo norte americano baseado em banners estravagantes do tipo "Compre, compre, compre!", optaram por algo mais discreto e inteligente, como os AdSenses, que são montados de acordo com o contexto do site que os apresenta. Simplesmente genial!

Mas e aí? Será que as pessoas ainda não perceberam essa genialidade? Por quê ainda temos que topar com sites que utilizam banners apelativos, se o Google já provou que existem maneiras melhores de atrair as pessoas? E nem quero falar daqueles malditos pop-up's porque quero tentar esquecer que eles existem!

Não quero entrar em confronto com ninguém que defenda esse tipo de marketing apelativo. Para essas pessoas, só quero deixar um recado - O Google introduziu novos conceitos relacionados ao marketing na internet e as pessoas estão se habituando à eles. Portanto, não se espante se estas pessoas começarem a fechar seu site, sem dó nem piedade, caso você aparente estar desesperado para que elas cliquem em um determinado lugar. Pessoas de bom senso geralmente se aborrecem quando sofrem tentativas de serem manipuladas.

quinta-feira, março 08, 2007

O Software é Livre! Não é de graça!


Logo na primeira página do site do GNU, podemos ver a frase: "Free as in Freedom", que quer dizer algo como: "Livre, como em Liberdade" ou "Livre, E pela Liberdade". Na mesma página, logo abaixo, um texto deixa claro que "Livre" não tem nada a ver com "preço". Para aqueles que não sabem, à grosso modo, GNU é o próprio Linux. E que também pode ser chamado de "GNU Linux".

Em algum momento do passado, algum desafortunado introduziu "free" como "grátis". Mesmo hoje, um número bastante expressivo das pessoas que já ouviram falar em Software Livre fazem esta mesma consideração.

O objetivo deste artigo é dizer que isto está errado! Software Livre tem custo, sim. E pode ser bastante alto. Especialmente quando se pretende realizar uma migração ao mesmo tempo em que se interpreta o "free" erroneamente. A expectativa, quase sempre, é a de redução de custos. Está certo quando pensamos nos custos das licenças. Mas e o treinamento? Ou o tempo que as pessoas precisam para absorver as novas idéias e, em alguns casos, redefinirem sua maneira de trabalhar? Isto é dinheiro, também. Já vi casos em que funcionários desligaram seus Windows na sexta-feira, e quando voltaram na segunda e ligaram suas máquinas, deram de cara com o Linux. E ninguém deu explicação alguma. Isto tem alguma chance de ser considerado algo inteligente? Claro, o gerente deve ter um belo terno, um carrão, e se achar o máximo. Mas tudo bem, vamos lá...

Engana-se aquele que achou que sou um defensor do Windows. Na verdade, recomendo o Linux, quase sempre. Eu apenas acho que quando uma pessoa opta por um produto, precisa saber exatamente o que está comprando e, principalmente, quais são as conseqüências e quais medidas precisam ser tomadas para que tudo corra bem. Senão, vão sair por aí dizendo que Software Livre não presta, da mesma maneira equivocada que interpretaram o "free" no momento da sua escolha.

Uma das vantagens mais significativas do Software Livre não é o custo da licença, e sim a transparência. Em um sistema Linux, por exemplo, o usuário pode instalar todos os softwares, incluíndo o próprio kernel, à partir de seu código fonte. Inserir código malicioso em aplicações de código aberto é um caso raro, e quando acontece, geralmente é detectado num piscar de olhos, mediante à quantidade fenomenal de pessoas envolvidas em seu desenvolvimento. Outra grande vantagem é a incessante atividade. Geralmente os Softwares Livres são mantidos por grandes comunidades de desenvolvedores, permitindo que bugs sejam solucionados em questão de minutos, caso seja necessário. E estas comunidades geralmente ouvem você. É sério. Eles querem saber o que você pensa sobre seus produtos e o que precisa ser melhorado.

Estas (verdadeiras) vantagens são o que devem chamar a atenção daqueles que estão considerando a utilização de Software Livre, e não a economia que supostamente pode ser feita ao deixar de pagar custos de licença.

terça-feira, março 06, 2007

Lá vem a Borland com mais um Delphi

Não conheço o "Delphi for PHP", e pelo que conheço do Delphi "tradicional", não sei se quero.

Não estou dizendo que não dê para fazer algo decente em Delphi. Mas, me diga, sinceramente - Quantas aplicações decentes feitas em Delphi você conhece? No "mundo Delphi", dificilmente se começa algo. Geralmente se dá continuidade ao "trabalho" realizado por um estagiário qualquer, porque o "gerente" achou que como o Delphi tinha tudo mastigadinho e era fácil de trabalhar, podia colocar qualquer moleque para iniciar uma aplicação. Sim, o apelo do Delphi é exatamente esse. Algum tempo depois, após o balde de água fria e da bomba que chamam de "sistema" ter sido transformada num monstro devorador de programadores, contratam profissionais qualificados, mas dificilmente abandonam a linguagem, que é a causa do problema. Quando se chega neste ponto, não há o que ser feito.

A única forma de fazer uma boa aplicação em Delphi, é utilizar um conjunto bem pequeno da VCL (somente o necessário) e implementar o restante das coisas "no braço", bailando com o Object Pascal, que na minha opinião, não vale lá aquelas coisas. E, principalmente, esta tarefa não pode ser executada por amadores.

Você pode estar pensando - Mas se o Delphi é assim, como é que ganhou tanto mercado? Respondo. Tinha somente o VB e algumas outras poucas aberrações como concorrente no ano do seu lançamento. Uma coisa dá para afirmar - Mesmo o Delphi, em mil novecentos e uns quebrados, era muito melhor que o VB.

Antigamente a Borland produzia ferramentas melhores (para sua época), como o ambiente de desenvolvimento Paradox, com a linguagem PAL, que apesar de ser uma espécie de "Access para DOS", tinha bastante flexibilidade. Sinceramente eu espero que a Borland tenha usado o nome do Delphi neste novo produto apenas por razões de marketing, e que eles tenham resgatado alguma coisa boa dos velhos tempos.

sexta-feira, março 02, 2007

O Verdão Loucão

Primeiro eu gostaria de deixar claro que, ao contrário das outras grandes cidades, aqui em Curitiba, a saúde e transporte públicos funcionam razoavelmente. Muita coisa pode melhorar, claro, mas tenho tido boas experiências com ambos. Meu filho nasceu sem que minha esposa e eu tivéssemos plano de saúde, com total acompanhamento de um plano da prefeitura, chamado "Mãe Curitibana", o qual só tenho elogios à fazer.

Tá, mas e o Verdão Loucão? Bom, o verdão ao qual me refiro é o ônibus que faz a linha Interbairros II. Para quem não conhece Curitiba, estas linhas tem por padrão dar a volta em toda a cidade, em torno do centro, porém sem entrar nele.

Existe uma concentração de esforços com o objetivo de democratizar o transporte público. Várias medidas estão sendo adotadas para facilitar o acesso aos serviços públicos por deficientes, pessoas de baixa renda (há séculos o preço da passagem é o mesmo), idosos, etc.

O problema, é que tenho a impressão de que no meio de todos os ajustes que são feitos diariamente, acabaram se atrapalhando e pegaram todos os motoristas psicopatas que ainda tinham emprego e os colocaram na linha do Interbairros II. Definitivamente, esta "montanha russa verde" não é para qualquer pessoa.

Seus usuários são selecionados naturalmente. Precisam ser atléticos para se agarrarem no momento das curvas que às vezes chegam a tirar seus pés do chão (não é exagero), precisam ter excelente visão para poder ver com antecedência essas mesmas curvas e se prepararem para a "aventura" (senão pouco adianta ser atlético) e precisam ser especialistas em salto, porque esses ônibus não costumam ficar parados no seu ponto por mais de 4 segundos e como a idéia é descer logo dele, uns belos saltos às vezes são necessários.

Tudo isso acontece por causa de uma pressa que não se sabe de onde vem. Só sabemos que temos que permanecer correndo. Mesmo que não saibamos para onde estamos indo. Coisas de cidade grande.