VI edycja otwartej, darmowej konferencji
poświęconej zagadnieniom informatycznym
8 września 2018, Katowice

Agenda

Trzy niezależne ścieżki tematyczne, prowadzone w ramach konferencji, umożliwią uczestnikom indywidualny dobór prelekcji. Dostępne będą następujące tematyki:

Software Architecture
GameDev
Software Craftsmanship
Paweł Janusz (Onwelo)

Architektura z bliska i z daleka

Czy też macie czasami wrażenie, że “Architektura oprogramowania” to termin często przedyskutowany technicznie? Dużo mówimy o architekturze, ale czy faktycznie skupiamy się na tym …

Architektura z bliska i z daleka

Czy też macie czasami wrażenie, że “Architektura oprogramowania” to termin często przedyskutowany technicznie? Dużo mówimy o architekturze, ale czy faktycznie skupiamy się na tym co jest ważne? Zapraszam do wycieczki, która z jednej strony wróci do podstaw, z drugiej spróbuje zasugerować, co z ta architekturą można zrobić. Opowieść dotknie moich doświadczeń z różnymi architekturami - tymi bardziej i mniej lubianymi i pożądanymi. W ramach prezentacji postaram się też przekazać moje podejście i dobre praktyki w trakcie budowania i zmian architektury w projekcie.

  Język: Polski
  Poziom: 
Piotr Ślesarew (Grand Parade a part of William Hill)

Bottom Navigation Headache

Most modern Android applications use single Activity strategy as a core of an architecture. Building such solution can be really difficult in terms of clean and bulletproof …

Most modern Android applications use single Activity strategy as a core of an architecture. Building such solution can be really difficult in terms of clean and bulletproof navigation. What type of a component should be used to represent individual screen? How to define eye-candy animations to provide the best look and feel for the user? Support for deep links? Saving states and sending data between screens? All of those things can give a huge headache, and that is why I would like to present my journey from navigation madness to navigation happiness. Live coding included!

  Język: Angielski
  Poziom: 
Arkadiusz Migała (Perform Media Poland)

Chcę oglądać twoje logi

“Nie chcę badać błędów znów w kodzie Nie chce zgadywać, która to maszyna Nie chcę uruchamiać znowu tam VIMa Nawet nie wiem, jaka jest ich …

“Nie chcę badać błędów znów w kodzie
Nie chce zgadywać, która to maszyna
Nie chcę uruchamiać znowu tam VIMa

Nawet nie wiem, jaka jest ich przyczyna 
Ale jedno czego chce, i ty dobrze o tym wiesz
Chciałbym mieć tą cudowną rzecz, która wspomogłaby mnie…”

Logi to narzędzie, które powinno nam pomagać w zarządzaniu i monitorowaniu naszych systemów i aplikacji. Często jednak złe podejście do nich sprawia, że są one raczej bolączką niżeli pomocą dla developera. Porozmawiajmy zatem o właściwym podejściu do logów, które ułatwi nam jej monitorowanie, szybkie reagowanie, ale także nie utrudni pracy nam oraz naszej aplikacji.

  Język: Polski
  Poziom: 
Konrad Kosowski (i-systems)

CQRS, ES i DDD w praktyce

Prezentacja podzielona na dwie części - teoretyczną, podczas której przedstawimy jak to się stało naszym zdaniem, że dożyliśmy czasów DDD oraz CQRS/ES, czym jest domena, jak …

CQRS, ES i DDD w praktyce

Prezentacja podzielona na dwie części - teoretyczną, podczas której przedstawimy jak to się stało naszym zdaniem, że dożyliśmy czasów DDD oraz CQRS/ES, czym jest domena, jak zacząć stosować CQRS/ES, wyjaśnimy podstawowe pojęcia oraz przedstawimy flow aplikacji. Druga część będzie czysto praktyczna. Na podstawie przygotowanego fragmentu kodu zaprezentujemy to o czym wcześniej teorię z pierwszej części w praktyce.

  Język: Polski
  Poziom: 
Filip Zieliński (Gamgoo)

Customowy networking w Unity3D

Na przykładzie Unity3D omówimy podstawy architektury serwerowo klienckiej. Odpowiemy na pytanie dlaczego pisać własny networking. Porozmawiamy o implementacji komunikacji po TCP …

Customowy networking w Unity3D

Na przykładzie Unity3D omówimy podstawy architektury serwerowo klienckiej. Odpowiemy na pytanie dlaczego pisać własny networking. Porozmawiamy o implementacji komunikacji po TCP oraz UDP.

Wyjaśnimy znaczenie chunków i konieczności ich implementacji. Wszystko to podsumujemy omówieniem serwera w kontekście architektury wielowątkowej także w kontekście Entity Component Systemu w Unity3D.

  Język: Polski
  Poziom: 
Piotr Przybył ()

Cztery choroby

"Po ich owocach ich poznacie", powiada Pismo. Natomiast kod powiada: "po ich danych ich poznacie". Jedną ze szkół zapoznawania się z systemem jest długie i namiętne czytanie …

"Po ich owocach ich poznacie", powiada Pismo. Natomiast kod powiada: "po ich danych ich poznacie". Jedną ze szkół zapoznawania się z systemem jest długie i namiętne czytanie dokumentacji, przerywane rzucaniem okiem do kodu. Inną szkołą jest zanurkowanie w model danych (często w bazie) i posurfowanie po interfejsie użyszkodnika. Są to dwa naturalne końce systemu, legendarne wejście i wyjście. Poprzez oglądanie stanu tychże końców można sprawdzić, czy w środku jest zdrowe trawienie, czy niezdrowy proces gnilny. Wnikliwa egzaminacja pozwala stwierdzić obecność "DDDozy pospolitej", "stringozy złośliwej", "biegunki regexowej" czy też "syndromu nie-zrobione-u-nas". Niestety, czasem do infekcji dochodzi już na etapie życia płodowego programisty (czytaj: w szkole). Zapraszam na kurację. Przeczyszczającą. (Czyli naturalny ciąg dalszy "Passwords. Do you keep them safe?")

  Język: Polski
  Poziom: 
Szymon Homa (Pragmatic Coders)

Domain Driven Design i reactive persistence

 Jak zaprojektować model domeny by był on w stanie udźwignąć nie tylko realizację funkcjonalności, ale także komercyjny sukces naszego systemu?       Stworzenie aplikacji …

Domain Driven Design i reactive persistence

 Jak zaprojektować model domeny by był on w stanie udźwignąć nie tylko realizację funkcjonalności, ale także komercyjny sukces naszego systemu?
     
Stworzenie aplikacji która spełnia wszystkie, nawet najbardziej pokręcone wymagania funkcjonalne jest trudne. Stworzenie aplikacji która ma wystarczającą przepustowość, zadawalający czas odpowiedzi i nie traci danych bywa równie wymagające. Domain Driven Design jest sprawdzonym narzędziem do rozwiązywania problemów w nawet najbardziej złożonych domenach. Do rozwiązywania problemów z techniczą stroną naszych systemów, trendy ostatnich lat wskazują nam na takie techniki jak: event driven systems, event sourcing, reactive programing, non-blocking io, actor model, CQRS i tak dalej.
     
Jeżeli łamiesz sobie głowę nad tym jak sprawić by dobre wzorce DDD mogły działać w kontekście reaktywnych systemów i technik (głównie persistence), wpadnij koniecznie. Pokażę jak interpretować wzorce DDD z nieco innej perspektywy, tak by oddzielić ich esencję od naleciałości najczęstszych implementacji oraz jak stopniowo eliminować kolejne blokady.

  Język: Polski
  Poziom: 
Grzegorz Wątroba (Xara / Wayward Preacher)

ECSy, Job Systemy i inne rzeczowniki, czyli nowości w Unity 2018.1 i wyżej

Silnik Unity w ciągu ostatnich miesięcy wprowadził szereg zmian ułatwiających przetwarzanie wielowątkowe oraz wsparcie dla bardziej złożonych systemów rozgrywki. W ninejszej …

ECSy, Job Systemy i inne rzeczowniki, czyli nowości w Unity 2018.1 i wyżej

Silnik Unity w ciągu ostatnich miesięcy wprowadził szereg zmian ułatwiających przetwarzanie wielowątkowe oraz wsparcie dla bardziej złożonych systemów rozgrywki.

W ninejszej prelekcji zostaną zaprezentowane nowości związane z Entity Component System, Job System, Raycast Command i pokrewne im rozwiązania.

  Język: Polski
  Poziom: 
Sebastian Malaca (UBS)

Enkapsulacja, którą znamy i unikamy

Enkapsulacja jest jednym z tych enigmatycznych terminów, z którym każdy przyszły programista dość szybko się zapoznaje. Większość z nas jest w stanie w kilku słowach ją opisać. …

Enkapsulacja, którą znamy i unikamy

Enkapsulacja jest jednym z tych enigmatycznych terminów, z którym każdy przyszły programista dość szybko się zapoznaje. Większość z nas jest w stanie w kilku słowach ją opisać. Większość jest w stanie wytłumaczyć korzyści, które wynikają z jej przestrzegania. Główny problem związany z enkapsulacją polega na tym, że ta szeroko rozpowszechniona wiedza nie zawsze przekłada się na pisany przez nas kod.

Enkapsulacja nie sprowadza się do unikania implementacji getów oraz setów za wszelką cenę. Enkapsulacja nie kończy się na klasach i ich instancjach. Umiejętnie wykorzystana przekłada się na łatwiejszy w zrozumieniu oraz w modyfikacji kod. Sprawia, że w strukturze kodu można się szybko odnaleźć, a architektura naszej aplikacji jest w końcu możliwa do identyfikacji.

Podczas prezentacji porozmawiamy o tym dlaczego pomimo licznych korzyści często wybieramy drogę na skróty, i o tym gdzie ta droga nas zazwyczaj prowadzi. Następnie omówimy sobie sposoby jak z tej złej ścieżki zejść.

Pokażę Wam jak z enkapsulacją zacząć, gdy pracujemy z żyjącą aplikacją, która już niejednego programistę ma za sobą.

Porozmawiamy o enkapsulacji w kontekście pojedynczych obiektów po to aby płynnie przejść do architektur oraz tego, w jaki sposób starają się nam one pomóc w jej przestrzeganiu.

  Język: Polski
  Poziom: 
Adam Krosny (fireup.pro)

Event Driven Architecture - zalety i zagrożenia oraz sposoby radzenia sobie z nimi

Większość słyszała o architekturze zdarzeniowej, ale czy faktycznie wiemy jak ją dobrze zaimplementować, aby system działał sprawnie i było możliwe prześledzenie i rozwiązanie …

Event Driven Architecture - zalety i zagrożenia oraz sposoby radzenia sobie z nimi

Większość słyszała o architekturze zdarzeniowej, ale czy faktycznie wiemy jak ją dobrze zaimplementować, aby system działał sprawnie i było możliwe prześledzenie i rozwiązanie problemu, jeżeli już wystąpi? Na podstawie doświadczeń z wysokowydajnymi, skalowalnymi systemami zbudowanymi w oparciu o mikrousługi i szynę zdarzeń chciałbym zwrócić uwagę na istotne szczegóły o których czasem się zapomina i są trudne do wychwycenia w trakcie testów funkcjonalnych, a które skutkują bolesnymi (kosztownymi) problemami po uruchomieniu. 

  Język: Polski
  Poziom: 
Mateusz Stasch (Future Processing)

HATEOAS dla ludzi!

W swojej prezentacji opowiem o dziwnym stworzeniu, które nazywa się HATEOAS i jest częstym tematem prezentacji, jednak w praktyce widuje się je znacznie rzadziej. Postaram się …

W swojej prezentacji opowiem o dziwnym stworzeniu, które nazywa się HATEOAS i jest częstym tematem prezentacji, jednak w praktyce widuje się je znacznie rzadziej. Postaram się podzielić doświadczeniami z moich poprzednich projektów, gdzie miałem okazję implementować i konsumować API z HATEOASem. Opowiem, dlaczego warto i dlaczego czasem jednak nie warto, jakie wyzwania stawia(ł) przed nami HATEOAS oraz jak dzięki niemu zmieniło się moje patrzenie na oprogramowanie. Postaram się pokazać praktyczne przykłady.

  Język: Polski
  Poziom: 
Jarosław Ratajski (Engenius GmbH)

I jeszcze jeden język

Nieważne jaki język znasz i w jakim frameworku piszesz, pewnie za rok dwa, może pięć  będziesz musiał się czegoś nowego nauczyć. To piękno, ale i przekleństwo pracy programisty. …

Nieważne jaki język znasz i w jakim frameworku piszesz, pewnie za rok dwa, może pięć  będziesz musiał się czegoś nowego nauczyć. To piękno, ale i przekleństwo pracy programisty.

Dlaczego tak jest? Dlaczego nie można po prostu nauczyć się jednej technologii, zrobić certyfikat i dojechać tak do emerytury? Może lepiej poświęcić czas na hobby i rodzinę zamiast na ciągłe dokształcanie?

A może nie trzeba się męczyć?

O ewolucji języków programowania. Czemu raczej nie piszemy w FORTRANIE? Komu przeszkadzał ALGOL? Dlaczego programowanie funkcyjne jest starsze niż assembler? I jak przy wszystkim wygląda krótka historia C++, Javy i  C#? Gdzie to zmierza? - i dlaczego nie do Scali :-) ? - o tym będzie ta opowieść.

  Język: Polski
  Poziom: 
Piotr Cieślak (Carbon Studio)

Interakcja jako fundament gier VR

Gry wideo to fascynujący przykład interaktywnego medium. Wpływanie na świat gry, jego systemy i postacie stale się rozwijało, ale to dopiero VR przyniósł rewolucję w dziedzinie …

Interakcja jako fundament gier VR

Gry wideo to fascynujący przykład interaktywnego medium. Wpływanie na świat gry, jego systemy i postacie stale się rozwijało, ale to dopiero VR przyniósł rewolucję w dziedzinie interaktywności. Dzięki kontrolerom ruchowym, VR oferuje pełną immersję, a interakcje, nawet tak proste jak poruszanie dźwignią, zyskują kluczowy wpływ na poczucie przebywania wewnątrz wirtualnego świata. Przyjrzyjmy się dobrym praktykom projektowania interakcji w VR.

  Język: Polski
  Poziom: 
Paweł Lewtak (GOG.com)

Jak rozwalić* dowolny projekt w 10 prostych krokach

*może nie rozwalić w sensie unicestwienia i anihiliacji, a bardziej doprowadzić do stanu w którym ludzie będą się męczyć, tracić zapał i wypalać pracując nad danym projektem. …

Jak rozwalić* dowolny projekt w 10 prostych krokach

*może nie rozwalić w sensie unicestwienia i anihiliacji, a bardziej doprowadzić do stanu w którym ludzie będą się męczyć, tracić zapał i wypalać pracując nad danym projektem.

Jako programista pracowałem przy wystarczająco dużej liczbie projektów by zauważyć pewne powtarzające się schematy/wymówki: "od dziś robimy agile", "to nie potrzebuje testów", "dziwne, u mnie działa", "zrobimy to po swojemu".

Niby siedzimy i robimy te taski w Jirze, ale po co i dlatego? ¯\\_(ツ)_/¯ 

Opowiem co w przeszłości nie działało, dlaczego i jak to się skończyło w projektach przy których pracowałem. Nie mam idealnego sposobu na radzenie sobie ze wszystkimi problemami w projektach, ale wiem jak z wielu z nich unikać i tym chciałbym się podzielić. Będę mówił o tym jak nie rozpoczynać projektów, jakich złych praktyk nie stosować i jak oduczyć się stosowania wymówek, by nie skończyć ze słabej jakości projektem legacy.

  Język: Polski
  Poziom: 
Dawid Mazur (Clearcode)

Jak uratowałem projekt za pomocą wzorców projektowych

Ekspresowy przegląd najważniejszych wzorców projektowych. Oparty na faktach i z humorem ;) Wielu programistów próbowało uczyć się wzorców projektowych z różnym skutkiem. …

Jak uratowałem projekt za pomocą wzorców projektowych

Ekspresowy przegląd najważniejszych wzorców projektowych. Oparty na faktach i z humorem ;)

Wielu programistów próbowało uczyć się wzorców projektowych z różnym skutkiem. Dostępne źródła często są dość niezrozumiałe dla początkujących, a przykłady są sztuczne, wymuszone, a czasem wręcznie nieodpowiednie. Podczas prelekcji opowiem jak poprawnie używać wzorców do rozwiązywania problemów, które sam napotkałem w mojej pracy zawodowej. Języki, frameworki i biblioteki przychodzą i odchodzą, ale wiedza na temat dobrych praktyk pozostaje cenna od lat i zostanie z wami na długo.
 

  Język: Polski
  Poziom: 
Anita Przybył ()

Liderem być

Zostałeś liderem lub w najbliższej przyszłości nim zostaniesz? A może masz taki cel by kiedyś się nim stać? Wczoraj byłeś kolegą, dziś jesteś szefem? Wchodzisz do …

Zostałeś liderem lub w najbliższej przyszłości nim zostaniesz?

A może masz taki cel by kiedyś się nim stać?

Wczoraj byłeś kolegą, dziś jesteś szefem?

Wchodzisz do zupełnie nowego zespołu jako lider?

Masz za zadanie zarządzać, a Ty nie wiesz co to właściwie znaczy?

Jak poradzić sobie z grupą indywidualistów?

Jak zrobić z grupy ludzi zgrany zespół?

Jak zbudować autorytet?

Jak sprawić, żeby byli zmotywowani i zaangażowani?

Chcesz się dowiedzieć co Ty możesz zrobić, na co masz wpływ? Od czego zacząć? 

Dam Ci krótką instrukcję obsługi, starter z którym zaczniesz swoją przygodę z przywództwem.  Pokażę Ci jakie do przywództwa mają podejście najlepsi oraz powiem jaki będzie Twój pierwszy krok.

  Język: Polski
  Poziom: 
Mateusz Beczek (ING Bank Śląski)

Monitoring aplikacyjny, czyli ostatni element DevOpsowej układanki.

Byłoby doskonale, gdyby nasze aplikacje zawsze działały tak, jak chcemy. Niestety, systemy są przewrotne i potrafią zadziałać nieoczekiwanie w najmniej spodziewanym momencie. Bez …

Monitoring aplikacyjny, czyli ostatni element DevOpsowej układanki.

Byłoby doskonale, gdyby nasze aplikacje zawsze działały tak, jak chcemy. Niestety, systemy są przewrotne i potrafią zadziałać nieoczekiwanie w najmniej spodziewanym momencie. Bez dopracowanego monitoringu i jednoznacznych wskaźników trudno wskazać źródło problemu. Dlaczego dobry monitoring ostrzeże nas szybciej niż klient i czego unikać, żeby klientowi nie odpowiedzieć "u mnie działa" - opowiem na prelekcji :) 

  Język: Polski
  Poziom: 
Adrian Chlubek (The Software House)

Proceduralne generowanie w skali galaktycznej

Proceduralne renderowanie w wielkiej skali. Pokażę jak sprawnie zbudować system umożliwiający proceduralne renderowanie galaktyki gwiazd wraz z planetami i księżycami. Zapoznasz …

Proceduralne generowanie w skali galaktycznej

Proceduralne renderowanie w wielkiej skali. Pokażę jak sprawnie zbudować system umożliwiający proceduralne renderowanie galaktyki gwiazd wraz z planetami i księżycami. Zapoznasz się z problemami, jakie spotyka się podczas budowy wielkich światów, rozwiążemy kłopoty związane z precyzją obliczeń 3D. Zaprezentuję różne techniki proceduralnego generowania potrzebnych danych takie jak value noise czy fractal brownian noise oraz jak za ich pomocą stworzyć wymagane dane. Wszystko oparte o Vulkan i GLSL.

  Język: Polski
  Poziom: 
Andrzej Leśkiewicz (Snapshot)

Produktywność - frameworki to nie wszystko

Wszyscy staramy się być produktywni. Szukamy kolejnych bibliotek, frameworków i narzędzi, które pozwolą nam zaoszczędzić czas przy wykonywaniu codziennych zadań. Niestety w pogoni …

Produktywność - frameworki to nie wszystko

Wszyscy staramy się być produktywni. Szukamy kolejnych bibliotek, frameworków i narzędzi, które pozwolą nam zaoszczędzić czas przy wykonywaniu codziennych zadań. Niestety w pogoni za biegłością techniczną, często zaniedbujemy wiedzę o środowisku, z którego korzystamy na co dzień. Chciałbym przedstawić krótką prelekcję o możliwościach współczesnych IDE, które wspierają produktywność programisty, na przykładzie języka Java oraz Eclipse Photon. Od podstawowych skrótów klawiszowych, przez możliwości oraz konfigurację samego IDE do codziennej pracy (refactoring, cleanup actions), po polecane przeze mnie wtyczki i rozszerzenia, które usprawniają pracę z nowym i starym kodem. Ponadto prelekcja zawiera kilka ogólnych uwag na temat produktywności i tego jak jej nie mierzyć oraz sposobów jej wzmacniania, przydatnych nie tylko na stanowiskach technicznych (e.g Eisenhower matrix, Pomodoro). Ta prelekcja nie sprawi, że w magiczny sposób staniemy się bardziej produktywni. Liczę, że skłoni uczestników do spojrzenia na swoje codzienne zadania z nieco innej perspektywy i zachęci ich do poszukiwania usprawnień zgodnie z własnymi potrzebami.

  Język: Polski
  Poziom: 
Mateusz Budzar (Droids On Roids)

Profesjonalny Developer - kto to taki?

Bycie programistą nie sprowadza się już jedynie do programowania. Mało tego, nie dość, że nie piszemy już tylko kodu, to bardzo często to od nas zależy powodzenie całego projektu. …

Profesjonalny Developer - kto to taki?

Bycie programistą nie sprowadza się już jedynie do programowania. Mało tego, nie dość, że nie piszemy już tylko kodu, to bardzo często to od nas zależy powodzenie całego projektu. Już teraz mamy wiele nowych obowiązków i ciągle wymaga się od nas jeszcze więcej: bezpośredniego kontaktu z klientem, estymowania, ustalania priorytetów, doboru technologii. Oczywiście przez cały czas trwania projektu kod powinien być jak najwyższej jakości. Jak się w tym wszystkim odnaleźć? W jaki sposób podejść do tych nowych obowiązków? Jak lepiej odpowiadać na potrzeby klientów i rynku? Podczas prezentacji spróbujemy odpowiedzieć sobie na te pytania oraz postaramy się zdefiniować profesjonalnego programistę.

  Język: Polski
  Poziom: 
Tomasz Skowroński (Clurgo)

Riders On The Storm: API Gateways for developers

Web services development, no matter SOAP, REST, or RPC, is today as easy as adding an annotation to a method. Little more is required to create API using OAS (Swagger). But how to …

Riders On The Storm: API Gateways for developers

Web services development, no matter SOAP, REST, or RPC, is today as easy as adding an annotation to a method. Little more is required to create API using OAS (Swagger). But how to create the complex yet simple interfaces and provide reliable and consistent access to a wide variety of APIs, e.g. microservices? How to make a friendly system for both developers and consumers (web, mobile, fridge)? And how to prevent duplication of cross-cutting concerns (security, network, and others)? I will acquaint you with the possibilities, strengths and drawbacks of open source solutions. I will also show how to adjust them to own needs, what to take into consideration, and how to develop own API Gateway.

  Język: Polski
  Poziom: 
Oskar Dudycz (EUVIC)

Skalowalny Event Sourcing

Event Sourcing jest jak Nessie, każdy o nim słyszał, niewiele go widziało. Uważany jest (niesłusznie) za trudny wzorzec architektoniczny, nadający się do specyficznych rozwiązań. …

Skalowalny Event Sourcing

Event Sourcing jest jak Nessie, każdy o nim słyszał, niewiele go widziało. Uważany jest (niesłusznie) za trudny wzorzec architektoniczny, nadający się do specyficznych rozwiązań. W swojej prezentacji planuję pokazać, że wbrew potocznej opinii jest to dosyć prosty wzorzec dający duże możliwości. Jakie?

  • elastyczność,
  • możliwość poruszania się w czasie, powrotu do specyficznego miejsca w systemie,
  • skalowalność,
  • lepsze odtworzenie domeny biznesowej,
  • audytowalność za darmo.

Szczególnie te ostatnie w dzisiejszych Mikroserwisów oraz Big Data czynią Event Sourcing rozwiązaniem bardzo na czasie. W swojej prezentacji pokażę jak w połączeniu z szyną zdarzeń Kafka można tworzyć skalowalne i wydajne rozwiązania biznesowe. Wytłumaczę zasadę działania tego typu systemów oraz podstawowe terminy takie jak:

  • immutability,
  • eventual consistency,
  • indempotency.

W swoje prezentacji poza dawką teorii planuję pokazać kilka praktycznych wzorców pokazujących, że Event Sourcing, nie jest wcale taki straszny. W przykładach użyję:

  • event store - Marten,
  • szynę zdarzeń - Kafka (wraz z technologią Kafka Connect),
  • elastic search - do pokazania łatwości integracji z innymi rozwiązaniami.


Przykłady będą pokazywać ogólną zasadę działania tego typu systemów z naciskiem na przedstawienie zasady, a nie specyfików technologii.

  Język: Polski
  Poziom: 
Mateusz Modelski (3SOFT)

SOLIDne zasady dobrego programisty

W życiu każdej aplikacji przychodzi czas na wprowadzenie modyfikacji, dodanie nowego algorytmu obliczeniowego, dodanie nowego modułu. Na tym etapie mogą pojawić się wątpliwości …

SOLIDne zasady dobrego programisty

W życiu każdej aplikacji przychodzi czas na wprowadzenie modyfikacji, dodanie nowego algorytmu obliczeniowego, dodanie nowego modułu. Na tym etapie mogą pojawić się wątpliwości np:
- Czy moja zmiana czegoś nie zepsuje?
- Czy dodanie dziesiątego if-a będzie dobrym pomysłem?
- O co chodzi w tym kodzie? Kto to pisał? Ja…?
- Przecież zmiana bazy danych będzie wymagała modyfikacji połowy klas.
 

Jeśli chcesz uniknąć powyższych problemów zapraszam na prezentację, dzięki której dowiesz jak tworzyć czysty kod, łatwo reagować na nadchodzące zmiany oraz wyróżniać się na rynku pracy.

  Język: Polski
  Poziom: 
Michał Sędzielewski (Rspective / Voucherify)

Startup czy korpo - jak pokierować swoją karierą w IT

Na codzień wraz z zespołem zajmuję się rozwijaniem platformy Voucherify. W ciągu 2 lat udało nam się zebrać 200 klientów z całego świata i obsługiwać miliony użytkowników …

Startup czy korpo - jak pokierować swoją karierą w IT

Na codzień wraz z zespołem zajmuję się rozwijaniem platformy Voucherify. W ciągu 2 lat udało nam się zebrać 200 klientów z całego świata i obsługiwać miliony użytkowników końcowych miesięcznie. Ciągle rośniemy, a skala stawia przed nami coraz trudniejsze ale i ciekawsze wymagania projektowe. Ale mój dzień w pracy nie zawsze tak wyglądał. Pierwsze kroki w świecie IT były zupełnie przypadkowe. Będąc po drugim roku studiów nie miałem pojęcia, w którym kierunku pchnąć swoją karierę. Ostatecznie za namową kolegów trafiłem do leciwego korpo. Czas pokazał, że nie to była najlepsza decyzja. Przez ostatnie 10 lat miałem okazję poznać branżę od różnych stron. Tym samym udało mi się zrozumieć zalety i wady pracy w przeciwstawnych środowiskach: korporacja vs startup, praca w Polsce vs praca za granicą, outsourcing vs rozwijanie produktu, programowanie vs wsparcie sprzedaży/marketingu, pracownik vs pracodawca. I tym właśnie chciałbym się z Wami podzielić. Jeśli tak jak ja 10 lat temu, nie wiesz, jak zrobić pierwszy (i kolejny) krok, zapraszam do wysłuchania prelekcji i udziału w dyskusji.

  Język: Polski
  Poziom: 
Kamelia Niemczyk (Making Waves) / Agata Jankowska ()

User Experience dla nie-projektanta: jak to działa i jak efektywnie współpracować z designerem?

Na czym polega projektowanie zorientowane na użytkowników? Dlaczego to tak istotne i jak właściwie odbywa się przekuwanie potrzeb w funkcjonalności? Dlaczego do zadbania o …

User Experience dla nie-projektanta: jak to działa i jak efektywnie współpracować z designerem?

Na czym polega projektowanie zorientowane na użytkowników? Dlaczego to tak istotne i jak właściwie odbywa się przekuwanie potrzeb w funkcjonalności? Dlaczego do zadbania o użyteczność produktu nie wystarczy UX Designer?

Omówimy fundamenty UX, aby pokazać, jakie jest zadanie projektanta w projekcie, czym dokładnie się zajmuje i dlaczego wsparcie developmentu jest tak istotne.

Przede wszystkim jednak skupimy się na tym, jak dobrze współpracować. Pod lupę weźmiemy proces, narzędzia dla projektantów i developerów oraz komunikację między tymi grupami.

  Język: Polski
  Poziom: 
Damian Widera (EUVIC)

W szponach danych – analiza i uczenie – Big Data

Przyjdźcie na wykład aby zobaczyć, z czym trzeba się zmierzyć, aby z otaczających nas danych uzyskać jak najwięcej informacji i wiedzy. Zrobimy sobie przykład praktyczny – end to …

W szponach danych – analiza i uczenie – Big Data

Przyjdźcie na wykład aby zobaczyć, z czym trzeba się zmierzyć, aby z otaczających nas danych uzyskać jak najwięcej informacji i wiedzy. Zrobimy sobie przykład praktyczny – end to end. Sami wyciągniecie wnioski, dokąd zmierza świat danych…

  Język: Polski
  Poziom: 
Jarosław Pałka (allegro.tech / Symentis)

Wszystkich nas czeka zagłada, czyli dlaczego to co robimy nie można nazwać programowaniem

Programista, to przecież brzmi tak dumnie. Tyle lat ciężkiej pracy, studia, kursy. W końcu zaczęło się zwracać. Społeczeństwo nie ma pojęcia co robisz. Twoja mama i tato, tym …

Wszystkich nas czeka zagłada, czyli dlaczego to co robimy nie można nazwać programowaniem

Programista, to przecież brzmi tak dumnie.

Tyle lat ciężkiej pracy, studia, kursy. W końcu zaczęło się zwracać. Społeczeństwo nie ma pojęcia co robisz. Twoja mama i tato, tym bardziej.

Wiedzą tylko, że to coś wspólnego z internetem, komputerem i tym przedmiotem, którego wszyscy nienawidzą w rodzinie, matematyką.

Codziennie budzisz się z rano poczuciem wyższości nad mugolami, którzy nie ogarniają zawiłości OOP i FP.

Jak długo chcesz się okłamywać? W swojej pracy kleisz RESTy z resztek JSONów, które ktoś porozrzucał po biurze, w języku, którego nie rozumiesz, na platformie o której nie masz pojęcia i modlisz się, żeby naprawdę tam w środku nie biegały skrzaty przesuwające bit'y.

Wkurzyłem Cię? To dobrze.

Przyjdź i posłuchaj czym są "managed runtime", dlaczego większość języków kompilowanych jest do IR i wykonywanych przez maszyny wirtualne.

Na przykładzie EgoVM, opowiem o podstawach konstrukcji maszyn wirtualnych, o zarządzaniu pamięcią, systemach typów, static vs dynamic linking, single vs multiple dispatch. O tym wszystkich co napędza JVM, CLR, Beam czy V8.

Co napędza nasze systemy. Bez czego nie potrafilibyśmy dziś dostarczyć żadnego z naszych systemów czy też produktów.

Będzie dużo opowieści o decyzjach, które musieli podjąć twórcy maszyn wirtualnych i rozważań nad źródłem sukcesu tych platform.

Wszystko w zawiesistym sosie vanilla C.

  Język: Polski
  Poziom: 
Leszek Godlewski (EA DICE)

Wszystko jest danymi

CPU w Twojej maszynie skrywa prawdopodobnie 2-8x więcej mocy obliczeniowej, niż sądzisz, lecz powszechne modele programowania utrudniają korzystanie z tego potencjału. I mimo, że …

CPU w Twojej maszynie skrywa prawdopodobnie 2-8x więcej mocy obliczeniowej, niż sądzisz, lecz powszechne modele programowania utrudniają korzystanie z tego potencjału. I mimo, że o programowaniu zorientowanym na dane, czy też o wzorcu Entity-Component-System powiedziano już wiele, to nadal zmagamy się z ich stosowaniem. Są postrzegane są jako dziwna, niskopoziomowa fanaberia, na którą tylko studia AAA mogą sobie pozwolić. Tą prelekcją mam nadzieję wykazać, że przy odpowiednim modelu programowania, spojrzenie na program jako na transformację danych jest nie tylko łatwe, ale - co najważniejsze - frapujące i nieograniczone tylko do gier AAA i kompilatora Burst w Unity.

  Język: Polski
  Poziom: 
Wkrótce ogłosimy więcej prelekcji

Szanowny internauto

SpreadIT szanuje dane osobowe Użytkowników i spełnia wymogi ich ochrony wynikające z powszechnie obowiązujących przepisów prawa, a w szczególności z Rozporządzenia Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE.

Dane osobowe podane w obrębie Serwisu i podczas kontaktu z organizatorami konferencji SpreadIT wykorzystywane są jedynie w celu umożliwienia uczestnikowi wzięcia udziału w konferencji w roli uczestnika lub/ oraz prelegenta.

Administratorem danych osobowych podawanych podczas rejestracji Konta w Serwisie, zapisu na Newsletter oraz przy wypełnianiu formularzy zgłoszeniowych są organizatorzy konferencji SpreadIT.

Dane Użytkownika są dostępne tylko dla organizatorów konferencji SpreadIT

Więcej informacji w naszej polityce prywatności.

Sponsor Ścieżki Software Craftsmanship

Sponsor Ścieżki Software Architecture

Sponsor Ścieżki GameDev

Sponsor złoty

Sponsor złoty

Sponsor złoty

Sponsor złoty

Sponsor złoty

Sponsor złoty