🕵 Artificial Intelligence for social control of public administration
Clone or download
Latest commit 7f6eb88 Oct 16, 2018
Permalink
Failed to load latest commit information.
.github Improve pull request template May 2, 2018
contrib Bring the Whistleblower in Sep 13, 2018
docs Re-organzie docs Apr 17, 2018
jarbas Add state filter to README list of parameters Oct 2, 2018
research Update pandas from 0.22.0 to 0.23.3 Jul 9, 2018
rosie Update Python requirements Sep 4, 2018
.codeclimate.yml Add migrations folder to Code Climate exclude_paths Oct 17, 2017
.coveragerc Omit chamber_of_deputies tests and migrations from coverage Oct 26, 2017
.editorconfig Apply required changes Oct 7, 2016
.flooignore Add .flooignore Oct 5, 2016
.gitignore Revert "Add app.js at container build time" Sep 13, 2018
.pyup.yml Set pyup to run weekly Mar 6, 2017
.travis.yml Fix Code Climate test report May 3, 2018
CONTRIBUTING.md Migrate Jarbas to most recent fields produced by Rosie Sep 4, 2018
Dockerfile Update docker images Mar 19, 2018
Dockerfile-elm Merge branch 'master' into cuducos-update-node-container Apr 2, 2018
LICENSE Happy new year! Jan 5, 2017
README.md Update README.md Oct 16, 2018
docker-compose.override.yml Refer to new reimbursements_sample.csv when loading sample fixture Sep 9, 2018
docker-compose.prod.yml Add docker-compose.prod.yml Sep 13, 2018
docker-compose.yml Leverage envvars to separate env-specifics between environments Sep 4, 2018
elm-package.json Change: datasciencebr -> okfn-brasil Feb 22, 2018
goss.yaml Add changes to review #285 Nov 8, 2017
gulpfile.js Dashboard is the new home Dec 8, 2017
manage.py Internally rename the app to Jarbas Sep 6, 2016
package-lock.json Update package and package-lock.json Sep 4, 2018
package.json Update package and package-lock.json Sep 4, 2018
requirements-dev.txt Update ipdb from 0.10.3 to 0.11 Feb 19, 2018
requirements.txt Update WhiteNoise Sep 13, 2018
setup.cfg Allow Python files to go up to 120 columns in line length Jun 23, 2017

README.md

Build Status Code Climate Test Coverage Donate

Operação Serenata de Amor

  1. Non-tech crash course into Operação Serenata de Amor
  2. Tech crash course into Operação Serenata de Amor
  3. Contributing with code and tech skills
  4. Supporting
  5. Acknowledgments

Non-tech crash course into Operação Serenata de Amor

What

Serenata de Amor is an open project using artificial intelligence for social control of public administration.

Who

We are a group of people who believes in power to the people motto. We are also part of the Data Science for Civic Innovation Programme from Open Knowledge Brasil.

Among founders and long-term members, we can list a group of eight people – plus numerous contributors from the open source and open knowledge communities: Tatiana Balachova, Felipe Cabral, Eduardo Cuducos, Irio Musskopf, Bruno Pazzim, Ana Schwendler, Jessica Temporal and Pedro Vilanova.

How

Similar to organizations like Google, Facebook, and Netflix, we use technology to track government spendings and make open data accessible for everyone. We started looking into data from the Chamber of Deputies (Brazilian lower house) but we expanded to the Federal Senate (Brazilian upper house) and to municipalities.

When

Irio had the main ideas for the project in early 2016. For a few months, he experimented and gathered people around the project. September, 2016 marks the launching of our first crowd funding. Since then, we have been creating open source technological products and tools, as well as high quality content on civic tech on our Facebook and Medium.

Where

We have no non-virtual headquarters, but we work remotely everyday. Most of our ideas are crafted to work in any country that offers open data, but our main implementations focus in Brazil.

Why

Empowering citizens with data is important: people talk about smart cities, surveillance and privacy. We prefer to focus on smart citizens, accountability and open knowledge.

Tech crash course into Operação Serenata de Amor

What

Serenata de Amor develops open source tools to make it easy for people to use open data. The focus is to gather relevant insights and share them in an accessible interface. Through this interface, we invite citizens to dialogue with politicians, state and government about public spendings.

Who

Serenata's main role is played by Rosie: she is an artificial intelligence who analyzes Brazilian congresspeople expenses while they are in office. Rosie can find suspicious spendings and engage citizens in the discussion about these findings. She's on Twitter.

To allow people to visualize and make sense of data Rosie generates, we have created Jarbas. On this website, users can browse congresspeople expenses and get details about each of the suspicions. It is the starting point to validate a suspicion.

How

We have three main repositories on GitHub. This is the main repo and hosts Rosie, Jarbas and more experimental code in the research/ directory.

In addition, we have the Whistleblower – the tool that gives Rosie the power to tweet – and the toolbox - a pip installable package to follow the DRY principle alongside our repos and modules.

When

Despite all these players acting together, the core part of the job is ran manually from time to time. The only part that is always online is Jarbas – freely serving a wide range of information about public expenditure 24/7.

Roughly once a month, we manually run Rosie and update Jarbas. A few times per year, we upload versioned datasets accessible via the toolbox – but we encourage you to use the toolbox to generate fresh datasets whenever you need.

Where

Jarbas is running in Digital Ocean droplets, and deployed using the Docker Cloud architecture.

Why

The answer to most technical why questions is because that is what we had in the past and enabled us to deliver fast. We acknowledge that this is not the best stack ever, but it has brought us here.

Contributing with code and tech skills

Make sure you have read the Tech crash course on this page. Next, check out our contributing guide.

Supporting

Acknowledgments

Open Knowledge Brasil Digital Ocean