Author Archives: theMage

MySQL – Where e Indices

Published by:

Quando se desenvolve para web, a utilização de bases de dados é grande parte do dia a dia. Especialmente quando se tem o prazer de trabalhar em projectos diferentes regularmente.

E quando se trabalha com bases de dados cujos tempos de resposta são críticos, a relação entre os índices existentes na base de dados e os campos utilizados para filtrar os registos é critica.

Dependendo do motor de base de dados utilizado, o tipo de indices e condições de filtragem (clausula WHERE do SQL) podem variar. No entanto (quase) todos têm em comum três tipos de índices: Primary KeyUniqueIndex (ou Key).

No caso particular do MySQL existe ainda um quarto tipo de índice que é o Fulltext, que tem equivalente no Context do Oracle, e um equivalente no MS SQL Server.

É importante conhecer estes quatro tipos de índices para sabermos o que esperar e quando utilizar cada um deles.

Tipos de Índices

Primary Key

Um índice do tipo Primary Key é a chave primária de um registo, o identificador único do registo. Um campo (ou conjunto de campos) sobre o qual seja criado um índice deste tipo não pode ter qualquer valor repetido, e não pode ter qualquer valor NULL (campo vazio).

Utilizar um valor presente neste tipo de índice é normalmente a forma mais rápida de encontrar um registo.

Dependendo do motor de base de dados, e da definição da base de dados, muitas vezes a primary key de uma tabela é um campo cujo valor é auto-incremental, isto é, o valor do campo para o próximo registo é igual ao valor do campo no ultimo registo inserido mais um valor de incremento (normalmente 1, mas pode variar). No caso de motores de bases de dados que não suportam campo auto-incrementais (como o Oracle), existem normalmente funcionalidades que permitem encontrar um valor para atribuir a estes campos (como as SEQUENCEs, ainda no Oracle).

A questão é que para estes campos, o valor nunca se repete, e nunca pode ser NULL (vazio), pelo que o valor do campo pode ser sempre utilizado para aceder ao registo.

Chaves Únicas (UNIQUE)

O segundo tipo de índices são as Chaves Únicas (UNIQUE). Estas chaves, tal como asPrimary Key nunca podem ter valores repetidos. Mas ao contrário destas podem ter registos com valores NULL (vazios).

Com isto conseguimos ter uma forma de aceder sempre a um determinado registo da base de dados, mas sem sermos obrigados a atribuir sempre um valor a este campo.

Índices normais (KEY ou INDEX)

O terceiro tipo de índices permitem valores repetidos e valores NULL. Ao contrário das chaves únicas, estes índices destinam-se a encontrar numa tabela vários registo que partilham um mesmo valor (ou conjunto de valores), e não um único registo, ou para criar listagens ordenadas.

Não existem muitas regras que não se possam violar quando se criam este tipo de índices, mas não é normalmente considerado muito vantajoso criar índices que não permitam dividir os registos na base de dados em vários grupos.

Por exemplo, criar um índice num campo de tipo lógico cujos valores possíveis sãoverdadeiro ou falso, e em que o número de registo são mais ou menos semelhantes para um e outro valor, ou em que o valor porque normalmente se efectuam a maioria das listagens é o que tem mais registos não é muito relevante em termos de performance (na maioria dos caso).

Ao contrário, se a maioria dos valores são únicos, e especialmente se queremos ordenar as listagens de acordo com os valores desse campo, a criação de um indice é uma mais valia indesprezável.

Indexar todos os campos, também não é, por norma, uma tarefa muito proveitosa. O tamanho ocupado pelos índices duma tabela deve ser o menor possível, assim como o seu número, por forma a reduzir as possibilidades de índices utilizáveis, e com isso melhor o tempo de resposta do motor de base de dados.

Criar índices com vários campos também pode ser uma forma de melhor os tempos de resposta dos queries que fazemos à base de dados, especialmente se sempre que fazemos uma listagem de dados um conjunto de campos é sempre utilizado para filtrar os registos, ou para os ordenar.

Fulltext Search

Os índices do tipo FullText Search são uma funcionalidade interessante de vários motores de base de dados. Estes índices permitem-nos obter rapidamente registos que contenham uma determinada palavra num campo ou conjunto de campos.

São indicados para implementar sistemas de pesquisa, pois permitem muito rapidamente obter os registos que contém uma ou várias palavras passadas, e podem ser mesmo utilizados para ordenar esses registos de acordo com a relevâncias da pesquisa efectuada.

O problema de implementar pesquisas utilizando este tipo de índice são:

  • Palavras que existam em muito registos são ignoradas (por serem demasiado comuns e consequentemente irrelevantes)
  • Palavras menores que um determinado tamanho (3 letras normalmente) são igualmente ignoradas.
  • Pesquisas mais complexas do que uma listagem de artigos com uma ou mais palavras de um conjunto passado são possíveis, mas a sintaxe não é óbvia, especialmente para não programadores

Isto, obviamente, são problemas menores, especialmente porque a maioria dos utilizadores faz pesquisas utilizando apenas listas de palavras, e raramente se procura algo pelas palavras mais comuns de uma amostra. Não se procura palha num palheiro com esperança de encontrar uma qualquer palha especial.

Condições WHERE

A clausula WHERE do SQL, utilizada em quase todos os motores de base de dados hoje em dia, serve para filtrar os registos que se irão obter como resultado da listagem (alteração ou remoção também são instruções que podem ser filtradas com o WHERE. Concentremo-nos nas listagens porque são a tarefa mais comum, especialmente quando se programa para ambientes abertos como a Web, e aquela em que a performance é mais relevante – por ser a mais comum).

Mas, então, que atenções devemos ter na clausula WHERE quando escrevemos uma query SQL?

A primeira coisa que devemos ter em atenção é verificar que estamos a colocar as condições de filtragem da condição mais limitante para a menos limitante, isto é, que a primeira condição no WHERE é aquela que, se utilizada sozinha, devolve menos registos, e que a ultima é a que devolve menos.

Quando criamos índices que tenham os mesmo campos que os utilizados na condição de filtragem (ou alguns dos utilizados), devemos verificar que os campos se encontram no índice pela mesma ordem que se encontram na condição de filtragem.

Os campos para que não foram criados índices devem ser deixados para o fim. Isto, claro, se os índices tiverem sido bem criados, isto é, nos campos que permitem fazer maiores filtragens na base de dados.

Por exemplo, se precisa de listar artigos por dia e por categoria, que estejam activos, e tem (em média) 10 artigos por dia, 50 por categoria e 300 activos e outros tantos activos, criar um índice com a data e a categoria do artigo será provavelmente uma boa ideia, e é igualmente boa ideia colocar as condições na condição WHERE nessa mesma ordem.

Na clausula ORDER BY e ON (dos JOINs) aplicam-se as mesmas regras.

Conclusão

Na criação dos índices numa base de dados é importante saber que tipo e quantidade de dados lá serão colocados, e é preciso, acima de tudo, ter consciência da forma como esses dados serão apresentados.

Crie sempre uma primary key, ou poderá nunca mais conseguir alterar os registos ou aceder-lhes directamente.

Sempre que a primary key não seja utilizável para tudo, crie uma chave única para aceder directamente aos registos. Por exemplo, parte dos URLs utilizados no Web a Sério são uma chave única da tabelas de posts.

E vocês, há alguma consideração não referida que utilizem na criação dos vossos queries? Este artigo apresenta algo que nunca tinham considerado?

Que questões da Programação para Web gostariam de ver aqui discutidas?

Sites do tipo Digg

Published by:

Neste post apresento-vos uma lista de sites do tipo do Digg, em que os utilizadores podem submeter artigos e votar neles de acordo com a importancia que acham que têm.

Genéricos e Noticias

Animais

Carros

Desporto

Direito

Empresas e Empreendedores

Bolsa

Empreendorismo e Ideias

Emprego

Marketing e Publicidade

Vendas

Medicina

Musica

PodCasts

Politica

Sociedade

Celebridades, Cinema e TV

Culinária

Concursos

Crime

Cultura e Eventos

Língua e Linguagem

O Pior

Sexualidade

Viagens

Vinhos

Tecnologia

Design

Fotografia

Internet

Jogos

Programação

Redes

Space

Toons, Comics e Comédia

Vídeo e TV

Para Adultos

Esta lista está ainda muito incompleta, bem sei. à medida que for encontrando novos sites irei-os incluindo na lista. Se souberem de algum que tenha ficado esquecido, Enviem-mo ou coloquem-no nos comentários.

Entretanto aqui ficam outras listas, não categorizadas:

Promova os seus blogs em sites de divulgação social

Published by:

Existem cada vez mais sites de promoção social de artigos, como o Digg, o exemplo clássico.

Estes sites são uma excelente forma de divulgar os seus conteúdos.

Razões para os utilizar

Existem várias razões para tirar partido dos sites de divulgação social. Nestes sites cada utilizador pode submeter os artigos que considerar interessantes, e os vários outros utilizadores do site têm a possibilidade de votar positivamente (e nalguns casos negativamente) nesse artigo, levando-o a ser promovido para a primeira página quando (e se) atingir a pontuação mínima para essa promoção.

Existem várias razões para utilizar estes sites:

  1. É simples submeter os seus artigos nestes sites;
  2. Espera-se que você o faça;
  3. Os utilizadores do site podem decidir do interesse do seu artigo, e promovê-lo ou não de acordo com a opinião de cada um;
  4. São um bom local para encontrar informação e ideias, pois os artigos que atingem a primeira página são normalmente relevantes
  5. Permitem comentar e votar em artigos de outros utilizadores (ou submetidos por eles)
  6. Existem sites deste tipo generalista e outros dedicados a temas específicos, é uma questão de encontrar os que lhe interessam.

Como tirar melhor partido

Submeter os seus artigos para estes sites é apenas uma das formas de tirar partido destes sites.

A maioria deles permite-lhe, por exemplo, comentar os artigos submetidos, e os seus comentários podem ser utilizados para o promover, e em consequência promover o seu site, que na maioria das vezes pode divulgar no seu profile.

Acerca dos comentários, obviamente, aplicam-se os mesmo princípios que referi em Comentários – Da informação adicional ao SPAM. Fazer apenas comentários não é especialmente útil. Fazê-lo de forma a acrescentar informação útil é.

Acrescente informação e ficará conhecido por isso. Limite-se a fazer comentários idiotas e rapidamente os seus comentários deixaram de receber a atenção que poderiam receber.

E não se esqueça. Vote nos artigos submetidos pelos outros utilizadores que considera interessantes. Se os utilizadores não votarem nos artigos uns dos outros, como é que os artigos vão chegar à primeira página? Se você não vota nos artigos dos outros utilizadores porque é que eles devem votar nos seus?

Regras de boa educação

Como em todas as comunidades, estes sites têm também algumas regras que devem ser respeitadas.

Algumas pessoas poderão dizer-lhe que não deve submeter as suas próprias estórias, que isso é auto-promoção. Eu não concordo com esta regra (ao contrário do que o Sérgio Rebelo possa pensar. Estes sites destinam-se a divulgar artigos interessantes, e se o seu artigo se incluí nessa categoria não vejo porque não o promover.

No entanto, não crie artigos com links para artigos de outros blogs/sites e submeta esses artigos. Quando acha que um qualquer artigo de outro autor merece destaque, destaque-o directamente, ainda que o mencione no seu blog.

Isso tem duas vantagens:

  1. Se por alguma razão o seu blog ficar indisponível, os utilizadores continuam a ter acesso à informação que achou que merecia ser divulgada.
  2. Você não é considerado spammer, e as submissões que fizer no futuro continuam a ser consideradas como relevantes. De outra forma os utilizadores mais regulares do site podem começar a desconsiderar as suas submissões apenas porque algumas delas são links para artigos que não acrescentam informação.

Não comente negativamente comentários ou artigos porque discorda do ponto de vista apresentado.

Se o artigo apresenta e justifica devidamente o ponto de vista apresentado, simplesmente não vote nele se não concorda.

Se pelo contrário o artigo apresenta erros graves, não justifica as opiniões expressas e as apresenta como se fossem factos, é inconsistente ou mal escrito, se se baseia em pressuposto claramente errados, ou se é apenas um link para um outro artigo, aí justifica-se que vote negativamente a submissão ou o comentário.

Seja educado, em relação aos outros utilizadores e aos artigos apresentados.

Ser educado, no entanto, não significa ser cínico. Não precisa de dizer que gosta muito de um artigo ou comentário que acha que está mal escrito. No entanto pode ser objectivo quando critica o artigo ou o comentário, focando a sua critica sobre o artigo e não sobre o autor, e sendo objectivo.

Diga, por exemplo, “o comentário tem os seguintes erros gramaticais: …”, e não “O zemanel é um burro que nem … sabe escrever”.

Acima de tudo lembre-se que estes sites não são acerca dos seus utilizadores, mas acerca dos conteúdos que os seus utilizadores criam e lêem. Mas lembre-se também que os utilizadores são tão importantes como os conteúdos. Você precisa que dos outros utilizadores. Precisa que eles submetam artigos para que possa mais facilmente saber quais as mais recentes novidades, e quer que eles leiam os seus conteúdos.

A principal regra destes sites, como da sociedade em geral é o respeito mútuo. Havendo respeito mutuo tudo se torna mais simples.

Update: A pedido de algumas familias, fiz uma lista de sites do tipo digg.


Problogging – Trabalho Duro ou Dinheiro fácil

Published by:

Nos últimos tempos o tema do problogging tem sido muito falado. Mas será que é realmente possível ser problogger? E compensa?

Problogger

Antes de mais comecemos por definir o que é um problogger.

Eu chamaria problogger a uma pessoa que consiga viver normalmente apenas de lucros obtidos directamente dos seus blogs.

De acordo com esta definição muitas pessoas que são consideradas probloggers seriam retiradas da lista, ou a ser mantidas na lista, uma grande parte dos seus rendimentos declarados como consequentes dos seus blogs não seriam contados.

Porquê? Porque na realidade a grande maioria desses rendimentos são rendimentos indirectos. Rendimentos Indirectos obtidos de diversas formas, como seja o design e a criação de blogs para outras pessoas, cursos sobre blogging, ou outras áreas mais ou menos relacionadas com os seus próprios blogs.

Ainda assim essas pessoas poderiam ter rendimentos acima da média apenas contanto os rendimentos directos dos seus blogs?

Sim, algumas delas poderiam. Não seria difícil conseguir rendimentos mensais com quatro dígitos, mesmo em euros. Mas daí aos seis dígitos anunciados em alguns casos vai uma longa distância.

Conseguir um rendimento de seis dígitos anualmente significa, tem termos práticos fazer 8300 dólares ou euros por mês. Não que isso seja impossível, mas é preciso ter os blogs certos para isso.

Significa em termos práticos ter blogs que consigam em média 8,30 dólares por cada mil pageviews de retorno e que tenham um pouco mais de um milhão de pageviews por mês.

Nenhum dos dois me parece realmente difícil. Mas digam-me… quem já conseguiu encontrar as áreas em que o CPM seja de 8,3 dólares por mês? Uma pessoa? Duas? E querem partilhá-las com o resto de nós, comum mortais?

E um milhão de pageviews por mês nos vossos blogs, já conseguiram? E conseguem manter esse tráfego estável?

Sim, é tão difícil como parece. Manter um blog com um tráfego estável significa actualizá-lo constantemente. Sim, ao longo do tempo o tráfego proveniente dos motores de pesquisa tende a aumentar na proporção em que aumenta o histórico do site.

Mas com sites profissionais a crescer diariamente vários posts, um blogger individualmente dificilmente conseguirá manter o ritmo durante muito tempo, muito menos sem sacrificar a qualidade dos seus conteúdos.

Mas, então, não é possível ser problogger? É, claro que é. Mas é muito difícil ser simultaneamente problogger e manter uma vida pessoal e social muito activa. Acima de tudo, mesmo que se consegui criar rendimentos acima dos necessários, será difícil disfrutá-los convenientemente.

Há vários exemplos de pessoas em Portugal que se podem enquadrar no grupo dos probloggers, ou que estão muito próximo de lá chegar. Mas quanto tempo é que essas pessoas dedicam por dia aos seus blogs? 4 horas? 6 horas? 10 horas? Bem, tendo em conta o número de posts que leio em alguns blogs portugueses todos os dias eu diria que o tempo dispendido é muito, especialmente se contarmos com o tempo de pesquisa necessário para encontrar todos os conteúdos publicados.

Mas poderão estes rendimentos crescer até onde? E quando o blogger deixar de trabalhar, porque tirou férias ou porque não lhe apeteceu colocar posts nesse dia, nessa semana, ou mesmo nesse mês? Vai continuar a ter rendimentos? Os mesmo ou mais?

Mas existe alguma solução melhor? Bem, deve haver. Dizem que a única forma de criar rendimentos que crescem infinitamente é obtê-los a partir do trabalho de outras pessoas. É por isso que as empresas contratam pessoas. Para ganhar dinheiro com o trabalho delas.

A questão que se coloca é como aplicar o mesmo principio na internet.

Claro, já existem bloggers a contratar pessoas para colocar conteúdos nos seus blogs. Essa talvez seja uma forma de crescer. Que outras alternativas existem?

Sim, o futuro, pelo menos onde está o dinheiro que faz diferença, não está nos blogs. Os blogs são um forma interessante de expressarmos a opinião, de divulgarmos os nossos produtos e serviços, mas na realidade o dinheiro que faz diferença estará cada vez mais nos sites colaborativos, como os velhinhos fóruns, e os novos serviços de tags e de links partilhados, e em muitos outros serviços que irão surgir pela Web ao longo dos próximos anos.

Serviços que funcionarão de forma tão autónoma quanto possível, que serão alimentados pelos próprios utilizadores, e que crescerão independentemente de se encontrarem em auto-gestão ou não, pois não haverá diferença para os utilizadores.

São serviços que levarão tempo a ser implementados, estarão em beta, enquanto são testados e sofrem correcções durante algum tempo, e quando se tornarem produtos estáveis libertarão os seus criadores para trabalharem noutros produtos e serviços, sem deixarem de lhes pagar o investimento que fizeram.

Não que os blogs e os problogger tenham os seus dias contados. Ainda andarão (e eu com eles) por cá mais uns tempos. Apenas nunca foi e dificilmente será aí que alguma vez esteve ou estará o dinheiro que faz diferença.

Quem tem dúvidas tente colocar um banner na homepage do Sapo ou do IOL ou do Clix e, especialmente se pensa que tem um blog com um CPM muito bom, pasme-se… Ou alguém tem um blog com um CPM de 60 euros+IVA?

Conclusão

Sim, eu pessoalmente penso que o problogging é muito mais trabalho duro que dinheiro fácil. É possível ganhar bem enquanto problogger, mas não deixará de ser uma profissão, e tão dura como qualquer outra, bem mais dura mesmo que a maioria.


Comentários – da informação adicional ao SPAM

Published by:

No mundo dos blogs existem dois tipos de comentários que marcam os extremos daquilo a que chamarei de escala de utilidade de comentários.

De um lado encontram-se os comentários em que informação é adicionada aquela que já existe, ainda que seja discordante da apresentada pelo autor original.

No extremo oposto os comentários carregados de links para outros sites, em nada relacionados com o post ou o blog em que esses comentários foram inseridos.

O primeiro grupo acrescenta valor ao seu blog, e o link de volta para o site de quem fez o comentário mais não é que uma pequena retribuição que você presta ao seu leitor/comentador.

O segunda retira valor ao seu blog. Retira-lhe valor no sentido em que os links para os sites dos seus restantes comentadores perdem valor, retira-lhe valor ao seu site porque lhe dá aparência de não ser devidamente gerido, e retira-lhe valor porque muitos dos sites listados nestes comentários estão classificados como spammers pelos motores de pesquisa, e consequentemente qualquer site com links para eles vai sofrer a mesma classificação.

Estes são o branco e o preto da nossa escala, e entre eles vários são os tons de cinzento.

Desde os comentários que realmente acrescentam informação, até aqueles que acrescentam opiniões acerca do tema sem no entanto trazer realmente novos conteúdos, continuando com aqueles que apenas fazem pequenas notas, os que expressão opinião acerca do post, sem se expressar acerca do tema, para aqueles que apenas dizem visitem o meu site em http://…, àqueles que contém keywords linkadas para sites diversos…

Sim, claro, e existem ainda muitos outros tipos que conseguem por certo colocar algures ao longo desta progressão!

A questão que se coloca, claro, é qual o nível de cinzento que se deve permitir, e a partir de onde se devem reprovar os comentários.

Claro que a minha resposta para isso seria tão boa como a vossa. Mas eu nem sequer tenho uma resposta. Na realidade tenho várias.

Em alguns dos meus blogs não permito sequer comentários, noutros permito quase qualquer tipo de comentário (com excepção do SPAM descarado), e noutros, como o Web a Sério apenas permito comentários que, pelo menos, expressem suavemente a opinião do comentador acerca do tema tratado.

O que é importante, na minha opinião, é manter algum nível de consistência no tipo de comentários que se permitem.

No final, é o seu blog, é a sua decisão.


SEO/SERS – Factores externos

Published by:

Actualmente chama-se SEO a um largo conjunto de técnicas on-site e off-site.

Eu prefiro chamar nomes diferentes a coisas diferentes. Para mim, SEO é a optimização do site, por forma a que fique mais adequado ao processo de indexação por parte dos motores de pesquisa.

Às técnicas de optimização externas eu chamaria outro nome: SERS – Search Engine Relevancy Simulation, pois na realidade é disso que se trata, de simular uma relevância que o site na realidade não tem.

É este o objectivo final de todas as técnicas de optimização off-site. (Ainda) Não estou a criticar estas técnicas, ou aqueles que as utilizam, apenas a chamar-lhes aquilo que realmente são.

Mas quais são estas técnicas?

Comentários em blogs

Hoje em dia os bloggers colocarem comentários em outros blogs é algo comum, e também uma das razões de sucesso dos blogs.

Cada um de nós gosta de dar a sua opinião acerca de um texto que acabou de ler, de acrescentar algo que escapou ao autor original, de dizer que se concorda ou discorda de algum dos pontos apresentados.

É saudável que isto seja possível, e que isto aconteça.

Claro que há comentários que nada acrescentam ao conteúdo de um post e, consequentemente, não faz sentido acabarem online.

Alguns exemplos disso são “Excelente post.” ou “Parabéns pelo site/blog.“. Claro que qualquer blogger gosta de receber feedback dos seus leitores, mas estes comentários nada acrescentam ao conteúdo apresentado.

Estes comentários são o que eu costumo chamar links grátis, no sentido em que são normalmente uma tentativa de criar um link de volta para o site ou blog de quem faz o comentário sem se fazer o esforço de acrescentar algo de útil ao que foi apresentado pelo autor (ou por outros leitores, sob a forma de comentários).

No entanto, quando se tem algo interessante a acrescentar ao que foi dito pelo autor do post que se está a comentar, não apenas se está a acrescentar valor ao post original, como ainda se está a fazer o melhor tipo de publicidade ao nosso próprio site/blog. Não foi apenas um nem dois blogs que descobri em consequência de excelentes comentários noutros blogs.

Links estáticos

Os links estáticos são uma boa forma de divulgar um blog, bem como de aumentar a sua relevância para os motores de pesquisa. Na teoria os links estáticos são uma recomendação do autor de um site.

Na prática nem sempre é assim. É hoje prática comum, especialmente entre os bloggers, colocar links para sites que paguem por isso.

Na maior parte das situações esses links são reconhecidos pelos leitores do site/blog como se de recomendações reais se tratassem, e quando a sua gestão é feita manualmente isso acontece mesmo com os motores de pesquisa.

Apesar de ser uma prática em que não participo, acredito que a aquisição de links pode ser uma boa forma de promover um site, especialmente se nos primeiros tempos conseguir vários blogs na sua área.

O limite, obviamente é o seu orçamento e a sua capacidade de convencer outros webmasters a colocar links para si. Claro que se conseguir esses links sem pagar é melhor para o seu orçamento.

Mas de nada serve bombardear todos os webmasters/bloggers da sua área. Um email é o suficiente, pelo menos por um período de tempo razoável.

E claro, dificilmente conseguirá comprar links para um blog que ainda não tenha conteúdo significativo.

Directórios

Hoje diz-se que os directórios já não fazem diferença nenhuma, e do ponto de vista do pagerank, da relevância para os motores de pesquisa, um link num directório faz realmente pouca diferença.

No entanto, pouca diferença e diferença nenhuma são coisas diferentes. E pouco multiplicado por vários directórios já se irá notar.

Mas não é apenas do ponto de vista do pagerank que os directórios fazem diferença. Os vinte minutos que se perdem a adicionar um novo site a um directório pode representar apenas um novo utilizador a cada dois ou três meses. Mas nunca se sabe qual desses utilizadores o irá adicionar ao seu blog com pagerank três pontos acima do seu, ou recomendá-lo a todos os amigos e conhecidos.

Fóruns

Participar regularmente em fóruns da área do seu blog é uma forma de o divulgar.

Nesses fóruns, no entanto, aplicam-se as mesmas regras que se referiram acima para os comentários em blogs. Lembre-se, um troll é sempre um troll, independentemente do meio utilizado. E ninguém gosta de trolls.

Há ainda alguns outros factores, e muito pode ser acrescentado acerca de alguns destes, o que farei nos próximos dias.


Se o Cansaço atacar…

Published by:

Se o cansaço atacar não o defronte mais do que o estritamente necessário… deixe-se vencer assim que possível.

Há batalhas que se podem ganhar, e derrotas que apenas se podem adiar. Lutar contra o cansaço é uma luta perdida, que muito dificilmente poderá ganhar.

Quando se luta contra o cansaço, forçando continuamente o corpo e a mente a irem além das próprias fronteiras, a principal consequência disso é que ficamos ainda mais cansados, o que acaba por reduzir ainda mais a nossa capacidade de concentração, a nossa capacidade de memorizar, e em consequência disso o nosso ritmo de trabalho.

Ao longo das últimas semanas reduzi o meu ritmo ao essencial, especialmente por forma a conseguir fazer de forma adequado o meu trabalho na Log, e no cliente em que a Log me colocou.

Primeiro deixei acumular os feeds por ler, depois até deixei que as largas centenas de emails que recebo de mailling lists se fossem acumulando. Isso fez com que eu conseguisse manter o ritmo durante as oito horas de trabalho e recuperasse ligeiramente do cansaço acumulado.

É fim de semana e por isso estou a terminar alguns posts que tinha já começado, e aproveitar para escrever este.

O trabalho criativo, como o de escrever conteúdos originais exige concentração e uma mente descontraída, e por isso de nada serve continuar a tentar manter um ritmo elevado quando o corpo diz que não aguenta.

A imaginação sempre foi um dos meus pontos fortes, mas oito horas de sono por noite também foram sempre uma das minhas necessidades. Com uma recente mudança de horário a hora de acordar mudou, mas não consegui que a hora de deitar mudasse. O meu corpo não queria, e a minha mente dizia que ainda não estava na hora de deitar.

Nunca fui muito uma pessoa de hábitos, mas apesar disso mudá-los é difícil, para mim, idealmente não haveria horários. A inspiração vem quando vem, não quando se quer que ela esteja presente. Mas no mundo real eles existem. No mundo real as pessoas têm horas para entrar e (por vezes) para sair. E, querendo ou não, eu trabalho no mundo real, pelo que tenho que me reger pelas regras das pessoas normais, grupo de que, definitivamente, não faço parte.

Isso faz com que frequentemente esteja fora do meu ritmo ideal de trabalho, o que me cansa bastante mais do que seria de esperar.

Até há algumas semanas o meu horário normal para sair da cama era entre as oito e as oito e trinta da manhã. Agora, como tenho que estar em Lisboa às oito e vinte, por forma a não perder o autocarro, o meu horário de sair da cama não pode ser posterior às sete e dez. Isso fez com que dormisse menos uma hora por noite, pois a minha hora de deitar continuava a ser a mesma, uma vez que o meu corpo e a minha mente continuavam a ver o novo horário como uma coisa temporária.

A cansaço instalou-se rapidamente, e tive de começar a forçar-me conscientemente a ir para a cama mais cedo, mas foi tarde de mais, e o cansaço já estava instalado. Nos primeiros tempos ainda tentei lutar contra ele, numa tentativa de manter o email em ordem, e os feeds lidos.

Mas rapidamente percebi que não conseguia, e primeiro comecei a deixar os feeds para depois, e depois os emails das mailling lists. A diferença já se nota. Já me sinto mais fresco, mas ainda assim sei que não posso tentar recuperar o tempo perdido, pois isso faria com que voltasse ao início.

Mas percebi com tudo isto que os meus planos para conseguir alguma independência financeira são realmente importantes, pois não é possível passar o tempo todo no mundo real se não se é uma pessoa normal. Não que eu acredite que existam muitas pessoas cujo ritmo biológico lhes diga que às nove da manhã é uma boa hora para começar a trabalhar.

Acredito que para muitas o ideal seria depois de almoço e para outras tantas às seis da matina… mas no final talvez nove ou nove e meia seja um compromisso aceitável. Aceitável, mas ainda assim um compromisso.

Um compromisso que, na minha opinião, faz com que todos fiquemos a perder.

Tudo isto, claro, não passa de uma grande divagação, pois o meu ponto era que, se o cansaço atacar é perfeitamente inútil resistir, e nada proveitoso fazê-lo.


Compreenda o Cliente

Published by:

Conhecer os seus clientes é o melhor que pode fazer pelo seu negócio e pelos seus clientes.

Para começar, se não conhecer os seus clientes vai ser difícil para si percebes quais as suas necessidades, e com isso satisfazê-las.

Não conhecendo o cliente pode facilmente interpretar mal o que lhe é pedido, ou interpretar bem correctamente o que lhe é pedido, mas poder fazer muito mais pelo clientes, em menos tempo, ou com um custo muito menor, e perder a oportunidade.

Conhecer o cliente é o primeiro passo. Saiba o que ele faz, como o faz, como fala do que faz. Aprenda o seu jargão, os termos técnicos que o seu cliente usa, especialmente aqueles que estão mais relacionados com o seu trabalho.

Por muito periférico para o negócio do seu cliente que o seu trabalho seja, o seu trabalho é sempre relevante para esse negócio. De outra forma o seu cliente não estaria a investir no seu trabalho.

Mas é preciso mais do que conhecer o seu cliente. É preciso conhecê-lo profundamente. Quanto mais conhecer o seu cliente mais poderá adaptar o seu trabalho ao negócio do seu cliente. Tente perceber o que o seu cliente vê como fonte de rendimento e o que ele vê como origem de despesas. Saiba que áreas de negócio ele pretende abandonar e para quais se pensa expandir.

Mas conhecer o negócio do seu cliente não é o suficiente. É necessário que o compreenda, que saiba por que razão ele faz as coisas da forma como as faz, que procedimentos ele gostaria de optimizar ou de abandonar, de substituir ou de criar. Mas não se limite a saber, perceba o porquê.

Se o cliente pretende alterar um processo que a si lhe parece já tão optimizado quanto possível, provavelmente há alguma coisa que não percebeu. Talvez a optimização actual esteja tão vocacionada para a situação mais normal que obriga a um esforço demasiado grande nas restantes situações. E talvez essas situações ocorram mais vezes do que tinha sido estimado.

Se optar por fazer o que o cliente lhe pede sem o perceber pode acabar por implementar exactamente o que lhe foi pedido mas a nova solução não estar nem um pouco mais próxima de satisfazer o cliente do que aquela que tentou corrigir, pois corre o risco e criar novos problemas ao resolver aqueles de que o cliente se queixa.

Mas se perceber o cliente, se entender como os vários fluxos de trabalho do cliente se interligam poderá pensar na melhor forma de os organizar para maximizar a eficiência dos processos.

Mas veja os processos do ponto de vista do cliente, não do seu. Aquilo que para si parece ser um encadeamento lógico de acções pode não fazer sentido para o cliente, seja porque os processos que está a encadear são executados por pessoas diferentes, seja porque para o cliente dependem de outro processo que não está a relacionar com estes, seja porque na cabeça do cliente o encadeamento lógico é outro completamente diferente.

Veja, sempre, os processos da perspectiva do cliente, pois é para ele que, em última análise, os processos têm que fazer sentido.


Estatísticas Web – Percursos

Published by:

O percurso de um utilizador dentro de um site pode ser uma informação bastante útil. Ele permite saber como esse utilizador vê o site, e como navega nele.

Com esta informação podemos reorganizar o site por forma a levar o utilizador a fazer mais vezes o tipo de acção que pretendemos que ele faça.

Há locais em todos os sites que são completamente ignorados pelos utilizadores, e apesar de haver vários gráficos indicativos de quais as áreas mais “quentes”, mais vistas, esses gráficos não são mais do que indicativos.

Aquelas que são áreas mortas num site podem por vezes mostrar-se as zonas quentes noutro site devido a pequenas alterações de design.

Mas, então, o que são os percursos?

Um percurso é a lista de urls visitados por um utilizador desde que entra num site até que saí dele.

Um percurso comum em muitos blogs hoje é os utilizadores visualizarem a homepage e irem-se embora. Isto acontece especialmente nos casos em que os conteúdos estão completos na listagem.

Se noutros casos este percurso pode dar alguma indicação, isto não acontece neste caso específico.

Se a listagem apenas contiver cabeçalhos dos artigos, e o utilizador apenas visitar a homepage, isso indica-nos que os cabeçalhos listados não conseguiram despertar a atenção do nosso utilizador.

E se os nossos cabeçalhos lhe tiverem despertado a atenção isso também nos é claramente indicado, pois além de visualizarem a homepage irão ver também o url relativo ao(s) artigo(s) que lhes interessaram.

Mas os percursos são especialmente importantes antes e depois de se alterar a estrutura de um site. O estudo da alteração dos percursos aquando da reestruturação de um site permite perceber da eficácia ou não da remodelação.

A capacidade de manter um utilizador no site é também algo que se pode verificar através da análise dos percursos.

Saber que um utilizador que entra no site pela homepage abre vários URLs, sempre a partir da homepage, ou de outras listagens, e em que raramente os utilizadores saltam de um artigo para outros artigos relacionados ao artigo, provavelmente precisaria de uma listagem de artigos relacionados na página do artigo.

Infelizmente, não conheço ferramentas opensource ou disponíveis por um preço aceitável que disponibilizem esta informação.

Ao contrário do que se passa com a maioria das métricas de estatisticas web, devido a ser uma informação complexa de calcular e pouco habitual não existem normalizações em relação a ela.

A quantidade de informação que se extrai desta forma do tráfego de um site depende em grande medida da dimensão do próprio site, e da capacidade de processamento existente.

Se, por um lado, num site de pequena dimensão pode ser interessante conhecer os percursos por unique user. Por outro lado, num grande portal, para manter esta informação utilizável, alguns tops e percursos significativos são o bastante.

Alguns dos dados que se poderiam tentar obter seriam:

  • Percursos mais comuns
  • Percursos mais longos
  • Percursos mais curtos

Esta informação já permite saber com alguma exactidão os caminhos mais usuais num site, e a forma como os utilizadores navegam nele.


Estatísticas Web – webalizer

Published by:

webalizer é provavelmente a ferramenta de estatísticas opensource mais utilizado.

Em primeiro lugar é de utilização bem simples, fácil de configurar e executar automaticamente.

Em segundo lugar é pouco exigente a nível de recursos, ainda que a sua capacidade de escalar seja algo limitada.

Em terceiro lugar suporta três dos formatos de logs mais utilizados, nomeadamente CLF (combined/cummon log format, utilizador pelo Apache, por exemplo), FTP ou xferlog (o formato de logs do wu-ftp e outros servidores de FTP) e logs nativos do Squid.

Estes três servidores representam uma percentagem razoavelmente elevada dos servidores HTTP, FTP e proxies utilizados hoje em dia em ambientes de hosting e servidores de administração privada, pelo que os formatos de logs suportados são os mais usuais.

Ao nível de possibilidades de reporting, por seu lado, o webalizer disponibiliza quase toda a informação que se pode encontrar nos seus concorrentes mais fortes.

webalizer permite proceder a reportes incrementais e mantém um histórico de até 12 meses.

Também cria tops de vários dados, bem como permite criar listagens completas com todos os dados de determinada categoria.

Os tops que o webalizer consegue gerar são:

  • top de sites por pageviews, que é a lista de IPs/hostnames dos utilizadores que mais pageviews geraram no site;
  • top de sites por tráfego, que é a lista dos IPs/hostnames que mais tráfego geraram;
  • top de URLs por pageviews, que é a lista dos URLs mais visto;
  • top de URLs por tráfego, a lista dos URLs que originaram mais tráfego no site;
  • top de referrers, a lista de URL de onde vinham a maioria dos utilizadores;
  • top de User Agents, a lista dos browsers mais utilizados para aceder ao site;
  • top de países, a lista dos países de onde foram originados a maioria dos pageviews do site;
  • top de páginas de entrada, a lista das páginas por onde os utilizadores mais entram no site;
  • top de páginas de saída, a lista das páginas onde os utilizadores mais vezes terminam as suas visitas ao site;
  • top de pesquisas, a lista das pesquisas com que o site foi encontrado mais vezes.

Além dos tops, o webalizer permite ainda criar listagem de todos os dados de uma determinada categoria. Os dados para que o webalizer gera estas listagens são:

  • Sites
  • URLs
  • Referrers
  • User Agents
  • Expressões de Pesquisa
  • Utilizadores

webalizer pode ainda criar ficheiros de dumps dos dados referidos, que podem depois ser utilizados com outros programas.

Apesar de ser uma ferramenta já antiga continua a ser uma das melhores para quem pretende correr a sua própria aplicação de processamento estatístico e disponibiliza toda a informação que hoje se pretende, incluindo a tão falada Long Tail, que é na prática a listagem de todos as Expressões de pesquisa com que o site é encontrado.

A grande desvantagem do webalizer é que apenas corre em plataformas *nix (Unix, Linux, Solaris, etc).

webalizer pode ser encontrado em http://www.mrunix.net/webalizer/.