]> gitweb.fluxo.info Git - slides.git/commitdiff
Restruturação master
authorSilvio Rhatto <rhatto@riseup.net>
Tue, 20 May 2025 21:44:34 +0000 (18:44 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Tue, 20 May 2025 21:44:34 +0000 (18:44 -0300)
22 files changed:
.gitmodules
.htaccess
2011/gestaossl [moved from gestaossl with 100% similarity]
2019/salve-quem-puder/css [new symlink]
2019/salve-quem-puder/index.html [new file with mode: 0644]
2019/salve-quem-puder/index.md [moved from salve-quem-puder/index.md with 100% similarity]
2019/salve-quem-puder/reveal.js [new symlink]
ChangeLog.md [new file with mode: 0644]
Makefile
Makefile.env
Makefile.http_server [new file with mode: 0644]
Makefile.revealjs [moved from Makefile.reveal.js with 51% similarity]
README.html
README.md
TODO.md
css/index.css [moved from salve-quem-puder/index.css with 69% similarity]
index.html
index.md
index.pdf
salve-quem-puder/index.html [deleted file]
salve-quem-puder/reveal.js [deleted symlink]
vendor/reveal.js

index 22a5b3752dc259e6c5e074ac8ebc3c2819dc1469..eac4b5652e7aa21a866150514e88a6bf75f76c9f 100644 (file)
@@ -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
index 80bdf3ef71f63b65ba2a82dcfe6cc136b23f2eed..a09cabfde14883190f206860dc0ef1548b03b10a 100644 (file)
--- 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>
similarity index 100%
rename from gestaossl
rename to 2011/gestaossl
diff --git a/2019/salve-quem-puder/css b/2019/salve-quem-puder/css
new file mode 120000 (symlink)
index 0000000..8e8b6d0
--- /dev/null
@@ -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 (file)
index 0000000..d7bd8b6
--- /dev/null
@@ -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/2019/salve-quem-puder/reveal.js b/2019/salve-quem-puder/reveal.js
new file mode 120000 (symlink)
index 0000000..fc7767a
--- /dev/null
@@ -0,0 +1 @@
+../../vendor/reveal.js
\ No newline at end of file
diff --git a/ChangeLog.md b/ChangeLog.md
new file mode 100644 (file)
index 0000000..8203bbc
--- /dev/null
@@ -0,0 +1,5 @@
+# ChangeLog
+
+## 2025-05-20 - Restruturação
+
+* [x] Restruturação e atualização geral.
index 6dbbd98d8769c600eed5a2cc4bfe148dcf10ce76..853cd061df7236afc45074191818e2684b044478 100644 (file)
--- 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
index ddc2af5ef82d386ce4adc91b47cebefde8cc1650..6ed6a01e67365efb87bc792e36706e6002b3b9a2 100644 (file)
@@ -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 (file)
index 0000000..c3d0ab3
--- /dev/null
@@ -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
similarity index 51%
rename from Makefile.reveal.js
rename to Makefile.revealjs
index 8e9e464d5b2d768cdd1a52a97077b773d3f7c0a5..02fb5d18a1694e5e4b05f13eeb4a731a2245d571 100644 (file)
@@ -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 $@
index aca635736de06b19ac820cfb65351c8943a59b87..a934bddb1e64981a9ebaa91f6070c385b9282ad1 100644 (file)
@@ -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>
index e896de6d9492ab288bfeae290662f02cc0cfdd1f..dd166bf07a4b1329501a83e6006518244f343c6a 100644 (file)
--- 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 ff75a49cbdfce5a3d3686646163bef4dda580ecf..ab400b7472de2b675abd2e8d3a98729e3bfa4cf2 100644 (file)
--- 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.
similarity index 69%
rename from salve-quem-puder/index.css
rename to css/index.css
index 5962edba22e4da1de91bd901bf2feeba0674268f..c77c1ca56315749ff3fd78c4b294bf352409e6fe 100644 (file)
@@ -1,4 +1,4 @@
-@import url("css/reveal-blue.css");
+@import url("/css/reveal-blue.css");
 
 .reveal h1 {
   font-size: 1.8em;
index 4ca03a92e32498c6d42f3eac12f1179d3c55f10a..4b7ca8a486ea5a0ef5b9f255d06fdc14cf7f8c51 100644 (file)
@@ -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">
 <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>
 
index ab53843e4d24601f49932f41cf61dec03c119ffa..5ad482abaf7c2885573805d4d1258bb1703439ff 100644 (file)
--- 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.
index 8a5133088e1658076d3a9e6f7381e4b6f57cc423..d18059563890df6b36ae08ecb69b426b80a990b7 100644 (file)
Binary files a/index.pdf and b/index.pdf differ
diff --git a/salve-quem-puder/index.html b/salve-quem-puder/index.html
deleted file mode 100644 (file)
index 405b011..0000000
+++ /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 (symlink)
index a2064f3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../vendor/reveal.js
\ No newline at end of file
index 33bed47daca3f08c396215415e6ece005970734a..eb95b14531a1d52a616553759bd1c383cc1d01fc 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 33bed47daca3f08c396215415e6ece005970734a
+Subproject commit eb95b14531a1d52a616553759bd1c383cc1d01fc