This repository has been archived by the owner on Jan 12, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathschedule.json
7193 lines (7193 loc) · 376 KB
/
schedule.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
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
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
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
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
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
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"schedule": [
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-14T07:00:00",
"end": "2020-01-14T09:00:00",
"duration": 120,
"kind": "plenary",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 201,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Women of Open Technology Breakfast, Presented by ThoughtWorks"
},
{
"room": "",
"rooms": [],
"start": "2020-01-13T08:00:00",
"end": "2020-01-13T09:00:00",
"duration": 60,
"kind": "plenary",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 235,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Registration Open"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-15T09:00:00",
"end": "2020-01-15T09:10:00",
"duration": 10,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 94,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Wednesday Welcome",
"authors": [
{
"name": "Joel Addison",
"twitter": "joeladdison",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/9000bdf014493368f5d4f00700f6a6f5?s=120&d=mp"
},
{
"name": "Ben Stevens",
"twitter": "vystrela",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/48769477767_0edec8ff9e_o.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Opening Remarks and Housekeeping",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/221/",
"cancelled": false,
"twitter_id": "joeladdison"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-16T09:00:00",
"end": "2020-01-16T09:10:00",
"duration": 10,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 95,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Thursday Welcome",
"authors": [
{
"name": "Joel Addison",
"twitter": "joeladdison",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/9000bdf014493368f5d4f00700f6a6f5?s=120&d=mp"
},
{
"name": "Ben Stevens",
"twitter": "vystrela",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/48769477767_0edec8ff9e_o.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Opening Remarks and Housekeeping",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/222/",
"cancelled": false,
"twitter_id": "joeladdison"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-17T09:00:00",
"end": "2020-01-17T09:10:00",
"duration": 10,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 96,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Friday Welcome",
"authors": [
{
"name": "Joel Addison",
"twitter": "joeladdison",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/9000bdf014493368f5d4f00700f6a6f5?s=120&d=mp"
},
{
"name": "Ben Stevens",
"twitter": "vystrela",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/48769477767_0edec8ff9e_o.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Opening Remarks and Housekeeping",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/223/",
"cancelled": false,
"twitter_id": "joeladdison"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-13T09:00:00",
"end": "2020-01-13T10:10:00",
"duration": 70,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "System Administration",
"conf_key": 104,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Conference Opening",
"authors": [
{
"name": "Joel Addison",
"twitter": "joeladdison",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/9000bdf014493368f5d4f00700f6a6f5?s=120&d=mp"
},
{
"name": "Ben Stevens",
"twitter": "vystrela",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/48769477767_0edec8ff9e_o.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "The official launch of linux.conf.au 2020.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/212/",
"cancelled": false,
"twitter_id": "joeladdison"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-14T09:00:00",
"end": "2020-01-14T09:10:00",
"duration": 10,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "Kernel",
"conf_key": 126,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Tuesday Welcome",
"authors": [
{
"name": "Joel Addison",
"twitter": "joeladdison",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/9000bdf014493368f5d4f00700f6a6f5?s=120&d=mp"
},
{
"name": "Ben Stevens",
"twitter": "vystrela",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/48769477767_0edec8ff9e_o.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Opening Remarks and Housekeeping",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/220/",
"cancelled": false,
"twitter_id": "joeladdison"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-16T09:10:00",
"end": "2020-01-16T10:10:00",
"duration": 60,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 85,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Keynote: Who cares about Democracy?",
"authors": [
{
"name": "A/Prof Vanessa Teague",
"twitter": "VTeagueAus",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/vanessa-teague.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "I'll begin with analysis of the Swiss e-voting system and its flawed proofs, then explain why the NSW iVote system is even worse. Next, I'll discuss the world's first pilot Risk-Limiting Audit of a preferential election, in San Francisco, and compare it to the completely non-existent auditing strategy for our Senate elections.\r\n\r\nAustralia, once a leader in genuine democratic innovation, lags woefully behind the rest of the world in applying basic standards of privacy, transparency and security to electronic electoral processes. So why is it so bad, and what can we do about it?\r\n\r\nThis talk includes joint work with Michelle Blom, Andrew Conway, Chris Culnane, Sarah Jamie Lewis, Olivier Periera, Philip Stark and Peter Stuckey.\r\n\r\nI'll conclude with some speculative ideas about improving democratic participation between elections - suggestions welcome.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/216/",
"cancelled": false,
"twitter_id": "VTeagueAus"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-15T09:10:00",
"end": "2020-01-15T10:10:00",
"duration": 60,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 92,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Keynote: From 2020 to 2121: How will we get there?",
"authors": [
{
"name": "Donna Benjamin",
"twitter": "kattekrab",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/laracon-portrait-donnabenjamin.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Who is watching? Why are they watching? and why does that matter?\r\n\r\nAs members of the global free and open source software community we're all secret agents in a mission to change the future. Tragedy is, some of us don't even realise this is true, or that the future is already here. We're up against the powerful forces of distraction, disinformation, fatalism and apathy. We need to rally. we need to defend, and we need to act.\r\n\r\nDonna will re-introduce some old ideas we can all embrace to arm and protect ourselves, and empower each and every one of us to take back our power, and take action steps into the future.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/217/",
"cancelled": false,
"twitter_id": "kattekrab"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-17T09:10:00",
"end": "2020-01-17T10:10:00",
"duration": 60,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 93,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Keynote: Out of the sausage factory and into the mainstream - how we can fight for digital rights",
"authors": [
{
"name": "Lizzie O\u2019Shea",
"twitter": "Lizzie_OShea",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/lizzie.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Technological advancement is not just about intelligent design, clever cryptography or brilliant coding; it\u2019s also a function of power. To make technology work for people, we need to take this power back \u2013 and demand that the development of technology involve social, political and ethical considerations. Protecting encryption is about protecting democracy \u2013 it is about shifting power away from states and companies and towards people. \r\n\r\nIn late 2018, digital rights activists took on the national security establishment to try to resist attacks on encryption. It was a important and spirited effort but it was ultimately unsuccessful. The AABill passed, despite it being widely-accepted as a serious threat to our digital security. This talk will explain how that occurred, and how the intersection of technology and politics can be a challenging place for people interested in good public policy. \r\n\r\nIf we are going to improve our laws and public policy in relation to technology, we are going to need to fight for it. This requires a broad based alliance. We must take highly technical debates to the mainstream. It means finding ways to discuss these issues with precision but also simplicity, with determination but also compassion. The opportunities are there provided we can organise and make the most of them.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/215/",
"cancelled": false,
"twitter_id": "Lizzie_OShea"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-14T09:10:00",
"end": "2020-01-14T10:10:00",
"duration": 60,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "Kernel",
"conf_key": 127,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Keynote: Drop Your Tools \u2013 Does Expertise have a Dark Side?",
"authors": [
{
"name": "Dr Sean Brady",
"twitter": "",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/sean_brady.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "All professionals possess some measure of expertise, and not only is this expertise useful, it is usually also necessary to do the job. In general, this expertise is viewed as a good thing.\r\n\r\nBut what if there is an issue with expertise? Is expertise always a good thing?\r\n\r\nThis presentation will discuss how expertise has limitations when it is applied outside its normal area of application, and how these limitations will typically not be evident to the individual applying the expertise. Further, even in situations where evidence suggests the application of the expertise is inappropriate, it is likely that an individual will continue to apply their expertise regardless of its inappropriateness.\r\n\r\nTo explore these issues the presentation will examine the behaviour of a group of firefighters fighting a wildfire in Mann Gulch in the US in 1949, it will look at psychological studies that examine the concept of Priming, and it will discuss how the game of baseball can assist in unravelling why expertise can sometimes let us down.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/218/",
"cancelled": false
},
{
"room": "",
"rooms": [],
"start": "2020-01-15T10:10:00",
"end": "2020-01-15T10:45:00",
"duration": 35,
"kind": "morning tea",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 82,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Morning Tea (catered)"
},
{
"room": "",
"rooms": [],
"start": "2020-01-16T10:10:00",
"end": "2020-01-16T10:45:00",
"duration": 35,
"kind": "morning tea",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 86,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Morning Tea (catered)"
},
{
"room": "",
"rooms": [],
"start": "2020-01-17T10:10:00",
"end": "2020-01-17T10:45:00",
"duration": 35,
"kind": "morning tea",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 89,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Morning Tea (catered)"
},
{
"room": "",
"rooms": [],
"start": "2020-01-13T10:10:00",
"end": "2020-01-13T10:45:00",
"duration": 35,
"kind": "morning tea",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 105,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Morning Tea (catered)"
},
{
"room": "",
"rooms": [],
"start": "2020-01-14T10:10:00",
"end": "2020-01-14T10:45:00",
"duration": 35,
"kind": "morning tea",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 128,
"license": "CC-BY-SA",
"tags": "",
"released": false,
"contact": [],
"name": "Morning Tea (catered)"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-15T10:45:00",
"end": "2020-01-15T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 1,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Snek: A Python-Inspired Language for Tiny Embedded Computers",
"authors": [
{
"name": "Keith Packard",
"twitter": "keith_x11",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/180px-Keith-packard.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Tiny embedded computers, like the original Arduino, are great for\r\nautomating simple tasks. What they are not great at is providing an\r\neasy-to-learn environment for new programmers.\r\n\r\nAs a part of a middle school robotics course based on Lego, I've\r\ndeveloped a new language, Snek, which runs on these machines. Snek can\r\nrun in as little as 32kB of ROM and 2kB of RAM. It provides a simpler,\r\nsafer, easier to explore environment than C++. Snek is a subset of the\r\nPython language and comes with a host-based IDE written in Python that\r\nruns on Linux, Mac OS X and Windows.\r\n\r\nThis presentation will describe the Snek language along with a few of\r\nthe interesting implementation details including:\r\n\r\n * A new parser generator, lola, that generates\r\n a parser 1/10 the size of bison\r\n\r\n * An in-place compacting garbage collector\r\n\r\n * A fine hack for representing values in 32 bits that includes 32-bit\r\n floats\r\n\r\n * Some challenges with Python syntax and\r\n semantics which make it difficult to fit into a small\r\n environment.\r\n\r\nThere will also be a demonstration of a few Snek-based Lego robots\r\nalong with a description of how Snek has been integrated into the\r\nclassroom environment. Comparisons with other embedded Python\r\nimplementations will also be provided, including Micro Python, Circuit\r\nPython and full Python running on systems like the Raspberry PI.\r\n\r\nAttendees will learn something about how interpreted Python\r\nimplementations operate, how Python can be used in embedded systems\r\nand what teaching programming to middle school students (10-14 years\r\nold) is like.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/20/",
"cancelled": false,
"twitter_id": "keith_x11"
},
{
"room": "Room 5",
"rooms": [
"Room 5"
],
"start": "2020-01-15T10:45:00",
"end": "2020-01-15T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 2,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "From bits to legs to locomotion: Building a hexapod from the ground up",
"authors": [
{
"name": "Daniel McCarthy",
"twitter": "",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/cda541ed02fe9557be0bec0a60f9b336?s=120&d=mp"
}
],
"abstract": "Hexapods are six legged robots which are a staple in academic and hobbyist circles due to their versatility and static stability. Hexapod platforms however, specifically six degree of freedom (6DOF) Hexapod kits are commonly quite expensive. Expensive enough that I couldn't afford one -- So, I set out to build an inexpensive (order of magnitude cheaper) 6DOF Hexapod.\r\n\r\nThis talk is aimed at beginner and intermediate hobbyists who are interested in more advanced robotics topics, it sets out to to answer one main question: How on earth does one design and build a 6DOF Hexapod (hardware and software) from the ground up?\r\n\r\nIn it the design process, challenges and trade-offs as well as how one gets a Hexapod to walk without tripping over itself (inverse kinematics and gait algorithms) will be examined.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/93/",
"cancelled": false
},
{
"room": "Room 6",
"rooms": [
"Room 6"
],
"start": "2020-01-15T10:45:00",
"end": "2020-01-15T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 3,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "We know when you are sleeping: The Rise of Energy Smart Meters",
"authors": [
{
"name": "Rachel Bunder",
"twitter": "ADuckIsMyFiend",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/cc423f82a0a8a6c3edb9f1f9c0800295?s=120&d=mp"
}
],
"abstract": "Australia is rolling out smart energy meters to all homes. Instead of an analogue meter that needs to be physically checked each billing cycle, a smart meter monitors your energy in 15 minute intervals and sends this data to your energy network providers. Additionally, many people have smart home setups which often monitors your home energy usage in even more detail. Even many solar systems monitors your energy consumption. \r\n\r\nBut how much can you actually tell from this data? What could this be data used for? Who even has this data? In this talk I will show what energy data is actually being collected about you, who has access to it and what can be inferred from it. I will also discuss the wider implications of having a \u201csmart\u201d home and \u201csmart\u201d energy grid.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/100/",
"cancelled": false,
"twitter_id": "ADuckIsMyFiend"
},
{
"room": "Room 7",
"rooms": [
"Room 7"
],
"start": "2020-01-15T10:45:00",
"end": "2020-01-15T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 4,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Automated acceptance tests for terminal applications",
"authors": [
{
"name": "Roman Joost",
"twitter": "",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/abd153160b2cc591f94caf0ad7dfba9a?s=120&d=mp"
}
],
"abstract": "Acceptance testing is a method of testing an application from a users point of view. In this talk, I will demonstrate our approach to full automated testing a terminal email application (purebred) with the tasty-tmux framework. I'll elaborate the benefits and trade-off's, what problems we experienced and how we solved them.\r\n\r\nAutomating acceptance testing is challenging, because the tests can not adapt to timing sensitive changes in the application. This causes random failures and unresponsiveness. The longer these problems are ignored, the longer value diminishes and investment increases for workarounds and fixes.\r\n\r\nThe audience will get a better understand of what it takes to automate timing sensitive tests. The concept, problems and solutions are language agnostic applicable to any terminal platform and application.\r\n\r\nProject URL: https://github.com/purebred-mua/tasty-tmux\r\n\r\nTalk Outline:\r\n\r\n What is acceptance testing and why should you automate it\r\n What other choices of testing did we have and why we haven't chosen them\r\n The effort we put into automating our tests\r\n What we gained with automating our acceptance tests\r\n Future ideas",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/63/",
"cancelled": false
},
{
"room": "Room 8",
"rooms": [
"Room 8"
],
"start": "2020-01-15T10:45:00",
"end": "2020-01-15T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 5,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Building a zero downtime Kubernetes cluster",
"authors": [
{
"name": "Feilong Wang",
"twitter": "feilongwang",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/86b51b543cb23b6c3aa3437332bcf5f5?s=120&d=mp"
}
],
"abstract": "Having recently gone through the experience of building, implementing and running a Kubernetes platform service in its public cloud, Catalyst Cloud has some interesting experiences and war stories to share about the journey. One of the most in-demand for a Kubernetes service's features is monitoring of the cluster\u2019s health and ability of the orchestrator to deal with unhealthy instances and triggering replacements when needed, maximizing the cluster\u2019s efficiency and performance.\r\n\r\nThis presentation and demo are targeted for anybody interested in having closed-loop automation for self-healing and maintenance in a Kuberntes cluster. Attendees will learn how this can be achieved with zero downtime for the user's application. And there are some good tips will be shared about how to runn auto scaling, rolling upgrade and auto healing for Kubernetes cluster.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/50/",
"cancelled": false,
"twitter_id": "feilongwang"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-16T10:45:00",
"end": "2020-01-16T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 34,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "When Jargon Becomes Gibberish",
"authors": [
{
"name": "Casey Schaufler",
"twitter": "",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/de9b5e36f130b54ae5e0a9952c042c06?s=120&d=mp"
}
],
"abstract": "You've most likely been there: you're a half hour into an important technical meeting and you realize that of the last dozen words you've heard you only recognized two, and neither would seem to have any bearing on the topic at hand. You look around and see that everyone but the presenter appears to be mentally grasping for some key understanding what's being said. Your carefully gathered notes say \"SDL PRS review SS2 Smokey Lagoon PKR BKM\". Somehow, the jargon you've relied on for precise and detailed technical communication as devolved into incomprehensible gibberish.\r\n\r\nCasey Schaufler, who's been working in operating systems development for the past 40 years, explains the reasons technical documents and presentations so often become impossible to decipher. There's much more to it than the unguarded and unexplained use of acronyms, abbreviations and code words. The impact of language background on the use of technical terms is explored. How cultural differences between individuals and organizations can interfere with technical communications, and how that differs from general communication is discussed. What can go wrong when technical documentation is mistranslated into plain language, resulting in words with completely different meaning also gets much deserved attention. Casey will provide examples, some humorous, some maddening and some otherwise which demonstrate the problems we face. In the end, hopefully useful and pragmatic approaches for avoiding the worst gibberish production are presented.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/19/",
"cancelled": false
},
{
"room": "Room 5",
"rooms": [
"Room 5"
],
"start": "2020-01-16T10:45:00",
"end": "2020-01-16T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 35,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Compiling Your Story: Using Techniques from Compiler Design to Check Your Narrative",
"authors": [
{
"name": "Jon Manning",
"twitter": "desplesda",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/93cd8098ec3d2bbfcc8bf4f95abf0b95?s=120&d=mp"
}
],
"abstract": "Programmers are used to their compilers catching tiny problems in their code. When you're a writer, it's harder to catch these problems. Wouldn't it be nice if you could run an error-checker on your dialogue?\r\n\r\nThis talk discusses the application of compiler optimisation and correctness checking techniques to branching narratives, which allow authors to verify the logic of their narrative independently of running it in the game.\r\n\r\nYarn Spinner is an open source narrative design tool used in many games, including Night in the Woods (Infinite Fall / Finji) and OK KO: Let\u2019s Play Heroes (Capybara Games / Cartoon Network), that allows both writers and narrative designers to write, edit, script and manage their game's dialog using a simple scripting language that's reminiscent of Twine. While most games devise their dialog in script form, it's typically implemented using another system, such as a spreadsheet, or node-based tools. By contrast, Yarn Spinner implements a domain-specific language designed to be easy for a non-programmer to write their dialogue in, and easy for a programmer to implement gameplay-specific behaviour.\r\n\r\nCompilers for most programming languages are designed to catch common mistakes, and give warnings where appropriate. In recent years, tools for static analysis of programs - a technique where a compiler analyses the behaviour of code without running it - have allowed programmers to detect subtle bugs that a simpler compiler could not. For example, it's possible to identify a combination of branches that lead to an uninitialised variable being returned from a function.\r\n\r\nBecause Yarn Spinner is a complete programming language, we are able to apply the same techniques from compiler design to assist writers. For example, a compiler is able to analyse a branching narrative tree, take into account the variables that are checked to decide what options are available, and determine that a line of dialog can never be reached.\r\n\r\nThese techniques allow for more reliable testing of dialogue. Testing a branching piece of dialogue often relies on the tester repeating a number of decisions in order to set up the necessary state, which can be repetitive and tedious. However, a static analyser is able to identify what the values of certain variables _must be_ in order for a line to be accessed, which allows the tester to jump straight to the lines under test, skipping large amounts of per-test setup time. This allows someone who\u2019s trying to test out a conversation to do it in realistic conditions, skipping past the repetition while also guaranteeing that the state of the dialogue is the same as if they\u2019d performed it manually.\r\n\r\nIn this talk, I\u2019ll discuss work on Yarn Spinner that implements symbolic execution and basic block analysis, which allows writers to easily spot problems in the implementation of their narrative, saving development and testing time, and avoiding wasted production resources.\r\n\r\nCome and learn how to get started with these techniques, and how to use them in Yarn Spinner, the open source narrative design tool!",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/94/",
"cancelled": false,
"twitter_id": "desplesda"
},
{
"room": "Room 6",
"rooms": [
"Room 6"
],
"start": "2020-01-16T10:45:00",
"end": "2020-01-16T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 36,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Decoding battery management data - back in the old school",
"authors": [
{
"name": "Paul Wayper",
"twitter": "",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/PaulWay_SFDGotchi_1.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "It's great to live in an era of self-documenting APIs, easy-to-read markup, good documentation and limitless bandwidth and memory. However, a lot of systems don't have those luxuries. Projects as diverse as SaMBa and Nouveau have relied on decoding and inferring meaning from binary data output from closed systems with no documentation.\r\n\r\nFor my own part, I wanted to read the battery status from my electric motorbike (http://mabula.net/3faze/). The 'normal' way to do this is via a USB connection and a Windows program, but this is inconvenient when you don't run Windows and definitely much harder to do when actually riding the motorbike! So I wanted a way to read and record the cell voltages and overall pack status, and even link that to GPS information so I could see how fast I was going and how much power I was drawing for a ride.\r\n\r\nThis talk will include actual data, Raspberry Pis, Grafana, serial connections, Python, InfluxDB, GPS modules and Perl - not necessarily in that order.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/33/",
"cancelled": false
},
{
"room": "Room 7",
"rooms": [
"Room 7"
],
"start": "2020-01-16T10:45:00",
"end": "2020-01-16T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 37,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Engineer tested, manager approved: Migrating Windows/.NET services to Linux",
"authors": [
{
"name": "Katie Bell",
"twitter": "notsolonecoder",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/6a2de11014aa6de6768f497be9fe146c?s=120&d=mp"
}
],
"abstract": "Running .NET Framework code on Linux used to be something that you would approach with caution, and only if you needed to, especially if the code was originally written to only ever work on Windows. With improvements to Mono and the release of .NET Core, this is now easier, more reliable and more officially Microsoft supported than ever.\r\n\r\nAt Campaign Monitor we've got lots of Windows-specific C# .NET code, in particular we had these 78 http-serving and background task processing services that caused us some headaches. I and a couple of fellow engineers set out to convince management that a project to migrate them all to .NET Core (on Linux) was worthwhile, and convince them we did. I will take you through this six month project from its start as a crazy idea to its successful completion and results. We'll learn a lot about .NET Core on Linux and Docker, what is easy to migrate (and what is not), the expected and unexpected issues we encountered and how to get a project like this off the ground and done.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/25/",
"cancelled": false,
"twitter_id": "notsolonecoder"
},
{
"room": "Room 8",
"rooms": [
"Room 8"
],
"start": "2020-01-16T10:45:00",
"end": "2020-01-16T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 38,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Musings of an Accidental Chair - change from the inside out",
"authors": [
{
"name": "Lyndsey Jackson",
"twitter": "ok_lyndsey",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/Lyndsey_Jackson_twitter_bio_pic.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "In 2017 Lyndsey became the Chair of Electronic Frontiers Australia. Over the past two years the EFA board and volunteers have worked to increase engagement, participation, and be more effective - not easy when everyone is a volunteer. How have we reached this nexus where underfunded and under supported organisations and individuals are the key line of defense in speaking up for digital rights, security, privacy and ethics? Strengthening community partnerships has meant strengthening internal operations, and juggling the balance of keeping an organisations lights on. And that alone doesn't leave much time for deep strategy on community messaging and public engagement. \r\n\r\nHow can we do better? Lyndsey entered into the world of digital rights via her campaign work building the website and social media accounts for #notmydebt, which provided a voice for people affected by robodebt. This campaign proved people do care about rights, the impact of automation, and maintaining integrity in Australian values, systems and government. Survey after survey tells us Australian's care about privacy and security, and as technologists we hold the tools, networks, and the expertise to shape a better future. Let's scope the work we all need to do, together.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/65/",
"cancelled": false,
"twitter_id": "ok_lyndsey"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-17T10:45:00",
"end": "2020-01-17T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 64,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "TPM based attestation - how can we use it for good?",
"authors": [
{
"name": "Matthew Garrett",
"twitter": "mjg59",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/3b682b7107ce5adb418660715d4850e5?s=120&d=mp"
}
],
"abstract": "Systems with a Trusted Platform Module generate a cryptographically verifiable event log of every component of the boot process. They can then provide a signed quote of this log in order to prove to a remote site that they booted the expected software. In the early 2000s we were concerned about that resulting in websites that would refuse to grant you access unless you were running an unmodified proprietary operating system, but for various reasons that turned out to not be a problem in the real world. Some years later, how can we use this attestation data for the power of good?\r\n\r\nThis presentation will describe the functionality of TPMs and how the event log is generated, and describe techniques for making use of TPMs to protect access to network resources, solve the problem of trusting SSH host keys in enterprise environments and make it easier for people to recover their systems while on the road. It will include demonstrations of using newly released open source software to build novel attestation solutions for protecting end users without giving up privacy or control.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/64/",
"cancelled": false,
"twitter_id": "mjg59"
},
{
"room": "Room 5",
"rooms": [
"Room 5"
],
"start": "2020-01-17T10:45:00",
"end": "2020-01-17T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 65,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Zero Trust SSH",
"authors": [
{
"name": "Jeremy Stott",
"twitter": "jsstott",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/c7c4cda96a2d2d3be2590726755ada24?s=120&d=mp"
}
],
"abstract": "SSH certificates are an under-utilised feature of OpenSSH, but they offer a fantastic method to solve some pain points of growing teams and growing infrastructure. You don't need to manage complicated directories to live on this greener side of the fence.\r\n\r\nHosts only trust a single public key of a trusted certificate authority instead of keys from every developer (and let's be honest, several who are no longer working at your company :uhoh:). SSH certificates expire (this is good), and can also tell SSH what you can or can't do with your session. The can even help mint a new user on a brand new trusting host. And if you need to use sudo, don't worry your certificate's got your back too.\r\n\r\nHow do you get short lived SSH certificates from a self service certificate authority? Grab your identity on the cli using some nifty OAuth2 in your browser, swap this identity to get temporary AWS credentials, invoke a lambda function, sign a public key, and you're on your merry way.\r\n\r\nOpen source tools are all over this problem. Let's combine some that have been around forever, and some brand new ones into an awesome solution.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/54/",
"cancelled": false,
"twitter_id": "jsstott"
},
{
"room": "Room 7",
"rooms": [
"Room 7"
],
"start": "2020-01-17T10:45:00",
"end": "2020-01-17T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 66,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "The Fight to Keep the Watchers at Bay",
"authors": [
{
"name": "Mark Nottingham",
"twitter": "mnot",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/mn.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Many of the Internet's protocols were designed at a time when no one cared who was watching. That's no longer true, and so the Internet community has put a tremendous amount of effort into making communication between two endpoints *only* between those two endpoints.\r\n\r\nThis talk will recap what's happened so far, explain what's left to do, and explore the larger context, including legal issues, architectural impact, open questions, and limitations.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/32/",
"cancelled": false,
"twitter_id": "mnot"
},
{
"room": "Room 6",
"rooms": [
"Room 6"
],
"start": "2020-01-17T10:45:00",
"end": "2020-01-17T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 100,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Everything you know is wrong: why using big words can made you sound stupid",
"authors": [
{
"name": "Lana Brindley",
"twitter": "Loquacities",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/Lana_Tree_lowres.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "There's a writing style people use when they want to sound smarter. It goes something like this:\r\n\r\nWe're using iterative approaches to corporate strategy to foster collaborative thinking and further the overall value proposition.\r\n\r\nDepending on which reading test you use, you need to have a grade 20 equivalent reading age to be able to understand that sentence. Many doctoral candidates haven't even been to school for twenty years. So why do we write like this?\r\n\r\nThere is some evidence (yes, actual scientifically sound, peer-reviewed evidence), that indicates that people who show signs of power are treated in a way that allows them to actually achieve such power. In other words, 'fake it til you make it' is an actual, scientifically proven way to get what you want. \r\n\r\nBut, if you're writing technical documentation, or an email to your boss, it's more important that you're seen as being honest rather than powerful. It would be nice to think that people will read your writing and think \"wow, what a clever writer that Lana Brindley is! She knows lots of fancy words, and I think I'd like to be her friend\". Sadly, if your writing is full of jargon, they're more likely to think \"what a silly twit\" and go read something else.\r\n\r\nIn this talk, Lana will go through some of the ways you can make your writing clearer, more engaging, and honest, without using too many big words.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/39/",
"cancelled": false,
"twitter_id": "Loquacities"
},
{
"room": "Room 8",
"rooms": [
"Room 8"
],
"start": "2020-01-17T10:45:00",
"end": "2020-01-17T11:30:00",
"duration": 45,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": null,
"conf_key": 101,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "The magical fantasy land of Linux kernel testing",
"authors": [
{
"name": "Russell Currey",
"twitter": "russelldotcc",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/lca_lmao.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "The Linux kernel does a lot of stuff, and runs on a lot of stuff. I'm sure we can all agree that this is a good thing, however the matrix of stuff it does and stuff it runs on continues to get bigger and bigger! With thousands of commits each release and a widely distributed and decentralised developer community, how do we make sure that the kernel still works on everything, does everything it's supposed to do, and hasn't slowed anything down in the process?\r\n\r\nIn this session we're going to be looking at the huge variety of automated kernel testing projects to figure out what's going on, covering a variety of different areas, including:\r\n\r\n- per-patch CI to quickly test if a developer broke something,\r\n- built-in kernel selftests and the push for more unit testing,\r\n- performance testing of the kernel itself and userspace,\r\n- regression testing, especially for known security issues,\r\n- hardware testing, from enormous 512TB machines to huge farms of small SOCs.\r\n\r\nBy understanding the huge web of projects out there, hopefully we can figure out how we could get more stuff done more effectively. It's a difficult problem in the broad and uncoordinated space of Linux kernel development, but it's all in pursuit of the dream: \r\n\r\nthe magical fantasy land - with no duplication of code or effort, where everything is tested, where everyone knows where everything is, and where bugs are never introduced again.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/106/",
"cancelled": false,
"twitter_id": "russelldotcc"
},
{
"room": "Arena",
"rooms": [
"Arena"
],
"start": "2020-01-13T10:45:00",
"end": "2020-01-13T11:15:00",
"duration": 30,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "System Administration",
"conf_key": 106,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "OpenZFS and Linux",
"authors": [
{
"name": "Nikolai Lusan",
"twitter": "",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/07cd82061e0fec0a6404e670b23cef5b?s=120&d=mp"
}
],
"abstract": "OpenZFS has come a long way in recent times, and with the deprecation of BTRFS we are not likely to see a filesystem with comparative feature set anytime soon. The ZoL (ZFS on Linux) project is now the main source of contributions to the OpenZFS code base, and is incredibly stable and robust. With OpenZFS now supporting native encryption it can simplify management of you data storage from the mdadm/luks/lvm method commonly seen deployed. Other features can improve performance and allow more efficient usage of disk storage. Whether you're storing personal files, hosting a development environment/webserver/email/database, running a virtual host, holding large amounts of corporate data there is probably a ZFS usage case for you.\r\n\r\nThis talk aims to give an outline of installing, using and administering a Linux server with ZFS as the root filesystem and for data storage. This includes:\r\n * Caveats of installation and use. \r\n * Benefits of ZFS.\r\n * Designing/Managing storage pools.\r\n * Demonstration of pool creation using different disk topologies.\r\n * Using features like native encryption, block level compression, and database optimisation.\r\n * Using snapshots, including for off site backup.\r\n * ZFS and other Linux filesystems on one machine.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/110/",
"cancelled": false
},
{
"room": "Room 5",
"rooms": [
"Room 5"
],
"start": "2020-01-13T10:45:00",
"end": "2020-01-13T11:15:00",
"duration": 30,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "Creative Arts",
"conf_key": 111,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Emersive theatre tech - building actuators last minute",
"authors": [
{
"name": "Sven Dowideit",
"twitter": "SvenDowideit",
"contact": "redacted",
"picture_url": "https://secure.gravatar.com/avatar/296ff548c507f51831c478c7d19cff2a?s=120&d=mp"
}
],
"abstract": "In my day job, I'm a DevOp. In my almost non-existent spare time, I build hardware and software for immersive theater.\r\n\r\nWe just did the final chapter of the current \"Game\" at Woodford, and to add to the magic of the festival wide user lead adventure, we have interactive installations that become a part of the story.\r\n\r\nInside, is a horrific mess of raspberry pi's, esp8266 and esp32's, all chattering away on wifi, blinken lights, movement and sound - and that's what I'll talk about.\r\n\r\nThe failures are always epic, the successes mindblowing, and the smoke, everywhere.\r\n\r\n\r\n\r\n\r\nsee https://woodfordfolkfestival.com/programme/the-game/",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/165/",
"cancelled": false,
"twitter_id": "SvenDowideit"
},
{
"room": "Room 6",
"rooms": [
"Room 6"
],
"start": "2020-01-13T10:45:00",
"end": "2020-01-13T11:15:00",
"duration": 30,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "Games and FOSS",
"conf_key": 114,
"license": "CC-BY-SA",
"tags": "",
"released": true,
"contact": [],
"name": "Kerbal Space Program: A Journey into Mod Metadata Herding",
"authors": [
{
"name": "Leon Wright",
"twitter": "Techman_83",
"contact": "redacted",
"picture_url": "/site_media/media/speaker_photos/22490177_1529540317115847_6828704173815700413_n.jpg.120x120_q85_crop.jpg"
}
],
"abstract": "Mid to late 2015, when sharing mod configurations Paul Fenwick and I were lamenting over the pain of hand managing mod updates, which for me meant rarely modding games. For Paul meant learning C#, designing and writing the Comprehensive Kerbal Addon Network for Kerbal Space Program mods.\r\n\r\nThe project has come a long way since the initial concept in late 2014 and the conversion from some hacked scripts into a full indexing service in late 2015. But technical debt and over triple the number of tracked mods began to really affect reliability, along with our ability to make changes. What once took our automated indexing service 20 minutes to complete a run, had slowly crept up into multi digit hours and required semi regular manual intervention.\r\n\r\nThis talk will cover a bit of a peak behind the curtains of a service used by over 100,000 non developers, nearly a 1000 unique mod authors and tracking the release cycles of over 1000 individual mods.",
"conf_url": "https://lca2020.linux.org.au/schedule/presentation/190/",
"cancelled": false,
"twitter_id": "Techman_83"
},
{
"room": "Room 7",
"rooms": [
"Room 7"
],
"start": "2020-01-13T10:45:00",
"end": "2020-01-13T11:05:00",
"duration": 20,
"kind": "talk",
"section": "main",
"section_name": "Main Conference",
"track": "Open ISA",
"conf_key": 117,
"license": "CC-BY-SA",
"tags": "",
"released": true,