put up FOSDEM 2022 on main page master
authorRobert Kaiser <kairo@kairo.at>
Sat, 5 Feb 2022 10:11:20 +0000 (11:11 +0100)
committerRobert Kaiser <kairo@kairo.at>
Sat, 5 Feb 2022 10:11:20 +0000 (11:11 +0100)
51 files changed:
fosdem2021/adoptmozilla.png [new file with mode: 0644]
fosdem2021/cc-by-sa.svg [new file with mode: 0644]
fosdem2021/hack.png [new file with mode: 0644]
fosdem2021/index.html [new file with mode: 0755]
fosdem2021/kairo.jpg [new file with mode: 0644]
fosdem2021/mozcurrent.png [new file with mode: 0644]
fosdem2021/mozdino-green.jpg [new file with mode: 0755]
fosdem2021/mozgear.jpg [new file with mode: 0644]
fosdem2021/mozilla-open-poster.jpg [new file with mode: 0644]
fosdem2021/mozsuite.png [new file with mode: 0644]
fosdem2021/otherprojects.png [new file with mode: 0644]
fosdem2021/slides.css [new file with mode: 0644]
fosdem2021/slides.js [new file with mode: 0644]
fosdem2021/splendid_firefox_small.jpg [new file with mode: 0644]
fosdem2021/template/OpenSans-Italic-webfont.woff [new file with mode: 0644]
fosdem2021/template/OpenSans-Regular-webfont.woff [new file with mode: 0644]
fosdem2021/template/OpenSans-Semibold-webfont.woff [new file with mode: 0644]
fosdem2021/template/ZillaSlab-Bold.woff2 [new file with mode: 0644]
fosdem2021/template/ZillaSlab-Regular.woff2 [new file with mode: 0644]
fosdem2021/template/ZillaSlabHighlight-Bold.woff2 [new file with mode: 0644]
fosdem2021/template/ZillaSlabHighlight-Regular.woff2 [new file with mode: 0644]
fosdem2021/template/mozilla-tab.png [new file with mode: 0644]
fosdem2021/template/mozilla_logo2017.svg [new file with mode: 0644]
fosdem2022/atomium.jpg [new file with mode: 0644]
fosdem2022/cc-by-sa.svg [new file with mode: 0644]
fosdem2022/ethereum.png [new file with mode: 0644]
fosdem2022/index.html [new file with mode: 0755]
fosdem2022/into_unknown.jpg [new file with mode: 0644]
fosdem2022/kairo.jpg [new file with mode: 0644]
fosdem2022/kairo_heat.jpg [new file with mode: 0644]
fosdem2022/missioncontrol.jpg [new file with mode: 0644]
fosdem2022/mozcomm_people.jpg [new file with mode: 0644]
fosdem2022/mozgroup.jpg [new file with mode: 0644]
fosdem2022/mozillatalks.jpg [new file with mode: 0644]
fosdem2022/railroad3way.jpg [new file with mode: 0644]
fosdem2022/rebelalliance.png [new file with mode: 0644]
fosdem2022/slides.css [new file with mode: 0644]
fosdem2022/slides.js [new file with mode: 0644]
fosdem2022/streetnetwork.jpg [new file with mode: 0644]
fosdem2022/template/OpenSans-Italic-webfont.woff [new file with mode: 0644]
fosdem2022/template/OpenSans-Regular-webfont.woff [new file with mode: 0644]
fosdem2022/template/OpenSans-Semibold-webfont.woff [new file with mode: 0644]
fosdem2022/template/ZillaSlab-Bold.woff2 [new file with mode: 0644]
fosdem2022/template/ZillaSlab-Regular.woff2 [new file with mode: 0644]
fosdem2022/template/ZillaSlabHighlight-Bold.woff2 [new file with mode: 0644]
fosdem2022/template/ZillaSlabHighlight-Regular.woff2 [new file with mode: 0644]
fosdem2022/template/mozilla_logo2017.svg [new file with mode: 0644]
fosdem2022/vrusermoz.jpg [new file with mode: 0644]
fosdem2022/windmill.jpg [new file with mode: 0644]
fossxr2019/index.html
index.html

diff --git a/fosdem2021/adoptmozilla.png b/fosdem2021/adoptmozilla.png
new file mode 100644 (file)
index 0000000..c866691
Binary files /dev/null and b/fosdem2021/adoptmozilla.png differ
diff --git a/fosdem2021/cc-by-sa.svg b/fosdem2021/cc-by-sa.svg
new file mode 100644 (file)
index 0000000..085c5b5
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" height="31px" width="88px" version="1.1" y="0px" x="0px" viewBox="0 0 88 31">
+ <title>Creative Commons “Attribution-Share Alike” license icon</title>
+ <path d="m2.499 0.352l83.127 0.148c1.161 0 2.198-0.173 2.198 2.333l-0.102 27.552h-87.321v-27.655c0-1.235 0.119-2.378 2.098-2.378z" fill="#AAB2AB"/>
+ <path d="m25.316 14.449c0.003 5.557-4.471 10.065-9.993 10.069-5.522 0.003-10.001-4.5-10.005-10.057v-0.012c-0.003-5.558 4.471-10.066 9.994-10.069 5.522-0.004 10.001 4.5 10.005 10.057-0.001 0.003-0.001 0.007-0.001 0.012zm21.148-11.143c4.349 0 7.875 3.548 7.875 7.925s-3.526 7.926-7.875 7.926c-4.35 0-7.875-3.548-7.875-7.926-0.001-4.377 3.525-7.925 7.875-7.925zm28.632 7.751c0.003 4.314-3.47 7.814-7.757 7.818-4.286 0.003-7.765-3.492-7.769-7.806v-0.012c-0.002-4.314 3.471-7.814 7.758-7.817s7.765 3.492 7.768 7.806v0.011z" fill="#FFF"/>
+ <path d="m23.446 6.252c2.217 2.232 3.326 4.964 3.326 8.197s-1.089 5.936-3.269 8.11c-2.313 2.289-5.046 3.434-8.2 3.434-3.116 0-5.802-1.135-8.057-3.405-2.256-2.271-3.383-4.982-3.383-8.138s1.127-5.889 3.383-8.198c2.198-2.232 4.884-3.348 8.057-3.348 3.212 0 5.926 1.116 8.143 3.348zm-14.707 1.501c-1.875 1.905-2.812 4.138-2.812 6.698 0 2.561 0.928 4.773 2.783 6.64s4.064 2.801 6.627 2.801 4.791-0.942 6.684-2.829c1.797-1.752 2.697-3.955 2.697-6.611 0-2.636-0.914-4.874-2.74-6.712s-4.04-2.757-6.641-2.757-4.801 0.923-6.598 2.77zm4.933 5.572c-0.287-0.628-0.715-0.942-1.287-0.942-1.011 0-1.516 0.685-1.516 2.054 0 1.37 0.505 2.055 1.516 2.055 0.667 0 1.145-0.333 1.431-1.002l1.401 0.751c-0.668 1.194-1.67 1.792-3.006 1.792-1.03 0-1.856-0.317-2.476-0.954-0.621-0.636-0.931-1.512-0.931-2.629 0-1.099 0.32-1.97 0.959-2.616s1.436-0.968 2.39-0.968c1.413 0 2.424 0.56 3.035 1.679l-1.516 0.78zm6.593 0c-0.287-0.628-0.707-0.942-1.261-0.942-1.031 0-1.547 0.685-1.547 2.054 0 1.37 0.516 2.055 1.547 2.055 0.669 0 1.137-0.333 1.404-1.002l1.433 0.751c-0.667 1.194-1.667 1.792-3.001 1.792-1.029 0-1.853-0.317-2.473-0.954-0.619-0.636-0.928-1.512-0.928-2.629 0-1.099 0.314-1.97 0.943-2.616 0.628-0.646 1.428-0.968 2.4-0.968 1.41 0 2.42 0.56 3.029 1.679l-1.546 0.78zm66.088-13.325h-84.706c-0.908 0-1.647 0.744-1.647 1.658v28.967c0 0.207 0.167 0.375 0.372 0.375h87.256c0.205 0 0.372-0.168 0.372-0.375v-28.967c0-0.914-0.739-1.658-1.647-1.658zm-84.706 0.749h84.705c0.498 0 0.903 0.408 0.903 0.909v20.109h-60.541c-2.219 4.038-6.494 6.779-11.401 6.779-4.908 0-9.183-2.738-11.4-6.779h-3.169v-20.109c0-0.501 0.405-0.909 0.903-0.909zm65.63 1.751c-2.355 0-4.349 0.827-5.98 2.481-1.675 1.712-2.512 3.737-2.512 6.077s0.837 4.351 2.512 6.034c1.674 1.683 3.668 2.524 5.98 2.524 2.342 0 4.371-0.849 6.089-2.546 1.616-1.611 2.427-3.616 2.427-6.012s-0.824-4.422-2.471-6.077c-1.645-1.654-3.66-2.481-6.045-2.481zm0.022 1.54c1.93 0 3.569 0.685 4.918 2.054 1.361 1.355 2.043 3.01 2.043 4.964 0 1.968-0.666 3.602-2.001 4.9-1.405 1.397-3.058 2.096-4.96 2.096-1.901 0-3.541-0.691-4.917-2.074-1.376-1.384-2.064-3.024-2.064-4.921s0.695-3.552 2.086-4.964c1.332-1.371 2.965-2.055 4.895-2.055zm-3.791 5.809c0.34-2.153 1.846-3.304 3.733-3.304 2.716 0 4.369 1.982 4.369 4.626 0 2.58-1.76 4.584-4.411 4.584-1.824 0-3.457-1.13-3.755-3.347h2.143c0.063 1.151 0.806 1.556 1.866 1.556 1.209 0 1.994-1.13 1.994-2.857 0-1.812-0.679-2.771-1.951-2.771-0.934 0-1.739 0.341-1.909 1.513l0.623-0.003-1.687 1.697-1.686-1.697 0.671 0.003zm-14.765-0.911c0-0.306-0.246-0.553-0.55-0.553h-3.478c-0.303 0-0.55 0.247-0.55 0.553v3.5h0.971v4.145h2.636v-4.145h0.971v-3.5zm-2.288-3.408c0.656 0 1.189 0.536 1.189 1.197s-0.533 1.197-1.189 1.197c-0.657 0-1.189-0.536-1.189-1.197s0.532-1.197 1.189-1.197zm-0.012-3.03c-2.355 0-4.349 0.827-5.981 2.481-1.675 1.711-2.512 3.737-2.512 6.076s0.837 4.351 2.512 6.034c1.674 1.683 3.668 2.524 5.981 2.524 2.342 0 4.371-0.849 6.088-2.547 1.619-1.611 2.428-3.615 2.428-6.012s-0.823-4.421-2.47-6.076c-1.645-1.654-3.661-2.48-6.046-2.48zm0.022 1.539c1.93 0 3.569 0.685 4.917 2.054 1.363 1.355 2.044 3.01 2.044 4.963 0 1.968-0.666 3.602-2.001 4.9-1.405 1.398-3.058 2.096-4.96 2.096-1.901 0-3.541-0.691-4.917-2.075-1.377-1.383-2.065-3.023-2.065-4.921 0-1.896 0.695-3.551 2.086-4.963 1.334-1.369 2.966-2.054 4.896-2.054z"/>
+ <path d="m69.277 24.171l1.816 4.888h-1.109l-0.367-1.089h-1.816l-0.381 1.089h-1.074l1.836-4.888h1.095zm0.062 2.997l-0.612-1.793h-0.014l-0.633 1.793h1.259zm-6.079 0.682c0.059 0.115 0.137 0.207 0.234 0.277 0.098 0.071 0.211 0.124 0.342 0.158 0.133 0.034 0.268 0.051 0.408 0.051 0.095 0 0.197-0.008 0.306-0.023s0.21-0.047 0.306-0.093c0.094-0.046 0.174-0.108 0.236-0.188 0.064-0.08 0.096-0.181 0.096-0.305 0-0.132-0.042-0.238-0.126-0.321-0.083-0.083-0.194-0.15-0.329-0.206-0.136-0.055-0.29-0.102-0.461-0.143-0.173-0.042-0.348-0.088-0.523-0.138-0.182-0.046-0.358-0.102-0.531-0.167-0.171-0.066-0.325-0.152-0.461-0.258-0.137-0.104-0.246-0.235-0.33-0.393-0.083-0.158-0.125-0.349-0.125-0.572 0-0.252 0.053-0.469 0.16-0.654 0.105-0.184 0.246-0.338 0.418-0.462 0.172-0.123 0.366-0.214 0.584-0.274 0.217-0.059 0.436-0.088 0.652-0.088 0.254 0 0.497 0.028 0.73 0.086 0.232 0.057 0.44 0.149 0.621 0.277 0.182 0.127 0.326 0.291 0.432 0.49 0.107 0.198 0.16 0.439 0.16 0.723h-1.036c-0.009-0.146-0.04-0.268-0.091-0.363-0.053-0.096-0.121-0.172-0.207-0.227s-0.184-0.094-0.295-0.115c-0.11-0.023-0.23-0.035-0.361-0.035-0.086 0-0.172 0.01-0.258 0.027-0.086 0.019-0.163 0.051-0.232 0.096-0.07 0.047-0.129 0.104-0.174 0.172s-0.067 0.155-0.067 0.26c0 0.096 0.019 0.174 0.054 0.232 0.037 0.061 0.109 0.115 0.215 0.165s0.254 0.101 0.441 0.151c0.188 0.049 0.434 0.113 0.736 0.191 0.092 0.018 0.217 0.051 0.377 0.1 0.161 0.047 0.32 0.123 0.479 0.229 0.159 0.105 0.296 0.246 0.412 0.422 0.115 0.176 0.173 0.4 0.173 0.674 0 0.225-0.044 0.432-0.13 0.623-0.086 0.192-0.214 0.357-0.384 0.496-0.171 0.141-0.381 0.248-0.632 0.326-0.252 0.078-0.544 0.116-0.874 0.116-0.268 0-0.527-0.033-0.779-0.1-0.251-0.065-0.474-0.171-0.667-0.312-0.192-0.143-0.346-0.323-0.459-0.543-0.113-0.219-0.168-0.479-0.163-0.78h1.036c-0.001 0.165 0.028 0.304 0.087 0.418zm-17.287-3.679h1.198l1.138 1.931 1.13-1.931h1.19l-1.803 3.012v1.876h-1.07v-1.903l-1.783-2.985zm-1.975 0c0.231 0 0.442 0.021 0.633 0.062s0.354 0.108 0.491 0.201c0.136 0.094 0.241 0.219 0.316 0.373 0.075 0.155 0.112 0.348 0.112 0.575 0 0.247-0.055 0.451-0.167 0.616-0.11 0.164-0.276 0.298-0.493 0.402 0.3 0.088 0.523 0.239 0.672 0.456 0.148 0.218 0.223 0.479 0.223 0.784 0 0.246-0.049 0.46-0.144 0.641-0.095 0.18-0.224 0.327-0.386 0.441-0.161 0.114-0.346 0.199-0.552 0.254-0.207 0.055-0.419 0.082-0.638 0.082h-2.358v-4.888h2.291v0.001zm-0.137 1.976c0.191 0 0.347-0.046 0.47-0.136 0.123-0.092 0.185-0.239 0.185-0.444 0-0.114-0.021-0.208-0.062-0.28s-0.095-0.129-0.164-0.17-0.146-0.07-0.235-0.086c-0.089-0.016-0.181-0.023-0.276-0.023h-1v1.14h1.082zm0.062 2.075c0.105 0 0.205-0.01 0.3-0.03 0.095-0.021 0.18-0.055 0.252-0.104 0.073-0.047 0.13-0.112 0.174-0.194s0.065-0.187 0.065-0.315c0-0.25-0.071-0.43-0.212-0.536-0.141-0.107-0.328-0.161-0.559-0.161h-1.166v1.341h1.146z" fill="#FFF"/>
+</svg>
\ No newline at end of file
diff --git a/fosdem2021/hack.png b/fosdem2021/hack.png
new file mode 100644 (file)
index 0000000..de32300
Binary files /dev/null and b/fosdem2021/hack.png differ
diff --git a/fosdem2021/index.html b/fosdem2021/index.html
new file mode 100755 (executable)
index 0000000..17b00b7
--- /dev/null
@@ -0,0 +1,288 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+  <meta name="Author" content="KaiRo - Robert Kaiser">
+  <title>Mozilla History: 20+ Years And Counting</title>
+  <link rel="stylesheet" type="text/css" href="slides.css">
+  <script type="text/javascript" src="slides.js"></script>
+  <link rel="contents" href="#index" title="Overview">
+  <link rel="index" id="link-toc" href="#toc" title="Contents">
+  <link rel="start" id="link-start" href="#index" title="Start">
+</head>
+<body>
+<header id="header"><div id="header-text">Mozilla History</div>
+  <div id="subheader-text"></div>
+  <a id="headerlogo" href="#index" title="Start page">Mozilla</a>
+</header>
+<nav id="slidenav">
+  <a href="#toc" id="nav-toc" accesskey="t">toc</a> ||
+  <a href="#index" id="nav-start" accesskey="s">start</a> ||
+  <a href="#" id="nav-prev" accesskey="p" hidden>&lt; back</a>
+  <span id="nav-prev-nolink" class="nolink">&lt; back</span> |
+  <a href="#" id="nav-next" id="goNext" accesskey="n" hidden>fwd &gt;</a>
+  <span id="nav-next-nolink" class="nolink">fwd &gt;</span>
+</nav>
+
+<article id="toc" data-title="Contents">
+<h1><span>Contents</span></h1>
+<h2>Mozilla History: 20+ Years And Counting</h2>
+
+<div class="captionedbox">
+<p class="captionedbox-caption">The following slides are available in this presentation:</p>
+<div class="captionedbox-content">
+<ul id="toc-list">
+</ul>
+</article>
+
+<article id="index" data-title="Start Page" data-seconds="600">
+<h1><span>Mozilla History: 20+ Years And Counting</span></h1>
+<h2>An overview of origins, past, and present</h2>
+
+<div class="simplebox decofont">
+<mark><a href="http://home.kairo.at/">Robert Kaiser</a></mark>
+</div>
+
+<div class="captionedbox">
+<p class="captionedbox-caption decofont"><span id="hidesdesc" class="noadvance">Slides:</span>
+  <a href="https://slides.kairo.at/fosdem2021/">https://slides.kairo.at/fosdem2021/</a></p>
+<div class="captionedbox-content small">
+<ul class="small" id="slidesdesc">
+  <li>Created for a presentation in the <a href="http://fosdem.org/2021/schedule/track/mozilla/">Mozilla
+    Developer Room</a> at <a href="http://www.fosdem.org/">FOSDEM 2021</a> in
+    Brussels.</li>
+  <li>Written in HTML 5 (with modern CSS and JS).</li>
+  <li>Navigation via links on all slides, via access keys
+   (e.g. "n"/Alt+Shift+N for "next") or back/forward arrow keys</li>
+  <li><a href="#toc">Contents</a></li>
+  <li><a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img
+      alt="Lizenziert unter CC-BY-SA," class="ccinline" src="cc-by-sa.svg"></a>
+    01/2021 Robert Kaiser -
+    "Mozilla", "Firefox" and related marks/logos are
+    <a href="http://www.mozilla.org/foundation/trademarks/list.html">trademarks
+    of Mozilla Foundation</a>.</li>
+</ul>
+</div>
+</div>
+</article>
+
+<article id="introduction" data-title="Introduction - KaiRo">
+<h1><span>Robert Kaiser - KaiRo</span></h1>
+
+<div class="simplebox">
+<img src="kairo.jpg" class="slidepic"
+ alt="Robert Kaiser">
+<ul>
+  <li>kairo@kairo.at / <a href="https://home.kairo.at/">home.kairo.at</a></li>
+  <li><mark><a href="https://community.mozilla.org/en/groups/mozilla-reps/">Mozilla Rep</a></mark>,
+      <mark><a href="https://community.mozilla.org/en/groups/tech-speakers/">Tech Speaker</a></mark></li>
+  <li>Based in Vienna, Austria</li>
+  <li>Not very active on social networks</li>
+  <li>But on <a href="https://matrix.to/#/@kairo:mozilla.org">Matrix</a>,
+      <a href="https://joindiaspora.com/people/eb2e0ec0ec0d04bc">Diaspora*</a>,
+      <a href="https://community.mozilla.org/en/people/kairo/">Mozilla Community</a>,
+      <a href="https://telegram.me/KaiRo_at">Telegram</a>,
+      <a href="https://www.linkedin.com/in/robert-kaiser-kairo-at">LinkedIn</a>,
+      <a href="https://github.com/KaiRo-at">KaiRo-at at GitHub</a></li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="origin" data-title="Mozilla Name Origin">
+<h1><span>Origin of the Name "Mozilla"</span></h1>
+
+<div class="simplebox">
+<img src="mozdino-green.jpg" class="slidepic"
+ alt="Mozilla dino - © Dave Titus">
+<ul>
+  <li>1993: Marc Andreessen, co-writer of
+    <abbr title="National Center for Supercomputing Applications at the University of Illinois">NCSA</abbr>
+    <a href="https://en.wikipedia.org/wiki/Mosaic_(web_browser)">Mosaic</a>,
+    co-founds company for commercial web browser</li>
+  <li>"Mosaic killer" app, reminding of "Godzilla" --> code-name <mark>"Mozilla"</mark></li>
+  <li>Used as internal name, user agent "Mozilla/..."</li>
+  <li>Green dino mascot (© Dave Titus)</li>
+  <li>Public/commercial name <mark><a href="https://en.wikipedia.org/wiki/Netscape">Netscape</a></mark> later in 1994</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="launch" data-title="Mozilla Project Launch">
+<h1><span>Mozilla Project Launch</span></h1>
+
+<div class="simplebox">
+<img src="hack.png" class="slidepic"
+ alt="mozilla.org: hack - this technology could fall into the right hands">
+<ul>
+  <li>Jan 1998: Netscape announces <mark>open-sourcing</mark> of code</li>
+  <li><abbr title="Netscape Public License">NPL</abbr> as a new license, written by Mitchell Baker</li>
+  <li>Using <mark>Mozilla</mark> project name, <a href="https://mozilla.org/">mozilla.org</a></li>
+  <li>Red dino <a href="https://en.wikipedia.org/wiki/Mozilla_%28mascot%29">mascot</a> (by Shepard Fairey)</li>
+  <li>tag line "hack - this technology could fall into the right hands"</li>
+  <li>Target: Internet Application Suite code as base for Netscape 5+</li>
+  <li>Open-source code launch on <mark>March 31, 1998</mark></li>
+  <li><mark><a href="http://archive.org/details/CodeRush_616">Code Rush</a></mark> documentary</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="suite" data-title="Mozilla Application Suite">
+<h1><span>Mozilla Application Suite</span></h1>
+
+<div class="simplebox">
+<img src="mozsuite.png" class="slidepic"
+ alt="Mozilla Suite screen shots">
+<ul>
+  <li>Late 1998: Start building on in-development Raptor/NGLayout/<mark>Gecko</mark>
+      engine (HTML4+XML-compliant).</li>
+  <li>Complete <mark>rewrite</mark> of suite based on browser tech
+      ("<abbr title="Cross-Platform Front End">XPFE</bbr>")</li>
+  <li><abbr title="XML User Interface Language">XUL</abbr> (with CSS + JS),
+      <abbr title="XML Binding Language">XBL</abbr>,
+      plus <abbr title="Cross-Platform Component Object Model">XPCOM</abbr>, RDF/XML, etc.</li>
+  <li>M3-M18 milestone releases, 0.6 as base for Netscape 6 in 2000, <mark>1.0 in June 2002</mark></li>
+  <li>Regular development and releases up to 1.7 in 2005</li>
+  <li>Deprecated for Firefox and Thunderbird</li>
+  <li>Transition to community in 2005 ("SeaMonkey")</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="firefox" data-title="The Rise of Firefox">
+<h1><span>The Rise of Firefox</span></h1>
+
+<div class="simplebox">
+<img src="splendid_firefox_small.jpg" class="slidepic"
+ alt="The Splendid Firefox!">
+<ul>
+  <li>April 2002: <mark>m/b</mark> -
+      <a href="https://github.com/mozilla/gecko-dev/blob/4c205237b560525550d77a47c6ca805ecc569ca6/browser/README.html">"The
+      idea is to design the best web browser for most people."</a></li>
+  <li>Leaner, cleaner, <mark>browser-only UI</mark> based on same technologies as suite</li>
+  <li>Name changes to Phoenix, Firebird and finally Firefox</li>
+  <li>Firefox 1.0 released on <mark>November 9, 2004</mark></li>
+  <li>Web Search integration</li>
+  <li>Rapid growth to hundreds of millions of users</li>
+  <li>Started a whole new push of Internet innovation</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="mofo" data-title="Mozilla Foundation">
+<h1><span>Mozilla Foundation</span></h1>
+
+<div class="simplebox">
+<img src="adoptmozilla.png" class="slidepic"
+ alt="Various Mozilla logos and graphics">
+<ul>
+  <li>AOL/Netscape pulling out of Mozilla in 2003</li>
+  <li><mark>Mozilla Foundation</mark> ("MoFo") created with some one-time funding</li>
+  <li>No employees, Mitchell Baker as chairwoman</li>
+  <li>Donations, then Web Search money with Firefox 1.0</li>
+  <li><mark>Mozilla Corporation</mark> ("MoCo") subsidiary since 2005 for tax reasons</li>
+  <li>After that, mission-driven, non-commercial work at MoFo</li>
+  <li>New <mark>moz://a</mark> logo since 2017</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="mission" data-title="Mission and Manifesto">
+<h1><span>Mozilla Mission and Manifesto</span></h1>
+
+<div class="simplebox">
+<img src="mozilla-open-poster.jpg" class="slidepic"
+ alt="Mozilla 'OPEN' dino poster">
+<ul>
+  <li>Initially, "act as the virtual meeting place for the Mozilla code"</li>
+  <li>First actual <a href="https://web.archive.org/web/20031118185113/http://www.mozilla.org/about/">mission
+      statement</a> on website in 2003: "preserve choice and innovation on the Internet"</li>
+  <li>Today: "ensure the Internet is a <mark>global public resource, open and
+      accessible to all</mark>. [...]"</li>
+  <li>Since 2007, Principles of
+      <mark><a href="https://www.mozilla.org/en-US/about/manifesto/">Mozilla Manifesto</a></mark></li>
+  <li>Pledge for human experience added to Manifesto in 2018</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="projects1" data-title="Other Products/Projects, Part 1">
+<h1><span>Other Products/Projects (Excerpt) - Part I</span></h1>
+
+<div class="simplebox">
+<img src="otherprojects.png" class="slidepic"
+ alt="Logos of other Mozilla projects listed on the slide">
+<ul>
+  <li><abbr title="Mozilla Developer Center">MDC</abbr>/<abbr title="Mozilla Developer Network">MDN</abbr>:
+      developer documentation, since 2005</li>
+  <li>XULRunner: XUL application platform, 2006-2015</li>
+  <li><mark>Rust</mark>: programming language, personal project since 2006,
+      sponsored by Mozilla since 2010, creation of separate foundation in progress</li>
+  <li>Persona/BrowserID: decentralized auth system, 2011-2016</li>
+  <li>Servo: experimental browser engine, since 2012, cooperation with Samsung,
+      moved to <abbr title="Linux Foundation">LF</abbr> in 2020</li>
+  <li><mark>Firefox OS</mark>: web-based mobile OS, 2013-2016</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="projects2" data-title="Other Products/Projects, Part 2">
+<h1><span>Other Products/Projects (Excerpt) - Part II</span></h1>
+
+<div class="simplebox">
+<img src="otherprojects.png" class="slidepic"
+ alt="Logos of other Mozilla projects listed on the slide">
+<ul>
+  <li>A-Frame: WebVR/XR framework, since 2015, moved to community in 2018</li>
+  <li><mark>Pocket</mark> (orig. "Read It Later"): web content lists,
+      independent since 2007, acquired by Mozilla in 2017</li>
+  <li><mark>Mozilla Hubs</mark>: social VR platform, since 2017</li>
+  <li>WebThings: Smart Home gateway, since 2017, moved to community in 2020</li>
+  <li>Firefox Lockwise: password manager, since 2018</li>
+  <li>Firefox Monitor: data breach checker, since 2018</li>
+  <li>Mozilla <mark>VPN</mark>: since 2019/2020</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="now" data-title="Current State of Mozilla">
+<h1><span>Current State of Mozilla</span></h1>
+
+<div class="simplebox">
+<img src="mozcurrent.png" class="slidepic"
+ alt="Current screen shot of Firefox privacy website">
+<ul>
+  <li><mark>Firefox</mark> (desktop, mobile) and Pocket</li>
+  <li>Plus <mark>Privacy &amp; Security</mark> products (Monitor, VPN, ...)</li>
+  <li>Some research into new offerings (like Hubs, etc.)</li>
+  <li>Mozilla Foundation: Mission (MozFest, Common Voice, ...)</li>
+  <li><mark>Thunderbird</mark>: separate under MoFo umbrella</li>
+  <li>Related projects: <a href="https://www.rust-lang.org/">Rust</a>,
+      <a href="https://www.bugzilla.org/">Bugzilla</a>,
+      <a href="https://webthings.io/">Webthings</a>,
+      <a href="https://www.kaiostech.com/">KaiOS</a>, ...</li>
+</ul>
+<p class="ensurepicinbox"></p>
+</div>
+</article>
+
+<article id="end" data-title="The End">
+
+<div class="simplebox endslidecontainer">
+<h1 class="cent endslidetext"><span>Thank You.</span></h1>
+<h2 class="cent endslidetext"><span><a href="https://home.kairo.at/">https://home.kairo.at/</a></span></h2>
+<h3 class="cent endslidetext"><span><a href="https://mozilla.org/">https://mozilla.org/</a></span></h2>
+<img src="mozgear.jpg" class="sshot endslidepic" alt="Various Mozilla gear (T-shirts, stickers, etc.)">
+</div>
+</article>
+
+</body>
+</html>
diff --git a/fosdem2021/kairo.jpg b/fosdem2021/kairo.jpg
new file mode 100644 (file)
index 0000000..23ef9e0
Binary files /dev/null and b/fosdem2021/kairo.jpg differ
diff --git a/fosdem2021/mozcurrent.png b/fosdem2021/mozcurrent.png
new file mode 100644 (file)
index 0000000..4b452f0
Binary files /dev/null and b/fosdem2021/mozcurrent.png differ
diff --git a/fosdem2021/mozdino-green.jpg b/fosdem2021/mozdino-green.jpg
new file mode 100755 (executable)
index 0000000..63c456f
Binary files /dev/null and b/fosdem2021/mozdino-green.jpg differ
diff --git a/fosdem2021/mozgear.jpg b/fosdem2021/mozgear.jpg
new file mode 100644 (file)
index 0000000..14a50e3
Binary files /dev/null and b/fosdem2021/mozgear.jpg differ
diff --git a/fosdem2021/mozilla-open-poster.jpg b/fosdem2021/mozilla-open-poster.jpg
new file mode 100644 (file)
index 0000000..e988bac
Binary files /dev/null and b/fosdem2021/mozilla-open-poster.jpg differ
diff --git a/fosdem2021/mozsuite.png b/fosdem2021/mozsuite.png
new file mode 100644 (file)
index 0000000..a374d6c
Binary files /dev/null and b/fosdem2021/mozsuite.png differ
diff --git a/fosdem2021/otherprojects.png b/fosdem2021/otherprojects.png
new file mode 100644 (file)
index 0000000..bfc71df
Binary files /dev/null and b/fosdem2021/otherprojects.png differ
diff --git a/fosdem2021/slides.css b/fosdem2021/slides.css
new file mode 100644 (file)
index 0000000..e0ba5a0
--- /dev/null
@@ -0,0 +1,455 @@
+/**************************
+ * styles for talk slides *
+ *    by Robert Kaiser    *
+ *    <kairo@kairo.at>    *
+ *   (for FOSDEM 2013)    *
+ **************************/
+
+
+/***** base style *****/
+
+@font-face {
+  font-family: 'Open Sans';
+  src: url('template/OpenSans-Regular-webfont.woff');
+  font-weight: normal;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Open Sans';
+  src: url('template/OpenSans-Semibold-webfont.woff');
+  font-weight: bold;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Open Sans';
+  src: url('template/OpenSans-Italic-webfont.woff');
+  font-weight: normal;
+  font-style: italic;
+}
+
+@font-face {
+  font-family: 'Zilla Slab';
+  src: url('template/ZillaSlab-Regular.woff2');
+  font-weight: normal;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Zilla Slab';
+  src: url('template/ZillaSlab-Bold.woff2');
+  font-weight: bold;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Zilla Slab Highlight';
+  src: url('template/ZillaSlabHighlight-Regular.woff2');
+  font-weight: normal;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Zilla Slab Highlight';
+  src: url('template/ZillaSlabHighlight-Bold.woff2');
+  font-weight: bold;
+  font-style: normal;
+}
+
+html {
+  overflow: hidden; /* to make translations not paint scrollbars */
+  background: white;
+  height: 100%;
+}
+
+body {
+  margin: 0px;
+  padding: 0px;
+  border: 0px;
+  font-family: "Open Sans", sans-serif;
+  font-size: 2em;
+  color: black;
+  height: 100%;
+}
+
+ul {
+  padding-left: 1.2em;
+  margin-bottom: 0.5em;
+}
+
+ul:first-child,
+ul:last-child {
+  margin-top: 0;
+}
+
+#header {
+  height: 44px;
+  position: relative;
+  font-family: "Zilla Slab", monospace;
+  border-bottom: 3px solid black;
+}
+
+#headerlogo {
+  position: absolute;
+  display: block;
+  right: 2px;
+  top: 2px;
+  text-indent: -2000px;
+  font-size: 1px;
+  overflow: hidden;
+  height: 40px;
+  width: 140px;
+  background: url("template/mozilla_logo2017.svg") no-repeat;
+}
+
+#header-text {
+  position: relative;
+  top: 5px;
+  left: 25px;
+  width: 200px;
+  width: -moz-fit-content;
+  width: -webkit-fit-content;
+  width: fit-content;
+  padding: 0 5px;
+  font-size: 20px;
+  font-weight: bold;
+  color: white;
+  background-color: black;
+}
+
+#header-text.neartime {
+  color: #00FFFF;
+}
+
+#header-text.ontime {
+  color: #54FFBD;
+}
+
+#header-text.overtime {
+  color: #FF4F5E;
+}
+
+#subheader-text {
+  color: black;
+  position: relative;
+  top: 3px;
+  left: 25px;
+  width: calc(100% - 50px);
+  padding: 0 5px;
+  font-size: 10px;
+}
+
+#slidenav {
+  position: absolute;
+  right: 200px;
+  top: 15px;
+  font-family: "Zilla Slab", monospace;
+  font-size: 10px;
+}
+
+#slidenav a:link,
+#slidenav a:visited {
+  color: black;
+}
+
+#slidenav a:hover,
+#slidenav a:active {
+  color: #959595;
+}
+
+#slidenav .nolink {
+  color: #E7E5E2;
+}
+
+article {
+  position: absolute;
+  width: 100%;
+  /* header is 40px, 7px to have a bit of distance,
+   * 3px height-reducing on the bottom for safety */
+  top: 47px;
+  height: calc(100% - 50px);
+  overflow: auto;
+
+  transition-property: transform, opacity;
+  transition-duration: 3s;
+  transition-timing-function: ease;
+  transform-origin: center 5em;
+
+  opacity: 0;
+/*
+  transform: translate(-100%, 0);
+*/
+/*
+  transform: scale(0.1) rotate(360deg) translate(-200%, 0);
+*/
+  transform: scale(0.1) translate(-400%, 0);
+}
+
+article[aria-selected="true"] {
+  opacity: 1;
+  transform: scale(1) rotate(0deg) translate(0, 0);
+}
+
+article[aria-selected="true"] ~ article {
+  opacity: 0;
+/*
+  transform: translate(100%, 0);
+*/
+/*
+  transform: scale(0.1) rotate(-360deg) translate(200%, 0);
+*/
+  transform: scale(0.1) translate(400%, 0);
+}
+
+/***** headers *****/
+
+h1, h2, h3, h4 {
+  margin: 0.5em 0;
+  font-family: "Zilla Slab", monospace;
+  font-weight: bold;
+  color: black;
+  text-align: center;
+}
+
+h1 {
+  font-family: "Zilla Slab Highlight", "Zilla Slab", monospace;
+  margin-top: 0.5em;
+  font-size: 2.2em;
+}
+
+h1 span {
+  font-family: "Zilla Slab", monospace;
+  background-color: black;
+  color: white;
+  padding: 0 10px;
+}
+
+h2 {
+  font-size: 1.3em;
+}
+
+h3 {
+  font-size: 1.1em;
+}
+
+h4 {
+  font-size: 1em;
+  text-align: left;
+}
+
+/***** boxes *****/
+
+.simplebox {
+  padding: 0.5em;
+}
+
+.captionedbox {
+  padding: 0px;
+}
+
+.simplebox,
+.captionedbox {
+  margin: 1em;
+  background-color: white;
+  /* box-shadow: 0 0 0 1px black inset; */
+  /* border-bottom: 1px solid black; */
+}
+
+.captionedbox-content {
+  margin: 0;
+  padding: 0.5em;
+  border: 0px;
+  border-top: 1px solid black;
+}
+
+.captionedbox-caption {
+  margin: 0;
+  padding: 0.5em;
+  font-weight: bold;
+}
+
+.simplebox + .simplebox,
+.captionedbox + .simplebox,
+.simplebox + .captionedbox,
+.captionedbox + .captionedbox {
+  border-top: 1px solid black;
+}
+
+/***** misc formatting *****/
+
+mark {
+  font-family: "Zilla Slab", monospace;
+  font-weight: bold;
+  color: black;
+  background-color: #FFF44F;
+}
+
+.decofont {
+  font-family: "Zilla Slab", monospace;
+}
+
+.border {
+  border: 1px solid black;
+  padding: 0.5em;
+}
+
+.sshot {
+  max-width: 100%;
+  max-height: 20em;
+  /* box-shadow: black 1px 1px 3px 2px; */
+}
+
+.slidepic {
+  float: right;
+  margin-left: .5em;
+  max-height: 20em;
+  max-width: 25%;
+}
+
+.ensurepicinbox {
+  clear: both;
+  font-size: 1px;
+  margin: 0;
+}
+
+.largetext {
+  font-size: 2em;
+}
+
+ul > li {
+  margin: 0.5em 0;
+}
+
+.columns2 {
+  -moz-columns: 2;
+}
+
+ul.nobullets > li {
+  list-style-type: none;
+}
+
+ul.arrows > li {
+  list-style-type: none;
+}
+ul.arrows > li:before {
+  content: "\21d2\20"; /* \2192 would be single thin arrow, hex 20 is space */
+}
+
+.cent {
+  text-align: center;
+}
+
+.topmargin {
+  margin-top: 0.5em;
+}
+
+.akey {
+  text-decoration: underline;
+}
+
+.hidden {
+  display: none;
+}
+
+a:link, a:visited { color: #00458B; text-decoration: none; }
+a:hover, a:active { color: #959595; text-decoration: underline; }
+
+mark a:link, mark a:visited { color: #005E5E; }
+mark a:hover, mark a:active { color: #005E5E; }
+
+h1 span a:link, h1 span a:visited,
+h1 span a:hover, h1 span a:active { color: white; }
+
+pre { margin: 0; }
+
+/***** small stuff *****/
+
+small,
+.small {
+  font-size: 0.75em;
+}
+
+ul.small,
+.small ul {
+  padding: 0px;
+  border: 0px;
+  margin: 0px 0px 0px 1em;
+}
+
+ul.small > li
+.small ul > li {
+  margin: 0px;
+  padding: 0px;
+  border: 0px;
+}
+
+/***** specific slides *****/
+
+/* start slide */
+.ccinline {
+  border-width: 0;
+  vertical-align: bottom;
+  height: 1.75em;
+}
+
+/* end slide */
+.endslidecontainer {
+  position: relative;
+}
+
+.endslidepic {
+  width: 100%;
+  max-height: initial;
+  z-index: 1;
+}
+
+.endslidetext {
+  position: absolute;
+  width: calc(100% - 2rem);
+  z-index: 3;
+}
+
+h1.endslidetext {
+/*  color: white; */
+  font-size: 2.5em;
+}
+
+h2.endslidetext,
+h3.endslidetext {
+  font-size: 1.5em;
+}
+
+h2.endslidetext > span,
+h3.endslidetext > span {
+  background-color: white;
+  padding: 0 10px;
+}
+
+.endslidetext:first-child {
+  top: 3rem;
+}
+
+.endslidetext:nth-child(2) {
+  top: 22rem;
+}
+
+.endslidetext:nth-child(3) {
+  top: 33rem;
+}
+
+@media (min-resolution: 1.35dppx) {
+  h2.endslidetext,
+  h3.endslidetext {
+    font-size: 1.2em;
+  }
+  .endslidetext:first-child {
+    top: .5rem;
+  }
+  .endslidetext:nth-child(2) {
+    top: 9rem;
+  }
+  .endslidetext:nth-child(3) {
+    top: 14rem;
+  }
+}
diff --git a/fosdem2021/slides.js b/fosdem2021/slides.js
new file mode 100644 (file)
index 0000000..46f61b3
--- /dev/null
@@ -0,0 +1,233 @@
+/******************************
+ * JavaScript for talk slides *
+ *      by Robert Kaiser      *
+ *      <kairo@kairo.at>      *
+ *     (for FOSDEM 2011)      *
+ ******************************/
+
+var slides = {};
+var articleNodes;
+var currentSlide;
+var currentIdx;
+var defaultIdx = 1; // set to slide index to show by default
+var firstIdx = 2; // set no value if to use first available
+var lastIdx; // set no value if to use last available
+
+var pageTitle, headerText, subHeaderText;
+var navPrev, navNext, navPrevNolink, navNextNolink;
+
+// Slide timer - color variation of headerText
+// Time per slide is total presentation length divided by number of slides
+// except start and end slide.
+var presLengthSeconds = 30 * 60;
+var slideStart, timerMSec;
+
+// Called when the document has been loaded.
+window.onload = function() {
+  pageTitle = document.getElementsByTagName("title")[0];
+  headerText = document.getElementById("header-text");
+  subHeaderText = document.getElementById("subheader-text");
+  navPrev = document.getElementById("nav-prev");
+  navNext = document.getElementById("nav-next");
+  navPrevNolink = document.getElementById("nav-prev-nolink");
+  navNextNolink = document.getElementById("nav-next-nolink");
+  articleNodes = document.getElementsByTagName("article");
+
+  if (!firstIdx)
+    firstIdx = 0;
+  if (!lastIdx)
+    lastIdx = articleNodes.length - 1;
+  var slideSeconds = presLengthSeconds / (lastIdx - firstIdx);
+  timerMSec = 1000 * (slideSeconds / 3);
+
+  // Get a list of all slides (articles).
+  subHeaderText.textContent = articleNodes.length + " slides...";
+  for (var i = 0; i < articleNodes.length; ++i) {
+    subHeaderText.textContent = "Indexing slide " + i + " / " + articleNodes.length;
+    if (!articleNodes[i].id)
+      articleNodes[i].id = "slide_" + i;
+
+    slides[articleNodes[i].id] = {
+        "idx": i,
+        "name": articleNodes[i].id,
+        "title": articleNodes[i].dataset.title ? articleNodes[i].dataset.title : articleNodes[i].id,
+        "obj": articleNodes[i],
+        "timeSeconds": articleNodes[i].dataset.seconds ? articleNodes[i].dataset.seconds : slideSeconds,
+    };
+
+    if (location.hash.length &&
+        (location.hash == "#" + articleNodes[i].id || location.hash == "#" + i)) {
+      articleNodes[i].setAttribute("aria-selected", "true");
+      currentSlide = slides[articleNodes[i].id];
+      currentIdx = i;
+    }
+  }
+
+  if (!currentSlide) {
+    currentIdx = defaultIdx;
+    currentSlide = slides[articleNodes[currentIdx].id];
+    currentSlide.obj.setAttribute("aria-selected", "true");
+    location.hash = "#" + currentSlide.name;
+  }
+  updateDisplay();
+  document.getElementById("hidesdesc").onclick = function(event) {
+    document.getElementById("slidesdesc").classList.toggle("hidden");
+  }
+}
+
+// Called when the hash part of the location changes.
+function locationHashChanged() {
+  if (location.hash.length > 1) {
+    var hashtag = location.hash.substring(1);
+    // If not a number, treat as ID
+    if (isNaN(hashtag) && slides[hashtag]) {
+      currentSlide.obj.removeAttribute("aria-selected");
+      currentSlide = slides[hashtag];
+      currentIdx = currentSlide.idx;
+      currentSlide.obj.setAttribute("aria-selected", "true");
+      updateDisplay();
+    }
+    else if (articleNodes[hashtag]) {
+      currentSlide.obj.removeAttribute("aria-selected");
+      currentIdx = hashtag;
+      currentSlide = slides[articleNodes[currentIdx].id];
+      currentSlide.obj.setAttribute("aria-selected", "true");
+      updateDisplay();
+    }
+  }
+}
+window.onhashchange = locationHashChanged;
+
+// Update the display after we updated what slide is shown.
+function updateDisplay() {
+  if (currentIdx >= firstIdx && currentIdx <= lastIdx &&
+      currentSlide.name != "toc")
+    subHeaderText.textContent = (currentIdx - firstIdx + 1) + "/" +
+                                (lastIdx - firstIdx + 1) + " - " +
+                                currentSlide.title;
+  else
+    subHeaderText.textContent = currentSlide.title;
+  pageTitle.textContent = headerText.textContent + ": " + currentSlide.title;
+  if (currentIdx > firstIdx && currentSlide.name != "toc") {
+    navPrev.hidden = false;
+    navPrev.href = "#" + articleNodes[currentIdx - 1].id;
+    navPrevNolink.hidden = true;
+  }
+  else {
+    navPrev.hidden = true;
+    navPrevNolink.hidden = false;
+  }
+  if (currentIdx < lastIdx && currentSlide.name != "toc") {
+    navNext.hidden = false;
+    navNext.href = "#" + articleNodes[currentIdx + 1].id;
+    navNextNolink.hidden = true;
+  }
+  else {
+    navNext.hidden = true;
+    navNextNolink.hidden = false;
+  }
+  headerText.className = "";
+  slideStart = new Date();
+  timerMSec = 1000 * (currentSlide.timeSeconds / 3);
+  if (currentSlide.name == "toc")
+    createTOC();
+  else
+    setTimeout(timerFired, timerMSec);
+}
+
+// Create TOC list.
+function createTOC() {
+ var list = document.getElementById("toc-list");
+ if (!list.getElementsByTagName("li").length) {
+   for (var slide in slides) {
+     if (slide != "toc") {
+       var item = document.createElement("li");
+       var link = document.createElement("a");
+       var slideHeaders = slides[slide].obj.getElementsByTagName("h1");
+       if (slideHeaders.length)
+         link.textContent = slideHeaders[0].textContent;
+       else
+         link.textContent = slides[slide].title;
+       link.href = "#" + slides[slide].name;
+       item.appendChild(link);
+       list.appendChild(item);
+     }
+   }
+ }
+}
+
+// Do timed color variation on slides.
+function timerFired() {
+  var slideCurrent = new Date();
+  var secondsDiff = Math.round((slideCurrent.getTime() - slideStart.getTime()) / 1000);
+  if (secondsDiff >= currentSlide.timeSeconds) {
+    headerText.className = "overtime";
+  }
+  else if (secondsDiff >= Math.round(2 * currentSlide.timeSeconds / 3)) {
+    headerText.className = "ontime";
+    setTimeout(timerFired, timerMSec);
+  }
+  else if (secondsDiff >= Math.round(currentSlide.timeSeconds / 3)) {
+    headerText.className = "neartime";
+    setTimeout(timerFired, timerMSec);
+  }
+  else {
+    // We should never come here, but if we do, go into a 100ms loop until we get over the upcoming step.
+    setTimeout(timerFired, 100);
+  }
+}
+
+// Keyboard/click nav functionality, mostly inherited from FOSDEM 2007.
+(function() {
+  function go(where) {
+    where = where || "next";
+    var navElem = document.getElementById("nav-" + where);
+    if (!navElem.hidden)
+      window.location.href = navElem.href;
+  }
+
+  function handleClick(e) {
+    e = e || event;
+    var target = (window.event) ? e.srcElement : e.target;
+    if (e.which == 1 && target.nodeName != "A" && target.nodeName != "VIDEO" && !target.classList.contains("noadvance"))
+      go("next");
+  }
+
+  function handleKeyPress(e) {
+    e = e || event;
+    switch (e.key) {
+      // See https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode#Constants_for_keyCode_value
+      case "ArrowLeft":
+      case "ArrowDown":
+      case "Left": // non-standard, old browsers
+      case "Down": // non-standard, old browsers
+      case "PageDown":
+      case "P":
+      case "p":
+      case "H": //8bitdo Zero "X"
+      case "h": //8bitdo Zero "X"
+        go("prev"); break;
+      case "ArrowRight":
+      case "ArrowUp":
+      case "Right": // non-standard, old browsers
+      case "Up": // non-standard, old browsers
+      case "PageUp":
+      case "N":
+      case "n":
+      case "J": //8bitdo Zero "B"
+      case "j": //8bitdo Zero "B"
+        go("next"); break;
+      case "Home":
+      case "I": //8bitdo Zero "Y"
+      case "i": //8bitdo Zero "Y"
+        go("start"); break;
+      case "End":
+      case "G": //8bitdo Zero "A"
+      case "g": //8bitdo Zero "A"
+        go("toc"); break;
+    }
+  }
+
+  window.onclick = handleClick;
+  window.onkeydown = handleKeyPress;
+})();
diff --git a/fosdem2021/splendid_firefox_small.jpg b/fosdem2021/splendid_firefox_small.jpg
new file mode 100644 (file)
index 0000000..55fe317
Binary files /dev/null and b/fosdem2021/splendid_firefox_small.jpg differ
diff --git a/fosdem2021/template/OpenSans-Italic-webfont.woff b/fosdem2021/template/OpenSans-Italic-webfont.woff
new file mode 100644 (file)
index 0000000..1ed8ab9
Binary files /dev/null and b/fosdem2021/template/OpenSans-Italic-webfont.woff differ
diff --git a/fosdem2021/template/OpenSans-Regular-webfont.woff b/fosdem2021/template/OpenSans-Regular-webfont.woff
new file mode 100644 (file)
index 0000000..bd0f824
Binary files /dev/null and b/fosdem2021/template/OpenSans-Regular-webfont.woff differ
diff --git a/fosdem2021/template/OpenSans-Semibold-webfont.woff b/fosdem2021/template/OpenSans-Semibold-webfont.woff
new file mode 100644 (file)
index 0000000..3a78f75
Binary files /dev/null and b/fosdem2021/template/OpenSans-Semibold-webfont.woff differ
diff --git a/fosdem2021/template/ZillaSlab-Bold.woff2 b/fosdem2021/template/ZillaSlab-Bold.woff2
new file mode 100644 (file)
index 0000000..bf96f4d
Binary files /dev/null and b/fosdem2021/template/ZillaSlab-Bold.woff2 differ
diff --git a/fosdem2021/template/ZillaSlab-Regular.woff2 b/fosdem2021/template/ZillaSlab-Regular.woff2
new file mode 100644 (file)
index 0000000..ed653eb
Binary files /dev/null and b/fosdem2021/template/ZillaSlab-Regular.woff2 differ
diff --git a/fosdem2021/template/ZillaSlabHighlight-Bold.woff2 b/fosdem2021/template/ZillaSlabHighlight-Bold.woff2
new file mode 100644 (file)
index 0000000..8414a16
Binary files /dev/null and b/fosdem2021/template/ZillaSlabHighlight-Bold.woff2 differ
diff --git a/fosdem2021/template/ZillaSlabHighlight-Regular.woff2 b/fosdem2021/template/ZillaSlabHighlight-Regular.woff2
new file mode 100644 (file)
index 0000000..a166fbe
Binary files /dev/null and b/fosdem2021/template/ZillaSlabHighlight-Regular.woff2 differ
diff --git a/fosdem2021/template/mozilla-tab.png b/fosdem2021/template/mozilla-tab.png
new file mode 100644 (file)
index 0000000..87f8ef9
Binary files /dev/null and b/fosdem2021/template/mozilla-tab.png differ
diff --git a/fosdem2021/template/mozilla_logo2017.svg b/fosdem2021/template/mozilla_logo2017.svg
new file mode 100644 (file)
index 0000000..08f06e0
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 20.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 360 102.8" style="enable-background:new 0 0 360 102.8;" xml:space="preserve">
+<style type="text/css">
+       .st0{fill:#FFFFFF;}
+</style>
+<g>
+       <rect y="-0.2" width="360" height="102.9"/>
+       <path class="st0" d="M343.8,73.7c-0.7,0.2-1.3,0.3-1.9,0.3c-2.1,0-3.1-0.9-3.1-3.5V51c0-10.3-8.2-15.3-17.9-15.3
+               c-7.4,0-11.4,0.9-19.3,4.1L300,50.2l10.3,1.1l1.5-5.1c2.1-1.1,4.2-1.3,6.9-1.3c7.3,0,7.4,5.5,7.4,10.1v1.5
+               c-2.3-0.3-4.9-0.4-7.4-0.4c-10.3,0-21,2.6-21,13.7c0,9.4,7.4,12.9,13.9,12.9c7.3,0,11.9-4.4,14.5-9c0.6,5.5,3.9,9,9.9,9
+               c2.8,0,5.7-0.8,8.1-2.1L343.8,73.7z M316.2,73.4c-3.9,0-5.3-2.3-5.3-5.2c0-4.9,4-6.2,8.6-6.2c2.1,0,4.4,0.3,6.5,0.6
+               C325.7,70.1,320.8,73.4,316.2,73.4z M298.9,12.9l-19.5,68.7h-12.7l19.5-68.7H298.9z M272.7,12.9l-19.5,68.7h-12.7L260,12.9H272.7z
+                M218.7,36.6h13.5v16.2h-13.5V36.6z M218.7,65.5h13.5v16.2h-13.5V65.5z M199,64.9l10.2,1l-2.8,15.8h-39.3l-1.3-6.8l24.8-28.5h-14.1
+               l-2,7l-9.3-1l1.6-15.8h39.5l1,6.8l-25,28.5h14.6L199,64.9z M134.5,35.7c-16.2,0-24.2,10.9-24.2,24.1c0,14.4,9.6,22.9,23.5,22.9
+               c14.4,0,24.8-9.1,24.8-23.5C158.6,46.6,150.7,35.7,134.5,35.7z M134.2,72.7c-7,0-10.6-6-10.6-13.8c0-8.5,4.1-13.4,10.7-13.4
+               c6.1,0,11,4.1,11,13.2C145.3,67.4,140.9,72.7,134.2,72.7z M98.7,71.8h6v9.8H85.9V56.3c0-7.8-2.6-10.8-7.7-10.8
+               c-6.2,0-8.7,4.4-8.7,10.7v15.7h6v9.8H56.6V56.3c0-7.8-2.6-10.8-7.7-10.8c-6.2,0-8.7,4.4-8.7,10.7v15.7h8.6v9.8H21.4v-9.8h6V46.4h-6
+               v-9.8h18.9v6.8c2.7-4.8,7.4-7.7,13.7-7.7c6.5,0,12.5,3.1,14.7,9.7c2.5-6,7.6-9.7,14.7-9.7c8.1,0,15.5,4.9,15.5,15.6V71.8z"/>
+</g>
+</svg>
diff --git a/fosdem2022/atomium.jpg b/fosdem2022/atomium.jpg
new file mode 100644 (file)
index 0000000..7bef0ec
Binary files /dev/null and b/fosdem2022/atomium.jpg differ
diff --git a/fosdem2022/cc-by-sa.svg b/fosdem2022/cc-by-sa.svg
new file mode 100644 (file)
index 0000000..085c5b5
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" height="31px" width="88px" version="1.1" y="0px" x="0px" viewBox="0 0 88 31">
+ <title>Creative Commons “Attribution-Share Alike” license icon</title>
+ <path d="m2.499 0.352l83.127 0.148c1.161 0 2.198-0.173 2.198 2.333l-0.102 27.552h-87.321v-27.655c0-1.235 0.119-2.378 2.098-2.378z" fill="#AAB2AB"/>
+ <path d="m25.316 14.449c0.003 5.557-4.471 10.065-9.993 10.069-5.522 0.003-10.001-4.5-10.005-10.057v-0.012c-0.003-5.558 4.471-10.066 9.994-10.069 5.522-0.004 10.001 4.5 10.005 10.057-0.001 0.003-0.001 0.007-0.001 0.012zm21.148-11.143c4.349 0 7.875 3.548 7.875 7.925s-3.526 7.926-7.875 7.926c-4.35 0-7.875-3.548-7.875-7.926-0.001-4.377 3.525-7.925 7.875-7.925zm28.632 7.751c0.003 4.314-3.47 7.814-7.757 7.818-4.286 0.003-7.765-3.492-7.769-7.806v-0.012c-0.002-4.314 3.471-7.814 7.758-7.817s7.765 3.492 7.768 7.806v0.011z" fill="#FFF"/>
+ <path d="m23.446 6.252c2.217 2.232 3.326 4.964 3.326 8.197s-1.089 5.936-3.269 8.11c-2.313 2.289-5.046 3.434-8.2 3.434-3.116 0-5.802-1.135-8.057-3.405-2.256-2.271-3.383-4.982-3.383-8.138s1.127-5.889 3.383-8.198c2.198-2.232 4.884-3.348 8.057-3.348 3.212 0 5.926 1.116 8.143 3.348zm-14.707 1.501c-1.875 1.905-2.812 4.138-2.812 6.698 0 2.561 0.928 4.773 2.783 6.64s4.064 2.801 6.627 2.801 4.791-0.942 6.684-2.829c1.797-1.752 2.697-3.955 2.697-6.611 0-2.636-0.914-4.874-2.74-6.712s-4.04-2.757-6.641-2.757-4.801 0.923-6.598 2.77zm4.933 5.572c-0.287-0.628-0.715-0.942-1.287-0.942-1.011 0-1.516 0.685-1.516 2.054 0 1.37 0.505 2.055 1.516 2.055 0.667 0 1.145-0.333 1.431-1.002l1.401 0.751c-0.668 1.194-1.67 1.792-3.006 1.792-1.03 0-1.856-0.317-2.476-0.954-0.621-0.636-0.931-1.512-0.931-2.629 0-1.099 0.32-1.97 0.959-2.616s1.436-0.968 2.39-0.968c1.413 0 2.424 0.56 3.035 1.679l-1.516 0.78zm6.593 0c-0.287-0.628-0.707-0.942-1.261-0.942-1.031 0-1.547 0.685-1.547 2.054 0 1.37 0.516 2.055 1.547 2.055 0.669 0 1.137-0.333 1.404-1.002l1.433 0.751c-0.667 1.194-1.667 1.792-3.001 1.792-1.029 0-1.853-0.317-2.473-0.954-0.619-0.636-0.928-1.512-0.928-2.629 0-1.099 0.314-1.97 0.943-2.616 0.628-0.646 1.428-0.968 2.4-0.968 1.41 0 2.42 0.56 3.029 1.679l-1.546 0.78zm66.088-13.325h-84.706c-0.908 0-1.647 0.744-1.647 1.658v28.967c0 0.207 0.167 0.375 0.372 0.375h87.256c0.205 0 0.372-0.168 0.372-0.375v-28.967c0-0.914-0.739-1.658-1.647-1.658zm-84.706 0.749h84.705c0.498 0 0.903 0.408 0.903 0.909v20.109h-60.541c-2.219 4.038-6.494 6.779-11.401 6.779-4.908 0-9.183-2.738-11.4-6.779h-3.169v-20.109c0-0.501 0.405-0.909 0.903-0.909zm65.63 1.751c-2.355 0-4.349 0.827-5.98 2.481-1.675 1.712-2.512 3.737-2.512 6.077s0.837 4.351 2.512 6.034c1.674 1.683 3.668 2.524 5.98 2.524 2.342 0 4.371-0.849 6.089-2.546 1.616-1.611 2.427-3.616 2.427-6.012s-0.824-4.422-2.471-6.077c-1.645-1.654-3.66-2.481-6.045-2.481zm0.022 1.54c1.93 0 3.569 0.685 4.918 2.054 1.361 1.355 2.043 3.01 2.043 4.964 0 1.968-0.666 3.602-2.001 4.9-1.405 1.397-3.058 2.096-4.96 2.096-1.901 0-3.541-0.691-4.917-2.074-1.376-1.384-2.064-3.024-2.064-4.921s0.695-3.552 2.086-4.964c1.332-1.371 2.965-2.055 4.895-2.055zm-3.791 5.809c0.34-2.153 1.846-3.304 3.733-3.304 2.716 0 4.369 1.982 4.369 4.626 0 2.58-1.76 4.584-4.411 4.584-1.824 0-3.457-1.13-3.755-3.347h2.143c0.063 1.151 0.806 1.556 1.866 1.556 1.209 0 1.994-1.13 1.994-2.857 0-1.812-0.679-2.771-1.951-2.771-0.934 0-1.739 0.341-1.909 1.513l0.623-0.003-1.687 1.697-1.686-1.697 0.671 0.003zm-14.765-0.911c0-0.306-0.246-0.553-0.55-0.553h-3.478c-0.303 0-0.55 0.247-0.55 0.553v3.5h0.971v4.145h2.636v-4.145h0.971v-3.5zm-2.288-3.408c0.656 0 1.189 0.536 1.189 1.197s-0.533 1.197-1.189 1.197c-0.657 0-1.189-0.536-1.189-1.197s0.532-1.197 1.189-1.197zm-0.012-3.03c-2.355 0-4.349 0.827-5.981 2.481-1.675 1.711-2.512 3.737-2.512 6.076s0.837 4.351 2.512 6.034c1.674 1.683 3.668 2.524 5.981 2.524 2.342 0 4.371-0.849 6.088-2.547 1.619-1.611 2.428-3.615 2.428-6.012s-0.823-4.421-2.47-6.076c-1.645-1.654-3.661-2.48-6.046-2.48zm0.022 1.539c1.93 0 3.569 0.685 4.917 2.054 1.363 1.355 2.044 3.01 2.044 4.963 0 1.968-0.666 3.602-2.001 4.9-1.405 1.398-3.058 2.096-4.96 2.096-1.901 0-3.541-0.691-4.917-2.075-1.377-1.383-2.065-3.023-2.065-4.921 0-1.896 0.695-3.551 2.086-4.963 1.334-1.369 2.966-2.054 4.896-2.054z"/>
+ <path d="m69.277 24.171l1.816 4.888h-1.109l-0.367-1.089h-1.816l-0.381 1.089h-1.074l1.836-4.888h1.095zm0.062 2.997l-0.612-1.793h-0.014l-0.633 1.793h1.259zm-6.079 0.682c0.059 0.115 0.137 0.207 0.234 0.277 0.098 0.071 0.211 0.124 0.342 0.158 0.133 0.034 0.268 0.051 0.408 0.051 0.095 0 0.197-0.008 0.306-0.023s0.21-0.047 0.306-0.093c0.094-0.046 0.174-0.108 0.236-0.188 0.064-0.08 0.096-0.181 0.096-0.305 0-0.132-0.042-0.238-0.126-0.321-0.083-0.083-0.194-0.15-0.329-0.206-0.136-0.055-0.29-0.102-0.461-0.143-0.173-0.042-0.348-0.088-0.523-0.138-0.182-0.046-0.358-0.102-0.531-0.167-0.171-0.066-0.325-0.152-0.461-0.258-0.137-0.104-0.246-0.235-0.33-0.393-0.083-0.158-0.125-0.349-0.125-0.572 0-0.252 0.053-0.469 0.16-0.654 0.105-0.184 0.246-0.338 0.418-0.462 0.172-0.123 0.366-0.214 0.584-0.274 0.217-0.059 0.436-0.088 0.652-0.088 0.254 0 0.497 0.028 0.73 0.086 0.232 0.057 0.44 0.149 0.621 0.277 0.182 0.127 0.326 0.291 0.432 0.49 0.107 0.198 0.16 0.439 0.16 0.723h-1.036c-0.009-0.146-0.04-0.268-0.091-0.363-0.053-0.096-0.121-0.172-0.207-0.227s-0.184-0.094-0.295-0.115c-0.11-0.023-0.23-0.035-0.361-0.035-0.086 0-0.172 0.01-0.258 0.027-0.086 0.019-0.163 0.051-0.232 0.096-0.07 0.047-0.129 0.104-0.174 0.172s-0.067 0.155-0.067 0.26c0 0.096 0.019 0.174 0.054 0.232 0.037 0.061 0.109 0.115 0.215 0.165s0.254 0.101 0.441 0.151c0.188 0.049 0.434 0.113 0.736 0.191 0.092 0.018 0.217 0.051 0.377 0.1 0.161 0.047 0.32 0.123 0.479 0.229 0.159 0.105 0.296 0.246 0.412 0.422 0.115 0.176 0.173 0.4 0.173 0.674 0 0.225-0.044 0.432-0.13 0.623-0.086 0.192-0.214 0.357-0.384 0.496-0.171 0.141-0.381 0.248-0.632 0.326-0.252 0.078-0.544 0.116-0.874 0.116-0.268 0-0.527-0.033-0.779-0.1-0.251-0.065-0.474-0.171-0.667-0.312-0.192-0.143-0.346-0.323-0.459-0.543-0.113-0.219-0.168-0.479-0.163-0.78h1.036c-0.001 0.165 0.028 0.304 0.087 0.418zm-17.287-3.679h1.198l1.138 1.931 1.13-1.931h1.19l-1.803 3.012v1.876h-1.07v-1.903l-1.783-2.985zm-1.975 0c0.231 0 0.442 0.021 0.633 0.062s0.354 0.108 0.491 0.201c0.136 0.094 0.241 0.219 0.316 0.373 0.075 0.155 0.112 0.348 0.112 0.575 0 0.247-0.055 0.451-0.167 0.616-0.11 0.164-0.276 0.298-0.493 0.402 0.3 0.088 0.523 0.239 0.672 0.456 0.148 0.218 0.223 0.479 0.223 0.784 0 0.246-0.049 0.46-0.144 0.641-0.095 0.18-0.224 0.327-0.386 0.441-0.161 0.114-0.346 0.199-0.552 0.254-0.207 0.055-0.419 0.082-0.638 0.082h-2.358v-4.888h2.291v0.001zm-0.137 1.976c0.191 0 0.347-0.046 0.47-0.136 0.123-0.092 0.185-0.239 0.185-0.444 0-0.114-0.021-0.208-0.062-0.28s-0.095-0.129-0.164-0.17-0.146-0.07-0.235-0.086c-0.089-0.016-0.181-0.023-0.276-0.023h-1v1.14h1.082zm0.062 2.075c0.105 0 0.205-0.01 0.3-0.03 0.095-0.021 0.18-0.055 0.252-0.104 0.073-0.047 0.13-0.112 0.174-0.194s0.065-0.187 0.065-0.315c0-0.25-0.071-0.43-0.212-0.536-0.141-0.107-0.328-0.161-0.559-0.161h-1.166v1.341h1.146z" fill="#FFF"/>
+</svg>
\ No newline at end of file
diff --git a/fosdem2022/ethereum.png b/fosdem2022/ethereum.png
new file mode 100644 (file)
index 0000000..c0562db
Binary files /dev/null and b/fosdem2022/ethereum.png differ
diff --git a/fosdem2022/index.html b/fosdem2022/index.html
new file mode 100755 (executable)
index 0000000..71dac40
--- /dev/null
@@ -0,0 +1,300 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+  <meta name="Author" content="KaiRo - Robert Kaiser">
+  <title>Suggestions for a Stronger Mozilla Community</title>
+  <link rel="stylesheet" type="text/css" href="slides.css">
+  <script type="text/javascript" src="slides.js"></script>
+  <link rel="contents" href="#index" title="Overview">
+  <link rel="index" id="link-toc" href="#toc" title="Contents">
+  <link rel="start" id="link-start" href="#index" title="Start">
+</head>
+<body>
+<header id="header"><div id="header-text">Community Suggestions</div>
+  <div id="subheader-text"></div>
+  <a id="headerlogo" href="#index" title="Start page">://comm</a>
+</header>
+<nav id="slidenav">
+  <a href="#toc" id="nav-toc" accesskey="t">toc</a> ||
+  <a href="#index" id="nav-start" accesskey="s">start</a> ||
+  <a href="#" id="nav-prev" accesskey="p" hidden>&lt; back</a>
+  <span id="nav-prev-nolink" class="nolink">&lt; back</span> |
+  <a href="#" id="nav-next" id="goNext" accesskey="n" hidden>fwd &gt;</a>
+  <span id="nav-next-nolink" class="nolink">fwd &gt;</span>
+</nav>
+
+<article id="toc" data-title="Contents">
+<h1><span>Contents</span></h1>
+<h2>Suggestions for a Stronger Mozilla Community</h2>
+
+<div class="captionedbox">
+<p class="captionedbox-caption">The following slides are available in this presentation:</p>
+<div class="captionedbox-content">
+<ul id="toc-list">
+</ul>
+</article>
+
+<article id="index" data-title="Start Page" data-seconds="600">
+<h1><span>Suggestions for a Stronger Mozilla Community</span></h1>
+<h2>Personal Thoughts and Ideas for Possible Improvements</h2>
+
+<div class="simplebox decofont">
+<mark><a href="http://home.kairo.at/">Robert Kaiser</a></mark>
+</div>
+
+<div class="captionedbox">
+<p class="captionedbox-caption decofont"><span id="hidesdesc" class="noadvance">Slides:</span>
+  <a href="https://slides.kairo.at/fosdem2022/">https://slides.kairo.at/fosdem2022/</a></p>
+<div class="captionedbox-content small">
+<ul class="small" id="slidesdesc">
+  <li>Created for a presentation in the <a href="http://fosdem.org/2022/schedule/track/mozilla/">Mozilla
+    Developer Room</a> at <a href="http://www.fosdem.org/">FOSDEM 2022</a> in
+    Brussels.</li>
+  <li>Written in HTML 5 (with modern CSS and JS).</li>
+  <li>Navigation via links on all slides, via access keys
+   (e.g. "n"/Alt+Shift+N for "next") or back/forward arrow keys</li>
+  <li><a href="#toc">Contents</a></li>
+  <li><a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img
+      alt="Lizenziert unter CC-BY-SA," class="ccinline" src="cc-by-sa.svg"></a>
+    01/2022 Robert Kaiser -
+    "Mozilla", "Firefox" and related marks/logos are
+    <a href="http://www.mozilla.org/foundation/trademarks/list.html">trademarks
+    of Mozilla Foundation</a>.</li>
+</ul>
+</div>
+</div>
+</article>
+
+<article id="introduction" data-title="Introduction - KaiRo">
+<h1><span>Robert Kaiser - KaiRo</span></h1>
+
+<div class="simplebox">
+<img src="kairo.jpg" class="slidepic"
+ alt="Robert Kaiser">
+<ul>
+  <li>kairo@kairo.at / <a href="https://home.kairo.at/">home.kairo.at</a></li>
+  <li>Based in Vienna, Austria</li>
+  <li><mark><a href="https://community.mozilla.org/en/groups/mozilla-reps/">Mozilla Rep</a></mark>,
+      <mark><a href="https://community.mozilla.org/en/groups/tech-speakers/">Tech Speaker</a></mark></li>
+  <li>20+ years in the Mozilla community</li>
+  <li>Not very active on social networks</li>
+  <li>But on <a href="https://matrix.to/#/@kairo:mozilla.org">Matrix</a>,
+      <a href="https://telegram.me/KaiRo_at">Telegram</a>,
+      <a href="https://community.mozilla.org/en/people/kairo/">Mozilla Community</a>,
+      <a href="https://www.linkedin.com/in/robert-kaiser-kairo-at">LinkedIn</a>,
+      <a href="https://github.com/KaiRo-at">KaiRo-at at GitHub</a></li>
+</ul>
+</div>
+</article>
+
+<article id="disclaimer" data-title="Disclaimer">
+<h1><span>This is Personal</span></h1>
+
+<div class="mainbox">
+<div class="disclaimer">
+  <mark>Disclaimer</mark>:
+  <ul>
+  <li>This talk consists mostly of <mark>personal opinions, suggestions and
+    ideas</mark>.</li>
+  <li>Those are not coordinated or endorsed by Mozilla Foundation, any of its
+    subsidiaries, or their staff.</li>
+  <li>Discussions and comments are encouraged, but <mark>keep it civil</mark>
+    and follow the
+    <a href="https://www.mozilla.org/en-US/about/governance/policies/participation/">Mozilla
+    Community Participation Guidelines</a>.</li>
+  </ul>
+</div>
+<img src="kairo_heat.jpg" class="slidepic" alt="Robert Kaiser">
+</div>
+</article>
+
+<article id="definition" data-title="Mozilla Community">
+<h1><span>Mozilla Community</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Centered around the
+    <mark><a href="https://www.mozilla.org/en-US/about/manifesto/">Mozilla Manifesto</a></mark>
+    and the Open Web</li>
+  <li><mark>Including the official organizations</mark> and supportive of them</li>
+  <li><mark>Larger</mark> than official projects and products</li>
+  <li>Powered and driven by <mark>volunteers</mark></li>
+</ul>
+<img src="mozcomm_people.jpg" class="slidepic" alt="Mozilla community">
+</div>
+</article>
+
+<article id="history" data-title="History">
+<h1><span>Then and Now</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li><mark>One of the earliest</mark> large FLOSS projects</li>
+  <li>Strong, growing group, many spawned side projects</li>
+  <li>With time, <mark>many competing projects</mark></li>
+  <li><mark>Tightening up</mark> Firefox development</li>
+  <li>Many technology <mark>experiments</mark> over time, most stopped again</li>
+  <li>Now, good groups in some areas (SUMO, MDN, L10n, ...)</li>
+  <li>Feels very <mark>splittered, unconnected</mark></li>
+  <li>Hard to motivate people to enage</li>
+</ul>
+<img src="rebelalliance.png" class="slidepic" alt="The Rebel Alliance">
+</div>
+</article>
+
+<article id="suggestions" data-title="Let's Get To It">
+<h1><span>What Now?</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Again, <mark>personal suggestions</mark> and ideas following</li>
+  <li>Not endorsed by anyone else</li>
+  <li><mark>Food for thought</mark>, not fully planned out</li>
+  <li>Civil discussions welcome, <mark>respect CPG</mark></li>
+  <li>So, let's get to it...</li>
+</ul>
+<img src="into_unknown.jpg" class="slidepic" alt="into the unknown">
+</div>
+</article>
+
+<article id="independence" data-title="Independence">
+<h1><span>Independence</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li><mark>Don't depend or rely</mark> on Mozilla support or official programs</li>
+  <li>Engage in activites you find interesting</li>
+  <li>Still <mark>support Manifesto</mark> and Open Web</li>
+  <li><mark>No contradiction</mark> to official activities</li>
+  <li>Engage others around you</li>
+</ul>
+<img src="windmill.jpg" class="slidepic" alt="wind mill">
+</div>
+</article>
+
+<article id="webxr" data-title="Mixed Reality">
+<h1><span>Mixed Reality - WebXR</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li><mark>Stay on the ball</mark> on WebXR projects</li>
+  <li><a href="https://mixedreality.mozilla.org/firefox-reality/">Firefox Reality</a>
+    headsets</li>
+  <li><mark>Multi-device</mark> web experiences</li>
+  <li><a href="https://hubs.mozilla.com/">Hubs</a> and other Metaverse
+    <mark>meetings</mark></li>
+  <li>XR <mark>beyond hype cycle</mark>, establishing as major tech</li>
+</ul>
+<img src="vrusermoz.jpg" class="slidepic" alt="VR user">
+</div>
+</article>
+
+<article id="spinoffs" data-title="Support Spin-Offs">
+<h1><span>Support Spin-Offs</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li><a href="https://webthings.io/">WebThings</a>,
+    <a href="https://coqui.ai/">Coqui</a>,
+    <a href="https://developer.kaiostech.com/">KaiOS</a>,
+    etc. are <mark>still around</mark></li>
+  <li>Recognize as still <mark>part of the community</mark></li>
+  <li><mark>Stay connected</mark>, work with them</li>
+  <li>Keep Mozilla and FLOSS <mark>spirit</mark> alive</li>
+</ul>
+<img src="railroad3way.jpg" class="slidepic" alt="railroad 3-way switch">
+</div>
+</article>
+
+<article id="new-tech" data-title="New Technologies">
+<h1><span>Investigate New Technologies</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Be <mark>eyes and ears</mark> of the movement</li>
+  <li>Learn interesting new tech <mark>before the hype</mark></li>
+  <li>Community <mark>can act faster</mark> than product organization</li>
+  <li>Look <mark>behind the hype</mark> at the actual tech</li>
+  <li><mark>Don't pre-judge</mark> from conservative POV</li>
+</ul>
+<img src="atomium.jpg" class="slidepic" alt="Atomium">
+</div>
+</article>
+
+<article id="decentralization" data-title="Decentralization">
+<h1><span>Foster Decentralization</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Move <mark>out of centralized silos</mark></li>
+  <li>Lobby for <mark>interoperability and Open Standards</mark></li>
+  <li>Push <mark>Matrix and similar systems</mark> where possible</li>
+  <li>Avoid centralized services, demand alternatives</li>
+</ul>
+<img src="streetnetwork.jpg" class="slidepic" alt="street network">
+</div>
+</article>
+
+<article id="blockchain" data-title="Blockchain and Web3">
+<h1><span>Community Blockchains and "Web3"</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Look beyond hype, <mark>openly approach and learn</mark></li>
+  <li>Many <mark>honest and open-minded</mark> players in that space</li>
+  <li><a href="https://ethereum.org/">Ethereum</a> community
+    <mark>shares a lot of values</mark> with Mozilla</li>
+  <li>E.g. Public-key-based login for websites</li>
+  <li>Big ecosystem, <mark>financial but also non-financial</mark> use cases</li>
+  <li>Side note:
+    "<a href="https://ethereum.org/en/energy-consumption/">Carbon/Energy problem</a>"
+    <a href="https://ethereum.org/en/eth2/merge/">gone soon</a></li>
+</ul>
+<img src="ethereum.png" class="slidepic" alt="Ethereum">
+</div>
+</article>
+
+<article id="communication" data-title="Communication">
+<h1><span>Communication Channel(s)</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Many <mark>splittered project-specific channels</mark></li>
+  <li>Need a <mark>common beacon</mark> and connector</li>
+  <li>Weekly <mark>condensed news</mark> from all over the community?</li>
+  <li>Maybe in a <mark>podcast</mark> form?</li>
+  <li>Happy to be involved, there, <mark>let's connect!</mark></li>
+</ul>
+<img src="missioncontrol.jpg" class="slidepic" alt="NASA Mission Control">
+</div>
+</article>
+
+<article id="outreach" data-title="Outreach">
+<h1><span>Outreach</span></h1>
+
+<div class="mainbox">
+<ul>
+  <li>Go to events and <mark>talk about it!</mark></li>
+  <li>Everything around Open Web and Manifesto</li>
+  <li><mark>Offline or online</mark></li>
+  <li>Tie it back to the Mozilla core</li>
+  <li><mark>Stand proud</mark> with Mozilla and community</li>
+  <li><mark>Spread the word!</mark></li>
+</ul>
+<img src="mozillatalks.jpg" class="slidepic" alt="Mozilla talks">
+</div>
+</article>
+
+<article id="end" data-title="The End">
+
+<div class="simplebox endslidecontainer">
+<h1 class="cent endslidetext"><span>Thank You.</span></h1>
+<h2 class="cent endslidetext"><span><a href="https://home.kairo.at/">https://home.kairo.at/</a></span></h2>
+<h3 class="cent endslidetext"><span><a href="https://mozilla.org/">https://mozilla.org/</a></span></h2>
+<img src="mozgroup.jpg" class="sshot endslidepic" alt="A big group of Mozillians">
+</div>
+</article>
+
+</body>
+</html>
diff --git a/fosdem2022/into_unknown.jpg b/fosdem2022/into_unknown.jpg
new file mode 100644 (file)
index 0000000..c0ebdd4
Binary files /dev/null and b/fosdem2022/into_unknown.jpg differ
diff --git a/fosdem2022/kairo.jpg b/fosdem2022/kairo.jpg
new file mode 100644 (file)
index 0000000..23ef9e0
Binary files /dev/null and b/fosdem2022/kairo.jpg differ
diff --git a/fosdem2022/kairo_heat.jpg b/fosdem2022/kairo_heat.jpg
new file mode 100644 (file)
index 0000000..51ff4d5
Binary files /dev/null and b/fosdem2022/kairo_heat.jpg differ
diff --git a/fosdem2022/missioncontrol.jpg b/fosdem2022/missioncontrol.jpg
new file mode 100644 (file)
index 0000000..f74ded2
Binary files /dev/null and b/fosdem2022/missioncontrol.jpg differ
diff --git a/fosdem2022/mozcomm_people.jpg b/fosdem2022/mozcomm_people.jpg
new file mode 100644 (file)
index 0000000..5e4f86d
Binary files /dev/null and b/fosdem2022/mozcomm_people.jpg differ
diff --git a/fosdem2022/mozgroup.jpg b/fosdem2022/mozgroup.jpg
new file mode 100644 (file)
index 0000000..ebec920
Binary files /dev/null and b/fosdem2022/mozgroup.jpg differ
diff --git a/fosdem2022/mozillatalks.jpg b/fosdem2022/mozillatalks.jpg
new file mode 100644 (file)
index 0000000..65585ef
Binary files /dev/null and b/fosdem2022/mozillatalks.jpg differ
diff --git a/fosdem2022/railroad3way.jpg b/fosdem2022/railroad3way.jpg
new file mode 100644 (file)
index 0000000..3f44d94
Binary files /dev/null and b/fosdem2022/railroad3way.jpg differ
diff --git a/fosdem2022/rebelalliance.png b/fosdem2022/rebelalliance.png
new file mode 100644 (file)
index 0000000..d3ab0ac
Binary files /dev/null and b/fosdem2022/rebelalliance.png differ
diff --git a/fosdem2022/slides.css b/fosdem2022/slides.css
new file mode 100644 (file)
index 0000000..e61b42f
--- /dev/null
@@ -0,0 +1,477 @@
+/**************************
+ * styles for talk slides *
+ *    by Robert Kaiser    *
+ *    <kairo@kairo.at>    *
+ *   (for FOSDEM 2013)    *
+ **************************/
+
+
+/***** base style *****/
+
+@font-face {
+  font-family: 'Open Sans';
+  src: url('template/OpenSans-Regular-webfont.woff');
+  font-weight: normal;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Open Sans';
+  src: url('template/OpenSans-Semibold-webfont.woff');
+  font-weight: bold;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Open Sans';
+  src: url('template/OpenSans-Italic-webfont.woff');
+  font-weight: normal;
+  font-style: italic;
+}
+
+@font-face {
+  font-family: 'Zilla Slab';
+  src: url('template/ZillaSlab-Regular.woff2');
+  font-weight: normal;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Zilla Slab';
+  src: url('template/ZillaSlab-Bold.woff2');
+  font-weight: bold;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Zilla Slab Highlight';
+  src: url('template/ZillaSlabHighlight-Regular.woff2');
+  font-weight: normal;
+  font-style: normal;
+}
+
+@font-face {
+  font-family: 'Zilla Slab Highlight';
+  src: url('template/ZillaSlabHighlight-Bold.woff2');
+  font-weight: bold;
+  font-style: normal;
+}
+
+html {
+  overflow: hidden; /* to make translations not paint scrollbars */
+  background: white;
+  height: 100%;
+}
+
+body {
+  margin: 0px;
+  padding: 0px;
+  border: 0px;
+  font-family: "Open Sans", sans-serif;
+  font-size: 2em;
+  color: black;
+  height: 100%;
+}
+
+ul {
+  padding-left: 1.2em;
+  margin-bottom: 0.5em;
+}
+
+ul:first-child,
+ul:last-child {
+  margin-top: 0;
+}
+
+#header {
+  height: 44px;
+  position: relative;
+  font-family: "Zilla Slab", monospace;
+  border-bottom: 3px solid black;
+}
+
+#headerlogo {
+  position: absolute;
+  display: block;
+  right: 2px;
+  top: 2px;
+  overflow: hidden;
+  height: 40px;
+  width: 140px;
+  font-size: 32px;
+  font-weight: bold;
+  color: white;
+  background-color: black;
+  text-align: center;
+}
+
+#header-text {
+  position: relative;
+  top: 5px;
+  left: 25px;
+  width: 200px;
+  width: -moz-fit-content;
+  width: -webkit-fit-content;
+  width: fit-content;
+  padding: 0 5px;
+  font-size: 20px;
+  font-weight: bold;
+  color: white;
+  background-color: black;
+}
+
+#header-text.neartime {
+  color: #00FFFF;
+}
+
+#header-text.ontime {
+  color: #54FFBD;
+}
+
+#header-text.overtime {
+  color: #FF4F5E;
+}
+
+#subheader-text {
+  color: black;
+  position: relative;
+  top: 3px;
+  left: 25px;
+  width: calc(100% - 50px);
+  padding: 0 5px;
+  font-size: 10px;
+}
+
+#slidenav {
+  position: absolute;
+  right: 200px;
+  top: 15px;
+  font-family: "Zilla Slab", monospace;
+  font-size: 10px;
+}
+
+#slidenav a:link,
+#slidenav a:visited {
+  color: black;
+}
+
+#slidenav a:hover,
+#slidenav a:active {
+  color: #959595;
+}
+
+#slidenav .nolink {
+  color: #E7E5E2;
+}
+
+article {
+  position: absolute;
+  width: 100%;
+  /* header is 40px, 7px to have a bit of distance,
+   * 3px height-reducing on the bottom for safety */
+  top: 47px;
+  height: calc(100% - 50px);
+  overflow: auto;
+
+  transition-property: transform, opacity;
+  transition-duration: 3s;
+  transition-timing-function: ease;
+  transform-origin: center 5em;
+
+  opacity: 0;
+/*
+  transform: translate(-100%, 0);
+*/
+/*
+  transform: scale(0.1) rotate(360deg) translate(-200%, 0);
+*/
+  transform: scale(0.1) translate(-400%, 0);
+}
+
+article[aria-selected="true"] {
+  opacity: 1;
+  transform: scale(1) rotate(0deg) translate(0, 0);
+}
+
+article[aria-selected="true"] ~ article {
+  opacity: 0;
+/*
+  transform: translate(100%, 0);
+*/
+/*
+  transform: scale(0.1) rotate(-360deg) translate(200%, 0);
+*/
+  transform: scale(0.1) translate(400%, 0);
+}
+
+/***** headers *****/
+
+h1, h2, h3, h4 {
+  margin: 0.5em 0;
+  font-family: "Zilla Slab", monospace;
+  font-weight: bold;
+  color: black;
+  text-align: center;
+}
+
+h1 {
+  font-family: "Zilla Slab Highlight", "Zilla Slab", monospace;
+  margin-top: 0.5em;
+  font-size: 2.2em;
+}
+
+h1 span {
+  font-family: "Zilla Slab", monospace;
+  background-color: black;
+  color: white;
+  padding: 0 10px;
+}
+
+h2 {
+  font-size: 1.3em;
+}
+
+h3 {
+  font-size: 1.1em;
+}
+
+h4 {
+  font-size: 1em;
+  text-align: left;
+}
+
+/***** boxes *****/
+
+.simplebox,
+.mainbox {
+  padding: 0.5em;
+}
+
+.simplebox,
+.mainbox,
+.captionedbox {
+  margin: 1em;
+  margin-bottom: 0;
+  background-color: white;
+  /* box-shadow: 0 0 0 1px black inset; */
+  /* border-bottom: 1px solid black; */
+}
+
+.captionedbox {
+  padding: 0px;
+}
+
+.captionedbox-content {
+  margin: 0;
+  padding: 0.5em;
+  border: 0px;
+  border-top: 1px solid black;
+}
+
+.captionedbox-caption {
+  margin: 0;
+  padding: 0.5em;
+  font-weight: bold;
+}
+
+.mainbox {
+  display: flex;
+}
+
+.mainbox > * {
+  flex-grow: 1;
+}
+
+.simplebox + .simplebox,
+.simplebox + .mainbox,
+.simplebox + .captionedbox,
+.mainbox + .simplebox,
+.mainbox + .mainbox,
+.mainbox + .captionedbox,
+.captionedbox + .simplebox,
+.captionedbox + .mainbox,
+.captionedbox + .captionedbox {
+  border-top: 1px solid black;
+}
+
+/***** misc formatting *****/
+
+mark {
+  font-family: "Zilla Slab", monospace;
+  font-weight: bold;
+  color: black;
+  background-color: #FFF44F;
+}
+
+.decofont {
+  font-family: "Zilla Slab", monospace;
+}
+
+.border {
+  border: 1px solid black;
+  padding: 0.5em;
+}
+
+.sshot {
+  max-width: 100%;
+  max-height: 20em;
+  /* box-shadow: black 1px 1px 3px 2px; */
+}
+
+.slidepic {
+  float: right;
+  margin-left: .5em;
+  max-height: 20em;
+  max-width: 25%;
+}
+
+.mainbox > .slidepic {
+  flex-grow: 0;
+}
+
+.largetext {
+  font-size: 2em;
+}
+
+ul > li {
+  margin: 0.5em 0;
+}
+
+.columns2 {
+  -moz-columns: 2;
+}
+
+ul.nobullets > li {
+  list-style-type: none;
+}
+
+ul.arrows > li {
+  list-style-type: none;
+}
+ul.arrows > li:before {
+  content: "\21d2\20"; /* \2192 would be single thin arrow, hex 20 is space */
+}
+
+.cent {
+  text-align: center;
+}
+
+.topmargin {
+  margin-top: 0.5em;
+}
+
+.akey {
+  text-decoration: underline;
+}
+
+.hidden {
+  display: none;
+}
+
+a:link, a:visited { color: #00458B; text-decoration: none; }
+a:hover, a:active { color: #959595; text-decoration: underline; }
+
+mark a:link, mark a:visited { color: #005E5E; }
+mark a:hover, mark a:active { color: #005E5E; }
+
+h1 span a:link, h1 span a:visited,
+h1 span a:hover, h1 span a:active { color: white; }
+
+pre { margin: 0; }
+
+/***** small stuff *****/
+
+small,
+.small {
+  font-size: 0.75em;
+}
+
+ul.small,
+.small ul {
+  padding: 0px;
+  border: 0px;
+  margin: 0px 0px 0px 1em;
+}
+
+ul.small > li
+.small ul > li {
+  margin: 0px;
+  padding: 0px;
+  border: 0px;
+}
+
+/***** specific slides *****/
+
+/* start slide */
+.ccinline {
+  border-width: 0;
+  vertical-align: bottom;
+  height: 1.75em;
+}
+
+/* disclaimer */
+.disclaimer {
+  border: .5em solid #FF6600;
+  padding: .5em;
+}
+
+/* end slide */
+.endslidecontainer {
+  position: relative;
+}
+
+.endslidepic {
+  width: 100%;
+  max-height: initial;
+  z-index: 1;
+}
+
+.endslidetext {
+  position: absolute;
+  width: calc(100% - 2rem);
+  z-index: 3;
+}
+
+h1.endslidetext {
+/*  color: white; */
+  font-size: 2.5em;
+}
+
+h2.endslidetext,
+h3.endslidetext {
+  font-size: 1.5em;
+}
+
+h2.endslidetext > span,
+h3.endslidetext > span {
+  background-color: white;
+  padding: 0 10px;
+}
+
+.endslidetext:first-child {
+  top: 3rem;
+}
+
+.endslidetext:nth-child(2) {
+  top: 22rem;
+}
+
+.endslidetext:nth-child(3) {
+  top: 33rem;
+}
+
+@media (min-resolution: 1.35dppx) {
+  h2.endslidetext,
+  h3.endslidetext {
+    font-size: 1.2em;
+  }
+  .endslidetext:first-child {
+    top: .5rem;
+  }
+  .endslidetext:nth-child(2) {
+    top: 9rem;
+  }
+  .endslidetext:nth-child(3) {
+    top: 14rem;
+  }
+}
diff --git a/fosdem2022/slides.js b/fosdem2022/slides.js
new file mode 100644 (file)
index 0000000..46f61b3
--- /dev/null
@@ -0,0 +1,233 @@
+/******************************
+ * JavaScript for talk slides *
+ *      by Robert Kaiser      *
+ *      <kairo@kairo.at>      *
+ *     (for FOSDEM 2011)      *
+ ******************************/
+
+var slides = {};
+var articleNodes;
+var currentSlide;
+var currentIdx;
+var defaultIdx = 1; // set to slide index to show by default
+var firstIdx = 2; // set no value if to use first available
+var lastIdx; // set no value if to use last available
+
+var pageTitle, headerText, subHeaderText;
+var navPrev, navNext, navPrevNolink, navNextNolink;
+
+// Slide timer - color variation of headerText
+// Time per slide is total presentation length divided by number of slides
+// except start and end slide.
+var presLengthSeconds = 30 * 60;
+var slideStart, timerMSec;
+
+// Called when the document has been loaded.
+window.onload = function() {
+  pageTitle = document.getElementsByTagName("title")[0];
+  headerText = document.getElementById("header-text");
+  subHeaderText = document.getElementById("subheader-text");
+  navPrev = document.getElementById("nav-prev");
+  navNext = document.getElementById("nav-next");
+  navPrevNolink = document.getElementById("nav-prev-nolink");
+  navNextNolink = document.getElementById("nav-next-nolink");
+  articleNodes = document.getElementsByTagName("article");
+
+  if (!firstIdx)
+    firstIdx = 0;
+  if (!lastIdx)
+    lastIdx = articleNodes.length - 1;
+  var slideSeconds = presLengthSeconds / (lastIdx - firstIdx);
+  timerMSec = 1000 * (slideSeconds / 3);
+
+  // Get a list of all slides (articles).
+  subHeaderText.textContent = articleNodes.length + " slides...";
+  for (var i = 0; i < articleNodes.length; ++i) {
+    subHeaderText.textContent = "Indexing slide " + i + " / " + articleNodes.length;
+    if (!articleNodes[i].id)
+      articleNodes[i].id = "slide_" + i;
+
+    slides[articleNodes[i].id] = {
+        "idx": i,
+        "name": articleNodes[i].id,
+        "title": articleNodes[i].dataset.title ? articleNodes[i].dataset.title : articleNodes[i].id,
+        "obj": articleNodes[i],
+        "timeSeconds": articleNodes[i].dataset.seconds ? articleNodes[i].dataset.seconds : slideSeconds,
+    };
+
+    if (location.hash.length &&
+        (location.hash == "#" + articleNodes[i].id || location.hash == "#" + i)) {
+      articleNodes[i].setAttribute("aria-selected", "true");
+      currentSlide = slides[articleNodes[i].id];
+      currentIdx = i;
+    }
+  }
+
+  if (!currentSlide) {
+    currentIdx = defaultIdx;
+    currentSlide = slides[articleNodes[currentIdx].id];
+    currentSlide.obj.setAttribute("aria-selected", "true");
+    location.hash = "#" + currentSlide.name;
+  }
+  updateDisplay();
+  document.getElementById("hidesdesc").onclick = function(event) {
+    document.getElementById("slidesdesc").classList.toggle("hidden");
+  }
+}
+
+// Called when the hash part of the location changes.
+function locationHashChanged() {
+  if (location.hash.length > 1) {
+    var hashtag = location.hash.substring(1);
+    // If not a number, treat as ID
+    if (isNaN(hashtag) && slides[hashtag]) {
+      currentSlide.obj.removeAttribute("aria-selected");
+      currentSlide = slides[hashtag];
+      currentIdx = currentSlide.idx;
+      currentSlide.obj.setAttribute("aria-selected", "true");
+      updateDisplay();
+    }
+    else if (articleNodes[hashtag]) {
+      currentSlide.obj.removeAttribute("aria-selected");
+      currentIdx = hashtag;
+      currentSlide = slides[articleNodes[currentIdx].id];
+      currentSlide.obj.setAttribute("aria-selected", "true");
+      updateDisplay();
+    }
+  }
+}
+window.onhashchange = locationHashChanged;
+
+// Update the display after we updated what slide is shown.
+function updateDisplay() {
+  if (currentIdx >= firstIdx && currentIdx <= lastIdx &&
+      currentSlide.name != "toc")
+    subHeaderText.textContent = (currentIdx - firstIdx + 1) + "/" +
+                                (lastIdx - firstIdx + 1) + " - " +
+                                currentSlide.title;
+  else
+    subHeaderText.textContent = currentSlide.title;
+  pageTitle.textContent = headerText.textContent + ": " + currentSlide.title;
+  if (currentIdx > firstIdx && currentSlide.name != "toc") {
+    navPrev.hidden = false;
+    navPrev.href = "#" + articleNodes[currentIdx - 1].id;
+    navPrevNolink.hidden = true;
+  }
+  else {
+    navPrev.hidden = true;
+    navPrevNolink.hidden = false;
+  }
+  if (currentIdx < lastIdx && currentSlide.name != "toc") {
+    navNext.hidden = false;
+    navNext.href = "#" + articleNodes[currentIdx + 1].id;
+    navNextNolink.hidden = true;
+  }
+  else {
+    navNext.hidden = true;
+    navNextNolink.hidden = false;
+  }
+  headerText.className = "";
+  slideStart = new Date();
+  timerMSec = 1000 * (currentSlide.timeSeconds / 3);
+  if (currentSlide.name == "toc")
+    createTOC();
+  else
+    setTimeout(timerFired, timerMSec);
+}
+
+// Create TOC list.
+function createTOC() {
+ var list = document.getElementById("toc-list");
+ if (!list.getElementsByTagName("li").length) {
+   for (var slide in slides) {
+     if (slide != "toc") {
+       var item = document.createElement("li");
+       var link = document.createElement("a");
+       var slideHeaders = slides[slide].obj.getElementsByTagName("h1");
+       if (slideHeaders.length)
+         link.textContent = slideHeaders[0].textContent;
+       else
+         link.textContent = slides[slide].title;
+       link.href = "#" + slides[slide].name;
+       item.appendChild(link);
+       list.appendChild(item);
+     }
+   }
+ }
+}
+
+// Do timed color variation on slides.
+function timerFired() {
+  var slideCurrent = new Date();
+  var secondsDiff = Math.round((slideCurrent.getTime() - slideStart.getTime()) / 1000);
+  if (secondsDiff >= currentSlide.timeSeconds) {
+    headerText.className = "overtime";
+  }
+  else if (secondsDiff >= Math.round(2 * currentSlide.timeSeconds / 3)) {
+    headerText.className = "ontime";
+    setTimeout(timerFired, timerMSec);
+  }
+  else if (secondsDiff >= Math.round(currentSlide.timeSeconds / 3)) {
+    headerText.className = "neartime";
+    setTimeout(timerFired, timerMSec);
+  }
+  else {
+    // We should never come here, but if we do, go into a 100ms loop until we get over the upcoming step.
+    setTimeout(timerFired, 100);
+  }
+}
+
+// Keyboard/click nav functionality, mostly inherited from FOSDEM 2007.
+(function() {
+  function go(where) {
+    where = where || "next";
+    var navElem = document.getElementById("nav-" + where);
+    if (!navElem.hidden)
+      window.location.href = navElem.href;
+  }
+
+  function handleClick(e) {
+    e = e || event;
+    var target = (window.event) ? e.srcElement : e.target;
+    if (e.which == 1 && target.nodeName != "A" && target.nodeName != "VIDEO" && !target.classList.contains("noadvance"))
+      go("next");
+  }
+
+  function handleKeyPress(e) {
+    e = e || event;
+    switch (e.key) {
+      // See https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode#Constants_for_keyCode_value
+      case "ArrowLeft":
+      case "ArrowDown":
+      case "Left": // non-standard, old browsers
+      case "Down": // non-standard, old browsers
+      case "PageDown":
+      case "P":
+      case "p":
+      case "H": //8bitdo Zero "X"
+      case "h": //8bitdo Zero "X"
+        go("prev"); break;
+      case "ArrowRight":
+      case "ArrowUp":
+      case "Right": // non-standard, old browsers
+      case "Up": // non-standard, old browsers
+      case "PageUp":
+      case "N":
+      case "n":
+      case "J": //8bitdo Zero "B"
+      case "j": //8bitdo Zero "B"
+        go("next"); break;
+      case "Home":
+      case "I": //8bitdo Zero "Y"
+      case "i": //8bitdo Zero "Y"
+        go("start"); break;
+      case "End":
+      case "G": //8bitdo Zero "A"
+      case "g": //8bitdo Zero "A"
+        go("toc"); break;
+    }
+  }
+
+  window.onclick = handleClick;
+  window.onkeydown = handleKeyPress;
+})();
diff --git a/fosdem2022/streetnetwork.jpg b/fosdem2022/streetnetwork.jpg
new file mode 100644 (file)
index 0000000..8c5a573
Binary files /dev/null and b/fosdem2022/streetnetwork.jpg differ
diff --git a/fosdem2022/template/OpenSans-Italic-webfont.woff b/fosdem2022/template/OpenSans-Italic-webfont.woff
new file mode 100644 (file)
index 0000000..1ed8ab9
Binary files /dev/null and b/fosdem2022/template/OpenSans-Italic-webfont.woff differ
diff --git a/fosdem2022/template/OpenSans-Regular-webfont.woff b/fosdem2022/template/OpenSans-Regular-webfont.woff
new file mode 100644 (file)
index 0000000..bd0f824
Binary files /dev/null and b/fosdem2022/template/OpenSans-Regular-webfont.woff differ
diff --git a/fosdem2022/template/OpenSans-Semibold-webfont.woff b/fosdem2022/template/OpenSans-Semibold-webfont.woff
new file mode 100644 (file)
index 0000000..3a78f75
Binary files /dev/null and b/fosdem2022/template/OpenSans-Semibold-webfont.woff differ
diff --git a/fosdem2022/template/ZillaSlab-Bold.woff2 b/fosdem2022/template/ZillaSlab-Bold.woff2
new file mode 100644 (file)
index 0000000..bf96f4d
Binary files /dev/null and b/fosdem2022/template/ZillaSlab-Bold.woff2 differ
diff --git a/fosdem2022/template/ZillaSlab-Regular.woff2 b/fosdem2022/template/ZillaSlab-Regular.woff2
new file mode 100644 (file)
index 0000000..ed653eb
Binary files /dev/null and b/fosdem2022/template/ZillaSlab-Regular.woff2 differ
diff --git a/fosdem2022/template/ZillaSlabHighlight-Bold.woff2 b/fosdem2022/template/ZillaSlabHighlight-Bold.woff2
new file mode 100644 (file)
index 0000000..8414a16
Binary files /dev/null and b/fosdem2022/template/ZillaSlabHighlight-Bold.woff2 differ
diff --git a/fosdem2022/template/ZillaSlabHighlight-Regular.woff2 b/fosdem2022/template/ZillaSlabHighlight-Regular.woff2
new file mode 100644 (file)
index 0000000..a166fbe
Binary files /dev/null and b/fosdem2022/template/ZillaSlabHighlight-Regular.woff2 differ
diff --git a/fosdem2022/template/mozilla_logo2017.svg b/fosdem2022/template/mozilla_logo2017.svg
new file mode 100644 (file)
index 0000000..08f06e0
--- /dev/null
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 20.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+        viewBox="0 0 360 102.8" style="enable-background:new 0 0 360 102.8;" xml:space="preserve">
+<style type="text/css">
+       .st0{fill:#FFFFFF;}
+</style>
+<g>
+       <rect y="-0.2" width="360" height="102.9"/>
+       <path class="st0" d="M343.8,73.7c-0.7,0.2-1.3,0.3-1.9,0.3c-2.1,0-3.1-0.9-3.1-3.5V51c0-10.3-8.2-15.3-17.9-15.3
+               c-7.4,0-11.4,0.9-19.3,4.1L300,50.2l10.3,1.1l1.5-5.1c2.1-1.1,4.2-1.3,6.9-1.3c7.3,0,7.4,5.5,7.4,10.1v1.5
+               c-2.3-0.3-4.9-0.4-7.4-0.4c-10.3,0-21,2.6-21,13.7c0,9.4,7.4,12.9,13.9,12.9c7.3,0,11.9-4.4,14.5-9c0.6,5.5,3.9,9,9.9,9
+               c2.8,0,5.7-0.8,8.1-2.1L343.8,73.7z M316.2,73.4c-3.9,0-5.3-2.3-5.3-5.2c0-4.9,4-6.2,8.6-6.2c2.1,0,4.4,0.3,6.5,0.6
+               C325.7,70.1,320.8,73.4,316.2,73.4z M298.9,12.9l-19.5,68.7h-12.7l19.5-68.7H298.9z M272.7,12.9l-19.5,68.7h-12.7L260,12.9H272.7z
+                M218.7,36.6h13.5v16.2h-13.5V36.6z M218.7,65.5h13.5v16.2h-13.5V65.5z M199,64.9l10.2,1l-2.8,15.8h-39.3l-1.3-6.8l24.8-28.5h-14.1
+               l-2,7l-9.3-1l1.6-15.8h39.5l1,6.8l-25,28.5h14.6L199,64.9z M134.5,35.7c-16.2,0-24.2,10.9-24.2,24.1c0,14.4,9.6,22.9,23.5,22.9
+               c14.4,0,24.8-9.1,24.8-23.5C158.6,46.6,150.7,35.7,134.5,35.7z M134.2,72.7c-7,0-10.6-6-10.6-13.8c0-8.5,4.1-13.4,10.7-13.4
+               c6.1,0,11,4.1,11,13.2C145.3,67.4,140.9,72.7,134.2,72.7z M98.7,71.8h6v9.8H85.9V56.3c0-7.8-2.6-10.8-7.7-10.8
+               c-6.2,0-8.7,4.4-8.7,10.7v15.7h6v9.8H56.6V56.3c0-7.8-2.6-10.8-7.7-10.8c-6.2,0-8.7,4.4-8.7,10.7v15.7h8.6v9.8H21.4v-9.8h6V46.4h-6
+               v-9.8h18.9v6.8c2.7-4.8,7.4-7.7,13.7-7.7c6.5,0,12.5,3.1,14.7,9.7c2.5-6,7.6-9.7,14.7-9.7c8.1,0,15.5,4.9,15.5,15.6V71.8z"/>
+</g>
+</svg>
diff --git a/fosdem2022/vrusermoz.jpg b/fosdem2022/vrusermoz.jpg
new file mode 100644 (file)
index 0000000..d623c15
Binary files /dev/null and b/fosdem2022/vrusermoz.jpg differ
diff --git a/fosdem2022/windmill.jpg b/fosdem2022/windmill.jpg
new file mode 100644 (file)
index 0000000..557a257
Binary files /dev/null and b/fosdem2022/windmill.jpg differ
index 3cf31904d4fe3ee3bf6e34bba69c15248693b77d..c93d847770bd54c2a057f35000ed7ff346a49a97 100755 (executable)
@@ -49,7 +49,7 @@
 <div class="captionedbox-content small">
 <ul class="small" id="slidesdesc">
   <li>Created for a presentation at <a href="https://fossxr.dev/">FOSS XR
 <div class="captionedbox-content small">
 <ul class="small" id="slidesdesc">
   <li>Created for a presentation at <a href="https://fossxr.dev/">FOSS XR
-    Conference</a> in Amsterdam, Netherlands.</li>
+    Conference 2019</a> in Amsterdam, Netherlands.</li>
   <li>Written in HTML 5 with CSS 3 and JavaScript.</li>
   <li>Navigation via links on all slides, via access keys
    (e.g. "n"/Alt+Shift+N for "next") or back/forward arrow keys</li>
   <li>Written in HTML 5 with CSS 3 and JavaScript.</li>
   <li>Navigation via links on all slides, via access keys
    (e.g. "n"/Alt+Shift+N for "next") or back/forward arrow keys</li>
index c2ad2f94303457a8dbd4b6ed4d37345008c33629..2d784cd44b5d266ece5a858a442acc20ebc24b8b 100644 (file)
 </tr>
 </thead>
 <tbody>
 </tr>
 </thead>
 <tbody>
-<!-- tr>
+<tr>
+  <td>FOSDEM 2022</td>
+  <td><a href="fosdem2022/">Suggestions for a Stronger Mozilla Community: Personal Thoughts and Ideas for Possible Improvements</a></td>
+  <td>English</td>
+  <td><a href="https://fosdem.org/2022/schedule/event/mozilla_suggestions_community/">overview</a><!-- ,
+      <a href="https://video.fosdem.org/2022/D.mozilla/mozilla_suggestions_community.mp4">video</a --></td>
+</tr>
+<tr>
+  <td>FOSDEM 2021</td>
+  <td><a href="fosdem2021/">Mozilla History: 20+ Years And Counting</a></td>
+  <td>English</td>
+  <td><a href="https://fosdem.org/2021/schedule/event/mozilla_history_20_years_and_counting/">overview</a>,
+      <a href="https://video.fosdem.org/2021/D.mozilla/mozilla_history_20_years_and_counting.mp4">video</a></td>
+</tr>
+<tr>
   <td>FOSS XR Conference 2019</td>
   <td><a href="fossxr2019/">VR Map: WebXR with OpenStreetMap Data</a></td>
   <td>English</td>
   <td></td>
   <td>FOSS XR Conference 2019</td>
   <td><a href="fossxr2019/">VR Map: WebXR with OpenStreetMap Data</a></td>
   <td>English</td>
   <td></td>
-</tr -->
+</tr>
 <tr>
   <td>Mozilla Tech Speakers Meetup 2019</td>
   <td><a href="tsmeetup201909/">VR Space: Creating A Solar System With WebXR</a></td>
 <tr>
   <td>Mozilla Tech Speakers Meetup 2019</td>
   <td><a href="tsmeetup201909/">VR Space: Creating A Solar System With WebXR</a></td>