Código Bala!

Desenvolvimento web num piscar de olhos.

04.07.08

Otimizando testes de usabilidade

Essa semana tiver oportunidade de utilizar o Morae pela primeira vez. Este software é muito útil para captar, decupar e gerenciar testes de usabilidade. Ele permite fazer o cadastro e acompanhamento das tarefas, mesclando muito bem o registro dos passos feitos pelo usuário com outputs mensuráveis e comparáveis, que podem ser utilizados em análises gráficas. Também exporta facilmente vídeos em formato .avi e .mpg.

A tour de apresentação das funcionalidades tem cerca de 22 minutos. Não só mostra as possibilidades de aplicação, mas também explica muito bem o que pode ser feito e entregue através desse tipo de teste. Fundamental para que times possam avaliar a qualidade das intefaces que estão entregando aos clientes.

04.06.08

Egoísmo romântico (ou réplica ao Google)

Provavelmente o assunto renderia mais em algum blog sobre produtividade pessoal, mas não pude deixar de refletir acerca do meu comportamento como usuário de Internet diante do estudo recente divulgado pelo Nielsen Norman Group.

“Agora, quando estão online, as pessoas sabem o que querem e como fazer para achar”

Eu me encaixo bastante nessa declaração. Modéstia a parte, sempre fui muito eficiente em encontrar o que quero na web. É chocante perceber que grande parte das pessoas não têm o hábito de simplesmente procurar a resposta da suas dúvidas no Google, antes de perguntar para alguém. Para mim, isso é tão natural que nem chega a parecer um expediente de consulta.

Acho bom que os usuários comecem a ter mais sucesso nas suas tarefas. Se os sites estão contribuindo para isso, com conteúdo estruturado e semântico, melhor ainda.

Mas tenho uma ressalva: meu comportamento ao navegar é totalmente caótico. Se é bem verdade que cada vez tenho menos tempo e pouco fico em uma mesma página, também é um fato que continuo entrando no browser e abrindo cinco abas ao mesmo tempo. O curioso é que isso acontece mesmo quando tenho uma meta muito específica em mente. Como agora, onde vim procurar um telefone e acabei checando e-mails, lendo feeds e escrevendo esse post.

Vejam que não estou discordando da pesquisa do Nielsen. No entanto, seria interessante ver estudos mais focados em comportamentos de navegação de acordo com a personalidade dos usuários. Por mais que eu leia sobre produtividade e tente me organizar, não consigo ser sempre uma pessoa que vai direto ao ponto. E em se tratando de Internet, carrego comigo um romantismo que implica se perder aleatoriamente, muito feliz, por um mar de conteúdos e possibilidades.

18.04.08

Uma pequena atualização profissional

Em novembro do ano passado, deixei meu antigo emprego atrás de mudanças. Durante alguns meses, atuei em pequenos projetos fazendo das coisas que mais gosto: XHTML e CSS, dessa vez do meu jeito, com codificação radicalmente focada em web standards.

Um pouco de canto, também participei de algumas consultorias rápidas em projetos de comunicação baseados em ferramentas de colaboração e redes sociais. Foi o vislumbre de um viés um pouco diferente na minha carreira, que eu comecei a levar paralelamente sem muita pretensão.

Eis que aqui estou, num hotel em Curitiba, me preparando para voltar para Porto Alegre no feriado e em breve dar mais um pulo em São Paulo. Agora, oficialmente, sou um consultor full time. Meu trabalho envolve temas que sempre estudei, mas que pouco apliquei por falta de oportunidades.

Então, meus poucos leitores podem se preparar para posts menos técnicos e um pouco mais relacionados a disciplinas derivadas ou relacionadas ao bom desenvolvimento web: análises de usabilidade, acessibilidade e arquitetura da informação certamente terão vez por aqui, já que agora estou podendo vivenciar a prática no dia a dia.

Espero que ninguém se ofenda com nada. E vamos lá.

02.04.08

Wordpress 2.5 saiu-se muito bem

O Wordpress 2.5 é fabuloso. Vi gente meio horrorizada quando testou, mas assim que se quebra o estranhamento natural de ver uma interface antiga substituída por uma nova, é puro deleite.

O redesign foi feito pela HappyCog, dos meus ídolos Jeffrey Zeldman e Jason Santa Maria. Eles pertencem ao farol que deveria guiar sempre design e desenvolvimento para web.

06.03.08

Mau código, má classificação

Há alguns minutos procurei informações sobre o ingresso de um show que pretendo assistir na semana que vem (Fernanda Takai, para os curiosos). Insatisfeito com o serviço de todos os guias culturais online da cidade de Porto Alegre, resolvi depositar minhas esperanças no site da produtora do evento. De fato, encontrei o que procurava (data, preços) de forma rápida, mas notei algo bastante interessante.

Opus no Google

Está aí um exemplo do que acontece quando se negligencia a semântica do código de marcação do seu site. Associando-se uma navegação em Flash, temos mais que problemas de acessibilidade e usabilidade: o site é encontrado, mas a descrição dele não faz sentido algum. E pior, nesse caso: revela detalhes internos da produção (como esse comentário sobre o header), bastante dispensáveis num lugar tão nobre quanto a primeira colocação de um resultado de busca do Google.

Fiz uma busca por algo bastante determinado, pois já sabia que a Opus estava envolvida com o concerto. Mas se eu tivesse procurado por algo genérico, porém óbvio, como “fernanda takai porto alegre”, nada teria encontrado relacionando os dois. Pelo menos até a terceira página de resultados, o site da empresa não apareceu.

04.03.08

IE 8: declarando a nova guerra dos browsers?

Ando acompanhando todo o debate sobre version targetting no IE 8 há um bom tempo. Legal ver que mesmo as opiniões mais extremadas têm seus fundamentos. Além do artigo do Diego Eis, recomendo dois textos com conclusões diferentes, mas que também acabam se complementando: Jeremy Keith, que acha que o IE 8 não renderizar segundo os web standards por default é o mesmo que decapitar alguém para curar dor de cabeça e; sempre ele, Jeffrey Zeldman, que acha que desenvolvedores e designers devem mais é comemorar pelo Explorer não ser mais um browser do demônio.

Resumo muito sintético para quem tá ouvindo falar disso pela primeira vez: em dezembro último, o IE 8 (que ainda não foi lançado) passou no teste Acid2 . Com isso, entrou para o time de browsers que renderizam sites seguindo os web standards da melhor forma possível, a exemplo do Firefox e do Opera.

No entanto, o pessoal da Microsoft tinha optado por criar uma chave (usando uma meta tag) para habilitar essa versão “boa”. Por padrão, o IE 8 continuaria renderizando sites de forma esdrúxula. O motivo: com o lançamento do IE 7 (que passou a se comportar 90% melhor que a praga do IE 6), milhões de sites mal codificados passaram a quebrar, deixando desenvolvedores tabajara e clientes desesperados. O nome disso em negócios todo mundo conhece: preju.

Essa chave foi o motivo de tanta discussão. Gente achando que era ótimo, pois pelo menos existia possibilidade de deixar o IE 8 “tunado”. E gente ultrajada e um tanto fanática, argumentando que colocar uma linha num código deixaria-o menos semântico, e que isso era um contra-senso e mais uma burrada infinita do pessoal de Redmond.

Pois bem: o time do IE anda apostando firme em ouvir a comunidade e dar suporte aos padrões. Sim, eles fizeram e sim, eles estão sendo muito corajosos: na verdade, o IE 8 será web standards friendly por padrão. Isso foi anunciado ontem, e deve ser comemorado com carros de bombeiros cheio de gente bêbada em cima.

Só irá desagradar algumas partes: os detratores irracionais, que atiram para todo lado para criticar qualquer suspiro da Microsoft e, talvez mais importante; o pessoal da Mozilla e outros, que terão de se mexer (e logo) para enfrentar, ao que tudo indica, a mais sangrenta das batalhas entre browsers de que se tem notícia.

Os beneficiados seremos nós. Que se matem.

[Depois de escrever esse post, agilizei-me e fui baixar o Internet Explorer 8 Beta. Testo-o nesse exato momento, e já achei simpático o botão “Emulate Ie7″ na barra de ferramentas].

29.02.08

Crise de identidade?

Stephanie Sullivan, desenvolvedora front-end que participará da edição de abril do An Event Apart em New Orleans, responde ao público sobre algo que interessa a todos nessa área: depois de fazer tanta coisa diferente, como se concentrar em linguagem de marcação e ser valorizado pelo mercado?

Com a palavra, Mrs. Sullivan:

The companies that hire me, however, understand the value both to their bottom line in development and maintenance hours, and to their clients’ bandwidth savings and search engine placement. I’m contracted at times to oversee the plan for a project and advise on semantics and accessibility—to take code already written and make it more succinct and efficient, or to troubleshoot a challenge that has developed. I also train larger companies’ web departments to do what I do. I get great joy from helping people “get it.” To me, there’s nothing better than to watch that “aha” moment!

Nunca é demais lembrar dos benefícios trazidos por um código bem estruturado, limpo, organizado e semântico. E como ela mesmo diz, poupa horas de manutenção, banda dos servidores e ainda por cima melhora a achabilidade dos sites.

Se são chavões ou simplesmente um retrato da realidade, acho melhor concluir lendo todo o depoimento dela. Mas é interessante notar que, mesmo guinando sua área atuação em codificação, a utilidade dos conhecimentos pode (e deve) permear todo um projeto.

21.02.08

Me fale sobre o emprego ideal

Já que o texto sobre os anúncios de emprego na área de desenvolvimento web gerou alguma movimentação, segui pesquisando. O panorama, em nível mundial, não é muito diferente daquele traçado no post, o que gera alguma ansiedade para saber quando as coisas vão mudar.

Mas como foi dito, sempre existem as gratas exceções, onde o descritivo da vaga parece realmente fazer sentido para o que ela representa profissionalmente. Um dos lugares com o maior índice de acertos, na opinião deste que vos escreve, é o quadro de oportunidades da Opera Software.

Amo o Opera incondicionalmente. É meu browser favorito, e não substitui o Firefox apenas pelo fato deste último ter plug-ins e extensões que são indispensáveis ao meu trabalho. Não fosse esse detalhe, abandonaria de vez a Raposa, que tem estado um tanto quanto dormente no que diz respeito a lançar a sua terceira versão e resolver problemas graves (como o fato do programa aberto, com umas duas abas, ocupar quase 70Mb de memória RAM). Usei o Beta do Firefox 3 e não tive nenhum vislumbre de melhora nesse quesito.

Voltando à Opera: além do compromisso com web standards, a empresa parece quase suplantar o Google quando o assunto é o trabalho dos sonhos. Fiquei particularmente cativado por esse aqui:

This job involves providing support for Opera’s developer customers and Opera’s internal developers through community evangelism, developer outreach, networking, and feedback solicitation. These goals are to be achieved via travelling to web development conferences across the world to represent Opera, blogging, e-mail, article publication, and any other appropriate methods of communication. Preferably, the individual would also contribute to the growing dev.opera.com developer resource site, through writing and editing articles, and responding to forum posts. (…)

 

Divulgar o Opera no mundo fazendo evangelização dos infiéis blogando, respondendo e-mails, publicando artigos e indo a conferências e ainda receber por isso? Nem me fale, tio. Agora, a cereja no topo é isso aqui:

Please submit your application using HTML 4.01 strict or XHTML 1 Strict.

Encerro aqui porque meus dedos estão se afogando na poça de lágrimas que virou o meu teclado.

11.02.08

Você usa indent no seu código?

Advertência: a palavra indentar é um neologismo. Não existe na língua portuguesa. Endentar aparece em alguns dicionários, mas não tem o mesmo sentido. Então, será adotado nesse blog o indentar que, assim com scanear, parece não ter nenhuma tradução adequada.

Bem, a pergunta do título é bem direta: você indenta seu código HTML? E o CSS? Essa é uma questão que pode parecer estranha entre programadores. Mas nós, front-end developers, estamos lidando com uma linguagem de marcação. O que fazer?

No meu caso, sempre combati a indentação em meu código. Sempre odiei a hierarquização automática gerada pelo Dreamweaver, que acabou virando regra na maioria dos casos. Até mesmo quem escreve código no bloco de notas acaba se acostumando a encher tudo de tabs, para dar uma organizada melhor, mas eu sempre achei isso muito mais confuso e dispensioso. Sem falar que, na soma final, acabava consumindo alguns bytes a mais, o que em projetos mais complexos realmente pode ter um peso indesejado.

Durante anos, também me acostumei a escrever meu CSS na horizontal. De novo, em projetos complexos, dava maior legibilidade a um bando de classes e IDs. Só que isso andou mudando.

Desde que adquiri minha cópia do Expression Web, parei um pouco de lutar contra a indentação automática. Em uma fase de testes e, aproveitando para treinar minha mente, tenho me esforçado duramente para manter tudo absolutamente hierarquizado no espaço de codificação, com resultados variáveis. No meu novo site pessoal, o CSS está indentado, mas o HTML segue o padrão antigo que usava. E se você conferir o CSS deste blog, poderá entender a que me referia quando falei sobre classes e IDs escritos na horizontal.

Ainda não decidi o que é melhor, mas nos dois últimos projetos em que trabalhei, indentei tudo. Logo devo fazer um teste de medir o peso dos documentos, nas duas formas, e ver se existe realmente alguma vantagem real em um ou em outro.

09.12.07

Devagar se vai…talvez não muito longe

Como todo desenvolvedor também venho acompanhando, com um misto de curiosidade e temor, a discussão que gira em torno do próximo passo em linguagem de marcação para a Web.

Para resumir a questão: há uma divisão de gente trabalhando no HTML 5, alguns dentro do W3C, outros do lado de fora. Fora isso, temos as polêmicas documentações do XHTML 2.0 e as diretrizes de acessibilidade do WCAG2.0, que foram rechaçadas por quase toda a comunidade, que acabou na sua maioria abraçando uma errata da primeira versão.

No olho do furacão está o W3C, pretensamente vivendo uma crise de identidade e de liderança que já foram inquestionáveis no meio. Gente como o Zeldman acha que se está fazendo muito barulho por (quase) nada, mas reina uma desconfiança nunca antes vista em relação ao órgão que costumava balizar quase tudo no que diz respeito a desenvolvimento.

Em artigo essa semana no A List Apart, Lachlun Hunt dá uma geral na situação do HTML 5, esclarecendo alguns pontos que andavam um tanto obscuros. Há mais gente ajudando o W3C no projeto, o que é algo muito saudável para chegar-se a uma solução mais democrática. De organizações não-governamentais a empresas, parece haver um grupo bastante plural dando pitacos nos trabalhos.

No entanto, novos desenlaces estão gerando mais discussões acaloradas. Fora a previsão de término do projeto daqui quinze anos, há alguma polêmica com o novo modelo de marcação e as tags que serão usadas para isso.

Segundo o texto ilustrou, o que temos hoje em XHTML assim:

<div id=”header”></div>

<div id=”nav”></div>

<div id=”article”>

<div id=”section”></div>

</div>

viraria:

<header></header>

<nav></nav>
<article>

<section></section>

</article>

O argumento é que isso é mais claro, organizado e semântico no que diz respeito à interpretação correta dos elementos pelos dispositivos utilizados durante a navegação.

Mas será que isso não tornaria o HTML algo excessivamente específico? Apesar de longe do ideal no que diz respeito à organização, o XHTML 1.0 permite uma boa flexibilidade com o emprego de IDs. Quem conhece web standards sabe onde os elementos devem ser usados, que <h1> é um título de nível um e assim por diante. Entretanto, poder jogar com DIVs para fazer a divisão do código conforme a disposição do conteúdo é uma grande vantagem, ao meu ver.

O projeto, como visto, está longe de estar pronto. A discussão que surge até agora só beneficia todo mundo. Mas na hora de dar o passo adiante e adotar o novo caminho, não se pode prever se será um sucesso ou um grande tiro no pé.



Código Bala é um blog sobre desenvolvimento web escrito por Bruno Galera. Entre em contato.