World Congress 2026 Europe Jul 10, 2026 Session details

Java Sucks (So C# Didn't Have To)

Adele Carpenter

Java's strict backwards compatibility created massive technical debt, handing C# a clear second-mover advantage. Discover the architectural trade-offs defining both developer ecosystems today.

Pause
Mute Enter Fullscreen
#1 about 4 min

Exploring frustrating elements in Java language design

An initial comparison between Java and C# highlights frustrations like the absence of reified generics.

#2 about 3 min

Origins and early adoption of Java in the 1990s

Pivoting from consumer electronics to the emerging web transforms Java into an internet sensation.

#3 about 4 min

Evaluating the five original design goals of Java

Core principles like simplicity, portability, and native multithreading shaped the language for mass adoption.

#4 about 3 min

Understanding type erasure versus reified generics in Java

Erasing type information during compilation forces workarounds for robust data deserialization at runtime.

#5 about 5 min

Historical constraints justifying type erasure in Java

Strict backwards compatibility and the complexities of multiple virtual machine vendors required keeping the runtime unchanged.

#6 about 2 min

Implementing reified generics efficiently in modern C#

Having a single corporate owner enabled virtual machine updates to natively support runtime type introspection.

#7 about 4 min

Navigating the controversy around checked exceptions

Forcing explicit error handling causes major friction when using closures and functional streaming patterns.

#8 about 2 min

Workarounds for checked exceptions in functional interfaces

Wrapping checked exceptions inside unchecked runtime exceptions removes verbose boilerplate from lambda expressions.

#9 about 6 min

Addressing technical debt with Project Valhalla in Java

Revamped value types aim to eliminate heap allocations and remove indirect memory access for better performance.

#10 about 3 min

Appreciating the maturity and vast ecosystem of Java

Despite evolving design frustrations, backward compatibility ensures critical backend reliability across a vast global ecosystem.

Matching moments

13:57 min

History of C++ technical debt and language design

Stefan Baumgartner · LIVE

21:18 min

Audience Q&A on developer advocacy and Java trends

Josh Long · LIVE

2:09 min

Overview of the Java features presentation

Michael Inden · LIVE

4:55 min

Discussing modern Java language evolution and syntax innovations

Daniel Strmečki · LIVE

4:54 min

Learning Java features and design patterns interactively

Jakov Semenski · LIVE

2:27 min

Summarizing the path forward for Java evolution

Michael Inden · LIVE

Upcoming sessions on this topic

Open session

World Congress 2026 North America

September 24, 2026 · 16:10–16:40

Outdoor Stage

When Humans Stop Writing Code: Rethinking Languages, Compilers, and Responsibility

Simon Auer

Organizer of flutter vienna meetup and CEO of marqably

Simon Auer
Open session

World Congress 2026 North America

September 25, 2026 · 14:50–15:20

Stage 6

Look What Java Can Do Now: Live-Coding a GenAI MCP Server with the JAQ Stack

Suren Konathala

Senior Engineering Leader, Marketing & AdTech, AI GTM & Digital Experience Platforms, Java x AI

Suren Konathala
Open session

World Congress 2026 North America

September 25, 2026 · 09:40–10:10

Stage 3

Still on 4.8 or lower? A Practical Guide to Moving Your "Un-Migratable" .NET Apps

Isaac Levin

Developer Advocate

Isaac Levin
Open session

World Congress 2026 North America

September 25, 2026 · 16:00–16:10

Outdoor Stage

public void saveMoney(AI): The Developer's Guide to Unit Economics

Hrushikesh Pokala

Senior Software Engineer Lead at Equifax

Hrushikesh Pokala
Open session

World Congress 2026 North America

September 25, 2026 · 10:20–10:50

Stage 2

API = Some REST and HTTP, right? RIGHT?!

Rustam Mehmandarov

Passionate computer scientist

Rustam Mehmandarov
Open session

World Congress 2026 North America

September 25, 2026 · 15:30–15:40

Outdoor Stage

Offloading IoT State: Solving the Memory Crisis on Legacy Hardware

Pravin Nagare

Senior Software Engineer, Roku

Pravin Nagare