Blogs como espaços informacionais

December 31st, 2003 § 3 comments § permalink

Recentemente o Caffo, do Pattern Recognition, tocou no assunto do formato dos blogs, reclamando da mesmice que impera tanto nos layouts quanto na estruturação de conteúdo dos mesmos. O assunto é interessante e possui várias ramificações, passando inclusive pela cultura compartilhada da chamada blogosfera.

Comentando no blog dele, eu disse que o maior problema é a inércia: nós nos acostumamos com o que todos usam e há uma certa dificuldade em quebrar o padrão. Isso dificilmente é uma surpresa, considerando que a inovação sempre procede da atuação de uma parcela consideravelmente menor de um determinado ramo de atividade humana. Em um meio imitativo e de fácil disseminação como a Web, isso se torna especialmente válido, mesmo que as oportunidades para inovar na mesma sejam também consideravelmente maiores.

Para constatar esse fato, basta olhar para sites na curva superior da lei de poder que descreve a blogosfera. Mesmo estes sites, contanto com um potencial superior em termos de possibilidades de realização, tendem a gravitar em torno dos mesmos padrões estruturais comuns. Eu digo isso não como uma forma de ofensa já que meu próprio site, que nem mesmo aparece na curva, também segue o modelo usual de conteúdo e barra lateral de acesso com dezenas de links que se atropelam perdendo muito do significado e utilidade. O fato que permanece é que há pouquíssimo trabalho sendo realizado neste tema. » Read the rest of this entry «

Emprego PHP

December 23rd, 2003 § Comments Off § permalink

A empresa para a qual eu trabalho está procurando alguém com experiência em PHP, MySQL e tecnologias de código aberto relacionadas para contratação imediata. Se você está interessado no emprego e reside na região metropolitana de Belo Horizonte, entre em contato comigo em privado.

Linux 2.6

December 18th, 2003 § 5 comments § permalink

Falando em Linux, a versão 2.6 final do kernel, uma das mais aguardadas dos últimos tempos, foi disponibilizada hoje. As novidades são muitas e as melhorias em todas as partes do sistema são extensas, impactando tanto servidores como desktops. Pelo que deu para perceber, o Linux tornou-se ainda mais estável, seguro e rápido. Agora é só esperar as próximas distribuições com o novo kernel.

Mandrake Linux 9.2

December 18th, 2003 § 9 comments § permalink

Há cerca de um ano atrás, a MandrakeSoft, produtora da distribução Linux de mesmo nome, anunciou que sua situação financeira estava crítica. Segundo a empresa, as necessidades de capital eram imediatas e, a menos que algo mudasse, a próxima versão em construção na época poderia nem existir. A empresa inclusive já entrara com um pedido de proteção contra falência na justiça européia.

Há poucos dias atrás, porém, a empresa anunciou que a situação financeira está, até onde possível, sob controle. Depois de sérias medidas de contenção, o ano fiscal foi muito bom, comparado com os anos anteriores. Embora o lucro tenha diminuído, por diversos fatores independentes, a margem de lucro da empresa aumentou e as perdas se reduziram. Novas versões foram lançadas, com imensas melhorias em relação às versões anteriores, e a empresa parece bem colocada para tomar o lugar da Red Hat, que recentemente saiu do negócio de desktops.

Essa situação me deixa contente com o desenvolvimento do mercado Linux. Apesar das recentes declarações do CEO da Red Hat, eu acho que o Linux está se tornando cada vez mais uma opção para o desktop do usuário comum, como já o é para o usuário mais avançado há um bom tempo. » Read the rest of this entry «

Armazendo árvores em banco de dados

December 17th, 2003 § 4 comments § permalink

Um dos problemas mais espinhosos de programação é armazenar estruturas em árvore — ou seja, hierárquicas — em um banco de dados. Exceto quando o banco suporta isso diretamente, providenciando alguma alternativa para resolver a impedância entre o modelo relacional e o modelo hierárquico, implementar esse tipo de coisa é sempre um trabalho complicado, passível de erros e percalços no meio do caminho.

Uma das implementações mais comuns é o modelo de listas adjacentes, ou modelo de pai e filho. Nesse modelo, as inserções e remoções são facilmente implementadas e tem uma performance boa. Por outro lado, retornar a estrutura hierárquica completa da árvore com uma boa eficiência é sempre mais difícil e mais custoso em termos de execução.

De uns tempos para cá, eu comecei a usar um modelo diferente chamado de conjuntos aninhados, que usa um algoritmo conhecido como travessia raiz-esquerda-direita modificada (modified preorder tree traversal). O algoritmo é um modelo um pouco complicado de entender inicialmente, mas a aplicação do mesmo fornece bons benefícios para o problema em questão. A inserção e remoção de dados é mais complicada e mais cara nele do que no modelo de listas adjacentes, mas a visualização dos dados e a operação da árvore de várias formas é também muito mais eficiente e fácil.

Eu já usei o modelo em algumas situações reais nos últimos tempos e os resultados foram muito bons. Além do ganho de velocidade, houve também um bom ganho no tempo de programação. Dado o fato de que estruturas hierárquicas são muito freqüentes na maioria dos sistemas, esse algoritmo compensa o tempo gasto aprendendo. Além do mais, existem também implementações prontas em algumas linguagens de programação mais usados, tornando a questão ainda mais fácil.

“Brinquedo” novo

December 12th, 2003 § 8 comments § permalink

Comprei uma máquina nova e ela chegou hoje. O “brinquedinho” é um Athlon 2.6GHz, com 1GB de RAM, 80GB de disco e placa GeForce 128MB 8x. Agora vai dar para fazer as coisas que eu queria. :-P

O engraçado é que é quase tudo 4 vezes maior que minha máquina atual. A atual me atendia perfeitamente para a maior parte das tarefas, mas tinha umas deficiências — principalmente na questão de jogos — que estavam começando a importar para mim. E, de qualquer forma, quem é que resiste a uma máquina nova?

Mais um problema sério no IE

December 12th, 2003 § 2 comments § permalink

Eu ia comentar a nova vulnerabilidade do IE, mas o Caffo já explicou muito bem o assunto no blog dele. Dá uma conferida lá. Na minha opinião, esse é uma dos problemas mais sérios descobertos no Internet Explorer até agora e tem potencial para causar muita bagunça.

Como o Caffo disse, mais um ótimo motivo para usar o Mozilla Firebird.

Atualização: A propósito, uma variação mais leve do problema afeta o Mozilla também. No caso do IE, até o link exibido depois fica modificado. No Mozilla, só a barra de status, que já era vulnerável a coisas similares na maioria dos navegadores. Infelizmente, considerando o universo de usuários Web, o problema também pode ser um pouco sério.

Links desaparecidos

December 9th, 2003 § 10 comments § permalink

Esses dias eu estava navegando ao acaso no meu próprio blog, verificando algumas entradas antigas. Clicando nos links dessas entradas, para relembrar alguns tópicos que eu havia comentado, fiquei impressionado com a quantidade de páginas não encontradas quando eu seguia esses links. Uma boa parcela daqueles links simplesmente haviam deixado de existir, mesmo tendo certeza que eu havia entrado esses links corretamente na época.

Curioso para descobrir a proporção de links com problemas, criei um programinha rápido em Python para verificar o assunto. O que o programa fez foi simples: varreu todos os arquivos que compõem o meu blog (um cópia local, é claro), recolheu todas os links no mesmo, e enviou uma requisição HEAD para cada uma as URLs recolhidas (ou GET, onde o método HEAD não era suportado).

No total, descobri que, somando as entradas nos meus dois blogs ativos (o em inglês e o em português), durante toda a existência dos mesmos eu postei cerca de 1200 links. Digo cerca porque algumas URLs nas páginas vem de comentários e algumas são recolhidas erradas pelo programa dada a dificuldade relativa de identificar propriamente uma URL em um texto.

O resultado do programa não foi muito de uma surpresa para mim, considerando a impressão que eu tive ao navegar pelo blog. De 1200 requisições, 45 retornaram um erro 404, ou seja, a página não existe agora embora existisse na época. Isso representa apenas 3,75% dos links, o que é uma quantidade bem pequena, considerando a mobilidade da Web. Por outro lado, mais outras 48 requisições, mais 4% do total, retornaram erros diversos.

Verificando alguns resultados, eu também descobri que alguns sites servem páginas 404 especiais que retornam incorretamente os códigos 200, 301 e 302, quando esses códigos indicam, na verdade, requisição bem sucedida, página movida permanentemente e página movida temporariamente. Os principais culpados, nesta área, são revistas e jornais online.

No geral, os resultados foram os seguintes:

43 domínios não encontrados (3,58%)
Alguns são problemas temporários de conexão, outros são problemas permanentes como sites que não existem mais (sites de candidatos, por exemplo).
1064 respostas bem sucedidas (88,67%)
Páginas encontradas, ou movidas. Alguns desses resultados, como mencionado acima, são incorretos, embora não sejam muitos, pelo que eu pude determinar.
93 erros (7,75%)
Estes incluem páginas não encontradas, erros de servidor e acesso negado.

Considerando o período envolvido (pouco mais de um ano e dois meses), quase que 10% das páginas que eu mencionei em alguma hora em meu blog estão com problemas. Pessoalmente, acho que 10% é um número bem grande de erros. Obviamente, é impossível esperar que todas as pessoas que possuem sites preservem o espaço de URLs. Existem alguns casos em que isso não é nem desejado realmente. Por outro lado, sites que poderiam tomar mais cuidado com isso acabam causando mais problemas. Citações são feitas, na expectativa de que sejam recursos permanentes e, de um dia para o outro, esses recursos desaparecem.

De qualquer forma, foi um experimento interessante. Como não há como prevenir tal problema, também não há medidas a serem tomadas. Fica só aquela sensação de que os links aqui no site estão lentamente desaparecendo no grande buraco negro que existe no centro da Web.

Criando Linguagens de Programação (Declarativas)

December 4th, 2003 § 7 comments § permalink

Criar uma linguagem de programação não é uma tarefa fácil. Para os interessados no assunto, uma discussão na lista ll1 rendeu uma lista de questões a se fazer quando da criação de uma linguagem de programação. Obviamente, é uma lista genérica, mas dá uma idéia muito boa do que está envolvido no processo.

Monopólio

December 2nd, 2003 § 16 comments § permalink

Eu odeio monopólios. De qualquer espécie. Eu prefiro ter um serviço mediano, mas com possibilidade de escolha do que só poder obter alguma coisa de um único provedor de serviços ou pior, nem conseguir o que eu quero.

Já faz um ano que estou tentando colocar Velox na minha casa. Eu não quero cabo; quero ADSL. Eu não tenho TV e não quero ter que pagar por algo que não preciso só para ter acesso ao que preciso e, ainda por cima, ter que dividir isso com outras pessoas. Assim, eu quero Velox. E preciso também, para poder economizar no tanto que eu gasto de Internet por mês.

O problema é que a Telemar não quer me fornecer o serviço. Embora eu ligue regularmente para a empresa há um ano, não há disponibilidade de serviço — e tampouco previsão — para o local onde eu moro.

Com quem quer que eu fale lá, a resposta é a mesma: não queremos você como cliente. É assim que eu me sinto. Cidades menores ao redor de Belo Horizonte tem o serviço. A casa da minha mãe, três ruas abaixo da minha, tem o serviço. A minha casa, situada em um ponto bom do bairro, não. E um bairro que, ainda por cima, tem um bom perfil de clientela para esse tipo de produto.

Monopólios são desprezíveis. Como a Telemar é a única fornecedora do produto aqui em Belo Horizonte, ela não está nem aí para alguns poucos clientes que perde porque ganha no bruto, já que há sempre interessados nas áreas onde cobre.

E, enquanto isso, eu vejo cartazes e outdoors e propagandas; todos me contando como minha vida seria mais fácil se eu tivesse Velox. Mas, se a Telemar não quer me fornecer, fazer o quê. Resta apenas curvar minha cabeça em submissão ao monopólio.

Where am I?

You are currently viewing the archives for December, 2003 at Superfície Reflexiva.