4Developers 2022 Online
2022-04-04..2022-04-07
-- online --
[4Developers 2015, 4Developers 2017, 4Developers 2019, 4Developers 2019 Warszawa, 4Developers 2020, 4Developers 2021, 4Developers 2022 Online]
as the organisers put it
O EDYCJI 4DEVELOPERS 2022 To się dzieje! Kolejna odsłona Waszej ulubionej konferencji programistycznej odbędzie się ONLINE w dniach 4-7 kwietnia 2022. Po raz kolejny widzimy się na wirtualnej scenie 4Developers! Dostarczymy Wam sporo praktycznej wiedzy z zakresu IT. Każdego dnia będzi
| title | author | length |
|---|---|---|
| Victory Has Defeated You | Karol Rogowski | 34m |
A nostalgic talk reflecting on time and change in technology, arguing that relying unthinkingly on ready-made tools is convenient but makes developers lazy… | ||
| System Architecture Design Using Model Exploration | K. Owsiany | 59m |
Shows how to combine EventStorming Big Picture with the C4 model to turn workshop discoveries into concrete architecture. Runs Big Picture to capture domain… | ||
| Bounded Context — How to Modularize a System in a Few Steps | Radek Maziarka | 42m |
Describes a concrete method to modularize a monolith into business-technical bounded contexts using EventStorming to find process boundaries, mapping… | ||
| How to Repaint an Elephant — Redesigning a Mature Product | Piotr Wcisłek | 44m |
Redesigning a mature product: discusses practical challenges of changing the UI/UX and codebase in an established system, covering risks like breaking existing… | ||
| How to Build a Modern Data Lakehouse? | Piotr Kalinowski | 51m |
A practical recipe for building a cloud Data Lakehouse on Databricks using Delta Lake, Spark and object storage (Parquet on S3/Azure/GCS). Shows migrating from… | ||
| Optimizing Costs on AWS Cloud | Paweł Zubkiewicz | 55m |
Practical AWS cost-optimization techniques are presented with measured savings: switching EBS volumes from gp2 to gp3, snapshotting and deleting 4,997… | ||
| Hello Multitenancy World! | Paweł Młynarczyk, Marek Chrapek | 44m |
Astra migrated from single-tenant to multitenant by containerizing Spring/Tomcat applications, running them on Kubernetes in GCP, and automating provisioning… | ||
| Event-driven Revolutions: From Monolith to Event Sourcing in Practice | Oskar Dudycz | 44m |
A Node.js + TypeScript walkthrough that migrates a working monolith to an incremental event‑sourced design using four concrete events (OpenedCart, ItemAdded… | ||
| Accessibility for Everyone | Olaf Sulich | 45m |
Overview of web accessibility in front-end development, arguing that accessibility matters not just for a small group of users but for developers and… | ||
| Painless / Painful? A Custom Ranking System in Elasticsearch | Łukasz Rynek | 41m |
A car-rental demo implements a custom ranking system on Elasticsearch/OpenSearch using function_score (mode=sum) to combine index-time, runtime, and mixed… | ||
| Money, money, money... Fu!@, it isn't funny! | Piotr Wachulec | 45m |
A cloud cost-optimization case study for a real client using public cloud architecture, showing where savings were possible and how much could be reduced… | ||
| Gamedev for the Bored .NET Developer | Konrad Kokosa | 47m |
Introduction to using Unity as a game-development pet project for experienced C#/.NET developers: explains which existing skills (C#, programming fundamentals)… | ||
| API Platform — A Daily Tool for (Un)usual Tasks | Karol Ćwikła | 39m |
API Platform (a PHP framework for building REST APIs) is presented as a time-saving tool for creating standards-compliant REST interfaces, and the talk… | ||
| Myth-Driven Design | Kamil Grzybek | 45m |
The talk examines common myths in software architecture and development that circulate from tutorials and GitHub, and refutes claims like “no tests is faster,”… | ||
| The Hard Art of Decision Making - Case Study | Jerzy Zawadzki | 46m |
A company rewrote its internal intranet into a new service product using PHP 8, Symfony 6, MySQL, Twig and Stimulus for the UI, containerized with Docker and… | ||
| What Does a Legacy System Teach Us? | Jakub Pilimon | 49m |
The talk examines techniques for evolving long‑running (legacy) systems by mining git commits, database constraints and commit history to detect… | ||
| Clean Test Code | Grzegorz Radzio | 37m |
Argues that poorly written tests can be worse than no tests and recommends refactoring legacy code before adding tests. Advocates focused, parameterized unit… | ||
| On the Mesh of Connections - Service Mesh | Grzegorz Piotrowski | 47m |
An introduction to the Service Mesh concept for microservice architectures, explaining how a dedicated infrastructure layer (a Service Mesh) manages and scales… | ||
| Lesser-known Chrome DevTools Features | Dominika Zając | 38m |
A practical tour of lesser-known Chrome DevTools features for web developers, showing useful, surprising, and interesting options beyond the common DOM, CSS… | ||
| GraphQL API or He Who Asks Won't Err | Bartłomiej Szymański | 43m |
Introduces GraphQL for building APIs with PHP: covers GraphQL history, how queries, types, fields and mutations work, and the benefits of a single endpoint to… | ||
| Can PHP Think? | Bartłomiej Chmielewski | 45m |
An introduction to machine learning and inference programming with PHP, covering ML history, current definitions of ML, and what PHP libraries and tools exist… | ||
| Sir, Who Did This to You... — Let's Talk About Legacy | Artur Skowroński | 46m |
A case-study presentation about modernizing a legacy software system, analyzing why systems rot internally even when past design choices seemed reasonable. It… | ||
| Sql table as a queue - what could go wrong? | Tomasz Masternak | 47m |
Shows how to make a real SQL-backed queue: use an isolated table with columns id, headers, body and a rowversion for ordering, poll instead of unreliable DB… | ||
| TDD - how to break the siloes between Dev and Ops teams | Tomasz Manugiewicz | 29m |
Claims that Trust Driven Development — built from measurable cognitive trust (skills, data, shared language) plus emotional honesty (open feelings, non‑verbal… | ||
| From connectivity to simulations - the evolution of Digital Twin | R. Warzycha | 41m |
Claims that Digital Twin now spans IoT to business simulation and drives mass LowCode/NoCode adoption, backed by concrete builds: a LoRaWAN deployment for UK… | ||
| Communication in a Distributed World | Grzegorz Piotrowski | 50m |
The talk examines communication challenges in distributed microservice architectures—covering issues like routing requests between services, safely retrying… | ||
| From SQLi Hammer to Full-fledged Software Engineer | Kamil Kłys | 51m |
Describes using dbt (data build tool) to evolve from writing ad-hoc SQL queries to becoming a full software engineer for data projects. Covers practical dbt… | ||
| Configuration management for SaaS/BPaaS solutions | Petar Dimitrov | 45m |
Argues that vertical SaaS needs unified, central configuration rather than per-customer silos and shows a practical design: a central repository of baseline… | ||
| EFCore - Expression trees climbing | Paweł Tomasik | 44m |
60% live coding demos show how to build and inspect .NET expression trees with the raw Expression API, then use EF Core to translate them to SQL and expose… | ||
| Evolving your APIs, a step-by-step approach | Nicolas Fränkel | 35m |
Shows how to evolve an HTTP API without breaking users by wiring an Apache APISIX gateway via Docker Compose, creating routes and upstream objects, and… | ||
| Small things we got wrong in .NET | Paweł Łukaszuk | 31m |
Claims and gotchas with concrete examples: value types land on stack or heap depending on context, not always stack; var is compile time, dynamic is runtime… | ||
| Modern headless commerce with Node.js | Michael Bromley | 41m |
Open-source Vendure claims to provide a production-ready headless commerce stack on Node + TypeScript with Postgres storage, GraphQL playground APIs, a bundled… | ||
| Single Page Applications - was it a good idea? | Mateusz Ostafil | 28m |
A case study shows a Spartacus storefront delivered in under six months that boosts sales but returns a Lighthouse 20 score, prompting months of fixes… | ||
| JavaScript beats cancer | Karol Przystalski | 37m |
Claims that JavaScript can run a clinically useful melanoma detector using TensorFlow.js with Keras-trained models served via TensorFlow Serving/Kubeflow… | ||
| Treat type definitions with respect | Jacek Tomaszewski | 44m |
Argues that TypeScript type definitions deserve the same clean‑code rules as implementation code and gives seven concrete rules: use accurate naming, drop… | ||
| Front end technologies for desktop applications: embrace window.open()! | Eric Dilcher | 46m |
Shows a concrete technique used in GOG GALAXY: expose the parent framework runtime via window.opener, attach the parent Angular injector or a shared Redux… | ||
| Modding and Mapmaking as a Way into the Games Industry | Wiktor Frączek | 37m |
Shows how modding and mapmaking can be used to enter the games industry, describing practical steps like creating game mods and custom maps, the tools and… | ||
| Audit in the Triangle of Infinity of a Digital Product | Tomasz Żmuda | 14m |
The talk presents an audit framework for digital products that balances the three corners of Business–Technology–User. It explains preparing artifacts like… | ||
| Ballmer Peak - A Practical Analysis | Tomasz Jackowiak | 15m |
An examination of the so-called Ballmer Peak concept, a productivity method tied to blood alcohol concentration (%BAC), evaluating whether this… | ||
| Amazon SageMaker — Survey of Ways to (Re)deploy Models on AWS | Tomasz Dudek | 48m |
Overview of Amazon SageMaker deployment options: Batch Transform, Asynchronous Inference, Serverless Inference, and Real-time Inference, with guidance on when… | ||
| The Web3 world for mobile developers – everything you need to know | Szymon Paluch | 36m |
An introduction to Web3 concepts and tools targeted at mobile developers, covering blockchain basics, wallets, decentralized apps (dApps), and how to integrate… | ||
| The Impact of Knowledge Sharing on a Developer's Growth | Radosław Wojtysiak | 12m |
The talk discusses how sharing knowledge accelerates a developer’s growth, with technical skill improvement highlighted as one key benefit of recounting… | ||
| Software Gardener | Piotr Przybył | 40m |
An overview of Java 18’s non‑LTS release and its nine JEPs, focusing on practical platform changes: UTF‑8 becoming the default charset (which alters byte/char… | ||
| ListView - Recycle Your Knowledge | Patrycja Haraburda, Marcin Mrugas | 33m |
Covers Android list rendering: starts from naive view inflation and shows the ViewHolder pattern to avoid repeated findViewById calls and restore smooth… | ||
| Modern Java microservices in the Cloud | Andrzej Grzesik | 50m |
Revolut describes a stack that aims for long‑lived simplicity: Java 17 with records, lightweight frameworks (historical use of Spark Java, now favoring… | ||
| API security | Bryant Schuck | 31m |
Claims that API attacks are usually low-skill, long-lived slow drip exfiltration and that 90% of companies have faced an API incident; predicts nearly 1… | ||
| Be low friction | Dawid Stronczak | 11m |
Describes a concrete habit: run three quick checks before arguing — do I understand different perspectives, do I optimize for the system, should I let it go —… | ||
| OOP revisited | Dominik Przybysz | 45m |
Practical checklist for making Java code actually object oriented: avoid JavaBean setters/getters and Lombok-generated mutability, prefer domain methods and… | ||
| Machine Learning models utilization | Kamil Jędryczek | 37m |
BlackSwan Technologies builds a web app called pet Miner that converts free text into Knowledge Graphs using NER, relationship extraction and a deterministic… | ||
| Testing Kotlin Coroutines | Marcin Moskała | 44m |
Shows concrete patterns for Android and backend: convert blocking calls by adding suspend and wrapping callbacks with suspendCancellableCoroutine, offload… | ||
| Cloud Hacking Scenarios | Michal Brygidyn | 31m |
Finds show a public Kubernetes API with RBAC disabled exposes base64 secrets that reveal AWS keys with only S3/Lambda access, then Jenkins credentials in a… | ||
| The unknowns of JUnit 5 | Mike Kowalski | 41m |
Shows concrete JUnit 5 tricks: replace multiple similar tests with ParameterizedTest using MethodSource or @CsvSource plus text blocks and custom delimiters to… | ||
| Multithreading for human beings | Paweł Kierat | 43m |
A simple whiteboard board game models threads as tokens and portals as transitions so race conditions, deadlocks and livelocks become visible; the game maps… | ||
| Lessons we’ve learned after starting to work exclusively on IoT projects | P. Tuszyński | 39m |
Hardware projects slow down product cycles, add hidden complexity and demand different tooling: firmware PDFs, vendor SDKs, long customs delays (prototype… | ||
| Where It Leaks and How to Protect Against Cross-site Exfiltration | K. Korozej | 47m |
The talk explains XS-Leaks (cross-site information leak) attacks: how subtle cross-origin communication leaks can de-anonymize users or expose sensitive data… | ||
| Is artificial intelligence "fair"? | Łukasz Ćmielowski | 35m |
The talk examines whether AI systems can be discriminatory with respect to age, gender, or nationality and how to detect bias in machine learning models. It… | ||
| How to Effectively Spread Knowledge in a Team | Łukasz Rynek | 13m |
Describes a workflow for capturing and using team domain knowledge by running a 1–10 confidence survey with Tripetto, exporting the responses to CSV/Google… | ||
| What Contract Tests Are | Marcin Baranowski | 42m |
The talk compares car manufacturing processes to microservice development to motivate contract testing as an alternative to slow, brittle integration tests. It… | ||
| What a Good User Story Should Look Like | Marcin Kuśmierz | 12m |
Marcin Kuśmierz explains a practical, easy-to-adopt method for writing good User Stories used at TSH. The talk describes a concrete format and workflow that… | ||
| Supply Chain Blunders and Surprise Features | Marcin Hankiewicz | 44m |
The talk examines software supply chain attacks, naming examples like Log4j, us-parser-js, colors and faker, and explains how these incidents have become more… | ||
| The Art of Building Teams — a Mindset Radar | Mariusz Walczak | 12m |
Covers challenges tech leads face managing developer teams and presents a practical mindset “radar” for building teams: how to motivate and inspire… | ||
| I Want to Watch Your Logs | Kamil Wysocki | 45m |
Overview of the ELK stack (Elasticsearch, Logstash, Kibana) for collecting and visualizing application logs — errors, requests, and exceptions. Shows how to… | ||
| From SQLi Hammer to Full-fledged Software Engineer | Kamil Kłys | 51m |
Introduces dbt (data build tool) as an open-source way to move from ad-hoc SQL scripting to software-engineering practices for cloud data transformations… | ||
| Design Patterns in Games | Paweł Krakowiak | 47m |
Shows how using dependency injection (Zenject), MVC-style models for UI, and state machines in Unity reduces bugs and speeds development. Replaces fragile… | ||
| 3 Things No One Tells Aspiring Developers | Michał Guzowski | 13m |
Three concrete, often-unstated realities for people switching into software development: which soft skills matter, which technologies matter, and how money and… | ||
| Spring's unexpected features | Mateusz Chrzonstowski | 50m |
Shows practical Spring techniques using Spring Data JDBC (with H2) to implement SQL-backed CRUD repositories, then adds Spring Data REST to auto-generate… | ||
| Finish tasks before they finish you | Mariusz Bełtowski | 12m |
A concrete Getting Things Done (GTD) workflow for personal task management: use an Inbox capture to collect everything, clarify each item (actionable or not)… | ||
| Language Reliability Illustrated by Elixir and Erlang | Krzysztof Kempiński | 38m |
The talk explains why Erlang (and the newer Elixir) deliver high reliability in telecom and large-scale services. It covers Erlang’s functional programming… | ||
| New GC Algorithms in Java | Krystian Zybała | 45m |
Covers the two new low-pause Java garbage collectors introduced around Java 11/12: ZGC and Shenandoah. Explains their goal of reducing GC pauses to a few… | ||
| MLOps in 30 Minutes | Konrad Łyda | 41m |
Overview of MLOps tools and practices for building automated, controllable deployments of machine learning models using open-source software. Covers reducing… | ||
| Fuzzing 101 | Kamil Frankowicz | 53m |
Practical guide to fuzz testing using AddressSanitizer together with libFuzzer, AFL, or Honggfuzz; recommends in-memory fuzzing for high iteration rates and… | ||
| QA Has a Voice | Joanna Zembaczyńska | 39m |
Practical guidance on improving communication and collaboration between QA and developers using a short training developed with a mentoring group. Covers how… | ||
| Is Math Really (Un)necessary? | Jessica Szarek | 38m |
Talk examines the role of mathematics in game development, weighing claims that math is either essential for becoming a game programmer or unnecessary. It… | ||
| Forecasting using machine learning methods | Jakub Wawrzyniak | 37m |
Covers forecasting sales and machinery failures using practical ML workflows: start from a data sample, begin with simple models and iterate, plan for… | ||
| Cookie Monster — Stealing Cookies from the Browser | Jakub Plusczok | 47m |
Overview of HTTP cookies and how attackers can steal browser cookies to bypass multi-factor authentication (MFA). Covers cookie mechanics and techniques for… | ||
| Optimizing animations in Unreal Engine 4 | Grzegorz Wątroba | 43m |
Techniques for running about 1,000 simulated NPCs (≈200 visible) at 60 FPS in Full HD and 4K using Unreal Engine 4/5. Practical approaches include UE4/5… | ||
| The ML Engineer's Workshop: Smoothly Connecting R and Power BI | Grzegorz Stolecki | 41m |
An ML engineer demonstrates a practical toolkit for building end-to-end analytics solutions using R (and sometimes Python), SQL, and Power BI. The talk… | ||
| Be lazy — write tests! | Grzegorz Kocjan | 39m |
The talk argues for writing tests early (TDD-style) rather than adding tests after implementation, showing two concrete task stories: one approached the… | ||
| Free 2 Play Survival Kit | Grzegorz Górecki | 49m |
Presents a mobile free-to-play (F2P) pipeline from pre-launch research through LiveOps, naming concrete tools and benchmarks. Recommends using Sensor Tower and… | ||
| It's not what you think, dev! | Bartłomiej Wierzbiński, Michał Żaczek | 42m |
Security pitfalls in programming languages and how to avoid them: examples showing why you cannot blindly trust a language’s defaults, why reading… | ||
| Improve your mobile project in 1 day — a guide for everyone | Dawid Bastek | 43m |
Practical guide to improving a mobile app project in one day by using tooling and simple practices: recommends a universal checklist of tools for… | ||
| Not Your Uncle’s Clean Code (TypeScript Edition) | Mateusz Kwaśniewski | 34m |
Shows concrete patterns from real production work: a media Optimizer and a transformation Builder shipped in the last 18 months. Demonstrates using TypeScript… | ||
| Podcasts around IT — #ktoprzemawia through #podcast | Damian Ruciński | 45m |
A personal overview of podcasts related to IT: the presenter explains how they started with one podcast, launched their own show, and now follows over 60… | ||
| New Leader on the Block | Beata Mosór | 43m |
The talk explains applying Lean Leadership when stepping in as a new manager of an established software team. It describes concrete experiences and case… | ||
| What a beautiful disaster | Anna Prończuk-Omiotek | 45m |
Discusses common public-speaking problems programmers face in online tech presentations—nervousness, monotone delivery, failed attempts at humor, and… | ||
| What can QA do and what should it not fear? | Anna Kalemba | 46m |
QA encompasses more than just testing: it influences development and other processes, improves communication about software quality, and includes the authority… | ||
| What Log4j taught me | Andrzej Doliński | 40m |
A software team describes how the late‑2021 Log4j vulnerability disrupted projects because the library appeared transitively through many open‑source… | ||
| Angry Dev — what can a malicious developer do? | Adrian Sroka | 42m |
The talk examines risks posed by malicious developers within a software project, arguing that internal developers can be a greater threat than external users… | ||
| Cypress in practice — overview of the most important capabilities | Adam Stasiak | 46m |
Hands-on coding session showing how to solve common end-to-end testing problems using Cypress. Covers assertions on DOM elements and on server responses… | ||
| TDD - Trust Driven Development | Tomasz Manugiewicz | 11m |
Argues that breaking Dev and Ops silos by building trust speeds delivery and improves team wellbeing, using pair programming on tests, shared ownership of… | ||
| Explaining annotation magic | Tomasz Borek | 45m |
Shows how @Target and @Retention actually change where and when metadata lives (Source vs Class vs Runtime), builds a custom annotation processor (extends… | ||
| GPT-x, is it really worth it? | Sebastiano Galazzo | 43m |
Shows that GPT-3 runs with 175 billion parameters trained on ~300 billion tokens and that training is estimated at $10M, while single queries on Davinci cost… | ||
| nothing matches | ||