Dados governamentais abertos, e ai Zé?

Fiquei muito surpreso esses dias quando vi que finalmente o governo lançou a tão esperada plataforma de dados abertos do governo brasileiro. Dados abertos são de extrema importância para a democracia de um país,  não são somente indicadores prontos, os dados devem vir em forma bruta e bem granulado, possibilitando assim que a sociedade analise de diversas formas para diversos fins.

Segundo David Eaves os dados abertos devem seguir três conceitos fundamentais:

“1. Se o dado não pode ser encontrado e indexado na Web, ele não existe;
2. Se não estiver aberto e disponível em formato compreensível por máquina, ele não pode ser reaproveitado; e
3. Se algum dispositivo legal não permitir sua replicação, ele não é útil.”

Hoje a maioria dos sites  governamentais não seguem essas regras, um exemplo simples é site da ANP que fiscaliza de forma periódica o preço dos postos de combustível. E se por algum motivo quisermos fazer um aplicativo para facilitar essa busca por geolocalização?

Deêm uma olhada no endereço do site da ANP e o link para verificar os postos de gasolina da cidade.

Verificando o código compreendemos o que esta sendo feito, o município é inserido como valor de um form

E olhando o form vemos que ele esta fazendo uma requisição POST

Como podemos fazer algo que seja legível para a máquina com um link desses? Não temos um acesso simples como “../2011/1/gasolina/osasco” . A única forma de pegar essas informações seria a de criar um robô e percorrer o site de tempos em tempos e além disso não temos nenhuma opção para fazer o download em XML, CSV ou JSON. Infelizmente além do site da ANP existem muitos outros sites do governo dessa forma, inclusive sites de prestação de contas e  de pregão eletrônico.

Outros países já possuem plataformas de dados abertos, entre eles temos a do governo britânico e americano

Data.gov.uk

Esses dados possibilitam o desenvolvimento de diversos aplicativos, por exemplo no site de dados do governo britânico é possível você baixar um APP para o iphone que verifica a taxa de crime de uma determinada região, esses dados são fornecidos pelo próprio governo.

A plataforma brasileira ainda está no começo, foi desenvolvida utilizando o CKAN que é um portal open-source para dados.

Para quem curtiu o assunto vale a pena ver esse video:

http://opengovernmentdata.org/film/

#opendata from Open Knowledge Foundation on Vimeo.

E para quem estiver buscando dados governamentais pode consultar fontes como:

Vale a pena lutar por esse direito.

Anúncios

Hello world com a API do Facebook

O primeiro passo para entender a API do facebook, é dar uma boa lida na parte de Autenticação do Facebook. É bom dar uma olhada na parte das permissões, dentre as permissões mais interessantes temos:

publish_stream → permite o app publicar feeds na pagina do usuário a qualquer momento.

Caso queira testar um app é necessário o cadastro e possuir em mãos o APP ID e uma Secret key. A API do facebook não depende de nenhuma linguagem de programação, existem plugins em diversas linguagens que torna o trabalho mais fácil, eu já utilizei a Omiauth no ruby on rails.

Após a autenticação de um usuário no seu app você terá um “access token” que permiti utilizar as funções autorizadas pelo usuário. Esse token pode expirar em algumas horas ou nunca expirar, isso depende do tipo de permissão que foi aceita.

Vou mostrar alguns exemplos de como é possível utilizar a API para extrair dados e para publicar nos feeds, para os testes vou utilizar um APP desenvolvido pelo próprio Facebook chamado “Graph API Explorer”, o facebook utiliza estrutura de dados JSON.

Com o meu ID de usuário do facebook a única informação disponível sem um token são essas:

Primeiro irei solicitar um access token para algumas permissões

Com essas permissões posso obter as informações de likes, interesses e status do profile

segue um exemplo de uma chamada para ver os likes do usuário

o “/me” pode ser substituído pelo ID do usuário

Existem diversas permissões para tratar dados  dos amigos do usuário

Com essa permissão posso verificar o status do Mauricio Sako

Utilizando o ID do Mauricio posso verificar seus status.

Para fazer a publicação de conteúdo como o usuário é necessário solicitar uma autorização publish_strem.

Para o post de feed passo um parâmetro  e temos que fazer uma requisição POST.

Posso postar uma foto no album, o id é  do album que a foto será postada.

 

Lembrando que o request fica:

https://graph.facebook.com/me/likes?access_token=[access token] [GET]

Para post use o  CURL.

Bom é isso espero que tenha ajudado alguém.


Zoho

Muitos dizem que 2012 vem com tudo para ser o ano do boomm das SaaS, o Zoho já esta muito bem preparado, com mais de 27 aplicativos nas nuvens. Esses aplicativos possuem  integração com o Google apps, API de dados, traduções em diversas línguas, utilização offline e versão FREE.

Selecionei uma lista com alguns dos aplicativos disponíveis:

  • Writer: Processador de texto com muitas funcionalidades, aceita múltiplos usuários, possuí um bom sistema de controle de versões e aceita vários formatos de arquivos.
  • Sheet: Criação planilhas, excel
  • Show: Criação apresentações, powerpoint
  • Creator: Sistema de base de dados online, lembra algumas funcionalidades do Acces, aceita importação arquivos como .xls, .cvs. Possui uma interface simples do tipo drag and drop.
  • Projects:  Software para gestão de projetos possibilita a criação de tarefas, acompanhamento milestones, deadlines e gerar relatórios.​
  • ​Planner: Calendário com a possibilidade de criar eventos, alertas e todo list, é sincronizado com o Google Calendar.
  • Mail: Sistema de email.
  • Chat: Software para mensagem instantânea, suporta diversos sistemas conhecidos de IM.
  • Meeting: Aplicação de conferência na web, exibe slides controlado pelo conferencista.
  • CRM: Sistema de relacionamento com clientes
  • People: Sistema de RH para empresas
  • Wiki: Sistema para criação de Wiki, pode ser usada tanto de forma pública como privada.
  • Challenge: Sistema para a criação de testes online
  • Polls: Sistema para a criação de formulários.
  • Report: Relatórios online e serviços de bussiness inteligence.
  • Site 24×7: Monitoramento de sites.

Uma ponto positivo do Zoho é o fato desses aplicativos estarem na mesma plataforma, possibilitando uma completa conectividade, por exemplo o CRM se conecta com o Mail,Report, Meeting, Contacts do google app.

​ ​Vídeo que explica um pouco da conectividade com o Google apps:

​​Vale a pena conferir o que esses aplicativos podem oferecer para você ou para sua empresa.