KISS - Keep it simple, stupid!

A importância do software livre e padrões abertos na Web

postado por Fabrício Ferracioli em 20/03/2010 11:48:08

Ano passado um aluno de jornalismo da UEL me procurou para falar um pouco sobre minha “experiência” com software livre. Ele desejava saber minhas opiniões tanto no papel de usuário quanto de desenvolvedor, tanto para o mercado quanto para a área científica. Uma parte do resultado da pesquisa do Lucas de Godoy pode ser visto nesse post do blog dele.

Há algum tempo o João José postou aqui no blog sobre práticas para se tornar um melhor desenvolvedor CakePHP e entre elas muitas estão relacionadas ao software livre ou a padrões abertos. Mas acredito que essas práticas não ajudam somente o desenvolvedor CakePHP, mas qualquer desenvolvedor.

Por que?
Imagine a Web dependente da vontade de players de mercado com suas soluções proprietária e obscuras? Difícil? Então vamos voltar um pouco no tempo e lembrar da época da guerra dos browsers. Netscape e Microsoft disputavam quem tinha o melhor browser e para isso também disputavam a preferência dos desenvolvedores Web. Pouca importância era dada aos padrões do W3C e era muito comum implementar duas versões de um mesmo aplicativo Web.

Até hoje sofremos um pouco com os resultados dessa época negra da Web, mas o cenário mudou. Hoje os browsers brigam entre si para ver quem é o mais rápido em dar suporte total a HTML 5, CSS 3, EcmaScript o que é muito positivo e na minha opinião o caminho certo. Não sou só eu que penso assim, Tim Berners-Lee, o criador da nossa tão querida WWW é um dos maiores incentivadores de padrões abertos. Vantagens, você só precisa aprender uma vez, pois todos seguem o mesmo padrão o que torna a Web muito mais acessível. O usuário também ganha pois, por mais que não saiba, tem a liberdade de escolher o browser de sua preferência e visualizar a aplicação Web da mesma maneira em todos eles.

Falando um pouco sobre o server side, não tem como negar que o software livre é praticamente a base da Web atual. O servidor Web mais utilizado é o Apache e a linguagem de programação o PHP. Ambos são disponibilizados com licenças abertas, o que facilita a sua adoção. Também possuem uma ampla comunidade que está sempre disposta a ajudar e uma boa documentação que ajuda tanto iniciantes quanto desenvolvedores mais experientes. Com nosso framework preferido também não é diferente.

Tudo isso ajuda a fazer um desenvolvedor melhor. Ter a oportunidade de ver o código do que você utiliza para desenvolver suas soluções dá uma compreensão melhor de como as coisas funcionam, te ajuda a entender melhor a lógica por trás da mágica, te faz entrar em contato com outras metodologias de programação, etc. Participar de comunidades de software livre, lendo threads, postando perguntas e ajudando com respostas também tem um peso muito positivo, ajuda a entender necessidades de outros desenvolvedores, compreender códigos diferentes dos seus, solucionar problemas que não são seus, entrar em contato com outros profissionais com mais ou menos experiência, etc.
Se você for um pouco mais hardcore pode até colaborar no desenvolvimento, e o convite sempre está aberto para quem deseja ajudar. Se você não é um programador fabuloso, ainda pode ajudar na documentação, tradução ou simplesmente sendo ativo na comunidade.

E o software proprietário? Não sou contra de maneira alguma, mas algo tão abrangente e revolucionário como a Web não pode ser baseado em licenças proprietárias.
E você, o que acha sobre a importância do software livre e dos padrões abertos para o desenvolvimento Web?

Tags: , ,
Topo

2 Comentários

Aumentando a semântica com RDFa

postado por Fabrício Ferracioli em 04/09/2009 15:18:54

Acredito que Web vem tomando um caminho interessante com decisões tomadas nos últimos meses, como a adoção do HTML 5 e o engavetamento do XHTML 2. Isso com apenas um padrão, a confusão será bem menor e a adoção poderá ser realizada de modo mais harmonioso. Mas, como a maioria das pessoas que trabalham com Web sabem, não basta que o padrão exista, ele deve ser suportado pelo mercado, senão acaba ficando somente “no papel”.
Até algum tempo atrás, acreditava que isso aconteceria com o RDFa, uma recomendação do W3C que é conjunto de extensões do (X)HTML que permite aumentar a semântica de documentos (X)HTML. Atualmente, o padrão é suportado pelo Yahoo!, o pioneiro, e pelo Google.

E agora você me pergunta:

Em que isso vai me ajudar?

O RDFa basicamente adiciona semântica a seus documentos, fazendo com que eles sejam compreendidos mais facilmente por dispositivos, o que aumenta a capacidade de busca.
Agora é só pensar um pouco, se o Yahoo e Google puderem compreender melhor seus documentos, eles serão mais facilmente encontrados e você ganha uma vantagem sobre quem não dá a mínima para semântica.
Pra você que ainda não ficou convencido, aqui vou usar dois exemplos, que talvez você já tenha visto, mas não sabia o porque das informações adicionais. Primeiro a do Yahoo.
Resultado de busca do Yahoo com RDFa
Agora a do Google.
Resultado de busca do Google com RDFa

Em ambos os casos, as informações adicionais que estão associadas aos resultados fazem grande diferença nos resultados, pois adicionam muito mais ao que o usuário deseja saber, do que simplesmete o resultado da busca tradicional. Essa pequena diferença já é suficiente para deixar seu resultado a frente dos demais e possivelmente preferido pelo usuário.

Gostou, não é?
E agora você me pergunta:

Mas como eu faço isso?!

Não faltam recursos na Web sobre RDFa, e como o objetivo desse post é alertar sobre as possibilidades dele, deixo alguns links para vocês aprenderem um pouco.

  1. Ótimo para quem não sabe nada, leitura obrigatória.
  2. Também é ótimo para quem está começando, dividido em duas partes.
  3. Continuação do artigo anterior.
  4. Esse é um pouco mais avançado, leia depois de ler os anteriores

Lembrando que o W3C Semantic Web Activity possui vários recursos para quem quer aprender, além de alguns casos de uso.
E não tem desculpa para não utilizar, ele é compatível tanto com HTML quanto XHTML.

Tags: , , ,
Topo

4 Comentários

Acessibilidade: porque o que importa é o usuário!

postado por Fabrício Ferracioli em 06/03/2009 18:57:40

Vamos colocar esse efeito de JS!

Use Ajax ai!

Não é tão comum, mas já é uma prática relativamente difundida pensar nas possíveis limitações do agente do usuário durante o desenvolvimento de uma aplicação. É normal pensar como reação para as duas frases acima, muito comuns no desenvolvimento diário, em algo como:

Mas não podemos esquecer dos dispositivos que não tem JavaScript.

Ou então:

Não se esqueça de garantir primeiro que funcione em HTML, e depois faça as firulas!

É muito bom perceber esse tipo de preocupação, que faz a qualidade da Web crescer. Entretanto, as possíveis limitações de um agente muito importante são muitas vezes esquecidas durante o projeto e desenvolvimento de uma aplicação: As limitações do usuário.

Mas como assim?

Por mais que você conheça seu público alvo, sua aplicação esta na Web, portanto ela está sujeita ao acesso de usuários de qualquer parte do universo e boa parte desses pode ter algum tipo de deficiência. Citarei as mais comuns:

  • Visual
  • Auditiva
  • Física
  • Cognitiva
  • Linguística
  • Aprendizado
  • Neurológica

Para pessoas que não possuem nenhuma das deficiências listadas acima pode parecer estranho pensar que esse tipo de usuário sequer utiliza o computador. As porcentagens de utilização da web por esse tipo de usuário chega a pouco mais de 9%, e em casos mais localizados pode chegar a 20% [1]. Considerando o lado mercadológico seria uma perda de público significativa. Além disso existe o fator social, visto que Acessibilidade é um termo que anda em alta. Em alguns países é obrigatório fornecer meios para que pessoas com deficiência tenham acesso a informação, sendo o Brasil um exemplo disso [2].

Mas como eu sei se estou atendendo esse tipo de usuário?

Se você utiliza os padrões do W3C em seu desenvolvimento já é um passo importante. Só o fato de utilizar o validador de HTML e CSS já garantem uma boa parte das recomendações de acessibilidade, conhecidas por WCAG. Recentemente a recomendação teve sua versão 2.0 publicada pelo W3C, e acredito que é a melhor e mais confiável fonte de informação técnica sobre o assunto.

Não terei muito trabalho fazendo isso?

O aumento de trabalho será mínimo, enquanto os ganhos podem ser bem grandes. Além de antender a uma quantidade de usuários maior, sua aplicação estará acessível a diferentes dispositivos e ambientes limitados. Também poderá influenciar mudanças no conteúdo, o que é realmente importante, visto que terá a maior atenção que as camadas de apresentação e comportamento. E pense que é muito melhor o usuário falar:

Legal, funciona! E como foi útil!

Do que:

Sabe aquele site xxxx, a tia de uma amiga minha foi usar e era impossível. Até que era bonitinho, mas não funcionava, dava erro, pedia um tal de java…

Notícias ruins correm bem mais rápido que as boas, e a propaganda entre os usuários é um dos melhores meios de ganhar público.

Como esse é um assunto bastante extenso, deixarei alguns links para quem quiser aprofundar suas pesquisas.

Acesso Digital
Acredito que sejam os melhores do ramo no Brasil, ótimo exemplo de site acessível
DosVox – Sistema Operacional para deficientes visuais
Recomendo o uso dele, é muito interessante “ver” o mundo virtual sem os olhos. Possui navegador integrado. Roda em Windows e acredito que no Linux roda no Wine
W3C Web Accessibility Initiative (WAI)
Site geral do W3C sobre acessibilidade na Web. Nele se encontram todas as recomendações relacionadas ao assunto
DaSilva – Avaliador de Acessibilidade para Sites
Uma maneira automatizada de analisar a acessibilidade de um site. Lembrando que não é o suficiente, pois muitas análises dependem de conhecimento e intervenção humana.
  1. O que é acessibilidade – ExtraLibris Revista
  2. Lei de Acessibilidade
Tags: , , ,
Topo

2 Comentários

Creative Commons License
Sou Ágil: KISS em http://kiss.souagil.com.br está licenciado sobre
Creative Commons Attribution-Share Alike 2.5 Brazil License.

souÁgil