Check-in [d633a07f28]
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Debug 35c3 presentation (after doing it)
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:d633a07f28050d85b415bae9e4d50924e714e549
User & Date: bernd 2019-01-02 00:28:56
Context
2019-01-02
19:02
scan with invertion, recent presentations check-in: 5210e44e87 user: bernd tags: trunk
00:28
Debug 35c3 presentation (after doing it) check-in: d633a07f28 user: bernd tags: trunk
2018-12-29
14:30
Night mode for 35c3 presentation check-in: f87b18cf06 user: bernd tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to doc/35c3-presentation.fs.

24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
...
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
...
139
140
141
142
143
144
145

146
147
148
149
150
151
152
...
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
...
236
237
238
239
240
241
242
243
244
245
246

247
248






249
250
251
252
253
254
255
256
257
258
...
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
...
341
342
343
344
345
346
347
348

349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
...
423
424
425
426
427
428
429

430
431
432
433
434
435
436
...
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
...
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
also minos

ctx 0= [IF]  window-init  [THEN]

require minos2/font-style.fs

: update-size# ( -- )
    dpy-w @ s>f 42e f/ fround to font-size#
    font-size# 16e f/ m2c:curminwidth% f!
    dpy-h @ s>f dpy-w @ s>f f/ 45% f/ font-size# f* fround to baseline#
    dpy-w @ s>f 1280e f/ to pixelsize# ;

update-size#

require minos2/text-style.fs
................................................................................
	over $8  and IF  prev-slide  2drop fdrop fdrop  EXIT  THEN
	over $10 and IF  next-slide  2drop fdrop fdrop  EXIT  THEN
	over -$2 and 0= IF
	    fover caller-w >o x f- w f/ o>
	    fdup 0.1e f< IF  fdrop  2drop fdrop fdrop  prev-slide  EXIT
	    ELSE  0.9e f> IF  2drop fdrop fdrop  next-slide  EXIT  THEN  THEN
	THEN  THEN
    [ box-actor :: clicked ] +sync +resize ; slide-actor to clicked
:noname ( ekey -- )
    case
	k-up      of  prev-slide  endof
	k-down    of  next-slide  endof
	k-prior   of  prev-slide  endof
	k-next    of  next-slide  endof
	k-volup   of  prev-slide  endof
................................................................................
	    Ambient 1 ambient% opengl:glUniform1fv  +sync endof
	s-k5      of  1e saturate% sf!
	    Saturate 1 saturate% opengl:glUniform1fv  +sync endof
	k-f5      of  saturate% sf@ 0.1e f+ 3e fmin saturate% sf!
	    Saturate 1 saturate% opengl:glUniform1fv  +sync endof
	k-f6      of  saturate% sf@ 0.1e f- 0e fmax saturate% sf!
	    Saturate 1 saturate% opengl:glUniform1fv  +sync endof

	[ box-actor :: ekeyed ]  EXIT
    endcase +sync +resize ; slide-actor to ekeyed
\ :noname ( $xy b -- )  dup 1 > IF
\ 	[ box-actor :: touchdown ] EXIT
\     THEN  drop
\     xy@ to s-y to s-x ftime to last-t
\     true to grab-move? ; slide-actor is touchdown
................................................................................
    >o slide-actor new to act o act >o to caller-w o> o o> ;

glue-left  >o 1glue vglue-c glue! 1glue dglue-c glue! o>
glue-right >o 1glue vglue-c glue! 1glue dglue-c glue! o>

tex: net2o-logo
tex: 35c3-logo
' net2o-logo "net2o-200.png" 0.666e }}image-file Constant net2o-glue drop
' 35c3-logo "35c3-logo.png" 0.666e }}image-file Constant 35c3-glue drop

: logo-img ( xt xt -- o o-img ) 2>r
    baseline# 0e to baseline#
    {{ 2r> }}image-tex dup >r /right
    glue*l }}glue
    }}v >o font-size# f2/ to border o o>
    to baseline# r> ;

: logo-img2 ( xt1 xt2 xt3 xt4 -- o o-img ) { d: leftimg d: rightimg }
    baseline# 0e to baseline#
    {{  {{ leftimg }}image-tex glue*ll }}glue
	rightimg }}image-tex }}h
    glue*l }}glue
    }}v >o font-size# f2/ to border o o>
    to baseline# ;

: pres-frame ( color -- o1 o2 ) \ drop $FFFFFFFF
    color, glue*wh slide-frame dup .button1 simple[] ;

................................................................................
			    {{
				{{ glue*lll }}glue l" cloud[o]calypse" }}text' }}h bx-tab
				l"  ➡ " }}text'
				{{ l" σύννεφο καταστροφή" }}text' glue*lll }}glue }}h bx-tab
			    }}h /center
			    glue*l }}glue
			}}v box[]
			glue*2 }}glue
		    }}z box[]
		    l" Bernd Paysan" /author
		    l" 35c3 Leipzig, Chaos West Stage, #wefixthenet" /location

		    glue*l }}glue \ ) $CCDDDD3F color, 4e }}frame dup .button1
		tex: vp-title2 glue*l ' vp-title2 }}vp vp[]






		>o 3 vp-shadow>># lshift to box-flags o o>
	    }}v box[] >o font-size# to border o Value title-page o o>

	}}z box[] dup >slides

\ page 1
{{
    ' whitish >body f@ ' blackish >body f!
    $000000FF pres-frame
    {{
................................................................................
	l"   net2o becomes more and more usable" \\
	glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1
    }}v box[] >o o Value snowden-page font-size# to border o o>
}}z box[] /flip dup >slides

\ page 3
{{
    $3F2020FF pres-frame
    {{
	l" Cloud[o]Calypse" /title
	l" something went terminally wrong in a cloud [2]" /subtitle
	\skip
	l" Clouds failing" /subsection
	l"   Microsoft bought github (install gitlab-ee)" \\
	l"   Dropbox dropped Linux client (except ext4 unencrypted)" \\
................................................................................
	    \skip
	    l" Beware: applies to journals and TV, too" \\
	}}vt
	glue*ll }}glue
    }}v box[] >bdr
    {{
	glue*ll }}glue \tiny \mono dark-blue
	{{ glue*ll }}glue l" 🔗xkcd.com/386" }}text' }}h box[]

	tex: duty-calls \normal \sans
	' duty-calls "duty_calls.png" 0.95e }}image-file drop /right
    }}v box[] >bdr blackish
    ' blackish >body f!  ' dark-blue >body f!
}}z box[] /flip dup >slides

\ page 5
{{
    $442200FF pres-frame
    {{
	l" Centralized/Federated/P2P?" /title
	vt{{
	    l" Centralized" /subsection
	    l" + " l" good funding, robust hardware and attack protection" b\\
	    l" – " l" lacks privacy, honeypot, captive, EOL at whim of CEO" b\\
	    l" – " l" diverse global censorship, possible toxic business model" b\\
	    l" Federated" /subsection
	    l" + " l" not captive, small business models" b\\
	    l" ± " l" regional censorship (nodes blacklisted, e.g. Lolicon Mastodon nodes)" b\\
	    l" – " l" poor funding, underpowered hardware/attack protection" b\\
	    l" – " l" lacks privacy, EOL of notes at whim of node admin" b\\
	    l" Peer2Peer" /subsection
	    l" + " l" Full control over your node, good privacy" b\\
	    l" + " l" Development funding? Otherwise cheap" b\\
	    l" ± " l" non–existend censorship (attracts censorship refugees)" b\\
	    l" – " l" Full responsibility for your node" b\\
	}}vt
	glue*ll }}glue
................................................................................
\ page 5
{{
    $202020FF pres-frame
    {{
	l" Google+ JSON Takeout" /title
	\skip
	l" 🔗" l" https://takeout.google.com/settings/takeout" bm\\

	glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1
	tex: g+takeout
	' g+takeout "google-takeout.png" 1.333e }}image-file drop /center
	glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1
    }}v box[] >bdr
}}z box[] /flip dup >slides
    
................................................................................
}}z box[] /flip dup >slides

' }}text is }}text'

\ end
glue-right }}glue
}}h box[]
' 35c3-logo  35c3-glue  ' net2o-logo net2o-glue  logo-img2
}}z slide[]
to top-widget

also opengl

: !widgets ( -- )
    set-fullscreen-hint 1 set-compose-hint
................................................................................
    dup >r outfile-execute r> close-file throw
[THEN]

previous

also [IFDEF] android android [THEN]

\ 3 0 [DO] reload-textures [LOOP]

: presentation ( -- )
    1config
    [IFDEF] hidestatus hidekb hidestatus [THEN]
    !widgets widgets-loop ;

previous








|







 







|







 







>







 







|
|








|

|
<







 







|



>
|
<
>
>
>
>
>
>


<







 







|







 







|
>








|











|







 







>







 







|







 







<
<







24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
...
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
...
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
...
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196

197
198
199
200
201
202
203
...
236
237
238
239
240
241
242
243
244
245
246
247
248

249
250
251
252
253
254
255
256

257
258
259
260
261
262
263
...
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
...
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
...
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
...
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
...
855
856
857
858
859
860
861


862
863
864
865
866
867
868
also minos

ctx 0= [IF]  window-init  [THEN]

require minos2/font-style.fs

: update-size# ( -- )
    dpy-w @ s>f 44e f/ fround to font-size#
    font-size# 16e f/ m2c:curminwidth% f!
    dpy-h @ s>f dpy-w @ s>f f/ 45% f/ font-size# f* fround to baseline#
    dpy-w @ s>f 1280e f/ to pixelsize# ;

update-size#

require minos2/text-style.fs
................................................................................
	over $8  and IF  prev-slide  2drop fdrop fdrop  EXIT  THEN
	over $10 and IF  next-slide  2drop fdrop fdrop  EXIT  THEN
	over -$2 and 0= IF
	    fover caller-w >o x f- w f/ o>
	    fdup 0.1e f< IF  fdrop  2drop fdrop fdrop  prev-slide  EXIT
	    ELSE  0.9e f> IF  2drop fdrop fdrop  next-slide  EXIT  THEN  THEN
	THEN  THEN
    [ box-actor :: clicked ] +sync +resize ; slide-actor is clicked
:noname ( ekey -- )
    case
	k-up      of  prev-slide  endof
	k-down    of  next-slide  endof
	k-prior   of  prev-slide  endof
	k-next    of  next-slide  endof
	k-volup   of  prev-slide  endof
................................................................................
	    Ambient 1 ambient% opengl:glUniform1fv  +sync endof
	s-k5      of  1e saturate% sf!
	    Saturate 1 saturate% opengl:glUniform1fv  +sync endof
	k-f5      of  saturate% sf@ 0.1e f+ 3e fmin saturate% sf!
	    Saturate 1 saturate% opengl:glUniform1fv  +sync endof
	k-f6      of  saturate% sf@ 0.1e f- 0e fmax saturate% sf!
	    Saturate 1 saturate% opengl:glUniform1fv  +sync endof
	k-f1      of  top-widget ..widget  endof
	[ box-actor :: ekeyed ]  EXIT
    endcase +sync +resize ; slide-actor to ekeyed
\ :noname ( $xy b -- )  dup 1 > IF
\ 	[ box-actor :: touchdown ] EXIT
\     THEN  drop
\     xy@ to s-y to s-x ftime to last-t
\     true to grab-move? ; slide-actor is touchdown
................................................................................
    >o slide-actor new to act o act >o to caller-w o> o o> ;

glue-left  >o 1glue vglue-c glue! 1glue dglue-c glue! o>
glue-right >o 1glue vglue-c glue! 1glue dglue-c glue! o>

tex: net2o-logo
tex: 35c3-logo
' net2o-logo "net2o-200.png" 0.666e }}image-file 2Constant net2o-img
' 35c3-logo "35c3-logo.png" 0.666e }}image-file 2Constant 35c3-img

: logo-img ( xt xt -- o o-img ) 2>r
    baseline# 0e to baseline#
    {{ 2r> }}image-tex dup >r /right
    glue*l }}glue
    }}v >o font-size# f2/ to border o o>
    to baseline# r> ;

: logo-img2 ( o1 o2 -- o o-img ) { leftimg rightimg }
    baseline# 0e to baseline#
    {{  {{ leftimg glue*ll }}glue rightimg }}h

    glue*l }}glue
    }}v >o font-size# f2/ to border o o>
    to baseline# ;

: pres-frame ( color -- o1 o2 ) \ drop $FFFFFFFF
    color, glue*wh slide-frame dup .button1 simple[] ;

................................................................................
			    {{
				{{ glue*lll }}glue l" cloud[o]calypse" }}text' }}h bx-tab
				l"  ➡ " }}text'
				{{ l" σύννεφο καταστροφή" }}text' glue*lll }}glue }}h bx-tab
			    }}h /center
			    glue*l }}glue
			}}v box[]
			glue*2 }}glue	
		    }}z box[]
		    l" Bernd Paysan" /author
		    l" 35c3 Leipzig, Chaos West Stage, #wefixthenet" /location
		    {{
			glue*l }}glue \ ) $CCDDDD3F color, 4e }}frame dup .button1

			{{
			    glue*l }}glue \ ) $CCDDDD3F color, 4e }}frame dup .button1
			    \tiny l" Photo: Ralph W. Lambrecht" }}text' /right \normal
			}}v box[]
		    }}z box[]
		tex: vp-title glue*l ' vp-title }}vp vp[] dup value title-vp
		>o 3 vp-shadow>># lshift to box-flags o o>
	    }}v box[] >o font-size# to border o Value title-page o o>

	}}z box[] dup >slides

\ page 1
{{
    ' whitish >body f@ ' blackish >body f!
    $000000FF pres-frame
    {{
................................................................................
	l"   net2o becomes more and more usable" \\
	glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1
    }}v box[] >o o Value snowden-page font-size# to border o o>
}}z box[] /flip dup >slides

\ page 3
{{
    $201010FF pres-frame
    {{
	l" Cloud[o]Calypse" /title
	l" something went terminally wrong in a cloud [2]" /subtitle
	\skip
	l" Clouds failing" /subsection
	l"   Microsoft bought github (install gitlab-ee)" \\
	l"   Dropbox dropped Linux client (except ext4 unencrypted)" \\
................................................................................
	    \skip
	    l" Beware: applies to journals and TV, too" \\
	}}vt
	glue*ll }}glue
    }}v box[] >bdr
    {{
	glue*ll }}glue \tiny \mono dark-blue
	{{ glue*ll }}glue l" 🔗xkcd.com/386" }}text' }}h
	[: s" xdg-open https://xkcd.com/386" system ;] 0 click[]
	tex: duty-calls \normal \sans
	' duty-calls "duty_calls.png" 0.95e }}image-file drop /right
    }}v box[] >bdr blackish
    ' blackish >body f!  ' dark-blue >body f!
}}z box[] /flip dup >slides

\ page 5
{{
    $221100FF pres-frame
    {{
	l" Centralized/Federated/P2P?" /title
	vt{{
	    l" Centralized" /subsection
	    l" + " l" good funding, robust hardware and attack protection" b\\
	    l" – " l" lacks privacy, honeypot, captive, EOL at whim of CEO" b\\
	    l" – " l" diverse global censorship, possible toxic business model" b\\
	    l" Federated" /subsection
	    l" + " l" not captive, small business models" b\\
	    l" ± " l" regional censorship (nodes blacklisted, e.g. Lolicon Mastodon nodes)" b\\
	    l" – " l" poor funding, underpowered hardware/attack protection" b\\
	    l" – " l" lacks privacy, EOL of nodes at whim of node admin" b\\
	    l" Peer2Peer" /subsection
	    l" + " l" Full control over your node, good privacy" b\\
	    l" + " l" Development funding? Otherwise cheap" b\\
	    l" ± " l" non–existend censorship (attracts censorship refugees)" b\\
	    l" – " l" Full responsibility for your node" b\\
	}}vt
	glue*ll }}glue
................................................................................
\ page 5
{{
    $202020FF pres-frame
    {{
	l" Google+ JSON Takeout" /title
	\skip
	l" 🔗" l" https://takeout.google.com/settings/takeout" bm\\
	[: s" xdg-open https://takeout.google.com/settings/takeout" system ;] 0 click[]
	glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1
	tex: g+takeout
	' g+takeout "google-takeout.png" 1.333e }}image-file drop /center
	glue*l }}glue \ ) $CCDDDD3F 4e }}frame dup .button1
    }}v box[] >bdr
}}z box[] /flip dup >slides
    
................................................................................
}}z box[] /flip dup >slides

' }}text is }}text'

\ end
glue-right }}glue
}}h box[]
35c3-img drop net2o-img drop  logo-img2
}}z slide[]
to top-widget

also opengl

: !widgets ( -- )
    set-fullscreen-hint 1 set-compose-hint
................................................................................
    dup >r outfile-execute r> close-file throw
[THEN]

previous

also [IFDEF] android android [THEN]



: presentation ( -- )
    1config
    [IFDEF] hidestatus hidekb hidestatus [THEN]
    !widgets widgets-loop ;

previous

Changes to doc/cloudcalypse-16-9.jpg.

cannot compute difference between binary files