Fim do Post Denúncia

É com tristeza que anunciamos o fim do Post Denúncia, e consequentemente do Mapa Brasileiro de Qualidade do Ar. As denúncias de fumaça preta feitas no estado de São Paulo através do aplicativo Post Fumaça Preta não serão mais encaminhadas para a CETESB, e não serão mais coletados os dados de qualidade do ar publicados pelos diversos órgãos que possuem rede de monitoramento. O aplicativo não pode ser mais baixado da Apple Store ou do Google Play, e o site em breve será desligado.

Entendemos que não houve interesse da comunidade em participar do projeto, mesmo após a abertura do código fonte no Github. E também que não houve interesse na disseminação das informações de qualidade do ar em aplicativos ou sites a partir do uso da nossa plataforma. Diante deste cenário, e considerando ainda os custos envolvidos, optamos por retirar o serviço de operação. Caso queira ter acesso aos dados, ou de alguma forma retomar o projeto, por favor envie um email para contato@esign.com.br.

Como adicionar o mapa de qualidade do ar no seu site ou app

O mapa de qualidade do ar existente no aplicativo Post Fumaça Preta também pode ser disponibilizado no seu site ou aplicativo. Melhor, ele é configurável para apresentar, por exemplo, dados de uma cidade apenas, ou das proximidades de um ponto qualquer do Brasil. Basta passar parâmetros específicos, conforme explicado mais abaixo.

Para adicionar o mapa no seu site, será preciso usar iframes. Neste post, os exemplos serão apresentados desta forma. Para adicionar no seu app, basta abrir no componente browser a URL origem do mapa, acompanhada ou não de parâmetros. Quando não acompanha parâmetros, o mapa mostra o país inteiro, o que poderia ser a visualização inicial desejada.

<iframe src="https://www.postdenuncia.com.br/postfumacapreta/qualidadear.html"/>

Para apresentar somente os dados de qualidade do ar do estado do Rio de Janeiro, adicione ?estado=RJ à URL base. O parâmetro estado aceita qualquer sigla de unidade federativa brasileira. Quando não existem dados de qualidade do ar para a o filtro informado, é sempre apresentado todo o país. No caso do estado do Rio, dados obtidos do INEA e da SMAC são mostrados.

<iframe src="https://www.postdenuncia.com.br/postfumacapreta/qualidadear.html?estado=RJ"/>

Uma alternativa à filtrar por estado, seria filtrar por cidade. Sugestão para sites ligados a municípios, como os de prefeituras. Os dados de qualidade do ar da cidade de Curitiba, capital do Paraná, podem ser apresentados adicionando-se ?cidade=Curitiba à URL base. No momento deste post, são cinco as estações de monitoramento lá, conforme o IAP.

<iframe src="https://www.postdenuncia.com.br/postfumacapreta/qualidadear.html?cidade=Curitiba"/>

Um modo interessante de mostrar o mapa é identificando um ponto para apresentar os dados de qualidade do ar nas proximidades. Neste modo, o ponto é destacado, e as cinco estações de monitoramento mais perto do ponto são identificadas pelas letras A a E, sendo A a estação mais próxima e E a mais afastada do ponto. Quando a estação é selecionada, pode-se conhecer ainda a distância da estação para o ponto. Este tipo de visualização é usada pelo aplicativo Post Fumaça Preta, que identifica o ponto conforme a localização do usuário.

Se você quer mostrar no seu site, por exemplo, a qualidade do ar das redondezas do Estádio do Pacaembu, na cidade de São Paulo, pode definir a Praça Charles Miller como ponto. Assim sendo, basta adicionar ?endereco=Pra%C3%A7a%20Charles%20Miller à URL base. Esta é uma boa alternativa se você não sabe as coordenadas exatas do lugar. Experimente informando seu endereço residencial, lembrando apenas antes de transformá-lo em ASCII.

<iframe src="https://www.postdenuncia.com.br/postfumacapreta/qualidadear.html?endereco=Pra%C3%A7a%20Charles%20Miller"/>

Agora, se você conhece a latitude e a longitude de determinada localização, como da Vila Olímpica do Rio de Janeiro, por exemplo, adicione à URL base o seguinte: ?latitude=-22.985790&longitude=-43.416969. Lembre-se que ambos os parâmetros precisam ser passados em conjunto. Como os smartphones possuem função GPS, é uma excelente opção filtrar pela localização do usuário.

<iframe src="https://www.postdenuncia.com.br/postfumacapreta/qualidadear.html?latitude=-22.985790&longitude=-43.416969"/>

Fique à vontade para adicionar o mapa! Ajudando a disseminar os dados de qualidade do ar, você chama a atenção ao problema da poluição. Com mais pessoas conscientes do problema, mais gente envolvida na solução, mas chance de o resolvermos. Se tiver qualquer dificuldade, não hesite em pedir ajuda 🙂

Edição feita em 24/02/2017: Com o fim do Post Denúncia, os links dos iframes não funcionam mais. Por isso, os iframes deste post foram substituídos pelas imagens correspondentes.

Post Denúncia na trilha Smart Cities do TDC 2016 São Paulo

Na semana passada estive no The Developers Conference falando um pouco sobre a experiência do Post Denúncia, do aplicativo Post Fumaça Preta e do Mapa Brasileiro de Qualidade do Ar. Foi muito bom! Agradeço a oportunidade aos coordenadores da trilha Smart Cities: Jeff Prestes, Alexandre Uehara e Lina Lopes, e a todos os participantes. Tiveram muitas perguntas, que geraram um debate bacana, mesmo com o tempo escasso. Quem quiser continuar a discussão, se envolver com os projetos, fiquem à vontade, é só entrar em contato!

O objetivo da apresentação foi principalmente mostrar os fracassos e sucessos durante estes 3 anos de Post Denúncia, os sonhos que permanecem com o esforço de evoluí-lo, e engajar os desenvolvedores por meio da colaboração. O Post Denúncia nasceu com a motivação de se fazer a diferença na sociedade, e o desejo com a palestra foi mostrar que é possível sim que a comunidade de desenvolvedores use o domínio da tecnologia em prol de um mundo melhor.

 

Acima está a apresentação feita lá, e que foi publicada no SlideShare. No slide sobre o Post Denúncia, foi mostrado o vídeo institucional, publicado no YouTube, aqui. No slide sobre o aplicativo Post Fumaça Preta, foi mostrado o mapa online com todas as denúncias feitas através do app no estado de São Paulo e, portanto, encaminhadas para a CETESB. Este mapa também pode ser visto aqui. No slide sobre o Mapa Brasileiro de Qualidade do Ar, ele foi mostrado da mesma forma somente com as informações do estado de São Paulo, como pode ser visualizado aqui. Caso queira fazer o download do arquivo PowerPoint, ele está disponível aqui.

Por fim, tirada do livro Fearless Change: Patterns for Introducing New Ideas, de Mary Lynn Manns e Linda Rising, deixo a mesma mensagem: “Remember how powerful you are. Never forget the power of the individual to make a difference. Enroll people in that possibility and change the world, change your community, change your family, change yourself.” (President Carter)

Open Data

opendata

Com o advento da Internet, e a Era da Informação, surgiu um movimento para a abertura dos dados. Este movimento defende o acesso irrestrito a dados, sua utilização e reprodução. Ganhou força com a disponibilização de dados públicos por vários governos, em prol da transparência. Para criarmos o mapa brasileiro da qualidade do ar, recorremos aos que diversos órgãos ambientais atualizam em seus sites.

Embora tenhamos tido o cuidado de informar sobre a constante extração dos dados para consolidação numa base de dados própria, nem sempre a resposta foi positiva. Nossa justificativa sempre foi o entendimento da natureza pública do dado, e a importância em disseminá-lo, mas nem todos os órgãos se sentiram confortáveis com a visibilidade dada, talvez preocupados com possíveis questionamentos.

Dados abertos não são só importantes para replicação, como fazemos hoje no mapa, que inclusive cita como fonte o órgão origem. Dados abertos são imprescindíveis para, após trabalhados, gerar conhecimento, e agregar valor. Os dados de qualidade do ar combinados com os dados de atendimento de pessoas com problemas respiratórios em hospitais públicos, por exemplo, podem indicar o quanto a poluição prejudica a saúde.

A bem da verdade, existe mesmo uma controvérsia com relação às classificações de qualidade do ar adotadas no país. Os profissionais da saúde as consideram pouco rigorosas, pois não seguem as recomendações da OMS (Organização Mundial da Saúde), levando a população a achar que a qualidade do ar está boa, quando na realidade não está. Além disso, argumentam que o cálculo dos índices não é claro, e contestam fatores econômicos porventura usados.

Ao recorrer a dados abertos, é preciso estar ciente que, independentemente da origem, eles podem não ser exatos. Pode existir um grau de imprecisão, o que não os necessariamente desqualifica. Mesmo se os dados fossem obtidos de sensores portáteis, espalhados pela cidade, fatores como as condições físicas do equipamento, sua aferição e a própria transmissão dos dados implicariam numa maior ou menor confiabilidade.

Outro ponto de atenção no uso de dados abertos é a dependência ao formato origem. Quando não existe um padrão, e a fonte pode adotar o formato que quiser, a qualquer tempo, complica. Isto quer dizer que a extração desenvolvida especificamente para aquela origem pode deixar de funcionar de uma hora pra outra, simplesmente porque a fonte resolveu mudar a vírgula de lugar. Normalmente não se conhece quem consome os dados, e não existe o menor compromisso em comunicar qualquer alteração. Monitore, portanto, cada mecanismo automático de extração de dados abertos.

Um formato ruim para extrair dados é o PDF. No vídeo do TED abaixo Ben Wellington fala sobre isso, sobre como a falta de padronização atrapalha, e sobre como descobriu o pior lugar para se estacionar em Nova Iorque:

Mapa brasileiro de qualidade do ar

Desde a versão 2.0 do aplicativo Post Fumaça Preta, disponibilizada para iOS, passamos a informar a qualidade do ar a partir da localização do usuário. Além de ter acesso às informações oriundas da estação de monitoramento mais próxima, o usuário passou a poder visualizar o mapa que apresenta toda a rede de monitoramento. Cada estação posicionada no mapa informando: a data e a hora de publicação dos dados, a classificação e o índice da qualidade do ar, o poluente determinante no cálculo do índice, e ainda a evolução do IQA através de um gráfico histórico.

Para que isso fosse possível, muitas linhas de código e uma técnica particular, chamada web scraping. Com ela, foi possível extrair de forma automatizada e constante as informações de qualidade do ar publicadas nos sites dos diversos órgãos ambientais brasileiros que possuem rede de monitoramento (para realizar essa extração, utilizamos o Jsoup), e centralizá-las numa base de dados estruturada. Criamos então algo ainda inexistente no momento, o mapa brasileiro de qualidade do ar!

Como nem tudo são flores, algumas dificuldades são encontradas para manter o mapa atualizado, como aumentar a abrangência à medida que mais órgãos passam a publicar os dados, se adaptar a novos formatos adotados pelos órgãos nos seus sites, e conhecer a localização das estações de monitoramento. E apesar dos órgãos se basearem nos padrões definidos pelo Ministério do Meio Ambiente, podem possuir tabelas de classificação e nomenclaturas diferentes, que o mapa precisa seguir à risca.

Hoje são 7 os órgãos ambientais cujos dados publicados de qualidade do ar são obtidos: CETESB (Companhia Ambiental do Estado de São Paulo), FEAM (Fundação Estadual do Meio Ambiente – MG), IAP (Instituto Ambiental do Paraná), IEMA (Instituto Estadual de Meio Ambiente e Recursos Hídricos – ES), INEA (Instituto Estadual do Ambiente – RJ), INEMA (Instituto do Meio Ambiente e Recursos Hídricos – BA) e SMAC (Secretaria Municipal de Meio Ambiente – Rio de Janeiro). Nos avise se souberem de mais órgãos!

O módulo de qualidade do ar faz parte atualmente do Post Denúncia, mas dada sua relevância, queremos separá-lo. É nosso desejo usá-lo como base para a construção de uma plataforma aberta voltada especificamente para a qualidade do ar. O Post Fumaça Preta passaria então a ser cliente dessa nova plataforma, que disponibilizaria uma API para uso não somente por aplicativos, mas por sites e pessoas em geral. Esperamos que curtam a ideia e se engajem no projeto!

Edição feita em 16/02/2020: Os dados brasileiros de qualidade do ar coletados durante o período de existência do aplicativo Post Fumaça Preta estão disponíveis no Github, em https://github.com/esign-consulting/qualidade-ar-brasil.

Google Maps Geocoding API

 

A plataforma do Post Denúncia usa a Google Maps Geocoding API para identificar a localização do denunciante. Quando as coordenadas (latitude e longitude) são recebidas, são submetidas à API. Ela então retorna várias informações, dentre elas o endereço, o bairro, a cidade e o estado onde o problema urbano foi reportado. Desta forma, a denúncia pode seguir para o órgão com toda a informação necessária para seu tratamento.

Para se comunicar com a API, foi desenvolvido um módulo cliente, apesar da própria equipe do Google Maps disponibilizar no GitHub uma implementação cliente em Java, aqui. Não tínhamos necessidade de algo complexo, enquanto a solução oficial contemplava não apenas a Geocoding API, mas outras APIs do Google Maps também. Construímos então uma biblioteca Java simples, que no momento deste post está na versão 1.2, e que pode ser obtida no GitHub da mesma forma, aqui.

No projeto google-geocode são duas as principais classes: GoogleGeocode e GeocodeResponse. A classe GoogleGeocode faz a comunicação com a Google Maps Geocoding API propriamente dita, passando como parâmetro as coordenadas geográficas ou um endereço específico, e convertendo a resposta em formato JSON para um objeto da classe GeocodeResponse (para realizar essa conversão, utilizamos o Jackson). Com a classe GeocodeResponse é possível conhecer o status da resposta e percorrer a lista com os resultados fornecidos pela API.

Como o Post Denúncia se restringe ao território brasileiro, as classes foram estendidas em BrazilGoogleGeocode e BrazilGeocodeResponse. Elas podem ser visualizadas aqui. Deste modo, pôde-se definir PT_br como idioma para o retorno dos resultados, e também implementar métodos específicos que retornassem adequadamente o nome do bairro e da cidade.

Tenha em mente que, ao usar o serviço de geolocalização do Google, você está criando uma dependência para sua aplicação, e precisa gerenciar isso. A Google garante disponibilidade para quem estiver em conformidade com os Termos de Serviço, que requer dentre outras coisas que sua aplicação seja pública e gratuita.

A Google define também limites de utilização. Os usuários da API padrão, não paga (nosso caso), podem fazer até 2.500 requisições por dia, e no máximo 10 solicitações por segundo. Isso é controlado através da chave da aplicação, que é passada como parâmetro na requisição. Apesar de ser uma recomendação da Google, na solução que demos não passamos a chave. O controle, nesse caso, é feito a partir do IP de onde as requisições estão sendo feitas. Se você for usar a nossa biblioteca google-geocode, tenha consciência disso. Caso queira colaborar com o projeto e implementar esta melhoria, basta fazer um pull request no repositório do Github.

Se não desejar o código do google-geocode, mas quiser usá-lo no seu projeto Maven, basta adicionar no pom.xml:

    <repositories>
        <repository>
            <id>esign-repo</id>
            <name>Esign Maven Repository</name>                                 
            <url>http://maven.esign.com.br</url>
        </repository>
    </repositories>

É necessário informar o repositório da Esign, para que o Maven saiba de onde baixar a dependência:

    <dependencies>
        <dependency>
            <groupId>br.com.esign</groupId>
            <artifactId>google-geocode</artifactId>
            <version>1.2.0</version>
        </dependency>
    </dependencies>

Fique à vontade para usar! 🙂

Edição feita em 20/11/2018: Desde 11 de Junho de 2018, a Google exige que sejam usadas API keys, conforme informado oficialmente. Desta forma, a biblioteca google-geocode foi atualizada, obrigando que uma chave de API fosse passada por parâmetro. Antes de usar a biblioteca, portanto, obtenha uma API key própria.

Com a alteração, foi lançada a versão 2.0 do google-geocode. Uma boa novidade é que a nova versão está disponibilizada no repositório central do Maven, não havendo mais a necessidade de adicionar o caminho para o repositório Maven da Esign no pom.xml, como orientado no post original. Basta adicionar a dependência:

    <dependencies>
        <dependency>
            <groupId>br.com.esign</groupId>
            <artifactId>google-geocode</artifactId>
            <version>2.0</version>
        </dependency>
    </dependencies>

Enjoy! 🙂

3 anos de Post Denúncia

Há 3 anos nasceu o Post Denúncia, serviço da Esign para cidadãos denunciarem problemas urbanos aos órgãos competentes, através de aplicativos para smartphones. Com o propósito de promover a cidadania e a qualidade de vida, foi criada uma plataforma capaz de receber os problemas reportados e encaminhá-los aos órgãos públicos responsáveis por tratá-los. Nosso objetivo foi empoderar as pessoas, disponibilizando uma ferramenta que as tornassem agentes da mudança, e ajudar o poder público, indicando onde se faz necessária sua atuação.

O projeto então lançou o aplicativo Post Fumaça Preta, que permite a denúncia de veículos que poluem o ar, emitindo fumaça irregularmente. Ele está disponível na Apple Store e no Google Play. A partir da versão 2.0, passou a informar a qualidade do ar obtida da rede de monitoramento mantida por órgãos públicos ligados ao meio ambiente. No estado de São Paulo, as denúncias feitas pelo aplicativo são enviadas para a CETESB, que é o órgão responsável também pela divulgação das informações de qualidade do ar obtidas das suas diversas estações de monitoramento.

Embora tenhamos orgulho do projeto, e vários motivos de satisfação como a indicação para o Prêmio Cidadão Sustentável, encontramos muitas dificuldades em mantê-lo. Apesar dos esforços, não conseguimos torná-lo rentável, e não foi possível lançar os demais aplicativos para denunciar outros tipos de problemas urbanos. De toda forma, não desistimos do nosso sonho, e por isso estamos abrindo o código fonte da plataforma, na esperança de mais desenvolvedores colaborarem. O código está disponível no Github, e contamos com você que acredita que o Post Denúncia pode fazer a diferença 🙂

Post Denúncia nas redes sociais:  

Editado em 24/02/2017: Infelizmente o Post Denúncia foi encerrado. Mais informações em Fim do Post Denúncia.