aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2025-05-20 18:44:34 -0300
committerSilvio Rhatto <rhatto@riseup.net>2025-05-20 18:44:34 -0300
commit946dea4f6d153c04d31589c610141c96b0f39c12 (patch)
tree6a399e4eed46af042ed338015d85e931cfe1d8a5
parent8ec513e5b26f0043cb09ad4dc245076554c0fe47 (diff)
downloadslides-master.tar.gz
slides-master.tar.bz2
RestruturaçãoHEADmaster
-rw-r--r--.gitmodules2
-rw-r--r--.htaccess9
m---------2011/gestaossl (renamed from gestaossl)0
l---------2019/salve-quem-puder/css1
-rw-r--r--2019/salve-quem-puder/index.html437
-rw-r--r--2019/salve-quem-puder/index.md (renamed from salve-quem-puder/index.md)0
l---------2019/salve-quem-puder/reveal.js1
-rw-r--r--ChangeLog.md5
-rw-r--r--Makefile36
-rw-r--r--Makefile.env17
-rw-r--r--Makefile.http_server18
-rw-r--r--Makefile.revealjs (renamed from Makefile.reveal.js)8
-rw-r--r--README.html3
-rw-r--r--README.md2
-rw-r--r--TODO.md2
-rw-r--r--css/index.css (renamed from salve-quem-puder/index.css)2
-rw-r--r--index.html25
-rw-r--r--index.md4
-rw-r--r--index.pdfbin49312 -> 49326 bytes
-rw-r--r--salve-quem-puder/index.html215
l---------salve-quem-puder/reveal.js1
m---------vendor/reveal.js0
22 files changed, 512 insertions, 276 deletions
diff --git a/.gitmodules b/.gitmodules
index 22a5b37..eac4b56 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -2,5 +2,5 @@
path = vendor/reveal.js
url = https://github.com/hakimel/reveal.js
[submodule "gestaossl"]
- path = gestaossl
+ path = 2011/gestaossl
url = git@github.com:siflux/gestaossl.git
diff --git a/.htaccess b/.htaccess
index 80bdf3e..a09cabf 100644
--- a/.htaccess
+++ b/.htaccess
@@ -1,2 +1,11 @@
#ReadmeName README.html
HeaderName README.html
+
+<IfModule mod_rewrite.c>
+ RewriteEngine on
+
+ # Permalink handling
+ # See https://httpd.apache.org/docs/2.4/rewrite/remapping.html
+ RewriteRule ^salve-quem-puder$ /2019/salve-quem-puder/ [R]
+ RewriteRule ^gestaossl$ /2011/gestaossl/ [R]
+</IfModule>
diff --git a/gestaossl b/2011/gestaossl
-Subproject 80823f642ff130e1a461e5398f88466dfbf9baa
+Subproject 80823f642ff130e1a461e5398f88466dfbf9baa
diff --git a/2019/salve-quem-puder/css b/2019/salve-quem-puder/css
new file mode 120000
index 0000000..8e8b6d0
--- /dev/null
+++ b/2019/salve-quem-puder/css
@@ -0,0 +1 @@
+../../css \ No newline at end of file
diff --git a/2019/salve-quem-puder/index.html b/2019/salve-quem-puder/index.html
new file mode 100644
index 0000000..d7bd8b6
--- /dev/null
+++ b/2019/salve-quem-puder/index.html
@@ -0,0 +1,437 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta charset="utf-8">
+ <meta name="generator" content="pandoc">
+ <meta name="author" content="06/12/2019">
+ <title>Salve quem puder - o apagão de dados no Brasil</title>
+ <meta name="apple-mobile-web-app-capable" content="yes">
+ <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
+ <link rel="stylesheet" href="reveal.js/dist/reset.css">
+ <link rel="stylesheet" href="reveal.js/dist/reveal.css">
+ <style>
+ .reveal .sourceCode { /* see #7635 */
+ overflow: visible;
+ }
+ code{white-space: pre-wrap;}
+ span.smallcaps{font-variant: small-caps;}
+ span.underline{text-decoration: underline;}
+ div.column{display: inline-block; vertical-align: top; width: 50%;}
+ div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
+ ul.task-list{list-style: none;}
+ </style>
+ <link rel="stylesheet" href="reveal.js/dist/theme/moon.css" id="theme">
+ <link rel="stylesheet" href="css/index.css"/>
+</head>
+<body>
+ <div class="reveal">
+ <div class="slides">
+
+<section id="title-slide">
+ <h1 class="title">Salve quem puder - o apagão de dados no Brasil</h1>
+ <p class="author">06/12/2019</p>
+</section>
+
+<section
+id="o-que-acontece-no-ambiente-no-território-e-com-o-povo-acontece-com-os-dados"
+class="slide level1">
+<h1>O que acontece no ambiente, no território e com o povo, acontece com
+os dados</h1>
+<!--
+* Governos também são fenômenos psicológicos.
+* Tensionamento entre segredo e transparência.
+* Durante transições de regime, dados são destruídos. Exemplo: arquivos da Stasi.
+* Transparência e dados abertos: existem regulações e obrigações legais em diversos países para tornar públicas as informações do governo.
+* Mesmo assim é comum que conjuntos de dados desapareçam, por fins políticos ou não.
+* Ataques informacionais / operações psicológicas: informações falsas, excesso de informações, operações diversionistas.... e agora a nova forma de censura: o apagão de dados!
+* O acesso à informação
+-->
+<p>A participação na política está ligada ao acesso de informação
+organizada, estruturada e de qualidade, especialmente dos dados
+produzidos pelo ou sobre o governo.</p>
+<!--
+# Onde estamos?
+
+* Brasil 2019: não só as florestas estão ainda mais ameaças, como também as florestas de dados digitais.
+* Brasil - Construtor de Desertos
+* Brasil Hostil - https://brasilhostil.org
+* Ocorre no território e ocorre na web
+* 2018 - Operação pré-detonação.
+-->
+</section>
+<section id="regulação" class="slide level1">
+<h1>Regulação</h1>
+<p>Só pra constar…</p>
+</section>
+<section id="marcos-internacionais-ratificados-pelo-brasil"
+class="slide level1">
+<h1>Marcos internacionais ratificados pelo Brasil</h1>
+<ul>
+<li class="fragment">Declaração Universal dos Direitos Humanos (Artigo
+19).</li>
+<li class="fragment">Pacto Internacional pelos Direitos Civis e
+Políticos.</li>
+<li class="fragment">Convenção Americana sobre Direitos Humanos (Pacto
+de San José da Costa Rica), todos ratificados pelo Brasil.</li>
+</ul>
+<!--
+* [Declaração da ONU, OEA e OSCE de 2004](http://www.oas.org/es/cidh/expresion/showarticle.asp?artID=319&lID=2):
+ "El derecho de acceso a la información en poder de las autoridades públicas
+ es un derecho humano fundamental que debería aplicarse a nivel nacional a
+ través de legislación global (por ejemplo, las Leyes de Libertad de Acceso a
+ Información) basada en el principio de máxima divulgación, el cual establece
+ la presunción de que toda la información es accesible, sujeto solamente a un
+ sistema restringido de excepciones."
+-->
+</section>
+<section id="alguns-marcos-nacionais" class="slide level1">
+<h1>Alguns marcos nacionais</h1>
+<ul>
+<li class="fragment">EUA: <a
+href="https://www.congress.gov/bill/115th-congress/house-bill/4174/text#toc-H8E449FBAEFA34E45A6F1F20EFB13ED95">Open
+Data Act de 2019</a> e plataforma <a
+href="https://www.data.gov/open-gov/">data.gov</a>.</li>
+<li class="fragment">União Européia: <a
+href="https://ec.europa.eu/digital-single-market/en/european-legislation-reuse-public-sector-information">Regulação
+sobre dados abertos e uso de informação pública</a>.</li>
+</ul>
+</section>
+<section id="marcos-brasileiros---1988---2016" class="slide level1">
+<h1>Marcos Brasileiros - 1988 - 2016</h1>
+<ul>
+<li class="fragment">1988: habeas data (par. LXXII do artigo 5 da
+Consituição Federal): “assegurar o conhecimento de informações relativas
+à pessoa do impetrante, constantes de registros ou bancos de dados de
+entidades governamentais ou de caráter público”.</li>
+<li class="fragment">2011: Lei 12527/2011 - LAI – Lei de Acesso à
+informação; regulamentada via Decreto 7724/2012.</li>
+<li class="fragment">2012:
+<ul>
+<li class="fragment">Infraestrutura Nacional de Dados Abertos -
+INDA.</li>
+<li class="fragment">Portal Brasileiro de Dados Abertos.</li>
+<li class="fragment">Decreto 7845/2012, que “regulamenta procedimentos
+para credenciamento de segurança e tratamento de informação classificada
+em qualquer grau de sigilo”.</li>
+</ul></li>
+<li class="fragment">2016: Decreto Federal nº 8.777/2016: Política de
+Dados Abertos do Executivo: publicação, em formato aberto, de dados das
+bases do executivo federal.</li>
+</ul>
+</section>
+<section id="marcos-brasileiros---2016---2018" class="slide level1">
+<h1>Marcos Brasileiros - 2016 - 2018</h1>
+<ul>
+<li class="fragment">2017:
+<ul>
+<li class="fragment">Dados Abertos: Resolução n.º 3, de 13 de outubro de
+2017, do Comitê Gestor da INDA.</li>
+<li class="fragment">CGU lançou um Painel de Monitoramento:
+http://paineis.cgu.gov.br/dadosabertos/</li>
+</ul></li>
+<li class="fragment">2018: Lei Geral de Proteção de dados – LGPD, em seu
+Capítulo IV, onde é legislado o tratamento de dados pessoais pelo Poder
+Público.</li>
+</ul>
+</section>
+<section id="marcos-brasileiros---evolução" class="slide level1">
+<h1>Marcos Brasileiros - evolução</h1>
+<ul>
+<li class="fragment">Pressão da sociedade por abertura produz uma
+regulação ascendente em direção ao acesso.</li>
+<li class="fragment">Dados e formatos abertos são uma conquista
+especialmente do Movimento do Software Livre no Brasil.</li>
+<li class="fragment">Há um tensionamento entre liberação de todas
+informações, exceto dados pessoais ou sigilosas.</li>
+</ul>
+</section>
+<section id="marcos-brasileiros---2019" class="slide level1">
+<h1>Marcos Brasileiros - 2019</h1>
+<p>Só pra sentir um pouco do gosto amargo:</p>
+<ul>
+<li class="fragment"><p>Decreto 9.756/2019: “portal único gov.br”:
+portais do governo federal devem se movidos para um portal único;
+controle mais centralizado e apagão de informações
+não-migradas.</p></li>
+<li class="fragment"><p>Alteração do Decreto nº 8.777/2016 (Política de
+Dados Abertos): para dispor sobre a gestão e os direitos de uso de dados
+abertos através do Decreto 9903/2019, onde é explicitado que as bases de
+dados estão cobertas pela Lei 9610/1998 (Direito Autoral). Esta mudança
+é um sinal de alerta à possibilidade de privatização de bases de dados
+governamentais – o que já seria fato gravíssimo – e consequente
+restrição de acesso aos mesmos.</p></li>
+</ul>
+</section>
+<section id="marcos-brasileiros---2019-1" class="slide level1">
+<h1>Marcos Brasileiros - 2019</h1>
+<ul>
+<li class="fragment"><p>Governo tentou colocar servidores comissionados
+para impor sigilo ultrassecreto a dados públicos pelo Decreto
+9.690/2019, mas voltou atrás desta decisão no Decreto
+9716/2019.</p></li>
+<li class="fragment"><p>Edição do Decreto 10.046/20191: introduz
+conceito de confidencialidade como atributo da informação: “propriedade
+que impede que a informação fique disponível ou possa ser revelada à
+pessoa natural, sistema, órgão ou entidade não autorizado e não
+credenciado”. Contradiz LGPD e outros marcos.</p></li>
+</ul>
+</section>
+<section id="resumo-estratégias-do-apagão" class="slide level1">
+<h1>Resumo: estratégias do apagão</h1>
+<ul>
+<li class="fragment">Retirada de conteúdos.</li>
+<li class="fragment">Declarações de sigilo de dados.</li>
+<li class="fragment">Alegação de que a divulgação fere direitos
+autorais.</li>
+<li class="fragment">Perseguição de cientistas, jornalistas…</li>
+<li class="fragment">Sucateamento dos órgãos de produção e gestão de
+dados.</li>
+<li class="fragment">Deixar de atualizar conjuntos de dados.</li>
+<li class="fragment">Desmerecimento dos dados e seus produtores.</li>
+</ul>
+</section>
+<section id="o-que-é-salvaguarda-de-dados" class="slide level1">
+<h1>O que é salvaguarda de dados?</h1>
+</section>
+<section id="por-que-é-importante" class="slide level1">
+<h1>Por que é importante?</h1>
+<ol type="1">
+<li class="fragment">Não há garantia de que qualquer dado disponível na
+internet assim permaneça indefinidamente.</li>
+<li class="fragment">Os repositórios de dados tem sustentabilidade
+variada.</li>
+<li class="fragment">Cortes de custos ou critérios político-ideológicos
+podem causar a retirada de dados da internet.</li>
+<li class="fragment">Outras falhas podem comprometer a disponibilidade
+de dados.</li>
+</ol>
+</section>
+<section id="o-que-possibilita" class="slide level1">
+<h1>O que possibilita?</h1>
+<ul>
+<li class="fragment">Acesso aos dados mesmo que a fonte esteja
+indisponível.</li>
+<li class="fragment">Redundância: cópias adicionais aumentam a
+tolerância à falhas.</li>
+<li class="fragment">Integridade: cópias adicionais ajudam a detectar
+inconsistências e modificações nas informações.</li>
+<li class="fragment">Valor histórico: cópias feitas em dadas diversas
+possibilitam de análises temporais.</li>
+<li class="fragment">Análises robustas: grandes massas de dados são mais
+fáceis de serem analisadas se estiverem disponíveis na instituição.</li>
+</ul>
+</section>
+<section id="exemplos-de-análises" class="slide level1">
+<h1>Exemplos de análises</h1>
+<ul>
+<li class="fragment">Fiscalização direta da produção oficial do governo
+acessível publicamente na rede.</li>
+<li class="fragment">Levantamento do “diagrama de rede” da estrutura do
+governo: onde estão os dados, se estão em datacenters públicos ou sendo
+migrados para a iniciativa privada.</li>
+</ul>
+</section>
+<section id="como-ajudar" class="slide level1">
+<h1>Como ajudar?</h1>
+<ul>
+<li class="fragment">Iniciativas pessoas, simples ou sofisticadas.</li>
+<li class="fragment">Iniciativas coletivas, institucionais ou não.</li>
+<li class="fragment">Por uma Rede de Salvaguarda de Dados.</li>
+</ul>
+<!--
+# Web?
+
+* É dinâmica.
+* Historicidade, genealogia: capacidade
+
+# Inventário
+
+* São quantos sites do governo?
+* Qual o tamanho?
+-->
+</section>
+ </div>
+ </div>
+
+ <script src="reveal.js/dist/reveal.js"></script>
+
+ <!-- reveal.js plugins -->
+ <script src="reveal.js/plugin/notes/notes.js"></script>
+ <script src="reveal.js/plugin/search/search.js"></script>
+ <script src="reveal.js/plugin/zoom/zoom.js"></script>
+ <script src="reveal.js/plugin/math/math.js"></script>
+
+ <script>
+
+ // Full list of configuration options available at:
+ // https://revealjs.com/config/
+ Reveal.initialize({
+ // Display controls in the bottom right corner
+ controls: true,
+
+ // Help the user learn the controls by providing hints, for example by
+ // bouncing the down arrow when they first encounter a vertical slide
+ controlsTutorial: true,
+
+ // Determines where controls appear, "edges" or "bottom-right"
+ controlsLayout: 'bottom-right',
+
+ // Visibility rule for backwards navigation arrows; "faded", "hidden"
+ // or "visible"
+ controlsBackArrows: 'faded',
+
+ // Display a presentation progress bar
+ progress: true,
+
+ // Display the page number of the current slide
+ slideNumber: false,
+
+ // 'all', 'print', or 'speaker'
+ showSlideNumber: 'all',
+
+ // Add the current slide number to the URL hash so that reloading the
+ // page/copying the URL will return you to the same slide
+ hash: true,
+
+ // Start with 1 for the hash rather than 0
+ hashOneBasedIndex: false,
+
+ // Flags if we should monitor the hash and change slides accordingly
+ respondToHashChanges: true,
+
+ // Push each slide change to the browser history
+ history: false,
+
+ // Enable keyboard shortcuts for navigation
+ keyboard: true,
+
+ // Enable the slide overview mode
+ overview: true,
+
+ // Disables the default reveal.js slide layout (scaling and centering)
+ // so that you can use custom CSS layout
+ disableLayout: false,
+
+ // Vertical centering of slides
+ center: true,
+
+ // Enables touch navigation on devices with touch input
+ touch: true,
+
+ // Loop the presentation
+ loop: false,
+
+ // Change the presentation direction to be RTL
+ rtl: false,
+
+ // see https://revealjs.com/vertical-slides/#navigation-mode
+ navigationMode: 'default',
+
+ // Randomizes the order of slides each time the presentation loads
+ shuffle: false,
+
+ // Turns fragments on and off globally
+ fragments: true,
+
+ // Flags whether to include the current fragment in the URL,
+ // so that reloading brings you to the same fragment position
+ fragmentInURL: true,
+
+ // Flags if the presentation is running in an embedded mode,
+ // i.e. contained within a limited portion of the screen
+ embedded: false,
+
+ // Flags if we should show a help overlay when the questionmark
+ // key is pressed
+ help: true,
+
+ // Flags if it should be possible to pause the presentation (blackout)
+ pause: true,
+
+ // Flags if speaker notes should be visible to all viewers
+ showNotes: false,
+
+ // Global override for autoplaying embedded media (null/true/false)
+ autoPlayMedia: null,
+
+ // Global override for preloading lazy-loaded iframes (null/true/false)
+ preloadIframes: null,
+
+ // Number of milliseconds between automatically proceeding to the
+ // next slide, disabled when set to 0, this value can be overwritten
+ // by using a data-autoslide attribute on your slides
+ autoSlide: 0,
+
+ // Stop auto-sliding after user input
+ autoSlideStoppable: true,
+
+ // Use this method for navigation when auto-sliding
+ autoSlideMethod: null,
+
+ // Specify the average time in seconds that you think you will spend
+ // presenting each slide. This is used to show a pacing timer in the
+ // speaker view
+ defaultTiming: null,
+
+ // Enable slide navigation via mouse wheel
+ mouseWheel: false,
+
+ // The display mode that will be used to show slides
+ display: 'block',
+
+ // Hide cursor if inactive
+ hideInactiveCursor: true,
+
+ // Time before the cursor is hidden (in ms)
+ hideCursorTime: 5000,
+
+ // Opens links in an iframe preview overlay
+ previewLinks: false,
+
+ // Transition style (none/fade/slide/convex/concave/zoom)
+ transition: 'slide',
+
+ // Transition speed (default/fast/slow)
+ transitionSpeed: 'default',
+
+ // Transition style for full page slide backgrounds
+ // (none/fade/slide/convex/concave/zoom)
+ backgroundTransition: 'fade',
+
+ // Number of slides away from the current that are visible
+ viewDistance: 3,
+
+ // Number of slides away from the current that are visible on mobile
+ // devices. It is advisable to set this to a lower number than
+ // viewDistance in order to save resources.
+ mobileViewDistance: 2,
+
+ math: {
+ mathjax: '/usr/share/javascript/mathjax/MathJax.js',
+ config: 'TeX-AMS_HTML-full',
+ tex2jax: {
+ inlineMath: [['\\(','\\)']],
+ displayMath: [['\\[','\\]']],
+ balanceBraces: true,
+ processEscapes: false,
+ processRefs: true,
+ processEnvironments: true,
+ preview: 'TeX',
+ skipTags: ['script','noscript','style','textarea','pre','code'],
+ ignoreClass: 'tex2jax_ignore',
+ processClass: 'tex2jax_process'
+ },
+ },
+
+ // reveal.js plugins
+ plugins: [
+ RevealMath,
+ RevealNotes,
+ RevealSearch,
+ RevealZoom
+ ]
+ });
+ </script>
+ </body>
+</html>
diff --git a/salve-quem-puder/index.md b/2019/salve-quem-puder/index.md
index ee3e2ef..ee3e2ef 100644
--- a/salve-quem-puder/index.md
+++ b/2019/salve-quem-puder/index.md
diff --git a/2019/salve-quem-puder/reveal.js b/2019/salve-quem-puder/reveal.js
new file mode 120000
index 0000000..fc7767a
--- /dev/null
+++ b/2019/salve-quem-puder/reveal.js
@@ -0,0 +1 @@
+../../vendor/reveal.js \ No newline at end of file
diff --git a/ChangeLog.md b/ChangeLog.md
new file mode 100644
index 0000000..8203bbc
--- /dev/null
+++ b/ChangeLog.md
@@ -0,0 +1,5 @@
+# ChangeLog
+
+## 2025-05-20 - Restruturação
+
+* [x] Restruturação e atualização geral.
diff --git a/Makefile b/Makefile
index 6dbbd98..853cd06 100644
--- a/Makefile
+++ b/Makefile
@@ -1,47 +1,13 @@
#
-# Global Makefile - https://templater.fluxo.info
+# Makefile for slides.
#
# This Makefile contains basic, common targets and also includes
# any Makefile.* available in the current folder.
#
-# Port to serve content
-HTTP_PORT="8000"
-HTTP_SERVER="SimpleHTTPServer"
-
-# Set CONTAINER based in what we have available in the system
-# This variable can be user in other, included Makefiles to handle virtualization tasks
-ifeq ($(shell which kvmx > /dev/null && test -s kvmxfile && echo yes), yes)
- CONTAINER = kvmx
-else ifeq ($(shell which vagrant > /dev/null && test -s Vagrantfile && echo yes), yes)
- CONTAINER = vagrant
-else ifeq ($(shell which docker > /dev/null && test -s Dockerfile && echo yes), yes)
- CONTAINER = docker
-else
- CONTAINER = ''
-endif
-
-# See http://unix.stackexchange.com/questions/32182/simple-command-line-http-server#32200
-# http://php.net/manual/en/features.commandline.webserver.php
-serve:
- @if [ "$(HTTP_SERVER)" = "SimpleHTTPServer" ]; then python -m SimpleHTTPServer $(HTTP_PORT); fi
- @if [ "$(HTTP_SERVER)" = "ssi_server" ]; then PYTHONDONTWRITEBYTECODE=0 ssi_server.py $(HTTP_PORT); fi
- @if [ "$(HTTP_SERVER)" = "http.server" ]; then python3 -m http.server $(HTTP_PORT); fi
- @if [ "$(HTTP_SERVER)" = "php" ]; then php -S localhost:$(HTTP_PORT); fi
-
-# Configure a git post-receive hook
-post_receive:
- git config receive.denyCurrentBranch ignore
- test -s bin/post-receive && cd .git/hooks && ln -sf ../../bin/post-receive
-
# Process any other Makefile whose filename matches Makefile.*
# See https://www.gnu.org/software/make/manual/html_node/Include.html
#
# Some of those files might even contain local customizations/overrides
# that can be .gitignore'd, like a Makefile.local for example.
-include Makefile.*
-
-# Customization examples can be as simple as setting variables:
-#CONTAINER = vagrant
-#CONTAINER = docker
-#DESTDIR ?= vendor
diff --git a/Makefile.env b/Makefile.env
index ddc2af5..6ed6a01 100644
--- a/Makefile.env
+++ b/Makefile.env
@@ -1,10 +1,21 @@
+#
+# Misc Makefile
+#
+
+all: submodules readme index.html index.pdf
+
+submodules:
+ @test -s .gitmodules && git submodule update --init --recursive
+
readme:
@pandoc README.md -o README.html
-index:
- @pandoc -V theme=moon -s --mathjax -t revealjs index.md -o index.html
-
web_deploy:
@rsync -avz --delete ./ slides:/var/sites/slides/site/
+# PDF
+%.pdf: %.md
+ @echo Building $@...
+ @pandoc -t beamer index.md -o index.pdf
+
publish: readme web_deploy
diff --git a/Makefile.http_server b/Makefile.http_server
new file mode 100644
index 0000000..c3d0ab3
--- /dev/null
+++ b/Makefile.http_server
@@ -0,0 +1,18 @@
+#
+# HTTP Server Makefile - https://templater.fluxo.info
+#
+
+# Port to serve content
+HTTP_PORT="8000"
+HTTP_SERVER="http.server"
+
+# Base to serve the content
+HTTP_BASE="."
+
+# See http://unix.stackexchange.com/questions/32182/simple-command-line-http-server#32200
+# http://php.net/manual/en/features.commandline.webserver.php
+serve:
+ @if [ "$(HTTP_SERVER)" = "SimpleHTTPServer" ]; then cd $(HTTP_BASE) && python -m SimpleHTTPServer $(HTTP_PORT); fi
+ @if [ "$(HTTP_SERVER)" = "ssi_server" ]; then cd $(HTTP_BASE) && PYTHONDONTWRITEBYTECODE=0 ssi_server.py $(HTTP_PORT); fi
+ @if [ "$(HTTP_SERVER)" = "http.server" ]; then cd $(HTTP_BASE) && python3 -m http.server $(HTTP_PORT); fi
+ @if [ "$(HTTP_SERVER)" = "php" ]; then cd $(HTTP_BASE) && php -S localhost:$(HTTP_PORT); fi
diff --git a/Makefile.reveal.js b/Makefile.revealjs
index 8e9e464..02fb5d1 100644
--- a/Makefile.reveal.js
+++ b/Makefile.revealjs
@@ -6,7 +6,7 @@
# Also look for variables at /usr/share/pandoc/data/templates/default.revealjs
REVEAL_THEME=moon
-slides:
- test -s .gitmodules && git submodule update --init --recursive
- pandoc -V theme=$(REVEAL_THEME) -V css=index.css -s --mathjax -i -t revealjs index.md -o index.html
- pandoc -t beamer index.md -o index.pdf
+# Build a single slide deck
+%.html: %.md
+ @echo Building $@...
+ @pandoc -V theme=$(REVEAL_THEME) -V css=css/index.css -V revealjs-url=reveal.js -s --mathjax -i -t revealjs $< -o $@
diff --git a/README.html b/README.html
index aca6357..a934bdd 100644
--- a/README.html
+++ b/README.html
@@ -1 +1,2 @@
-<p>Repositório Aleatório de Slides!</p>
+<h1 id="repositório-aleatório-de-slides">Repositório Aleatório de
+Slides!</h1>
diff --git a/README.md b/README.md
index e896de6..dd166bf 100644
--- a/README.md
+++ b/README.md
@@ -1 +1 @@
-Repositório Aleatório de Slides!
+# Repositório Aleatório de Slides!
diff --git a/TODO.md b/TODO.md
index ff75a49..ab400b7 100644
--- a/TODO.md
+++ b/TODO.md
@@ -3,3 +3,5 @@
* [ ] Makefile:
* [ ] Target to build all slides.
* [ ] Target to build a custom index linking to all slides.
+* [ ] Presentations
+ * [ ] Add slides from recent events.
diff --git a/salve-quem-puder/index.css b/css/index.css
index 5962edb..c77c1ca 100644
--- a/salve-quem-puder/index.css
+++ b/css/index.css
@@ -1,4 +1,4 @@
-@import url("css/reveal-blue.css");
+@import url("/css/reveal-blue.css");
.reveal h1 {
font-size: 1.8em;
diff --git a/index.html b/index.html
index 4ca03a9..4b7ca8a 100644
--- a/index.html
+++ b/index.html
@@ -7,8 +7,8 @@
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
- <link rel="stylesheet" href="https://unpkg.com/reveal.js@^4//dist/reset.css">
- <link rel="stylesheet" href="https://unpkg.com/reveal.js@^4//dist/reveal.css">
+ <link rel="stylesheet" href="reveal.js/dist/reset.css">
+ <link rel="stylesheet" href="reveal.js/dist/reveal.css">
<style>
.reveal .sourceCode { /* see #7635 */
overflow: visible;
@@ -20,7 +20,8 @@
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
- <link rel="stylesheet" href="https://unpkg.com/reveal.js@^4//dist/theme/moon.css" id="theme">
+ <link rel="stylesheet" href="reveal.js/dist/theme/moon.css" id="theme">
+ <link rel="stylesheet" href="css/index.css"/>
</head>
<body>
<div class="reveal">
@@ -33,27 +34,27 @@
<section id="section" class="slide level2">
<h2>2019</h2>
<ul>
-<li><a href="salve-quem-puder">Salve quem puder</a>: o apagão de dados
-no Brasil</li>
+<li class="fragment"><a href="2019/salve-quem-puder">Salve quem
+puder</a>: o apagão de dados no Brasil</li>
</ul>
</section>
<section id="section-1" class="slide level2">
<h2>2011</h2>
<ul>
-<li><a href="gestaossl">Convergence e Monkeysphere</a>: chaves para
-gestão SSL distribuída.</li>
+<li class="fragment"><a href="2011/gestaossl">Convergence e
+Monkeysphere</a>: chaves para gestão SSL distribuída.</li>
</ul>
</section>
</div>
</div>
- <script src="https://unpkg.com/reveal.js@^4//dist/reveal.js"></script>
+ <script src="reveal.js/dist/reveal.js"></script>
<!-- reveal.js plugins -->
- <script src="https://unpkg.com/reveal.js@^4//plugin/notes/notes.js"></script>
- <script src="https://unpkg.com/reveal.js@^4//plugin/search/search.js"></script>
- <script src="https://unpkg.com/reveal.js@^4//plugin/zoom/zoom.js"></script>
- <script src="https://unpkg.com/reveal.js@^4//plugin/math/math.js"></script>
+ <script src="reveal.js/plugin/notes/notes.js"></script>
+ <script src="reveal.js/plugin/search/search.js"></script>
+ <script src="reveal.js/plugin/zoom/zoom.js"></script>
+ <script src="reveal.js/plugin/math/math.js"></script>
<script>
diff --git a/index.md b/index.md
index ab53843..5ad482a 100644
--- a/index.md
+++ b/index.md
@@ -2,8 +2,8 @@
## 2019
-* [Salve quem puder](salve-quem-puder): o apagão de dados no Brasil
+* [Salve quem puder](2019/salve-quem-puder): o apagão de dados no Brasil
## 2011
-* [Convergence e Monkeysphere](gestaossl): chaves para gestão SSL distribuída.
+* [Convergence e Monkeysphere](2011/gestaossl): chaves para gestão SSL distribuída.
diff --git a/index.pdf b/index.pdf
index 8a51330..d180595 100644
--- a/index.pdf
+++ b/index.pdf
Binary files differ
diff --git a/salve-quem-puder/index.html b/salve-quem-puder/index.html
deleted file mode 100644
index 405b011..0000000
--- a/salve-quem-puder/index.html
+++ /dev/null
@@ -1,215 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
- <meta name="generator" content="pandoc">
- <meta name="author" content="06/12/2019">
- <title>Salve quem puder - o apagão de dados no Brasil</title>
- <meta name="apple-mobile-web-app-capable" content="yes">
- <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, minimal-ui">
- <link rel="stylesheet" href="reveal.js/css/reveal.css">
- <style type="text/css">code{white-space: pre;}</style>
- <link rel="stylesheet" href="reveal.js/css/theme/moon.css" id="theme">
- <link rel="stylesheet" href="index.css"/>
- <!-- Printing and PDF exports -->
- <script>
- var link = document.createElement( 'link' );
- link.rel = 'stylesheet';
- link.type = 'text/css';
- link.href = window.location.search.match( /print-pdf/gi ) ? 'reveal.js/css/print/pdf.css' : 'reveal.js/css/print/paper.css';
- document.getElementsByTagName( 'head' )[0].appendChild( link );
- </script>
- <!--[if lt IE 9]>
- <script src="reveal.js/lib/js/html5shiv.js"></script>
- <![endif]-->
-</head>
-<body>
- <div class="reveal">
- <div class="slides">
-
-<section>
- <h1 class="title">Salve quem puder - o apagão de dados no Brasil</h1>
- <h2 class="author">06/12/2019</h2>
-</section>
-
-<section id="o-que-acontece-no-ambiente-no-território-e-com-o-povo-acontece-com-os-dados" class="slide level1">
-<h1>O que acontece no ambiente, no território e com o povo, acontece com os dados</h1>
-<!--
-* Governos também são fenômenos psicológicos.
-* Tensionamento entre segredo e transparência.
-* Durante transições de regime, dados são destruídos. Exemplo: arquivos da Stasi.
-* Transparência e dados abertos: existem regulações e obrigações legais em diversos países para tornar públicas as informações do governo.
-* Mesmo assim é comum que conjuntos de dados desapareçam, por fins políticos ou não.
-* Ataques informacionais / operações psicológicas: informações falsas, excesso de informações, operações diversionistas.... e agora a nova forma de censura: o apagão de dados!
-* O acesso à informação
--->
-<p>A participação na política está ligada ao acesso de informação organizada, estruturada e de qualidade, especialmente dos dados produzidos pelo ou sobre o governo.</p>
-<!--
-# Onde estamos?
-
-* Brasil 2019: não só as florestas estão ainda mais ameaças, como também as florestas de dados digitais.
-* Brasil - Construtor de Desertos
-* Brasil Hostil - https://brasilhostil.org
-* Ocorre no território e ocorre na web
-* 2018 - Operação pré-detonação.
--->
-</section>
-<section id="regulação" class="slide level1">
-<h1>Regulação</h1>
-<p>Só pra constar...</p>
-</section>
-<section id="marcos-internacionais-ratificados-pelo-brasil" class="slide level1">
-<h1>Marcos internacionais ratificados pelo Brasil</h1>
-<ul>
-<li class="fragment">Declaração Universal dos Direitos Humanos (Artigo 19).</li>
-<li class="fragment">Pacto Internacional pelos Direitos Civis e Políticos.</li>
-<li class="fragment">Convenção Americana sobre Direitos Humanos (Pacto de San José da Costa Rica), todos ratificados pelo Brasil.</li>
-</ul>
-<!--
-* [Declaração da ONU, OEA e OSCE de 2004](http://www.oas.org/es/cidh/expresion/showarticle.asp?artID=319&lID=2):
- "El derecho de acceso a la información en poder de las autoridades públicas
- es un derecho humano fundamental que debería aplicarse a nivel nacional a
- través de legislación global (por ejemplo, las Leyes de Libertad de Acceso a
- Información) basada en el principio de máxima divulgación, el cual establece
- la presunción de que toda la información es accesible, sujeto solamente a un
- sistema restringido de excepciones."
--->
-</section>
-<section id="alguns-marcos-nacionais" class="slide level1">
-<h1>Alguns marcos nacionais</h1>
-<ul>
-<li class="fragment">EUA: <a href="https://www.congress.gov/bill/115th-congress/house-bill/4174/text#toc-H8E449FBAEFA34E45A6F1F20EFB13ED95">Open Data Act de 2019</a> e plataforma <a href="https://www.data.gov/open-gov/">data.gov</a>.</li>
-<li class="fragment">União Européia: <a href="https://ec.europa.eu/digital-single-market/en/european-legislation-reuse-public-sector-information">Regulação sobre dados abertos e uso de informação pública</a>.</li>
-</ul>
-</section>
-<section id="marcos-brasileiros---1988---2016" class="slide level1">
-<h1>Marcos Brasileiros - 1988 - 2016</h1>
-<ul>
-<li class="fragment">1988: habeas data (par. LXXII do artigo 5 da Consituição Federal): &quot;assegurar o conhecimento de informações relativas à pessoa do impetrante, constantes de registros ou bancos de dados de entidades governamentais ou de caráter público&quot;.</li>
-<li class="fragment">2011: Lei 12527/2011 - LAI – Lei de Acesso à informação; regulamentada via Decreto 7724/2012.</li>
-<li class="fragment">2012:
-<ul>
-<li class="fragment">Infraestrutura Nacional de Dados Abertos - INDA.</li>
-<li class="fragment">Portal Brasileiro de Dados Abertos.</li>
-<li class="fragment">Decreto 7845/2012, que “regulamenta procedimentos para credenciamento de segurança e tratamento de informação classificada em qualquer grau de sigilo”.</li>
-</ul></li>
-<li class="fragment">2016: Decreto Federal nº 8.777/2016: Política de Dados Abertos do Executivo: publicação, em formato aberto, de dados das bases do executivo federal.</li>
-</ul>
-</section>
-<section id="marcos-brasileiros---2016---2018" class="slide level1">
-<h1>Marcos Brasileiros - 2016 - 2018</h1>
-<ul>
-<li class="fragment">2017:
-<ul>
-<li class="fragment">Dados Abertos: Resolução n.º 3, de 13 de outubro de 2017, do Comitê Gestor da INDA.</li>
-<li class="fragment">CGU lançou um Painel de Monitoramento: http://paineis.cgu.gov.br/dadosabertos/</li>
-</ul></li>
-<li class="fragment">2018: Lei Geral de Proteção de dados – LGPD, em seu Capítulo IV, onde é legislado o tratamento de dados pessoais pelo Poder Público.</li>
-</ul>
-</section>
-<section id="marcos-brasileiros---evolução" class="slide level1">
-<h1>Marcos Brasileiros - evolução</h1>
-<ul>
-<li class="fragment">Pressão da sociedade por abertura produz uma regulação ascendente em direção ao acesso.</li>
-<li class="fragment">Dados e formatos abertos são uma conquista especialmente do Movimento do Software Livre no Brasil.</li>
-<li class="fragment">Há um tensionamento entre liberação de todas informações, exceto dados pessoais ou sigilosas.</li>
-</ul>
-</section>
-<section id="marcos-brasileiros---2019" class="slide level1">
-<h1>Marcos Brasileiros - 2019</h1>
-<p>Só pra sentir um pouco do gosto amargo:</p>
-<ul>
-<li class="fragment"><p>Decreto 9.756/2019: &quot;portal único gov.br&quot;: portais do governo federal devem se movidos para um portal único; controle mais centralizado e apagão de informações não-migradas.</p></li>
-<li class="fragment"><p>Alteração do Decreto nº 8.777/2016 (Política de Dados Abertos): para dispor sobre a gestão e os direitos de uso de dados abertos através do Decreto 9903/2019, onde é explicitado que as bases de dados estão cobertas pela Lei 9610/1998 (Direito Autoral). Esta mudança é um sinal de alerta à possibilidade de privatização de bases de dados governamentais – o que já seria fato gravíssimo – e consequente restrição de acesso aos mesmos.</p></li>
-</ul>
-</section>
-<section id="marcos-brasileiros---2019-1" class="slide level1">
-<h1>Marcos Brasileiros - 2019</h1>
-<ul>
-<li class="fragment"><p>Governo tentou colocar servidores comissionados para impor sigilo ultrassecreto a dados públicos pelo Decreto 9.690/2019, mas voltou atrás desta decisão no Decreto 9716/2019.</p></li>
-<li class="fragment"><p>Edição do Decreto 10.046/20191: introduz conceito de confidencialidade como atributo da informação: “propriedade que impede que a informação fique disponível ou possa ser revelada à pessoa natural, sistema, órgão ou entidade não autorizado e não credenciado”. Contradiz LGPD e outros marcos.</p></li>
-</ul>
-</section>
-<section id="resumo-estratégias-do-apagão" class="slide level1">
-<h1>Resumo: estratégias do apagão</h1>
-<ul>
-<li class="fragment">Retirada de conteúdos.</li>
-<li class="fragment">Declarações de sigilo de dados.</li>
-<li class="fragment">Alegação de que a divulgação fere direitos autorais.</li>
-<li class="fragment">Perseguição de cientistas, jornalistas...</li>
-<li class="fragment">Sucateamento dos órgãos de produção e gestão de dados.</li>
-<li class="fragment">Deixar de atualizar conjuntos de dados.</li>
-<li class="fragment">Desmerecimento dos dados e seus produtores.</li>
-</ul>
-</section>
-<section id="o-que-é-salvaguarda-de-dados" class="slide level1">
-<h1>O que é salvaguarda de dados?</h1>
-</section>
-<section id="por-que-é-importante" class="slide level1">
-<h1>Por que é importante?</h1>
-<ol type="1">
-<li class="fragment">Não há garantia de que qualquer dado disponível na internet assim permaneça indefinidamente.</li>
-<li class="fragment">Os repositórios de dados tem sustentabilidade variada.</li>
-<li class="fragment">Cortes de custos ou critérios político-ideológicos podem causar a retirada de dados da internet.</li>
-<li class="fragment">Outras falhas podem comprometer a disponibilidade de dados.</li>
-</ol>
-</section>
-<section id="o-que-possibilita" class="slide level1">
-<h1>O que possibilita?</h1>
-<ul>
-<li class="fragment">Acesso aos dados mesmo que a fonte esteja indisponível.</li>
-<li class="fragment">Redundância: cópias adicionais aumentam a tolerância à falhas.</li>
-<li class="fragment">Integridade: cópias adicionais ajudam a detectar inconsistências e modificações nas informações.</li>
-<li class="fragment">Valor histórico: cópias feitas em dadas diversas possibilitam de análises temporais.</li>
-<li class="fragment">Análises robustas: grandes massas de dados são mais fáceis de serem analisadas se estiverem disponíveis na instituição.</li>
-</ul>
-</section>
-<section id="exemplos-de-análises" class="slide level1">
-<h1>Exemplos de análises</h1>
-<ul>
-<li class="fragment">Fiscalização direta da produção oficial do governo acessível publicamente na rede.</li>
-<li class="fragment">Levantamento do &quot;diagrama de rede&quot; da estrutura do governo: onde estão os dados, se estão em datacenters públicos ou sendo migrados para a iniciativa privada.</li>
-</ul>
-</section>
-<section id="como-ajudar" class="slide level1">
-<h1>Como ajudar?</h1>
-<ul>
-<li class="fragment">Iniciativas pessoas, simples ou sofisticadas.</li>
-<li class="fragment">Iniciativas coletivas, institucionais ou não.</li>
-<li class="fragment">Por uma Rede de Salvaguarda de Dados.</li>
-</ul>
-<!--
-# Web?
-
-* É dinâmica.
-* Historicidade, genealogia: capacidade
-
-# Inventário
-
-* São quantos sites do governo?
-* Qual o tamanho?
--->
-</section>
- </div>
- </div>
-
- <script src="reveal.js/lib/js/head.min.js"></script>
- <script src="reveal.js/js/reveal.js"></script>
-
- <script>
-
- // Full list of configuration options available at:
- // https://github.com/hakimel/reveal.js#configuration
- Reveal.initialize({
-
- // Optional reveal.js plugins
- dependencies: [
- { src: 'reveal.js/lib/js/classList.js', condition: function() { return !document.body.classList; } },
- { src: 'reveal.js/plugin/zoom-js/zoom.js', async: true },
- { src: 'reveal.js/plugin/notes/notes.js', async: true }
- ]
- });
- </script>
- </body>
-</html>
diff --git a/salve-quem-puder/reveal.js b/salve-quem-puder/reveal.js
deleted file mode 120000
index a2064f3..0000000
--- a/salve-quem-puder/reveal.js
+++ /dev/null
@@ -1 +0,0 @@
-../vendor/reveal.js \ No newline at end of file
diff --git a/vendor/reveal.js b/vendor/reveal.js
-Subproject 33bed47daca3f08c396215415e6ece005970734
+Subproject eb95b14531a1d52a616553759bd1c383cc1d01f