#LyX 2.2 created this file. For more info see http://www.lyx.org/
\lyxformat 508
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass beamer
\begin_preamble
%\usetheme{lankton-keynote}
\usetheme{Singapore}
\setbeamercovered{transparent}
% or whatever (possibly just delete it)
\usepackage{fontspec}
%\newfontface\cjk{ShanHeiSun-Uni}
%\newfontface\cjk{BousungEG-Light-GB}
\newfontface\cjk{GBZenKai-Medium}
%\newfontface\cjk{ZenKai-Medium}
%\newfontface\cjk{ShanHeiSun-Light}
%\newfontface\cjk{ZenKai-Uni}
\end_preamble
\use_default_options false
\maintain_unincluded_children false
\language ngerman
\language_package auto
\inputencoding utf8x
\fontencoding global
\font_roman "default" "default"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\graphics default
\default_output_format pdf5
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize 12
\spacing single
\use_hyperref false
\papersize default
\use_geometry true
\use_package amsmath 2
\use_package amssymb 2
\use_package cancel 1
\use_package esint 0
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 0
\index Stichwortverzeichnis
\shortcut idx
\color #008000
\end_index
\secnumdepth 2
\tocdepth 2
\paragraph_separation indent
\paragraph_indentation default
\quotes_language german
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header
\begin_body
\begin_layout Title
MINOΣ2: GUI für net
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
kern-1ex
\backslash
lower1.8ex
\backslash
hbox{
\end_layout
\end_inset
\begin_inset Graphics
filename net2o-logo.pdf
lyxscale 10
scale 7
\end_inset
\begin_inset ERT
status open
\begin_layout Plain Layout
}
\backslash
kern-.5ex
\end_layout
\end_inset
\begin_inset Argument 1
status open
\begin_layout Plain Layout
MINOΣ2
\end_layout
\end_inset
\end_layout
\begin_layout Subtitle
Widgets und Layout Engine
\end_layout
\begin_layout Author
Bernd Paysan
\end_layout
\begin_layout Date
Forth–Tagung 2017, Kalkar Wunderland
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
addtobeamertemplate{headline}{}{
\backslash
vbox{
\backslash
vspace{3ex}
\backslash
hbox to
\backslash
paperwidth{
\backslash
hfill
\end_layout
\end_inset
\begin_inset Graphics
filename net2o-logo.pdf
lyxscale 5
scale 5
\end_inset
\begin_inset ERT
status open
\begin_layout Plain Layout
~~~}}}
\end_layout
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Übersicht
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents
\end_inset
\end_layout
\end_deeper
\begin_layout Section
Motivation
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Motivation
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
\align center
\begin_inset Graphics
filename bad-gateway.png
width 50text%
\end_inset
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
4 Jahre nach Snowden
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
Was hat sich seitdem geändert?
\end_layout
\begin_layout Pause
\end_layout
\begin_layout Description
Politik
\end_layout
\begin_deeper
\begin_layout Description
Postfaktisch/Hate
\begin_inset space ~
\end_inset
Speech als Ausrede für Zensurgesetze
\end_layout
\begin_layout Description
Crypto
\begin_inset space ~
\end_inset
Wars
\begin_inset space ~
\end_inset
4.0 Mal wieder werden Cryptoverbote diskutiert
\end_layout
\begin_layout Description
Legalize
\begin_inset space ~
\end_inset
it (die Totalüberwachung)
\end_layout
\begin_layout Description
Kill
\begin_inset space ~
\end_inset
the
\begin_inset space ~
\end_inset
link LG Humbug möchte Störerhaftung für den Link
\end_layout
\begin_layout Description
Datenschutz Niemand wird gezwungen, das Internet zu nutzen (
\noun on
Jim Sensenbrenner
\noun default
)
\end_layout
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Konkurrenz sieht sich Stasi–artiger Zersetzung ausgesetzt (Das Tor–Projekt)
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Lösungen net2o wird langsam benutzbar (
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
reflectbox{
\end_layout
\end_inset
em rof skrow
\begin_inset ERT
status open
\begin_layout Plain Layout
}
\end_layout
\end_inset
)
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Ausblick aus 2013
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout FrameSubtitle
Diese Präsentation ist mit \SpecialChar LaTeX
Beamer gerendert\SpecialChar ldots
\end_layout
\begin_layout Itemize
Die nächste Präsentation muss komplett in MINOΣ2 gerendert sein
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Texte und Videos müssen über net2o geholt werden, und nicht schon vorbereitet
auf dem Gerät sein
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Dazu fehlt noch eine Typesetting–Engine mit Boxes und Glues, Absatzumbruch
und Silbentrennung
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Viel weniger Klassen als in MINOΣ — dafür dann mehr Objekte
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Neben der hbox und vbox noch eine zbox für übereinander gestapeltes
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Animationen integriert
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Die einzelnen GLSL–Programme müssen in einem Programm sein, mit Switch–Statement
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Section
Fortschritt beim Protokoll
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Einschub: Fortschritt beim Protokoll
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
chat Läuft stabil, Synchronisation des Logs funktioniert
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Versionskontrolle Läuft für kleine Testprojekte, Syncen größerer Projekte
geht noch nicht
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Color
\begin_inset space ~
\end_inset
QR–Code
\begin_inset space ~
\end_inset
scannen zum Keys austauschen geht
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Großer
\begin_inset space ~
\end_inset
Firewall Test liefert 300kB/s statt 80kB/s bei SSH, Dateiübertragung bleibt
noch manchmal hängen
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Sync um mehrere Computer zu syncen (RSN)
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Audio/Video
\begin_inset space ~
\end_inset
Chat In Echtzeit Daten streamen (RSN)
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Color QR
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
Zum einfachen Schlüsselaustausch: Scanner für farbige QR--Codes
\end_layout
\begin_layout Standard
\align center
\lang english
\begin_inset Graphics
filename colorqr2.png
height 60theight%
\end_inset
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Einfach installierbare Versionen
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
Alles hier beschrieben:
\begin_inset Flex URL
status open
\begin_layout Plain Layout
https://fossil.net2o.de/net2o/doc/trunk/wiki/get-it.md
\end_layout
\end_inset
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_layout Pause
\end_layout
\begin_layout Description
Debian Mit eigenem Debian–Repository einfach aktuell zu halten
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Windows setup.exe ohne Auto–Update
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Android Derzeit nur als Teil der Gforth–App
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Sourcen Wer nur selbstcompiliertem traut, oder einen Mac hat\SpecialChar ldots
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Versionskontrolle: Details
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Itemize
Patches werden mit bdelta berechnet
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Patchformat: { Insert
\begin_inset Formula $\langle$
\end_inset
String
\begin_inset Formula $\rangle$
\end_inset
, Seek, Copy }*
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Versionen werden als Patchset (mit Vorgänger) oder Snapshot (ohne) abgespeichert
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Patchset–Format: Einlesen aller über Hash referenzierter Quellen, Patch,
'rausschreiben der geänderten Dateien
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Itemize
Patchsets werden von einer Chat–Message in einem Chatlog referenziert
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Section
MINOΣ2 Widgets
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
MINOΣ2 vs.
MINOΣ
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Description
Rendering OpenGL (ES) statt Xlib, später auch Vulkan–Backend geplant
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Koordinaten Single Float statt Integer, Ursprung links unten (statt oben)
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Typesetting Boxes&Glues viel näher an \SpecialChar LaTeX
— Ober- und Unterlängen, Glues können
auch schrumpfen, nicht nur wachsen
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Objekt–System Mini–OOF2 statt BerndOOF
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
Klassenzahl Viel weniger Klassen, viel mehr Kombination durch Zusammensetzen
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
MINOΣ2 Widgets
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
Grundprinzip ist ein Lego–artiges Zusammenstecken von sehr einfachen Komponenten
\end_layout
\begin_layout Pause
\end_layout
\begin_layout Description
actor Basisklasse, die auf alle Aktionen reagiert
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
widget Basisklasse für alle sichtbaren Objekte
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
glue Dimensionierung für flexible Objekte (nach oben, zur Seite, nach unten)
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
tile Farbige Fläche
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
frame Farbige Fläche mit Rändern
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
text Text–Element
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
icon Bild aus einer Icons–Textur (TBD)
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
image Großes Bild (TBD)
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
MINOΣ2 Boxes
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
Wie bei \SpecialChar LaTeX
: Boxes, um Widgets anzuordnen
\end_layout
\begin_layout Pause
\end_layout
\begin_layout Description
hbox Horizontale Box, ausgerichtet auf die Grundlinie
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
vbox Vertikale Box, Mindestabstand ein Baselineskip
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
zbox Stapel mehrere Boxen übereinander
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
grid Box mit freier Anordnung der Kinder (TBD)
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Standard
Es wird noch weitere Varianten geben, die Tabellen und umgebrochene Absätze
ermöglichen
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
MINOΣ2 Displays
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
Rendern in verschiedene Arten von Displays (TBD)
\end_layout
\begin_layout Pause
\end_layout
\begin_layout Description
texture In eine Textur, die dann als Bild verwendet wird
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
display Auf das normale Display
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
viewport In einen Ausschnitt des Displays
\end_layout
\end_deeper
\begin_layout Standard
\begin_inset Separator parbreak
\end_inset
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Draw–Calls minimieren
\end_layout
\end_inset
\end_layout
\begin_deeper
\begin_layout Standard
OpenGL möchte möglichst wenige Draw–Calls pro Durchgang, also werden verschieden
e Contexte stapelweise gezeichnet und mit einem Draw–Call abgesetzt
\end_layout
\begin_layout Pause
\end_layout
\begin_layout Description
init Initialisierungs-Runde
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
bg Hintergrund–Runde
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
icon Ausschnitte aus der Icon–Textur
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
thumbnail Ausschnitte aus der Thumbnail–Textur
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
image Verschiedene Bilder mit einem Draw–Call pro Bild
\end_layout
\begin_deeper
\begin_layout Pause
\end_layout
\end_deeper
\begin_layout Description
text Buchstaben aus der Buchstaben–Textur
\end_layout
\end_deeper
\begin_layout Section*
\start_of_appendix
Appendix
\end_layout
\begin_layout Subsection*
Literatur&Links
\end_layout
\begin_layout Frame
\begin_inset Argument 4
status open
\begin_layout Plain Layout
Literatur&Links
\end_layout
\end_inset
\begin_inset Separator latexpar
\end_inset
\end_layout
\begin_deeper
\begin_layout Bibliography
\labelwidthstring Literaturverzeichnis
\begin_inset CommandInset bibitem
LatexCommand bibitem
key "net2o"
\end_inset
\noun on
Bernd Paysan
\noun default
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
newblock
\end_layout
\end_inset
\emph on
net2o fossil repository
\emph default
\begin_inset ERT
status collapsed
\begin_layout Plain Layout
\backslash
newblock
\end_layout
\end_inset
\begin_inset Flex URL
status open
\begin_layout Plain Layout
http://fossil.net2o.de/net2o/
\end_layout
\end_inset
\end_layout
\end_deeper
\end_body
\end_document