Meetup Segfault Kraków

Meetup Segfault Kraków

Rejestracja
Uczestnik
Rejestracja zakończona 09.07.2022 10:00
zakończona

Opis wydarzenia

Widzimy się ➜ 28 czerwca 2022, o 17:00, w Krakowie.

3 projekty, by w jeden je połączyć, JVM potężnym uczynić!

W świecie Java, a tak naprawdę JVM, nadciąga rewolucja. Trzy najbardziej wyczekiwane zmiany w specyfikacji maszyny wirtualnej zbliżają się już ku końcowi.

Niecierpliwi mogą już korzystać z tzw. "incubator features" lub z "early access builds". Nadchodzące wersje Javy pełne będą zmian i rewolucji, nie tylko na poziomie języka, ale także nowych API, czy też nowych możliwości na poziomie struktury obiektów w pamięci i rozszerzonego systemu typów.

Podczas tego wieczoru, kapłani maszyny, bracia:
➜ Krystian Zybała,
➜ Arkadiusz Sokołowski,
➜ i Jarosław Pałka podzielą są z Wami wiedzą o projektach Loom, Valhalla i Panama.

✓ Jeśli chcecie wiedzieć co się zmieni w temacie współbieżności wraz nadejściem projektu Loom i wirtualnych wątków...
✓ Jeśli chcecie zrozumieć dlaczego "value types", "primitive types" i "generics over primitive types" to najbardziej wyczekiwane zmiany w systemie typów...
✓ A może interesuje Was jak projekt Panama pozwala na zarządzanie pamięcią poza stertą i jak JNI zostanie posłany na śmietnik historii, poprzez nowy mechanizm "foregin functions"...

17.00 - Otwarcie meetupu
17.15 - Arkadiusz Sokołowski: Project Valhalla - Codes like a class, behaves like an int
18.00 - Przerwa
18.15 - Jarek Pałka: Bare metal Java
19.00 - Przerwa
19.15 - Krystian Zybała: Oto nadchodzi Loom, współbieżność już nigdy nie będzie taka sama
20.00 - Dyskusja


Tylko podczas jednego wieczoru dokonacie darmowej aktualizacji swojej wiedzy o Java i JVM.
Kod, przykłady i dyskusje - będzie czas na to wszystko.
Gorąco zapraszamy!

Widzimy się ➜ 28 czerwca 2022, o 17:00, w Krakowie

--------------

Arkadiusz Sokołowski: Project Valhalla - Codes like a class, behaves like an int

Abstrakt:
Java jest z nami już od ponad 25 lat. Niektórzy twierdzą, że jest już nieco przestarzała. Tymczasem Java znacząco zmieniła się przez te lata, a w niedalekiej przyszłości pojawi się jeszcze więcej modyfikacji i unowocześnień! W trakcie prezentacji porozmawiamy o jednej z największych i najważniejszych nadchodzących funkcjonalności. Jednym z najbardziej istotnych problemów Javy jest zarządzanie pamięcią. Mamy “lekkie” typy proste, oraz “ciężkie” klasy i obiekty. Programiści mogą używać typów prostych, ale nie mogą tworzyć swoich. Z drugiej strony, programowanie generyczne jest możliwe w świecie klas, ale już nie typów prostych. Projekt Valhalla próbuje rozwiązać ten problem. W jaki sposób? Co to właściwie znaczy dla programistów? Co to może znaczyć dla frameworków, takich jak Spring czy Junit? Co się zmieni “pod maską”? W trakcie prezentacji poruszymy wszystkie te zagadnienia!

Bio:
Arek posiada 20 lat praktycznego doświadczenia z Javą i innymi językami JMV-owymi. Lubi rozwiązywać problemy, nie kodować. Aktualnie pracuje jako Team Manager w Allegro oraz wykłada Javę na Uniwersytecie Jagiellońskim.

---

Jarek Pałka: Bare Metal Java

Abstrakt:
Java, a tak naprawdę JVM, cieszy się zasłużoną sławą platformy nieprzyjaznej dla sprzętu, a co za tym idzie, nikt poważny (oprócz Apache Kafka, Elastic, Cassandra i Neo4j) nie będziebudował baz danych, kolejek i innych rozwiązań gdzie "mechanical sympathy" jest kluczowe.
Garbage collector, spekulujący JIT, brak kontroli nad "object layout", fatalne wsparcie (głównie przez brak abstrakcji) dla funkcji nowoczesnych procesorów i systemów operacyjnych. I do tego jeszcze JNI (kto tam był to wiem o czym mówię). (O implementacji IO nawet przez szacunek do samych siebie, nie wspominam)

Celem tej prezentacji jest odczarowanie tych mitów i pokazanie jak wiele wysiłku ostatnio idzie ostatnio w uczynienie JVM bardziej przyjaznego dla sprzętu.
Będzie o API, których są jeszcze w fazie inkubacji (choć niektóre jeszcze nie dojrzały do tego, a niektóre są już stabilne). API których, być może nigdy w życiu nie zobaczycie, a które będą w przyszłości stanowić fundament baz danych, czy kolejek.

Zaczniemy od Unsafe, by nadać rys historyczny. By potem pokazać, foreign memory access, czyli jak bezpiecznie pracować z pamięcią poza stertą oraz
foreign functions interface, czyli jak wywołać C z Java ( i w drugą stronę ).

Wszystko polane sosem niedziałających przykładów i przekłamanych micro benchmarków i OpenJDK skompilowanego na pięć minut przed prezentacją.

Bio:
Od ponad 20 lat w branży IT jako administrator baz danych, programista, architekt, manager i „inżynier od spraw katastrof”.
Brałem udział w małych, średnich i nonsensownie dużych projektach, prowadzonych zgodnie zasadami „waterfall”, Agile oraz przy braku jakichkolwiek metodyk - z tym samym zawsze skutkiem. Wszystko to doprowadziło mnie do wniosku, że nieważne co robisz, ważne byś robił to dobrze, w najprostszy z możliwych sposobów i przy użyciu właściwych narzędzi, które wykonają pracę za Ciebie. W międzyczasie dałem się porwać ideom TDD oraz Software Craftmanship, do granic możliwości wyeksploatować tak piękne w swej prostocie pomysły jak REST i NoSQL. Porzuciłem je, by zgłębić tajniki „system thinking” i zachwycić się siłą, jaką niesie ze sobą „metafora” oraz by odkryć, że rządzą nami te same prawa „natury”.
Niepokorny wyznawca kościoła JVM, badacz bytecode’u i JIT oraz wszelkiej maści parserów, interpreterów i kompilatorów. Na co dzień walczący o lepszą wydajność w Neo4j.
Od czasu do czasu można usłyszeć moje niskiej jakości żarty na temat architektury na konferencjach w Polsce.
W wolnych chwilach trener w Symentis, autor bloga na http://geekyprimitives.wordpress.com/ oraz samozwańczy dyktator w Radzie Programowej konferencji Segfault.

--

Krystian Zybała: Oto nadchodzi Loom, współbieżność już nigdy nie będzie taka sama

Abstrakt:
There are only two hard things in Computer Science: cache invalidation and naming things.   
-- Phil Karlton

Prawda jest inna, jest tylko jedna rzecz trudna w naszej pracy, współbieżność.

W czasach gdy Herbt Sutter wszem i wobec ogłosił, że skończył się darmowy lunch (The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software), współbieżność stała się naszą codziennością.W Javie nadchodzi wielka zmiana, projekt Loom a z nim takie nowe terminy jak "virtual thread", "continuations" i "structured concurrency". Jeśli zastanawiałeś się co zmienią w naszej codziennej pracy albo
czy warto przepisać swoją aplikacje z Tomcatem na super wydajne reaktywne Netty,czy może poczekać na projekt Loom? Ta prezentacja jest dla Ciebie.
Opowiem o projekcie Loom i o nowych możliwościach związanych z wirtualnymi watkami i "structured concurrency". Opowiem Ci jak to działa i co można osiągnąć i jaki ma to wpływ na wydajność.

Bio:
Programista z 10 letnim doświadczeniem. Na co dzień skupia się na wydajności JVM w systemach rozproszonych, wyciskając z Kafki co się tylko da. Hobbistycznie zajmuje się JVM, Performance, Reactive Systems.

---------------

Sponsorzy:

Allegro to jedna z najbardziej zaawansowanych technologicznie firm w naszej części Europy. W każdym miesiącu Allegro jest odwiedzane przez 20 milionów klientów - to 80 procent wszystkich użytkowników internetu w Polsce. Allegro to równiez jeden z największych zespołów IT w Polsce, w którym pracuje blisko 1500 inżynierów i specjalistów IT różnych specjalizacji, rozwijających nasz serwis. Unikatowa skala i złożoność problemów, które rozwiązujemy na co dzień, dają nam możliwość rozwoju przy bardzo różnorodnych projektach. Korzystamy z najnowszych wersji Java, Kotlin, Groovy, Scala, Python, Spring, Spark, Hadoop. Big Data to u nas nie puste hasło, a rzeczywistość (kilka petabajtów danych) - pracujemy na naprawdę dużych zbiorach danych, zarówno na naszej wewnętrznej infrastrukturze Big Data, ale też przy wykorzystaniu narzędzi dostarczanych przez Google. W Allegro mówimy, że #dobrzetubyć, co potwierdzają dane: 84% uważa Allegro za świetne miejsce do rozwoju, 89% poleciłoby Allegro jako świetne miejsce do pracy, a 85% jest dumnych z tego, że pracuje w Allegro.

Revolut - ludzie zasługują na więcej, jeśli chodzi o ich finanse. Więcej transparentności, więcej kontroli, więcej wolności.  Z tą właśnie misją Revolut rozwija swoją działalność od 2015 roku. Produkty wspierające nadzorowanie wydatków, oszczędzanie, podróżowanie, przelewy, inwestycje, wymianę walut, dostarczają rozwiązań, które ułatwiają zarządzanie funduszami już ponad 18 milionom klientów.
Każdy sukces Revoluta opiera się na dwóch filarach - zespole i kulturze. Fajni ludzie pracujący w świetnej atmosferze osiągają najlepsze rezultaty. Revolut to zespół 3000+ osób z całego świata, które pracują zdalnie lub z biur. Jako, że aplikacja rozwija się w zawrotnym tempie, poszukiwani są kolejni kreatywni pasjonaci tworzenia absolutnie świetnych produktów!
Zespół Technologii w Revolucie jest nie tylko jednym z najlepszych w branży, ale też jednym z najlepszych na świecie. Od zaprojektowania zupełnie nowego bankowego backendu do zbudowania wielokrotnie nagradzanej aplikacji - nie ma rzeczy, która jest dla niego niemożliwa. Nie chodzi o odświeżanie systemów, ale o wprowadzenie zupełnie nowych rozwiązań.
Jeśli Java, Python, SparkJava, Jooq, Postgres, Redis, Kubernetes, Docker, Google Cloud Platform to Twoje ulubione narzędzia, a pojęcia typu Domain-Driven Design, TDD, BDD, Continuous Integration & Delivery brzmią dla Ciebie ekscytująco, to wygląda na to, że z inżynierami Revoluta masz dużo wspólnego!


Termin i miejsce
Rozpoczęcie:
28.06.2022 17:00
Zakończenie:
28.06.2022 21:00

Barka
Ul. Podgórska 16
Kraków

Pokaż na mapie

Strona rejestracji:
https://meetup-segfault.konfeo.com

Udostępnij znajomym

Organizator

SYMENTIS EVENTS Sp. z o.o.

Rynek Główny 28
31-010 Kraków

rejestracja@segfault.events

533 600 164

pl