É correto abrir links em novas janelas?

Não, não é correto. À primeira vista, é comum acharmos que  a decisão de abrir links em novas janelas depende do site e do seu público. É normal imaginar que visitantes habituados a clicar em vários links estão mais acostumados a abri-los em novas janelas e visitantes que clicam menos são mais propensos a abrir links em uma nova janela para poder permanecer no site e navegar por ele depois. No entanto, isso não é verdade.

E aí? Na minha janela ou na sua? E aí? Na minha janela ou na sua?

Os usuários não gostam de lidar com dezenas de abas abertas involuntariamente e alguns visitantes tendem a se irritar rapidamente ao verem o botão “Voltar” desabilitado. Além disso, alguns visitantes podem não perceber que uma nova janela foi aberta e igualmente se frustarem com o botão “Voltar” desabilitado. Isso vai contra os bons princípios de usabilidade e experiência do usuário e nós, web designers, temos obrigação de defender tais princípios.

Continuar lendo »

Extensão para ocultar o texto da barra de favoritos

Eu uso bastante a barra de favoritos do Firefox. Com o passar do tempo ela se tornou pequena devido a quantidade de links que eu frequento diariamente.

Durante um bom tempo eu procurei isso, até então eu ocultava o texto no braço. A extensão Smart Bookmarks Bar oculta o textos dos ícones na barra favoritos.

Imagem do Firefox com a extensão instalada. Fica assim ó.

Eu achei extremamente útil.

Gostou? Então baixe a extensão Smart Bookmarks Bar.

Link direto pra baixar o Firefox 3

Nesse momento Microsoft e Opera devem estar rindo à toa. A Mozilla fez uma mega campanha pro lançamento da nova versão do Firefox através do Download Day e agora os servidores da Mozilla não estão suportando os downloads. É uma missão quase impossível conectar no site.

Eles devem estar tão desesperados quanto eu, que tenho um site pra ser lançado às 18h e a conexão está uma merda (desculpem o palvrão). Mas de qualquer forma, isso deve contar pontos como marketing pra eles – “Falem bem ou falem mal, mas falem de mim”.

Enquanto aguardo os arquivos subirem via FTP, achei alguns links alternativos pra download do Firefox 3 (com ajuda do @pedrovillalobos). Todos os links são da versão em português do programa.

Links alternativos para baixar o Firefox 3

E torçam pra que a minha conexão FTP melhore antes das 18h! :-)

O caminho para o paraíso e o inferno da sua marca

Um dos blogs que eu mais gosto de acompanhar é o Logic+Emotion, sou fã assumido. Essa semana o autor postou um gráfico com os principais quesitos para o sucesso(ou não) da sua marca.

Com ajuda do Canha, tomei a liberdade de traduzi-lo e postar aqui.

Imagem do post

Eu sei, todo mundo sabe o que é certo e errado, mas nunca é demais agrupar conceitos e idéias pra a ajudar a rever o que pode ser melhorado.

Imagem que só aparece com o texto selecionado (CSS3)

Da série: “Coisas legais pra fazer com CSS3″.

O blog “Meta | ateM” fez um uso interessante do pseudo-elemento :selector do CSS3. Ao selecionar o texto, você consegue visualizar uma imagem escondida. Confira!

A parte legal é que disponibilizaram uma aplicação em PHP pra customizar a imagem que aparece. Até fiz uma versão pra mim, dá uma olhada.

Como estamos falando de CSS3, o efeito só funciona no Safari e no Firefox.

Resta ver quem será mais criativo pra usar esse efeito. :-)

As 7 regras do JavaScript não obstrutivo – Parte 2

Caso não lembrem, já tivemos uma pequena introdução e a parte 1 dessa série.

Se você não souber o que é JavaScript não obstrutivo, recomendo a leitura desse artigo antes de qualquer coisa. Caso contrário, vamos ao que interessa…

Encontre ganchos e relações (HTML, a base do desenvolvimento)

Antes de começar a escrever seu JavaScript, olhe para a base em que você está desenvolvendo. Se você não conhecer o código HTML ou ele estiver mal estruturado, será extremamente difícil fazer uma solução inteligente para o seu script. Provavelmente você acabará criando um código com marcações excessivas ou sua aplicação dependerá de JavaScript.

Por isso, considere duas coisas no seu HTML: ganchos e relações.

Ganchos

Dessa vez o gancho está aí pra ajudar :-)

Os ganchos HTML são, em primeira instância, os IDs, já que eles podem ser facilmente acessados via DOM pelo método getElementById. Eles podem ser usados com tranquilidade pois são fáceis de testar e um ID é único no documento. O Internet Explorer ás vezes confunde os atributos name e id, mas existem boas bibliotecas que contornam esse problema. Eu, particularmente, uso e recomendo a jQuery.

Existem outros ganchos, que são elementos que podem ser acessados com getElementByTagName e através das classes CSS (que até o momento não pode ser acessada com um método nativo – Mozilla em breve terá um e o Opera 9.5 já possui. Mesmo assim, há uma série de métodos auxiliares que permitem utilizar simular um getElementByClassName).

Utilizando um trocadilho infame, o gancho é apenas o local onde você “enroscará” seu JavaScript para atingir o objetivo.

Relações

Não esqueça: o que você quer está interligado com todo o HTML.

Outra coisa interessante sobre o HTML é como sua estrutura está relacionada. Pergunte a você mesmo:

  • Como posso chegar a determinado elemento mais facilmente e percorrendo o mínimo de passos via DOM?
  • Qual elemento eu devo alterar para atingir os elementos-filhos que eu preciso mudar?
  • Quais atributos ou informações de um determinado elemento eu posso usar para relacionar com outro?

Percorrer o HTML via DOM é trabalhoso e pode ser demorado, por isso é uma boa idéia deixá-lo para uma tecnologia que já está em uso nos browsers. Bibliotecas como jQuery, Mootools e Prototype podem auxiliar nessa tarefa.

Continua…

Para saber mais

As 7 regras do JavaScript não obstrutivo – Parte 1

Caso não lembrem, eu fiz uma pequena introdução sobre esta série.

Se você não souber o que é JavaScript não obstrutivo, recomendo a leitura desse artigo antes de qualquer coisa. Caso contrário, vamos ao que interessa…

Não faça suposições (JavaScript, o assistente não-confiável)

Imagem (O Gordo e o Magro) JavaScript é seu amigo, mas não deixe que ele faça tudo.

Provavelmente a característica mais importante de um JavaScript não obstrutivo é você deixar de fazer suposições:

  • Não suponha que o JavaScript estará disponível, otimize seu código para não ficar dependente dele;
  • Não suponha que os browsers interpretarão corretamente determinados métodos e propriedades, teste individualmente em cada browser antes de publicar;
  • Não suponha que o código HTML estará correto, verifique-o e não faz nada até que ele esteja devidamente estruturado;
  • Mantenha a funcionalidade independente do dispositivo do qual seu site é acessado;
  • Suponha que outros scripts tentarão interferir com o seu e mantenha o seu script o mais seguro possível.

A primeira coisa a fazer, antes mesmo de começar a planejar seu JavaScript[bb], é analisar o código em que você irá trabalhar e ver o que pode ser usado em benefício próprio.

Não comece a escrever o JavaScript enquanto não estiver com o HTML impecável. Faça com que seu site/aplicação seja funcional sem JavaScript, para depois implementá-lo.

O que você ganha com isso?

Trabalhando dessa maneira, você evita futuros incovenientes com incompatibilidade de browsers, brechas de segurança e insatisfação do usuário. E consequentemente, melhora a qualidade do seu trabalho.

Resumindo, não confie numa aplicação baseada em JavaScript, use-o apenas para a adicionar novas funções e melhorar a experiêcia de quem acessa seu site.

Continua…

Ganhe ingressos para o 10º Encontro Locaweb

Na última quarta-feira(07/05) teve início o 10º Encontro Locaweb de Profissionais de Internet. O evento já é referência entre os desenvolvedores web do país e conta com a participação de diversos profissionais e empresas renomados.

A edição carioca já acabou, mas o ainda terão edições em Porto Alegre (20/05), Belo Horizonte (27/05), Curitiba (10/06) e São Paulo (18/06).

Se você ainda não se inscreveu, aproveite. Vou sortear 2 ingressos para o evento. Para participar basta deixar um comentário nesse post dizendo “Quero Participar!” (só será contabilizado um comentário por pessoa). Os assinantes da newsletter automaticamente já estão concorrendo, então se quiser aumentar suas chances, cadastre-se para receber os artigos por e-mail.

O evento acontece em horário comercial, então é importante confirmar a viabilidade de estar no dia e local do encontro antes de participar. Os ingressos são válidos para apenas uma edição do evento, que será definido pelo ganhador.

O sorteio acontece na quinta-feira à noite ou quando atingirmos 100 comentários. Enjoy it! ;-)

UPDATE: O Undergoogle também está sorteando uma inscrição.

UPDATE2: Os ganhadores foram os autores dos comentários 29 e 36. Edy Nunes e Marcus Sá: Parabéns, vocês receberão um e-mail com as instruções. Valeu a participação pessoal! ;-)

O que é Javascript não obstrutivo?

Javascript não obstrutivo diz respeito a scripts que, ao serem desabilitados, não interferem no funcionamento da página.

Como assim?

Simples, digamos que você tem um menu que funciona com JavaScript:

Menu DropDown Olha que maravilha, você passa o mouse e surgem novas opções.

O que aconteceria se alguém acessasse sua página com um navegador que não tem suporte a JavaScript[bb]? Ela deixaria de funcionar? No exemplo acima, como o internauta chegaria até “sub Option 0”?

Utilizar JavaScript não obstrutivo é utilizar scripts que aprimorem suas aplicações web sem que elas fiquem dependentes do mesmo.

Um bom exemplo disso são os links Boo-box. Ao clicar em um link, uma chamada JavaScript abrirá uma vitrine dentro do site. Caso o Javascript esteja desabilitado, o internauta é redirecionado para uma nova página. A aplicação funciona de qualquer maneira, o JavaScript apenas adiciona uma funcionalidade.

Por que utilizar?

Simples, JavaScript não obstrutivo é uma das principais maneiras de garantir a acessibilidade, facilitar a manutenção e ganhar tempo na hora de desenvolver seu site.

Para saber mais

Nos próximos dias estarei publicando a série The Seven Rules Of Unobtrusive JavaScript traduzida. Então assine o feed e fique por dentro das 7 regras essenciais para um JavaScript não obstrutivo.

Indexação do Bobagento nos mecanismos de busca

Já comentei aqui sobre o novo layout que fiz para o Bobagento. Além de melhorar a parte visual, fizemos todo um trabalho de otimização para indexação do conteúdo nos mecanismos de busca. Então fico imensamente satisfeito quando vejo estatísticas como essa:

Fontes de tráfego do Bobagento na primeira semana de março

Fontes de tráfego do Bobagento na primeira semana de abril

Praticamente triplicamos o número de acessos através do Google! Se eu fico satisfeito com esses números , imagine o que o DJ Raphael Mendes anda dizendo sobre isso.

Apresento-lhes SEO, um dos melhores amigos de qualquer desenvolvedor web. :-)

P.S.: Já falei que adoro sites com foco em resultado?