Get ready for the second edition of Get Digital Summit – a unique two-day conference addressed to developers, architects, testers, leaders, and all Java technologies enthusiasts! Join our online meeting, full of high-quality content and practical know-how presented by the best international experts!
⭐ Why is it worth to join?
- International programming stars and Java Champions
- Unique presentations you won’t see anywhere else
- Practical knowledge, real enthusiasts and great fun guaranteed!
- Contests with prizes, discounts on training courses and vouchers to Uber Eats for all participants
- And all this for free – expert knowledge you don’t have to pay for.
🕔 AGENDA
Day 1
- 5.00 pm Vlad Mihalcea – Transactions and Concurrency Control Patterns
- 6.00 pm Bruce Eckel – Smarter Types with Records
- 7.00 pm Jędrzej Kalinowski – Introduction to GraalVM JDK*
Day 2
- 5.00 pm Robert C. Martin – Agility and Architecture
- 6.00 pm Jarosław Palka – We are all doomed, because what we do cannot be called programming*
- 7.00 pm Józef Tokarski – Investigating @Transactional*
*Presentations in Polish
⬇️ Scroll down fore more details of the presentations ⬇️
Day 1
Transactions and Concurrency Control are of paramount importance when it comes to enterprise systems data integrity. However, this topic is very tough since you have to understand the inner workings of the database system, its concurrency control design choices (e.g. 2PL, MVCC), transaction isolation levels, and locking schemes. In this presentation, I'm going to explain what data anomalies can happen depending on the transaction isolation level, with references to Oracle, SQL Server, PostgreSQL, and MySQL. I will also demonstrate that database transactions are not enough, especially for multi-request web flows. For this reason, I'm going to present multiple application-level transaction patterns based on both optimistic and pessimistic locking mechanisms.
A type defines a set of values. Historically we haven't been very good at using encapsulation to ensure that objects stay within that set of values. This presentation introduces a functional approach to Java type design, using Java's new record
keyword to guarantee that each constructed object is a legal value. Your code improves dramatically because now you validate the object in one place, at construction. Because record
fields are automatically final
, an object cannot be morphed into an illegal value. Such a typed object never needs to be re-checked by any function that receives it as an argument or returns it as a result.
In decades the Java Virtual Machine has proven to be a foundation of success for wide array of Java-centric technologies. GraalVM creators took advantage of its modular design to introduce new runtime optimizations, which can make your old code work faster, but they didn’t stop there. New JDK allows us to create native images for a Java application of choice, making our startup times way faster. It also takes on a breakneck challenge of onboarding external languages like Pyton or JavaScript into out beloved environment. I’ll try to explain how it works and demonstrate how easy it is to try it out. It’s all up to you to decide if it’s overhyped or overlooked.
Day 2
Do agile methods abandon architecture for speed? Do they replace good design decisions with mindless testing? Are agile methods just another way to hack-and-slash systems together without the appropriate discipline, due-diligence, and documentation? In this Keynote our mysterious programming Star describes how the principles of Agile Software Development lead to rich and robust architectures, high degrees of discipline, due consideration of design and architecture, and all appropriate levels of documentation.
Come and hear what "managed runtime" is. Why do most languages are compiled to IR and executed by virtual machines? Jarek will talk about the basics of virtual machines, memory management, type systems, static vs dynamic linking,single vs multiple dispatch. About all that drives JVM, CLR, Beam or V8. All that drives our systems, without which we would not be able to deliver any of today's systems or products. There will be a lot of stories about the decisions that virtual machine makers had to make to fight complexities of underlying hardware.
The @Transactional annotation is almost as widespread as Spring Framework itself. So if you are Java backend developer you must at least have heard about it. In fact it's so common that we tend to take it for granted. And we usually only start to care once it cries for attention with some form of DataAccessException. But it's beneficial - for a conscious backend developer - to sit back, relax at take some time to learn more how Spring does its challenging task of managing our application's transactions. In this talk, equipped with Java debugger, I would like to take you on the journey into the internals.
*Presentations in Polish
Why you should join us:
Subscribe to our newsletter and keep up to date with the latest news from Sii.
If you have any questions or would like to learn more about our offer, feel free to contact us.
Send your request Send your request
Natalia Competency Center Director
Czy chcesz opuścić tę stronę?