Tudo Sobre Nada

ClearType == Banhada

É só impressão minha ou o ClearType é uma grande banhada? Já andei para trás e para a frente com o wizard de configuração[1] e não consigo que aquilo fique com um aspecto minimamente aceitável. Não anda sequer perto do que se consegue em X11 com subpixel hinting.

Em X11 as fontes ficam aparentemente mais bem definidas, mas mantêm um bom nível de contraste e cor (texto preto mantém-se preto). Inversamente, o ClearType apenas consegue tornar as fontes numa massa desfocada e de tonalidades coloridas bizarras. Depois ainda lhe chamam uma grande inovação, mas será que anda tudo doido?

[1] O PowerToy, porque a versão online usa ActiveX e eu só aceito usar o Internet Explorer para o Windows Update, e vá lá...

Ética Empresarial

Sempre que se criticam as práticas comerciais da Microsoft, alguém tem de sair debaixo de uma pedra e afirmar que são perfeitamente aceitáveis e naturais, porque o objectivo da Microsoft é gerar lucro e se isso implica uma atitude anti-concorrencial então que seja. Mas estão enganados...

O objectivo de qualquer empresa é, no final do dia, gerar receitas e ter lucro, mas esse nunca deverá ser o seu objectivo primário, mas sim algo que acontece como efeito secundário. Parece ridículo, mas sigam o meu raciocínio...

Pensem num conjunto de empresas extremamente lucrativas à vossa escolha, agora tentem descobrir quantas delas partiram de um «deixem cá ver o que é que eu posso fazer para me tornar milionário». Acho que vão acabar por concluír que são poucas, se existir alguma...

Acontece que a motivação pelo lucro e as acções necessárias para criar uma empresa de sucesso são incompatíveis. De um lado temos a visão egoísta «espremer os clientes até ao último cêntimo» e do outro lado temos uma visão orientada à sua satisfação.

Uma empresa deve, em primeiro lugar, tentar produzir bens ou serviços que agradem ao cliente, tentando a partir dessa base equilibrar o preço de venda com os custos de produção. Neste ponto estamos a tentar agradar ao cliente sem nos sacrificarmos.
Esta situação é a ideal, dada a minha premissa inicial. No entanto, é possível caminhar no sentido do lucro sem a violar. Como?

Cada um de nós associa um determinado valor a cada produto, e esta é a base segundo a qual criamos a sensação de que estamos a ser roubados ou a comprar uma autêntica pechincha. A empresa deve tentar descobrir qual é esse valor "intrínseco" do produto e usá-lo, possivelmente ligeiramente acima, só para lucrar mais uns trocados. Na maioria dos casos, os custos de produção serão inferiores a esse valor, e os consumidores ficarão contentes na mesma.

Dois exemplos:

  1. Dar 20€ por um CD-áudio é um roubo, mas 20€ por um DVD-vídeo já é mais ou menos razoável. Se calhar se os CD-áudio custassem 7,5€, o pessoal não recorreria tanto aos MP3 piratas e se calhar as editoras até teriam mais lucro. Neste caso eles estão a tentar explorar o consumidor, e este vinga-se.

  2. Há por aí leitores de DVD de sala a custar 45€, o que é uma autêntica pechincha. Neste caso eles podiam vendê-los uns euros acima, e o consumidor ficaria contente na mesma.

No fundo tudo isto é uma questão de imagem. Uma empresa que procure o lucro a todo o custo não o vai conseguir esconder por muito tempo, o que vai acabar por manchar a sua imagem e empurrar os consumidores para a concorrência.

O que é que isto tem a ver com a Microsoft?

Os objectivos da Microsoft são claros, ganhar dinheiro, nem que para isso tenham de vender produtos de fraca qualidade a preços elevados, perverter standards para eliminar a concorrência, ou usar o seu peso para impor acordos anti-concorrênciais aos seus parceiros (que os aceitam ou abrem falência).

Isto tem vindo a desgastar enormemente a sua imagem, mas a posição da Microsoft hoje em dia não deixa grandes margens para escolha. Os consumidores continuam a comprar os seus produtos, porque acham que não têm outro remédio, e assim a Microsoft não sofre consequências visíveis desta atitude selvagem.

Mas temos de nos lembrar que o mercado muda, e apesar de hoje em dia não se prever nenhuma mudança que possa revelar-se fatal para a Microsoft, elas acontecem e são mesmo assim, imprevisíveis. Nessa altura a Microsoft vai perceber que a imagem é muito importante, e poderá já não ir a tempo de a alterar.

A IBM

A IBM apercebeu-se disto recentemente. A sua dimensão descomunal tem agora menos importância do que tinha antigamente, quando a sua área principal era o hardware. Agora, empresas mais pequenas podem oferecer serviços com o mesmo nível de qualidade da IBM, e a questão da imagem toma uma relevância acrescida. Ora a IBM não gozava de boa imagem entre as classes técnicas, e estas podiam influênciar os decisores na escolha de contratos de serviços técnicos.
Na minha opinião, essa é uma das razões do apoio que a IBM dá a diversos projectos opensource. Não só lhes permite obter proveitos do software em si (por exemplo, podendo ter Linux disponível para toda a gama de arquitecturas que vende), como ainda sobe na consideração de muita gente, que mais tarde não hesitará em recomendar IBM aos seus managers. Ser um bom cidadão compensa.

A Apple

Outro caso interessante é o da Apple, cujos produtos são relativamente caros, mas aceitáveis dada a boa imagem da empresa e a sua reputação de qualidade.

A Sun

O caso inverso parece ser o da Sun. Não estão a conseguir adaptar-se às mudanças do mercado e ainda por cima estão a dar cabo da sua própria imagem. Quando a Sun for encarada nos mesmos termos da SCO, estarão definitivamente enterrados.

Moral da história

Tal como na política, as empresas têm de ser simpáticas para as pessoas, pois estas votam com o seu dinheiro. O problema actual é que a Microsoft é uma ditadura de partido único...

Modas

Primeiro foi o Google Desktop, depois a Yahoo anunciou que vai disponibilizar em breve o seu próprio programa de "Desktop Search", e agora a Microsoft também apresenta algo semelhante.

Sinceramente eu não entendo o hype todo em redor disto... Eu raramente faço pesquisas nos meus ficheiros locais, a não ser a procura ocasional de uma "DLL" com o search do Windows, ou um grep para encontrar aquela string no meio de uma data de ficheiros de código.

Alguém é capaz de me explicar porque é que todo o homem mais o cão tem de lançar uma coisa destas?

À Procura de Um Bug

Há uns tempos que um problema com o Xine e o RealPlayer me andava a incomodar. O que acontece é que após usar o Xine, o RealPlayer deixava de mostrar vídeo. O problema é que o Xine (a libxine, mais exactamente) altera o valor da propriedade "XV_AUTOPAINT_COLORKEY" da extensão XVideo, do default "1" para "0" e não a volta a colocar a "1" ao sair. Depois o RealPlayer também não se preocupa em inicializar o valor a "1", fiando-se no valor que já lá está. E quando é "0", não há vídeo para ninguém.

Relatei isto aos tipos do Xine e supostamente já estava corrigido. E realmente o problema parecia ter desaparecido, até ter começado a usar o Totem.

Entretanto relatei o caso aos tipos do RealPlayer.

Convencido que o problema estava no Totem, decidi mergulhar no código dele para tentar dar com o galho. Para isso precisava de algo com que o comparar, e decidi pegar no sxfe, um player minimalista baseado na libxine. Ora este também tinha o mesmo problema... Toca então de ver o que é que o Xine (o frontend) está a fazer de mágico. Aparentemente nada...

Depois de umas horas, já sabia mais ou menos como funcionam estas coisas na libxine, e mais me parecia que não havia nada de errado nos players. O driver XVideo da libxine devia estar a guardar mal os valores, mas apenas quando não estava a ser usado pelo Xine.

Decidi então perguntar na lista xine-devel se o Xine fazia alguma magia com a libxine para obter este efeito, ao que me responderam que não, e me aconselharam a meter uns "printfs" no driver. Já me tinha ocorrido fazer isso, mas não me estava a apetecer compilar a libxine. Só que agora parecia que não havia outra hipótese.

Depois de umas brincadeiras com o driver Xv, concluí que devia haver uma race ou algo do género, já que ele afinal restaurava sempre os valores originais. Não estava muito longe da verdade, mas não era bem esse o problema. Resultado, 3 linhas foram suficientes:

XLockDisplay(this->display);
XSync(this->display, False);
XUnlockDisplay(this->display);

Uma data de horas para produzir um patch de 3 linhas... Mas até teve piada. Não entendo porque é que se diz que corrigir bugs é um trabalho entediante. Só se for para aqueles que não têm interesse em produzir código robusto.

Para Bem da Nação

Por esta altura já devem saber que está disponível o Thunderbird 1.0. O que talvez não saibam é que nos dias anteriores ao seu lançamento se desencadeou uma guerra no newsgroup de localização do mozilla. Pelo menos eu nunca tinha visto tanta actividade.

Já aqui falei anteriormente do meu descontentamento acerca do processo de localização, por nos quebrarem constantemente as ferramentas[1] e tomarem decisões que nos afectam sem nos pedirem opinião. Pois é claro que eu não estou sozinho nisto, e a pressão acumulada nas mais diversas equipas está agora a ser libertada.

Acontece que era suposto as localizações do Thunderbird serem incluidas no CVS para que se pudessem gerar builds localizadas da mesma forma que agora acontece com o Firefox. Só que o pessoal da Mozilla Foundation estava com uma pressa desgraçada para meter cá fora uma versão 1.0, muito ao contrário da filosofia normal nos projectos opensource de "release it when it's done". Seguiu-se uma longa discussão onde se expunham os mais variados motivos para adiar este lançamento psicologicamente significativo. Os argumentos começaram por ser estritamente relacionados com o processo de localização, mas acabaram por se alargar mais. Mas eles já tinham lançado uma release candidate, portanto já não havia hipótese.

O processo burocrático e autista em relação à comunidade, seguido pela Mozilla Foundation, onde as trademarks e os ditames dos poderes instituidos têm toda a importância e a opinião de quem contribui é irrelevante, parece-se terrivelmente com outro projecto, que recentemente levou uma chicotada psicológica fatal.

Estas guerras são tristes (especialmente porque trazem algumas posições extremadas no meio), mas é melhor que aconteçam agora, enquanto ainda há tempo para abrir os olhos e encarar a comunidade de outra forma. Um projecto que produz software de tão boa qualidade, merece melhor.

[1] Neste momento eu traduzo o Firefox completamente à mão, pelo menos assim há menos para quebrar...

X Desktop Waves

Hoje descobri uma peça de eye-candy bastante engraçada, o xdesktopwaves. O seu propósito é simples, transformar o desktop numa espécie de lago, onde o movimento do rato e das janelas produzem ondas. O efeito é bastante engraçado.




1 Mbit

Desde quarta-feira que a minha ligação ADSL atingiu a barreira psicológica de 1 Mbps. A Telepac está a fazer a actualização a todos os seus clientes do serviço de 512/128Kbps para 1024/256 Kbps[1], no seguimento do que o SAPO já havia feito aos seus clientes do serviço "Pro".

Na navegação web normal não se nota grande diferença, mas os updates do Fedora (que puxo do tux.cprm.net) "caem" agora muito mais rapidamente. Seja como for, é bom fazer downloads a 108KB/s (o ADSL funciona sobre ATM, logo a capacidade real é só 85% dos 128 KB/s que se esperariam de 1 Mbps).

Só a actualização dos limites de tráfego é que não foi por aí além, mas mesmo assim, foi melhor que nada. Os 4Gb internacionais passaram a 5Gb e os 40Gb nacionais mantiveram-se inalterados (o que não me afecta muito, eu gasto pouco tráfego nacional).

No entanto o aumento da velocidade não melhora a qualidade da ligação quando esta é usada por mais do que uma pessoa em simultâneo. Parece que vou ter mesmo que configurar um traffic shaper na minha gateway, nem que seja só para controlar os uploads. Cá em casa somos dois (eu e a minha irmã) a usar a ligação concorrentemente, e quando ela está a fazer algum upload via MSN Messenger isto fica completamente entupido. Não há largura de banda que valha, quando não exitem regras de fairness na ligação...

Sinceramente não me está a apetecer usar o wondershaper as-is, porque a minha intenção não é garantir baixas latências no tráfego interactivo a qualquer custo[2], mas sim garantir um escalonamento justo da banda disponível pelas ligações activas (e também quero que fique bem integrado com as minhas regras de firewalling). No entanto, acho que vou começar por ele, vendo como é que aquilo funciona. Julgo que vou ter bastante com que me entreter, já que o tc me parece um mundo em si próprio...

[1] Bom, no meu caso a Telepac (na área de clientes) ainda diz que está pendente, mas o meu modem e as velocidades de download dizem o contrário.
[2] O wondershaper aumenta milagrosamente a responsiveness da ligação, sacrificando uma percentagem
(não muito grande) da banda disponível.

Actualização: Grrrnf! Agora já aparece 1 Mbit na área de clientes, mas o limite internacional voltou aos 4Gb... mas que raio?! Se não tivessem dado nada era uma coisa, agora dar e voltar a tirar...?

Enterprise - A Miragem

Há anos que se discute se o Linux está ou não preparado para o segmento enterprise, quando na realidade se deveria discutir o que é realmente isso de enterprise...

No meu entender, enterprise são aquelas situações, normalmente associadas ao big business, onde a performance e a robustez são críticas. Mas nem todas estas situações, apenas aquelas onde está a correr software proprietário de renome ou software da Microsoft.
Digo isto porque parece que sempre que o Linux ou qualquer outro software opensource começa a dar cartas numa área denominada de enterprise, subitamente esta deixa de o ser e o "enterprise" é agora outra coisa.

Anda por aí muita gente a enterrar a cabeça na areia para não ver aquilo que se tem vindo a tornar cada vez mais óbvio...