# 13.12.2019 // Protokoll Jit.si-Konferenz 09.12.19

<div class="row ui-content" id="bkmrk-"><div class="ui-view-area">  
</div></div><div class="markdown-body container-fluid" id="bkmrk-protokoll-jit.si-kon"><div class="toc">- [Protokoll Jit.si-Konferenz 09.12.19](https://pad.gwdg.de/#Protokoll-Jitsi-Konferenz-091219 "Protokoll Jit.si-Konferenz 09.12.19")
    - [Teilnehmer](https://pad.gwdg.de/#Teilnehmer "Teilnehmer")
    - [“Morphologischer Kasten”](https://pad.gwdg.de/#%E2%80%9CMorphologischer-Kasten%E2%80%9D "“Morphologischer Kasten”")
    - [Fragen die noch zu klären sind…](https://pad.gwdg.de/#Fragen-die-noch-zu-kl%C3%A4ren-sind%E2%80%A6 "Fragen die noch zu klären sind…")
        - [Kuratiertes Framework vs. Erweiterbarer Monolith](https://pad.gwdg.de/#Kuratiertes-Framework-vs-Erweiterbarer-Monolith "Kuratiertes Framework vs. Erweiterbarer Monolith")
        - [Fabian:](https://pad.gwdg.de/#Fabian "Fabian:")
        - [Was soll beim 36C3 geschehen?](https://pad.gwdg.de/#Was-soll-beim-36C3-geschehen "Was soll beim 36C3 geschehen?")
        - [Geld beim VoW?!](https://pad.gwdg.de/#Geld-beim-VoW "Geld beim VoW?!")
    - [Monolith / Modulsystem / FrameWork??](https://pad.gwdg.de/#Monolith--Modulsystem--FrameWork "Monolith / Modulsystem / FrameWork??")
- [nächster Call](https://pad.gwdg.de/#n%C3%A4chster-Call "nächster Call")

</div></div>## Teilnehmer

<div class="markdown-body container-fluid" id="bkmrk-micha-%28kiel-%2F-wsk%29-f">- Micha (Kiel / WSK)
- Fabi (HRW / Düsseldorf / FabAccess)
- Dequbed (Berlin / BF2H)
- Thee (BHT / Bachelorarbeit TI)
- Marcus Drobisch (Dresden / RoseGuard)
- Kevin (Dresden / RoseGuard)
- Maximilian Voigt (Cottbus / VOW)
- Tasso / Knurps (Berlin / BHT)

</div>## “Morphologischer Kasten”

[\[OAS\]](https://pad.gwdg.de/oFvXyiMzTeyYlU5KCKHrKw) [\[RoseGuarden\]](https://pad.gwdg.de/v-xVnpWQREmBGuLG_hYTfQ) [\[BF2H\]](https://pad.gwdg.de/XrReiGdCS-GfcWhEKgjTBA)

<div class="markdown-body container-fluid" id="bkmrk-fabaccess-ist-semest">- FabAccess ist Semesterprojekt-Arbeit (18SWS) … und noch zusätzlich durch VOW gepusht. Bis März

</div>MLP / MAP: Sinnvoll … nur, vermeiden dass das Skateboard mit dem Endprodukt vermischt wird &amp; den ersten Eindruck “versaut”.

Entscheidungen: Konsens / Systemisches Konsensionieren

Programmiersprache:

<div class="markdown-body container-fluid" id="bkmrk-wollen-wir-das-jetzt">- [x] <label></label>Wollen wir das jetzt entscheiden?
- Frontend ist nicht zwingend Backend.

</div>&lt;Fabian&gt; Klare Empfehlung, Diskussion über Technologie relativ spät. Was sind die UseCases? … Was kann ich aus den UseCases ableiten, sinnvolle Technologien dazu zu finden.&lt;/Fabian&gt;

&lt;Marcus&gt;+1 technische Features / Technologien ja … Programmiersprache als Basic früher.&lt;/Marcus&gt;  
&lt;M V&gt; Vorstellung der bisherigen Systeme … was kann man dort herausziehen? - ergibt sich daraus schon etwas?&lt;/M V&gt;

&lt;Fabi&gt;Hilft Sprachwahl auf Meta-Ebene?&lt;/Fabi&gt;

\[…\] Sprachdiskussion.

<div class="markdown-body container-fluid" id="bkmrk-funktionale-%2F-typsta">- funktionale / typstarke Programmiersprachen: Stabiler. Vermeiden Bugs “aus Versehen” einzubauen. Compiler verbietet mehr Fehler.
- Ruby / Python / … breitere Basis an potentiellen Programmierern / Community.
- Sicherheit herstellen durch Testing.
- Sicherheit herstellen durch typisierte Sprache &amp; Testing.
- [ ] <label></label>Rust kann’s / würde es gerne lernen / kann’s nicht / kann’s nicht / kann’s nicht / 3x gerne lernen / 1x wofür? / community wird beschnitten / schnell lernbar (viel Doku) /
- [ ] <label></label>Python halbwegs / kann’s, aber nicht genug für Infrastruktur-Software / nutze es täglich um Messdaten auszuwerten, mittelgut / geht bisschen Datenmanipulation / gut dabei / relativ gerne // ja, gerne / wäre bereit zu lernen / hätte bock, mehr zu machen / kein Bedarf // Doku gibt’s, schnell lernbar, größere Community als Rust, übel viele Libraries. Python2 … ist tot. Python 3.6 hat typechecks, aber so … hmm.
- [ ] <label></label>Java / kann’s ein bisschen, nicht genug für Infrastruktur / kann’s ein bisschen, auch Infrastruktur damit gemacht. / hab’s ein bisschen, hauptsächlich App-Entwicklung / mal 1 Semester mit AndroidStudio / paar Kurse gehabt // nicht wahnsinnig Bock drauf, würd’s aber machen +1 / ungern --&gt; Kotlin +2 // 9 ist in 2000ern angekommen
- [x] <label></label>Kotlin / kann … keiner? / 2x: lieber bei Java bleiben als Kotlin zu lernen / gerne lernen +1 / Java ohne Java-Fehler (NullPointerException / …) schwer zu lernen.
- [x] <label></label>Scala IDE aufwärmen / Programmieren lernen / Programmieren lernen / Programmieren lernen / Programmieren lernen // kann / will keiner
- [ ] <label></label>TypeScript kann ich gut / relativ viel JavaScript, bisschen TypeScript und node.js TypeScript: ein wenig, steile Lernkurve / noch nie verwendet, JavaScript doch öfter, leicht zu lernen / äääh, nein. / nicht so viel damit gemacht // überzeugt mich / gerne lernen // kommt aus dem Node-Umfeld, typisiert, strict-mode verhindert viel Unfug, viele schlechte, aber auch viele gute Bibliotheken, große Community, geringe Einstiegshürden, ProtokollImplementation … will man wohl nicht machen, Bibliotheken (z.B. AMQP) sind aber verwendbar. (Viele) Backend-Tasks müssten abgedeckt sein.

</div>Fragen:

<div class="markdown-body container-fluid" id="bkmrk-k%C3%B6nnen-wir-stabil-wi">- können wir
- stabil
- wie schnell kann man’s lernen?
- wie viel muss man selber machen?

</div>Bewertung (1: Am liebsten 4: Am wenigst liebsten X: VETO):

<div class="markdown-body container-fluid" id="bkmrk-dequbed-%2810h---20h-b">- dequbed (10h - 20h Back):
    
    
    - Rust: 1
    - TypeScript: 2
    - Java: 3
    - Python: 4
- mdrobisch (langfristig viel):
    
    
    - Python: 1
    - TypeScript: 2
    - Rust: 3
    - Java: 4
- fabi (15 - 20h Front&amp;Back):
    
    
    - Python: 2
    - TypeScript: 1
    - Rust: 4
    - Java: 3
- Thee:
    
    
    - Python: 1
    - TypeScript: 3
    - Rust: 2
    - Java: 4
- SUM:
    
    
    - Rust: 1 + 3 + 4 + 2 = 10
    - Python: 4 + 1 + 2 + 1 = 8
    - TypeScript: 2 + 2 + 1 + 3 = 8
    - Java: 3 + 4 + 3 + 4 = 14

</div>Frontend: Kevin / Marcus / Fabian /  
Backend: Dequbed / Marcus / Fabian / Thee  
Firmware Clients: Tasso / Dequbed / Thee

Ranking: Beliebteste Sprache? … Sprache die am häufigsten verwendet wird? … Was kann wer aktuell? … was machen viele? … was machen “die Guten”?

Kotlin - noch nicht so gewachsen wie Java  
Java 9 - kaum Dokumentation, aber gewachsen.  
Java 5 - viel Dokumentation aber nicht 2020.  
Python Umstieg 2 zu 3 … relativ unproblematisch.  
Python: Exceptions, daher potentiell instabil. Evtl. abfangbar mit Lint / CI  
TypeScript … ist Javascript mit strikter Typisierung --&gt; fängt viele Fehlermöglichkeiten ab. TypeScript != Node.js  
Node kann threaden, erreicht gute Performance, JavaScript ist event-fokussiert, singlethreaded. Node kann zwar threaded, man arbeitet aber ähnlich wie im Browser.  
Promises … gibt’s in TypeScript. Alles aus JavaScript + TypSystem. Java: geht, Python: geht (twisted?) … Rust: Standard-Feature

## Fragen die noch zu klären sind…

### Kuratiertes Framework vs. Erweiterbarer Monolith

### Fabian:

<div class="markdown-body container-fluid" id="bkmrk-paper-ist-zur-sensor">- Paper ist zur SensorNets [Link](http://www.sensornets.org/DoctoralConsortium.aspx) angenommen. Kann in der Endversion auf OAS erweitert werden und Öffentlichkeit für unser Projekt zu generieren.
- Alex Roussolet? … europäische Ebene aktivieren / Erasmus für MakerSpaces / FabLabs (Belgien, Frankreich, …)

</div>### Was soll beim 36C3 geschehen?

<div class="markdown-body container-fluid" id="bkmrk-technische-fragen%2C-d">- Technische Fragen, die bis da hin vermutlich mehr als weniger werden “live und in Farbe” … klären!
- Nur am Rande … von 3 Core-Leuten sind 1 da!
- Statt dessen den Workshop-Slot nutzen, um Feedback aus der 36C3-Community abholen. Sicht von außen auf Teile unserer bisherigen Diskussionspunkte.
- UseCases sammeln.

</div>### Geld beim VoW?!

<div class="markdown-body container-fluid" id="bkmrk-sozialfonds-ist-gut.">- Sozialfonds ist gut.
- Hardware auch.

</div>## Monolith / Modulsystem / FrameWork??

[Monolithic vs. Modular (JavaScript/Node.js)](https://medium.com/@berto168/monolithic-vs-modular-9b6d69684a2c)  
[Simon Brown - Modular Monoliths](https://www.youtube.com/watch?v=kbKxmEeuvc4)

# nächster Call

Doodle - lockerer, offener Termin noch vor Weihnachten? … ansonsten intensiver im neuen Jahr.

<div class="markdown-body container-fluid" id="bkmrk--1"></div>