VII edition of professional conference
dedicated to IT themes
14th of September 2019, Katowice

Agenda

Three independent thematic paths conducted during the conference will allow attendees to choose lectures individually. Following paths will be available:

Software Architecture
GameDev
Software Craftsmanship
Lecture Hall A Lecture Hall B Lecture Hall C Lecture Hall D Lecture Hall E Lecture Hall F
8:00 Attendees registration
9:00 Introduction (Lecture Hall A)
9:30 Frontend
Microfrontends - the good, the bad and the ugly
Łukasz Łuczak (Inn4Tech)
50m

Microfrontends - the good, the bad and the ugly

Everyone knows microservices, everyone uses them, everyone is happy with them. The cult of microservices has led to such madness that developers forgot what SOA is. Let's end this madness, fix the mistake that everybody is ashamed of and fill in microservices with the missing link that will complete them!

If you want to find out:

  • what is SOA
  • what are microservices
  • what went wrong with microservices
  • what nonsense you can learn when listening to talks about microservices
  • and what is missing in them.

You've come to the right place!

In addition, you will learn about what microfrontends are, how to get to them, what is good in them, what is bad in them, and what problems you can come across using them. And all this based on the experience of creating an unique application.

  Language: Polish
  Level: 
Topics
Frontend, Architecture, JavaScript, DevOps
Personal Growth
What can we learn from other industries?
Arkadiusz Migała (DAZN)
50m

What can we learn from other industries?

Every day we live in our IT world, where we have certain laws and rules. But what if we look beyond our industry? Construction, automotive, philosophy, business close to us and more: would we find there anything useful for us? Maybe some of them already exists with us and spotting them may help us communicate with people outside of IT? During this lecture we’ll consider this and try to look at it through our prism.

  Language: Polish
  Level: 
Topics
Personal Growth
Programming
Multithreaded gameplay programming in Unity in examples
Grzegorz Wątroba (Wayward Preacher)
50m

Multithreaded gameplay programming in Unity in examples

Unity focuses more and more on optimization due to data-driven programming and multithreading. ECS, Job System, Raycast Command and Burst are the tools to achieve a whole new level of gameplay programming.
Lecture will show in examples how a bit of work can give us that extra boost of power needed in our projects.

  Language: Polish
  Level: 
Topics
Programming, Unity, Multithreading, Optimization
Performance
Under the hood of web browser communication
Łukasz Tenerowicz (AVSystem)
50m

Under the hood of web browser communication

Your web browser uses way more technologies for communication than just HTTP. WebSockets, Server-Sent Events or even Web Push are quite popular now, yet most of the time we just care about getting the job done, not about implementation details. But haven’t you ever wanted to understand what really happens under the browser’s hood ? I have and in this talk I will share this knowledge with you.

  Level: 
Topics
Performance, HTTP, WebSockets
Agile
Incremental development - how to NOT lose trust in 4 sprints.
Marcin Fliszta (Stats Perform)
50m

Incremental development - how to NOT lose trust in 4 sprints.

During a Sprint Review, do you present an awesome REST API you have built in the last month so you can use it in future sprints to create a user interface? If your Product Owner asks about the final product do you answer “it’s done when it’s done, you don’t need to ask every sprint” or do you create small, complete functionalities, that your customer can check and give you feedback? During the presentation, I will show you why the second approach is much more valuable and could build trust between all the people involved in the project.

  Language: Polish
  Level: 
Topics
Agile
Art design
Less is more - good habits of concept art and world-building
Andrzej Wysocki (Fool’s Theory)
50m

Less is more - good habits of concept art and world-building

Lessons learned while creating fantastic worlds. I'll try to help you avoid bad decisions which can slow down the development, and hopefully sell a few tricks how to improve your workflow for concepting, gathering references, creating moodboards and overall world building. This talk should be useful mostly for artists, but also producents, team leaders and generalists.

  Language: Polish
  Level: 
Topics
Art design, Concept art, World building
10:20 Company presentation - DAZN
10:30 Coffee break
10:40 Architecture
(Dys)functional DDD
Jarosław Ratajski (Engenius)
50m

Domain Driven Design patterns are commonly used in business applications.
Do they apply at all in  in a  functional programming?
Is this a complete mismatch or maybe functional languages enable us to encode our domain even more naturally? 

In this talk we will try to revisit the core concepts of DDD from a functional perspective and build a simple system using DDD with a functional approach.

  Language: Polish
  Level: 
Topics
Architecture, Design patterns, DDD
Personal Growth
Working with legacy code: my mistakes and how to avoid them
Dawid Mazur (Clearcode)
50m

Working with legacy code: my mistakes and how to avoid them

Working with legacy code is a challenge, but it's a one worth taking. It will test your programming skills and experience, but you can really grow as a software engineer when working with it. As with any hard challenge, it's really easy to make mistakes, and I have my fair share of experience when working with legacy projects and making those mistakes.

During this talk I'm giving you an opportunity to learn from my experiences. I will share my problems when working with legacy codebase and what would I do today to fix them. I'll share good practices and resources, with examples of course.

  Language: English
  Level: 
Topics
Personal Growth, Programming, Tips and tricks
Programming
Detached and Telefrag VR – lessons learned
Tomasz Bilnicki (Anshar Studios)
50m

Detached and Telefrag VR – lessons learned

For the last few years I have been the lead programmer in two VR games: Detached and Telefrag VR. Both games have been released on PC and PS4 platforms. I would like to present some challenges encountered during the whole development process - some of them specific for the VR environment. 

  Language: Polish
  Level: 
Topics
Programming, VR, Postmortem
Programming
Feature Flags at scale: when easy concept becomes complex
Mateusza Grzesiukiewicz (Boldare)
50m

Feature Flags at scale: when easy concept becomes complex

Using feature flags developers can quickly rollout to production.  That’s an easy part of this concept. Overtime feature flags introduce a whole new world we need to live in: multiple experiments running at the same time, instant production rollouts within the day, some users using infrastructure A and some using infrastructure B. Just imagine that now you need to prepare your support team for this. Let’s talk about it.

  Language: Polish
  Level: 
Topics
Programming
Recruitment
Technical interview - stories from the opposite side of desk
Marcin Chrost (JCommerce / Sages)
50m

Technical interview - stories from the opposite side of desk

Have you ever wondered, in case when you are applying for a software developer position and going through the seventeenth technical verification - how does it look like when you are on the opposite side of desk, conducting technical interviews and interrogating candidates?

Or maybe have you even envied the interviewer that he could get revenge on the poor candidates for what he experienced before by himself? I assure you - there is nothing to envy :)

In the presentation, I will try to show how does the process of technical verification looks like from the inside - what you can expect in a conversation and where you can loss or gain the points.

Maybe thanks to the knowledge gained, you will get your dream job? Or will you try yourself as an interviewer? I am looking forward to see you :)

  Language: Polish
  Level: 
Topics
Recruitment
2D Graphics
Pixel Art - Compendium
Artur Reterski (Vile Monarch)
50m

Pixel Art - Compendium

Pixel art as trend is dying, but still this is great art style for making art and games. I would talk about everything you have to know about pixel art - styles, techniques, tools, games, and many more.

  Language: Polish
  Level: 
Topics
2D Graphics, Pixel art, Indie dev
11:30 Coffee break
11:35 GitOps
GitOps in Practice
Paweł Młynarczyk (Onwelo)
15m

GitOps is a way to manage Operations by Pull Request. In a world of clouds and microservices every change made by human hand without possibility to rollback changes could be catastrophic. In this short talk I will try to show you how GitOps works in real life with Git as a source of truth and how to deal with Continuous Delivery. Examples in Kubernetes and Flux CD. 

  11:35 - 11:50, Aula A
  Language: Polish
  Level: 
Topics
GitOps, Continuous Delivery, Kubernetes
UX
Be a mobile UX superhero!
Noemi Rozpara
15m

Be a mobile UX superhero!

I have one thesis for you: every programmer is also a UX guy. Do you agree? I hope I can convince you! I’ll talk about the following problems and solutions: 

  • Why UX and good interface are not synonyms?
  • How to create beautiful and efficient app at the same time? 
  • How to choose the best library for you? Example based on React Native ecosystem.
  Language: Polish
  Level: 
Topics
UX
Programming
MVVM and DI in Unity. Implementation and practical use.
Filip Zieliński (Sirocco Mobile)
15m

MVVM and DI in Unity. Implementation and practical use.

I'll show you how to implement MVVM pattern with usage of Dependency Injection in Unity3D. We will discuss advantages of reflection and good architecture in your frontend layer.

  Language: Polish
  Level: 
Topics
Programming, Unity, Design patterns
11:50 Coffee break
11:55 Architecture
Hexagonal Architecture
Mateusz Winnicki (Euvic)
50m

Hexagonal Architecture

Domain, continuous technology changes, testing - everyone struggles with the constantly growing code base, dependencies, and coupling. In the battle against the chaos, we are using multiple patterns - hexagonal architecture is one of them.

Hexagonal architecture (aka ports and adapters architecture) is all about high separation of the domain logic, big maintainability, and ultra testability.

In the presentation, I will show you how to create the code where you can replace (almost) everything and TDD and BDD will be finally easy to do. We will compare hexagonal to big-ball-of-mud and lasagne/onion style coding (aka layered architecture) and see what advantages and disadvantages of implementing this pattern brings to our infrastructure.

  Language: Polish
  Level: 
Topics
Architecture, Hexagonal
Communication
#ąęszcz - Rzecz o języku informatyków
Piotr Przybył (@piotrprz)
50m

#ąęszcz - Rzecz o języku informatyków

Wyczekowałeś Grzesiu brancza, tak jak cię prosiłam?
Wyczekowałem i pusznąłem bagfiksa, ciociu miła!

Poznałeś w tym miesiącu dwa super kul frejmłorki, które pozwolą ricznąć więcej kipiajów? Fantastycznie, a kiedy ostatnio w twym ręku był słownik? Albo jakakolwiek książka (lub czasopismo)?

Wszystko się teraz informatyzuje, takie czasy. e-Urząd, e-commerce, e-tamto, e-siamto... Żeby to wszystko zrobić i utrzymać, potrzeba rzeszy informatyków i inżynierów. (I straszą, że ma być jeszcze gorzej.) Coraz więcej rzeczy przechodzi przez ręce naszej branżuni.
Ludzie narzekają na "arystokację IT", że nie można jej zrozumieć. "Arystokracja" ma wysokie mniemanie o sobie i zadziera nosa jeszcze bardziej, bo nie po to studiowała pięć lat... itd. W tym celu coraz bardziej hermetyzuje swoje specyficzne narzecze, będące worem makaronizów, kalek językowych, nawet kanajackiej grypsery..
Tymczasem celem każdej arystokracji jest także dawanie przykładu, niesienie kaganka oświaty, dążenie do gwiazd.

Spojler alert: prezentacja nie jest dla ludzi, którzy są obrażalscy i już wszystko wiedzą. Na tapet weźmiemy nasze przywary oraz cały ten bełkot, na który pozwalamy innym. Zapraszem serdecznie, choć miło może nie być.

(Polish language due to the specific nature of the description)

  Language: Polish
  Level: 
Topics
Communication, ĄĘSZCZ
Programming
Between the player and the game - programming User Interface
Aleksander Kauch (11 bit studios)
50m

Between the player and the game - programming User Interface

Game interface is always an unique challenge for the programming team. It's close to traditional bussiness applications with layers, views and models but also very different - it needs to be dynamic, responsive and appealing. UI-heavy games need a complex UI system that can handle timing, responsivness and eye candies while being versatile enough to cope with ever-changing design. Structurizing UI implementation always speed up the process of adding and removing its' elements. This talk will present typical UI problems, patterns and solutions forged during the development of Frostpunk

  Language: Polish
  Level: 
Topics
Programming, User Interface
Optimization
Microservice performance at scale
Jakub Gruszka (Liberty Global / UPC Polska)
50m

Microservice performance at scale

In this talk I’d like to guide you through the process of design – build – deploy – run - test and monitor robust microservice solutions. The biggest emphasize I will focus on performance testing and monitoring of applications using current leading open source solutions. Among other this will include detailed implementation patterns for Kubernetes, Prometheus, Grafana, ELK, JMeter.

  Language: English
  Level: 
Topics
Optimization, Performance, Programming, Tests
Personal Growth
All those good practices we don't need
Sebastian Malaca (UBS)
50m

All those good practices we don't need

Books, blogs, foras, conferences - everywhere we can read and learn how important it is to follow software development practices, rules and laws. 
And yet, there are many projects with code that would be hard to be described as readable, descriptive or easy to maintain. There're many projects without tests. Or with tests that purpose is only to satisfy some coverage statistics. There are many projects where developers does not follow any good principles. Projects that are still changed and developed. Projects we still work on.
If that’s the case, maybe we should ask ourselves do we really need to follow all those so called good practices? Maybe we should focus on writing a code instead of thinking how to make it "clean" and satisfy all those unclear and unnamed quality criterias?

During the talk I will show what pitfalls and obstacles waits for those who want to apply good principles and practices.
I will do my best to convince you to stop following them always and ever.

  Language: Polish
  Level: 
Topics
Personal Growth
3D Graphics
Pipeline optimization in environment creation process
Sebastian Gola (Anshar Studios)
50m

Pipeline optimization in environment creation process

How can you speed up environment creation process?

This presentation shows how new technologies and solutions can be used in projects and how to adapt them without making basic pipeline errors in environment art. We will look on high level of pipeline process to seek the solutions on how to speed it up.

  Language: Polish
  Level: 
Topics
3D Graphics, Environment art, Pipeline optimization, Production
12:45 Lunch break
13:45 Architecture
High Availability Architecture
Robert Czupioł (ING Bank Śląski)
50m

High Availability Architecture

World are changing and as You think banking also. Systems like front end should be still available for customers, 24h/day and 7days/week. Every seconds of downtime generate losses, bad feedback, loss of confidence and hate on facebook. During presentation I’ll show how to create High Availability Architecture to have a lots of nine in the end of year. I also want to show how important is knowing own infrastructure, how to enter into micro/makro service world, service mesh etc. Come to listen about Disruption Budget, Fail Over, Load Balancers algorithms, type of Circuit breakers…
  Language: Polish
  Level: 
Topics
Architecture, HA
Communication
Talk to me nicely - how to communicate your ideas and speed up your career
Piotr Stawirej (TomTom)
50m

Talk to me nicely - how to communicate your ideas and speed up your career

Are you frustrated because your ideas about new tools, frameworks, practices are not picked up by your fellow developers?

Do you notice flaws in organization and your manager doesn't want to listen to you? 

You don't know why your mate behaves way he does? 

Are you angry because your code review remarks are considered nitpicky? 

Are you tired of your work because obviously you are the only person who knows what has to be done and none of lesser beings which surrounds you are willing to listen to you?

Are you as manager surprised why people react negatively when you communicate with them?

Would you like to know how to influence people without arousing resentment?

If your answer is "yes" for most of above questions, then most likely this session is for you.

85% of your success depends on emotions. For some people sooner for some people later the way they handle other people will be a blocker for further development not only as developer/manager but also as a human. It is most probably that this will impact your career (promotion or even job lost).

I have seen this multiple times during my over 12 years career as software engineer and felt it on my own skin. 

There is no craftsmanship, clean code, the best practices, clean architecture, effective work, development and agile without proper communication.

If you would like to get next level on your career path (of course connected with promotion and salary increase), this session is dedicated for You!

I will show you entry point for fundamental techniques in handling people,  ways to make people like you,  win people to your way of thinking and how to change people without giving offense or arousing resentment to give you another powerful tool to handle daily situations. 

  Language: Polish
  Level: 
Topics
Communication, Personal Growth
3D Graphics
Working with chaos, using abstraction to your advantage
Jakub Kaźmierczak (Freelancer)
50m

Working with chaos, using abstraction to your advantage

People tend to like certain shapes, mostly based on their visual memory. While designing that could cause problem by creating similar stuff. To solve that problem we need abstraction and randomness.

I will show how to by using 3d and AI create that randomness, how to approach it, what rules do i use to choose best output given and why that tools wouldn't save your ass while you lack fundamentals.

  Language: Polish
  Level: 
Topics
3D Graphics, Procedural generation, Illustration
Design patterns
Web application design patterns and architecture walkthrough
Łukasz Kołodziejczak (i-systems)
50m

Web application design patterns and architecture walkthrough

Building a Web Application is really common nowadays. Virtually everyone is in some kind of web project. Also everyone is running after the next new and shiny thing, be it a revolutionary framework, amaizing library or whatever is currently talked about. However if you do just that your project sooner or later will end up having great technology without good architecture and you will discover it’s weaknesses. I would like to walk you through some battle proven design patterns and solutions that will help you design a system that will be maintainable, testable and most of all one that people will want to work with. I’ll also show you that you don’t have to resign from new toys. You just need to know how and when to use them.

  Language: Polish
  Level: 
Topics
Design patterns
Architecture
A Tale of Two Architectures
Mateusz Stasch (Future Processing)
50m

A Tale of Two Architectures

We have a MONOLITH, right? Do we need anything else? If you think so, then we need to answer ourselves: WHY?

Let’s go for a journey to find out why there is a need for something else than a monolith and how we can decide what it should be.

During the talk, I’ll show what is influencing architects during their work, and how to bring together conflicting requirements. Moreover, we’ll find out why sometimes this what (functional) we’re building does not determine what we’re going to deliver.

  Language: Polish
  Level: 
Topics
Architecture
Programming
From Unity to Unreal Engine programmer
Damian Sobczak (Anshar Studios)
50m

From Unity to Unreal Engine programmer

In this days knowing one technology is not enough. Every company or project has its own requirements determining which game engine should be used. To develop your career you have to learn and increase your toolset and programming skills.

This talk is for those, who wanted to learn Unreal Engine, but were overhelmed by C++ and this „Blueprint” thing. It introduces main concepts and architecture of the engine from Unity programmer's perspective.

  Language: Polish
  Level: 
Topics
Programming, Unity, Unreal Engine
14:35 Company presentation - ING
14:45 Coffee break
14:55 Architecture
From sync to async web. The swampy grounds of handling http requests
Jakub Marchwicki (Casumo)
50m

From sync to async web. The swampy grounds of handling http requests

We live in exciting times. People say servlets - as we know them - are dead. The future is bright and asynchronous. Bright and event loop'ed. Bright and reactive. 
People judge - it's not async / reactive / nodejs'ed, it's a dead end. But the world of sync and async is not black and white. It's shady, swampy and full of surprises. In this talk, we will explore some of these shades of grey. 
 
In this talk, we will try to give an opinionated answer if reactive all the things is a way to go, at least in the context of web applications. We will explore the spectrum between traditionally synchronous servlets and a fully blown async reactive approach. With the support of numbers, measurements and experiments, we will investigate the simple and traditional approach to web requests. See where it works and where it fails - based on some typical web applications use cases. Having such unoptimal resource utilization as a baseline, we will look for some other approaches and evaluate them from different perspectives: performence (an obvoius one) but also readability, familiarity and a general common sense.  

  Language: Polish
  Level: 
Topics
Architecture, Design patterns, Programming
Impostor Syndrome
Impostor Syndrome
Anita Przybył (SOFT - SKILLS Anita Przybył)
50m

Do you feel like you don’t deserve most of the success you have attained? Are you afraid that people will soon realize that you are not as smart as you make yourself out to be? Do you find difficult to accept compliments? Impostor Syndrome: does it concern you? What actually is Impostor Syndrome? What are the symptoms and how to cope with this syndrome?

  Language: Polish
  Level: 
Topics
Impostor Syndrome, Personal Growth
Discussion panel
Am I a programmer or am I a developer? Programming games in 2019.
Łukasz Hacura (Anshar Studios) / Maciej Pryc (Freelancer) / Aleksander Kauch (11 bit studios) / Damian Sobczak (Anshar Studios)
50m

Ten or twenty years back the difference between an engine programmer and a gameplay programmer was on the level of stuff they coded in C++. The first one was building a framework, communicating with the hardware using SDKs like OpenGL or DirectX, while the gameplay programmer laid out the architecture for the game, and coded everything by hand, using the given framework, in C++. That sentiment is lost right now in 2019, when we have Unity, and Unreal, and even complex, high end in house engines, prevent us, from such approach. Gameplay programming is now closes to complex scripting, than it was ever before. But the evolution of tools, has left a hole in the industry – programmers struggle to find their place – they either become engine developers, like UE4 dev, or Unity dev, or they move on to other industries, where their pure programming skill is still needed. How do we tackle this problem as an industry? Is there even a problem?

  Language: Polish
  Level: 
Topics
Discussion panel, Programming, Future
Safety-critical
When human life depends on software - introduction to safety-critical systems
Maciej Gajdzica (Solwit)
50m

When human life depends on software - introduction to safety-critical systems

Most of developers work on web, mobile or desktop applications, but in today's world software is everywhere - also in aeroplanes, space shuttles, medical equipment or nuclear power plants. How software development in these fields differs from everyday applications? How developer's work looks like when he must comply with restrictive regulations? During my talk I will answer these questions using my experience in the field and references to normative documents. I will also analyse some software errors causing loss of human life and destroying equipment worth millions of dollars. I hope that this presentation will be useful to every developer and will help you to create safer and more reliable software.

  Language: Polish
  Level: 
Topics
Safety-critical
Personal Growth
Developer by Choice
Adam Doligalski (NBC Sp. z o.o.)
50m

Programming today is very different from programming of 20 years ago. Developers have to face the technological revolution and its new challenges. These challenges often require a completely different set of competences than in times when distributed programming was not as common as it is today.

During my presentation, I will describe my journey as a programmer with over 25 years of experience in the industry, who can boldly say "I like my job". I will recount my ups and downs that I’ve went through, and the lessons I’ve learned along the way. I will speak about the challenges and professional traps in my career.

I will also try to answer the question: What is the difference between "being a programmer" and "working as a programmer"? Is the programmer a profession or a vocation? Does good knowledge of technology mean being a good programmer? Or maybe a perfect knowledge of a particular language makes a great developer a great person? How to determine the profile of your skills, limitations and potential directions of professional development?

  Language: Polish
  Level: 
Topics
Personal Growth
3D Graphics
Creation and optimization 3D Assets in Unity, using Blender 3D and Substance Painter
Łukasz Słowak (Wenkly Studio)
50m

Creation and optimization 3D Assets in Unity, using Blender 3D and Substance Painter

Starting to create a 3D object in Blender, which will then be an Asset in Unity, very important is the right pipeline, which consists of proper preparation of Low and High Poly objects, proper burning of all maps in Substance Painter, and proper import of the object into Unity. Without making mistakes, at the above-mentioned stages, we can be sure that our 3D object will look good and will be properly optimized, which will always positively affect the appropriate graphic performance in our project.

This knowledge, in addition to 3D designers, should also have programmers, devs, who will know what an appropriately prepared Asset in Unity should look like. Presented knowledge will be useful to both 3D designers and programmers who want to optimize or improve the graphics pipeline in their teams.

  Language: Polish
  Level: 
Topics
3D Graphics, Blender, Unity, Substance Painter, Optimization
15:45 Coffee break
15:50 Quality
Farewell, flickering tests
Mateusz Beczek (ING Bank Śląski)
15m

Farewell, flickering tests

When we develop our software, there's no worse thing than flickering tests. Seriously. It's hard to convince anyone to prepare automated tests if your tests blink like Christmas tree - especially if we talk about heavy system/E2E tests on working environment. Uncertain test results is not just QA's frustration, but also lost time and additional costs. Fortunately, there are plenty of approaches and libraries that will relief in development hell. I will show you how to deal with flickering tests and improve a little bit test culture in your team.

  Language: Polish
  Level: 
Topics
Quality, Tests, Automation
Red chair
Our industry doesn't work!
Daniel Pokusa (SpreadIT Crew)
15m

Our industry doesn't work!

Last year during CoreDump conference I was able to give talk about our industry- (LINK, VIDEO). From that time I've received a lot of feedback on this topic. I would like to share with you additional considerations. Because our industry still.. doesn't work. 

Original note for full presentation:

Our industry doesn’t work. During last 10 years of my experience I got a lot of discussions about problems in companies, recruitment process, software development, employees engagement. I did seen a lot of recurring problems myself.

Because of that during last two years I did start asking myself- why is that? Why companies try to convince us that we are one big family. And You - as a developer - should not disappoint Your family! And this means that you have to engage your heart. Everyday, during weekends, during occasional (or not) overtime. We are all in this together. Really? How do you think? Are we?

We ourselves are not saints either. Constant demands, requirements for technology, business, design, boss, color of chairs in the office. It’s so easy to change your job. Why not use this power? In the end, we are unique and privileged! Are we?

I would like to share with you thoughts on this topic. This talk will be a voice of many developers, managers, recruiters, product owners and clients I met during last two years with my comments. I would like to show you this disease without political correctness. And of course I would like to share with you my dream how can we heal our industry. Is this possible?

  15:50 - 16:05, Aula B
  Language: Polish
  Level: 
Topics
Red chair, Industry, Companies
Programming
How to render a 3D fractal? A quick guide into Ray Marching.
Mateusz Małek (SpreadIT Crew)
15m

How to render a 3D fractal? A quick guide into Ray Marching.

Ray Marching is a technique used to render data on screen. Unlike rasterization it operates by using various data functions. This allows us to create outstanding effects, like 3D fractals, with a small amount of coding and almost no input data. Many programmers may not be aware of this technique and that is why it's time to SPREAD knowledge of IT!

The lecture will focus on the basics of Ray Marching and serve as a guide in the first steps to take. All examles will be shown in Shadertoy.

  Language: Polish
  Level: 
Topics
Programming, Rendering, Ray Marching
16:05 Coffee break
16:10 Architecture
Resilience patterns in practice
Tomasz Skowroński (Clurgo)
50m

Resilience patterns in practice

Resilient “system stays responsive in the face of failure. This applies not only to highly-available, mission-critical systems — any system that is not resilient will be unresponsive after a failure. (...) The client of a component is not burdened with handling its failures.” — The Reactive Manifesto.

A load balancing or a circuit breaker aren’t a Golden Hammer of resilience. It is good to know how to help handling latency and concurrency issues in other ways. During this talk I will present a fault tolerance assurance concepts. After this presentation you will know more about bulkhead, rate limiter, circuit breaker, fallback and other patterns important for each engineer aware of fallacies of distributed computing. Resilience support is important not only for reactive systems or cloud, but generally for all kind of network software and it needs more attention.

  Language: English
  Level: 
Topics
Architecture, Resilence
Performance
Performance As Quality
Jarosław Pałka (Neo4j)
50m

Performance As Quality

Times change. IT systems have brutally invaded our lives, and software eats humanity for breakfast. In the meantime we carry 8 cores and 8 GB RAM in our pockets. The AMD presented a 12-core processor on the so-called consumer market, and Gmail is still stuck and sluggish when it is scrolled through emails. To edit a text file, we need 2 GB of RAM, and an application, which performs the same functions as IRC in the 90s, devours any amount of CPU and memory. And nobody cares. Hardware is cheaper than programmer's time... right? Since such words, like cloud or serverless, have dominated any architectural discussion, the lie repeated for years has become truth.

During the presentation, I would like to share with you the answer to the question posed in the title of the presentation: is efficiency quality? How to ensure the performance of your systems? Who is responsible for all this? (will we sadly discover at the end that the HR department?)?

How does all this relate to Krakow's smog?

How to start with performance testing, what techniques, tools and skills do we need to possess? And why "performance man" is the best profession in the world?

  Language: Polish
  Level: 
Topics
Performance, Quality
3D Graphics
Lighting models and PBR rendering in computer games
Michał Gawron (Artifex Mundi S.A.)
50m

Lighting models and PBR rendering in computer games

The lecture will be focused on presenting lighting models and PBR rendering (Physically Based Rendering), which significantly improve computer graphics and make them even closer to reality.
Lighting models describe how light behaves when it falls on the surface of an object. This phenomenon consists of two elements. The first one is a diffuse reflection, which is responsible for how the object is lit. The second is a specular reflection that makes the object shine. A few examples of lighting models will be discussed, including the most commonly used ones.
The second part of the presentation will focus on the PBR rendering. There will be presented its assumptions and how to use it in Unreal Engine 4. The following points will be discussed: creating textures, importing to the engine and creating materials in the editor.

  Language: Polish
  Level: 
Topics
3D Graphics, Lighting models, PBR, Unreal Engine
Architecture
Build your software on solid foundations
Marcin Bałda (Future Processing)
50m

Build your software on solid foundations

What do building a home and creating software have in common? Certainly they are solid foundations, good architecture, well-thought-out functionality and usability suited to individual needs. I will tell you how to do both good things during the speech dedicated to the SOLID principles. The lecture is dedicated to all those who think that object-oriented programming is easy.

  Language: Polish
  Level: 
Topics
Architecture, SOLID
Aglile
Agile Manifesto - critical look
Kasjan Kotynia (Euvic)
50m

Agile Manifesto - critical look

Probably each of you has met the idea of agile. Personally, I really like building the solution using cyclical, small increments, clear communication and constant checking whether our tool really solves the problem.

However, I am worried about the way we approach it. We defend reckless design decisions and chaos with Agile Manifesto principles. I we do everything according to the rules, why does the project fail?

Maybe it is worth considering what agile is and undermine the principles contained in Agile Manifesto?

During the lecture we will look at what the agile originates from, what assumptions were made during it's creation and how it translates to the Agile Manifesto.

  Language: Polish
  Level: 
Topics
Aglile
Level design
Min-maxing UE4 - Mindful usage and navigation within the Editor
Jakub Pander (Carbon Studio)
50m

Min-maxing UE4 - Mindful usage and navigation within the Editor

You probably know how to use the UE4 editor by now but maybe you want to learn something more or even start from scratch. In this presentation I will show various useful and nifty tips and tricks available within the editor. Some of them might be new, some might be obvious, other nearly useless but still cool, there are so many you will definitely find something for yourself. Perhaps you didn't even know such options are available within the UE4 so let me show a few live.

  Language: Polish
  Level: 
Topics
Level design, Unreal Engine, Tips and tricks, Editor navigation
17:00 Coffee break
17:10 SpreadIT Talks Live
Maintaining software architecture - biggest problems and challenges
Jarosław Ratajski (Engenius) / Daniel Pokusa (SpreadIT Crew) / Piotr Przybył (@piotrprz)
60m

Maintaining software architecture - biggest problems and challenges

Every system has an architecture. Every architecture has good parts and bad parts. When it comes to the maintenance we often need to make hard decisions. How to deal with them? How to keep your architecture in good condition during whole product life-cycle? These questions are just a pick of the iceberg. Lets try to tackle them and go deeper with two experts during LIVE SpreadIT Talks session!

Host:

Panelists:

  17:10 - 18:10, Aula A
  Language: Polish
  Level: 
Topics
SpreadIT Talks Live, Discussion panel, Architecture
Discussion panel
Gamedev's begginer kit
Filip Szeląg (Techland) / Maciej Pryc (Freelancer) / Agnieszka Rumińska (Anshar Studios) / Klaudia Manteufel (Vixa Games) / Artur Reterski (Vile Monarch)
60m

Everyone who wants to become a member of a large gamedev family has many questions about the first steps in the industry. We will answer all of them! Well, not really, but we will share our insights and talk about some tips and tricks on how to start this amazing journey.

  Language: Polish
  Level: 
Topics
Discussion panel, Tips and tricks, Become gamedev
Programming
Learning modern C++? Start with Cpp Core Guidelines
Kamil Grodecki (One More Level)
25m

Learning modern C++? Start with Cpp Core Guidelines

C++ is changing. Modern standard is no longer "C with classes". We have to move forward and Cpp Core Guidelines is the way to do it.
I will show you, how this guideline can improve your knowledge about modern C++. We should follow it to resolve conflits, to keep one coding standard and to avoid mistakes that others already made. It is great place to start learning about modern language syntax and safe, efficient, clear coding rules.

  Language: Polish
  Level: 
Topics
Programming, C++, Coding Guidelines
Programming
Optimization of city building game for mobile devices
Grzegorz Śnieciński (Vile Monarch)
30m

Optimization of city building game for mobile devices

During this lecture I will focus on 3D optimization. Specifically rendering on mobile devices. I will provide examples from my own experience working on a city builder game in which I had to overcome the efficiency of current hardware technology through software development. I will discuss shader complexity and give tips on their choice as well as share my experience with model batching to further decrease rendering time. Finally, I will cover the idea of splitting game logic between game ticks to save CPU usage.

  Language: Polish
  Level: 
Topics
Programming, Unity, Optimization
18:10 Break
18:20 Ending (Lecture Hall A)
18:40 Conference's closing
19:30 Afterparty - City Pub, 3-go Maja Street 23, 40-097 Katowice

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.

Software Architecture Path Sponsor

Software Craftsmanship Path Sponsor

Golden Sponsor

Golden Sponsor

Golden Sponsor

Golden Sponsor

Golden Sponsor

Golden Sponsor

Golden Sponsor