FOSDEM 2019

Fosdem Logo

⅔ detektywów odwiedziło (już po raz trzeci) – FOSDEM, jedną z największych konferencji FOSS na świecie.

Co to FOSDEM?

FOSDEM jest konferencją wyjątkową pod każdym względem.

Jeśli jesteś przyzwyczajony do Devoxxa czy Geecona, który skupia się na świecie JVM, to mocno się zdziwisz – Free Java to tylko jedna ze ścieżek. Nie ma tu też obecnego na większości komercyjnych konferencji “straganiarstwa”. Owszem są stoiska, tylko promują one w 100% otwarty kod. Wystawcami nie zawsze są firmy i organizacje, ale pasjonaci. Nikt też nie rozdaje koszulek (te możesz kupić jako cegiełkę wspierającą dany projekt). Nie ma tandetnych gadżetów z Chin. Na stoiskach możesz porozmawiać z deweloperami, maintenerami, grafikami i innymi osobami zaangażowanymi w rozwój danego projektu.

FOSDEM stawia na Free Software w przeciwieństwie do OpenSourceSummit (dawniej LinuxCon), który chociaż jest tematycznie podobny, zdominowany został przez duże korporacje, którym nie zawsze jest po drodze z czterema niezbędnymi wolnościami kodu.

Miasto

Konferencja co roku odbywa się w Brukseli w pierwszy weekend lutego na kampusie Wolnego Uniwersytetu Brukselskiego. Zwykle pogoda przypomina tę, którą mamy w Polsce, z tą różnicą, że rzadko pada śnieg. Raczej jest deszczowo i pochmurnie.

Ludzie

Są tu wszyscy. Od deweloperów, przez grafików aż po copywriterów i prawników. FOSDEM przyciąga ponad 5000 ludzi (mam wrażenie, że z roku na rok coraz więcej). Zawsze pojawia się kilka gwiazd IT. W tym roku to między innymi: Scott Hanselman, Francesc Campoy czy Daniel Stenberg

Kampus uczelni + masa ludzi = kolejki

Niestety przy takiej ilości osób sale z najgorętszymi wykładami pękają w szwach. Na FOSDEMie trzeba się przyzwyczaić, że nie uda się wejść na wybraną prezentację (czasem nawet nie ma miejsca w kolejce). Rozwiązania są dwa:

  • Przychodzimy z samego rana i zajmujemy miejsce – działa tylko, jeśli interesuje nas cała ścieżka (np. Go)
  • Szukamy wolnego miejsca na korytarzu, zakładamy słuchawki i oglądamy transmisję na żywo

FOSDEM fringe

Wokół FOSDEMu rozgrywa się wiele spotkań dla pasjonatów konkretnych technologii. Wartym wspomnienia jest K8s Meetup i MySQL Dinner. W tym roku właśnie tutaj zostało wydane Homebrew 2.0

Wykłady

Liczba prelekcji jest oszałamiająca (742) i jest z czego wybierać. Wszystko rozgrywa się w 34 salach przypisanych do poszczególnych ścieżek. Pełną listę na cały dzień można zobaczyć tu: Sobota, Niedziel*. Prawda, że robi wrażenie? Z tych wszystkich ścieżek (ponad 60) trzeba wybrać coś dla siebie i pamiętać o planie B, a nawet C, gdyby nie udało się wejść do sali.

Dzień #1

The state of Go

Prezentacja pokazała, co się zmienia w Go na 3 płaszczyznach: biblioteki standardowej, wydajności i społeczności. Francesc co roku prowadzi prezentację w tej konwencji otwierając ścieżkę poświęconą Go.

W skrócie Go 1.12 (wydane już niebawem) jest kompatybilna wstecznie (jak zawsze), wspiera tls 1.3 (bez 0-RTT) i websockets oraz kompiluje się do webassembly.

  • Bartosz: 👍pozytywna, konkretna
  • Tomek: 👍łatwa, miła i przyjemna

GBForth: Using Forth to understand the Game Boy

To historia o dwóch gościach, którzy stworzyli DSL w języku Forth (polecam się zapoznać, bardzo ciekawa architektura języka, który wszystko trzyma na stosie), który jest kompilowany do natywnego kodu binarnego Game Boy.

Prezenterzy i my polecamy również: The Ultimate Game Boy Talk (33c3)

  • Bartosz: 👍pasjonaci, miło takich spotkać
  • Tomek: 👎ciekawa, ogólna, za krótka

Performance tuning Twitter with Graal

Inżynierowie z Twitter VM Team rozwijają platformę Autotune, która pozwala eksperymentować z parametrami uruchomieniowymi aplikacji w celu znalezienia optymalnych ustawień. Wszystko zapakowane jest w przejrzyste wykresy i tabelki z wynikami eksperymentów, które oparte są o model wnioskowania bayesowskiego.

Dodatkowo pokazali dowody, że sama zmiana Wirtualnej Maszyny Javy (JVM) na GraalVM, potrafi zredukować cykle GC o 4% i użycie procesora o 12%.

Więcej info: Automated Performance Tuning with Bayesian Optimization (Mesoscon 2017)

  • Bartosz: 👍rzetelna, poparta danymi, przypominająca, że warto eksplorować inne implementacje JVM
  • Tomek: 👍inspirująca, zachęca do eksperymentowania z wydajnością, za krótka*

Securing JVM

Prelegent przeprowadził na scenie 2 ataki na standardowe, nietrywialne aplikacje JVM. Pokazał, jak bardzo trudno jest zapewnić bezpieczeństwo aplikacji, skoro JVM daje takie duże możliwości refleksji. Można było na własne oczy zobaczyć, jak wprowadzić praktycznie niewykrywalny backdoor do aplikacji. Zaproponował strategię 0 tolerancji dla nieokreślonego w polityce bezpieczeństwa aplikacji – choć było to nieco kontrowersyjne. Ewidentnie brakuje toolingu, który automatyzuje tworzenie tej polityki na podstawie komunikatów dostępowych w runtime. Moduły Java 9 (jigsaw) rozwiązują część problemu, ale nadal nikt ich tak naprawdę nie wspiera.

  • Bartosz: 👍dla zainteresowanych security, hacking na żywo zawsze na plus, kiepsko podane
  • Tomek: 👎słaby prezenter, ciekawostka, opisuje problem, który rozwiązany został w moduła* ch z Javy9+

DNS over HTTPS

Autor curl’a wyśmiewa ponad trzydziestoletni protokół DNS, który w 2019 roku nadal jest przesyłany jawnym tekstem (na wielu poziomach!) i mówi jakie zagrożenia są z tym związane. Proponuje otwarcie swoich umysłów i porzucenie sztywnych zasad rządzących sieciami od wielu lat, czyli użycie znanego nam już stacku TLS (Do*) i przeniesienia protokołu DNS na warstwę aplikacji – HTTPS (DoH). Autor pokazał implikacje wynikające ze swojego pomysłu i porównuje je z innymi podejściami do zapewniania prywatnośći w internecie: DNSSEC i DNSCrypt. Warto zapoznać się z resztą FOSDEMowej dyskusji o bezpiecznym DNSie.

  • Bartosz: 👍prawdziwy wizjoner, obnaża poważny problem, popularny temat prywatności
  • Tomek: 👍otwiera oczy na problem, dobry warsztat, przygotowany prezenter*

Netflix and FreeBSD

Mogliśmy zapoznać się z budową infrastruktury Netflixowego CDNa – Open Connect. Sednem prezentacji była opowieść o tym, jak inżynierowie Netflixa aktywnie kontrybuują do projektu FreeBS*. Jonathan pokazał, że można podążać za releasami i stabilnymi wydania mi, trzeba jednak wtedy być gotowym na rzadsze, ale bardziej skomplikowane i większe aktualizacje. W Netflixie jednak dobrze sprawdza się alternatywne podejście, czyli korzystanie z brancha master (trunk) i regularne (co 5 tygodni) dociąganie aktualnej wersji. W ten sposób firma może aktywnie kontrybuować do projektu, a aktualizacje są mniejsze i łatwiejsze do wdrożenia.

  • Bartosz: 👍podważa całą ideę wersjonowania, zazdroszczę netflixowi, słabo podane
  • Tomek: 👍inspirująca, w duchu FOSS, zachęca do życia “na krawędzi” :)*

Tuning Go GC parameters

Krótkie przejście przez jedyny parametr konfiguracji GC w Go czyli zmienną GOGC.

  • Bartosz: 👎spodziewałem się więcej “mięsa”
  • Tomek: 👎zmieściłbym to w lighting talk*

How K8s used gRPC to…

…naprawdę słaba prezentacja o wszystkim i o niczym.

  • Bartosz & Tomek: 👎👎

Lightning talks: [5 min]

Go for javascript developers

  • Tomek: 👎 za dużo, za szybko

Tips for designing better go packages

  • Tomek: 👍ogólne wprowadzenie do dokumentacji

How we halved our hardware costs by forking golang compiler

  • Tomek: 👍fajnie, że zakontrybuowali do golang compilera po znalezieniu problemu u siebie

Golang slices gotchas

  • Bartosz: 👍chociaż gdzieś już to widziałem ;)
  • Tomek:👎miałem za mało czasu

OSX menubar with go

  • Tomek, Bartosz: 👍zajawka fajnego projektu bitbar

Tinygo: Go for small places

  • Bartosz: 👍wreszcie coś fajnego na arm
  • Tomek: 👍zwiastun keynota następnego dnia

Dzień #2

Hacking Tesla to FreedomEV

Właściciel Tesli model X pokazuje publiczności swój projekt: FreedomEV. Opowiada, czemu oprogramowanie do samochodów powinno być otwarte dla wszystkich. Szczególnie fajnie było zobaczyć działające demo. Aby osiągnąć prawdziwą wolność w tym temacie potrzebna jest synergia z producentami samochodów takich jak Tesla. Tesla jest trendsetterem, chętnie wspiera środowisko Open Source. Tesla to nie tylko samochód, lecz ciekawa architektura pojazdu oparta o webserwisy. Trudno osiągnąć kompromis dotyczący konta root do linuxa, który jest pod maską auta, ale już teraz FreedomEV wygląda naprawdę obiecująco. Dzięki wizji Elona Muska, który otwiera patenty, inicjatywa nabiera na znaczeniu. Już niedługo będzie więcej niż jeden liczący się producent elektryków.

  • Bartosz: 👍bardzo fajnie, że ludzie myślą o takich rzeczach na tak wczesnym etapie rewolucji samochodowej
  • Tomek: 👍 root na własnym sprzęcie to podstawa

Go on Microcontrollers: Small Is Going Big

Prezenter przeszedł jak burza przez kilka demonstracji zaczynając od prostego mrugnięcia diodą aż do sterowanego radiem drona z kamerą i analizą obrazu w locie. TinyGo to kompilator Go, który jeszcze nie jest zgodny w 100% ze swoim dużym bratem, ale i tak sporo potrafi. Wynikowy binarka charakteryzuje się wyjątkowo małym rozmiarem. TinyGo już teraz zapewnia wsparcie dla popularnych MCU.

  • Bartosz, Tomek: 👍to uczucie kiedy piszesz goroutine która działa na arduino i zajmuje 1 kb.show, demo, brak istotnych szczegółów

From table to index (and back) with Hibernate Search 6

Hibernate-search pozwala automatycznie przenosić dane encji (oznaczone jako @FullTextSearch) do zewnętrznej instancji Elastic’a.

  • Tomek:👎tylko dla Javowcow
  • Bartosz:👎 Wyglądało na wygodne, chociaż pełne magii. Prezentacja to czysta reklama Hibernate.

Homebrew 2.0

Premiera nowej wersji, która zapewnia wsparcie dla Linuxa. Czemu to ważne? Bo Homebrew to jedyny packet manager działający bez roota. Zobaczyliśmy 10 najważniejszych zmian, które Homebrew przeszło od wersji 1 do 2. Wersja 2.0 wydana w kawiarni podczas FOSDEMu.

  • Tomek: 👍 krótko i zwięźle, zrozumiałem chociaż nie używam
  • Bartosz: 👍 mega plus za społeczność, szczególnie obecną na sali.

TRex

Prezentacja narzędzia do generowania ruchu: TRex

  • Tomek: 👎 spóźniłem się i nie załapałem idei
  • Bartosz:👎 typowa reklama narzędzia

Next Generation Internet initiative – Year Zero

Internet w obecnym stanie nie jest gotowy na XXI wiek. Giganci informatyczni trzymają w garści całą sieć. Celem rządów państw jest powstrzymanie monopolistów przed przejęciem sieci. Prezentacja pokazała, że dostępne są fundusze na prace R&D w celu naprawienia internetu. Pokazała projekty, które dostały finansowanie i pomoc w badaniach, jakiej nie powstydziłby się duże korporacje.

  • Tomek: 👎 słaby warsztat, ale ważny temat
  • Bartosz:👎 słabo przekazane, ale dowiedziałem się, że Unia Europejska ma budżet na finansowanie projektów Open Source!

Add enterprise 2FA to your ownCloud in 15 minutes

Krótka prezentacja, jak szybko dodać 2FA (razem z U2F) do ownCloud.

  • Tomek: 👎 szczegółowa, dużo kodu, demo nie działało
  • Bartosz: 👎 prezentacja jednego ficzera ownCloud, bardzo wąskie grono zainteresowanych

Monica, a personal CRM

Prezentacja narzędzia do zarządzania kontaktami i informacjami na ich temat. Nie chcemy polegać na Facebook’u czy Google’u w naszym prywatnym życiu. Deweloperzy pokazali podstawowe przypadki użycia.

  • Tomek: 👎 projekt dopiero we wstępnej fazie, zwykła adminka
  • Bartosz: 👎 oczekiwałem więcej niż tylko pokazania kilku (prostych) ekranów lub nie rozumiałem fenomenu

The Cloud is Just Another Sun

Linux i ruch FOSS wygrał wojnę o dominację nad światem. Jest wszędzie w naszych domach, samochodach, telefonach, komputerach i serwerach. Jednak czy na pewno? Jeszcze nie opadł popiół po wojnie o UNIX, a już jesteśmy w centrum nowego konfliktu – wojny chmur. Czy nowa wojna nie zabierze nam wszystkiego. o co walczyliśmy? W ☁️ nie kontrolujemy niczego, a wszystko opiera się na własnościowym oprogramowaniu dostawców. Nim się obejrzymy Linux może zniknąć.

  • Tomek: 👍 ciekawa, sygnalizuje problem, pesymistyczna
  • Bartosz: 👎 smutna prawda


Dodaj komentarz