Our conference includes small sessions of 30min each (Talk + Q&A), delivered by speakers from all over the world, two panels, and various competitions. The following timetable is based on GMT.
Hour
Speaker
Talk
07:00 GMT
Welcome Talk
Welcome Talk
The conference will start with a short welcome talk. During this talk we will go over the schedule and provide more information about the various activities.
07:05 GMT
Julian Burr
Yes, Your Browser Can Do That (Probably) — A Look At Modern Web APIs You Might Not Know
We’ve become so accustomed to aiming to develop native apps to get access to certain advanced features and functionality that it’s easy to miss that a lot of these have been adopted slowly but surely by our web browsers over time. In this talk, we’ll have a look at some of these Web APIs, how they work, and how you can use them to progressively enhance the experience of your users in a real-life context.
07:35 GMT
Chris Laughlin
The Immutable Way: A Guide to Cleaner, More Predictable JavaScript
Discover the transformative power of immutability in modern JavaScript development. In this informative talk, we’ll explore the core concepts, practical applications, and benefits of this revolutionary approach to coding.
08:05 GMT
Phil Nash
Total ReDoS: The Dangers of regex in JavaScript
Regular expressions are complicated and can be hard to learn. On top of that, they can also be a security risk; writing the wrong pattern can open your application up to denial-of-service attacks. One token out of place, and you invite in the dreaded ReDoS. In this talk, we’ll track down the patterns that can cause this trouble, explain why they are an issue, and propose ways to fix them now and avoid them in the future. Together we’ll demystify these powerful search patterns and keep your application safe from expressions that are anything but regular.
08:35 GMT
Kahoot Quiz
XtremeJS Kahoot Quiz Competition
We are going to have a small Kahoot-based quiz competition. The competition will take place online and it will include quiz questions. The points are given in each quiz question in accordance with the correctness and the speed of answer.
08:55 GMT
Kahoot Hackathon
XtremeJS Hackathon
Our small hackaton includes a question in which you need to write a small program that answers the question we created. The winner is the first that answers correctly this question. The winner will be announced at the end of the conference.
09:00 GMT
First Break
First Break
09:30 GMT
Tamar (Twena) Stern
Lets Build A Node.js ChatGPT-Like Bot With AI APIs
AI is currently one of the hottest trends. Everyone talks about generative AI and thinking about how to add AI capabilities and use LLMs to extend the business capabilities of their servers. In this talk, Tamar will build a “Question-Answer” bot that resembles ChatGPT with AI tools. After a quick crash course in the AI land, in which we will understand several terms like LLM, Generative AI, and RAG (Retrieval Augmented Generation), Tamar will build an AI application. The application will be using a pre-defined dataset and will be able to provide the functionality of accurate answers – even if the question is not very precise. At the end of this talk, you will understand AI better and can start combining AI APIs in your application.
10:00 GMT
Kilian Valkhof
Stop using JS for that: Moving features to CSS and HTML.
If you’ve been building websites for a while, you “know” that some things require JS, and that’s just the way it is. It turns out that spec writers and browser makers are both working hard to find common JS patterns and implement them in CSS and HTML. Things like accordions, auto-suggest, smooth scrolling, and dialogs are all available without JS. Looking a little ahead, things like parallax scrolling, styleable selects, and component-dependent styling are expected to make their CSS debut as well.
10:30 GMT
Matteo Collina
Welcome, Fastify v5
With the release of Fastify v5, exciting new features and significant changes have arrived, but so have breaking changes that require careful migration. In this talk, we will guide you through the process of upgrading from Fastify v4 to v5, starting with fixing deprecated v4 warnings, updating your Node.js version to v20+, and adapting to breaking changes like the full JSON schema requirement, new logger signature, and removal of variadic arguments in .listen(). We’ll also cover important updates such as enhanced security measures, streamlined request and reply behavior, and the removal of non-standard HTTP methods. Additionally, we’ll explore new features like native Diagnostic Channel support for tracing request lifecycles. Whether you’re planning to upgrade soon or need time with v4’s LTS, this session will prepare you for a smooth transition to Fastify v5.
11:00 GMT
Kahoot True False
XtremeJS Kahoot True Flase
We are going to have a small Kahoot-based True False competition. The competition will take place online and it will include True False questions. The points given in each question is in accordance with the correctness and the speed of answer.
11:25 GMT
Escape Room
XtremeJS Escape Room
The Escape Room game takes place online. The participants in this game will need to find their way out by overcoming a digital lock. The first that succeeds to overcome the digital lock wins the game. In order to overcome the digital lock the participants will need to code various small programs in JavaScript.
11:30 GMT
Second Break
Second Break
12:00 GMT
Gil Fink
Losing your Components’ Head
Every web project will eventually need a components library no matter which framework you are using. But, the requirements in each project are different, and even if you find a component library, it will have its own opinionated UI look and feel or rendering. This is where headless components can help you achieve your project’s goals. Join me to understand what are headless components and why you should consider using this pattern in your projects.
12:30 GMT
Nick Taylor
End to End Testing for Browser Extensions
We will discuss the fundamentals of browser extensions (Chromium browsers and Firefox), explore the current options available for end-to-end testing, and dive into some live coding to see it in action. By the end of this presentation, you’ll have the knowledge and skills to implement end-to-end testing for your own browser extension.
13:00 GMT
Mastering JavaScript Collections: Arrays, Maps, Sets, and Beyond
In this session, we will dive deep into the core collection types in JavaScript—arrays, maps, and sets—unpacking their unique characteristics and use cases. You’ll learn how to leverage these structures efficiently, explore advanced techniques, and understand when to use each type for optimal performance. We’ll also go beyond the basics and introduce the WeakMap collection. Whether you’re a beginner or a seasoned developer, this talk will provide valuable insights into handling data structures in modern JavaScript.
13:30 GMT
Kahoot Simple Answer
XtremeJS Kahoot Simple Answer
We are going to have a small Kahoot-based Simple Answers competition. The competition will take place online and it will include questions with simple short answers. The points given in each question is in accordance with the correctness and the speed of answer.
13:55 GMT
XtremeJS Championship
XtremeJS Championship
We will introduce the XtremeJS championship, which includes a questionnaire with various programming questions about JavaScript. The winner is the first participant to answer all questions correctly.
14:00 GMT
Third Break
Third Break
14:30 GMT
Adam Niederer
Independent Popups with Element Reparenting & The HTML Popover API
With increasing adoption of modern CSS techniques like layout containment and transformed elements, CSS-only solutions for popups are increasingly beholden to the elements containing them. Learn about the concepts in the W3 standard that can cause layout issues when combining CSS-only popovers with modern rendering techniques, and how to use the recently-released HTML Popover API to create popups that are truly independent of their location in the DOM. In addition, learn how DOM-independent popovers can still be created without the Popover API using element reparenting.
15:00 GMT
Mark Volkmann
HTMX – Say “no” to Complexity
This talk describes building web applications focused on hypermedia, an approach that differs significantly from the SPA frameworks popular today such as React and Angular. Today, web apps typically use client-side JavaScript code to send HTTP requests to server endpoints that query/update databases and return JSON data. The client code then transforms JSON into an HTML presentation. This is not what Roy Fielding had in mind when he wrote his famous dissertation “Architectural Styles and the Design of Network-based Software Architectures” that gave birth to REST. HTMX is a small, client-side JavaScript library that adds support for new HTML attributes. These enable responding to specific interactions (e.g. click) with any HTML element by sending an HTTP request using any verb. The response must contain HTML. Rather than performing a complete page refresh, the returned HTML replaces an existing DOM element or is inserted relative to one. The server can be implemented using any programming language and server framework. While htmx itself is implemented in JavaScript, htmx enables writing complete web applications without authoring any JavaScript code..
15:30 GMT
Infinite Patterns in the Digital Canvas: Unleashing Creativity with JavaScript in Algorithmic Art
This talk highlights the transformative role of JavaScript in creating dynamic, self-generated artworks. Delve into how libraries like p5.js, Three.js, and Paper.js are empowering artists and programmers to push the boundaries of digital creativity. We’ll journey through the evolution of algorithmic art, showcasing how JavaScript enables the creation of intricate patterns and complex visual compositions. The presentation will feature engaging examples and demonstrations, illuminating the power of JavaScript in crafting interactive, ever-evolving art pieces. Concluding with practical insights and resources, this talk is a gateway for anyone eager to explore the fusion of art and code in the digital age..
16:00 GMT
Xtreme Panel
The AI Revolution in Coding: Tools, Trends, and Tomorrow
In this engaging panel, a team of industry experts will explore how AI is reshaping the coding landscape. From enhancing developer productivity to transforming software development practices, this discussion will dive into AI-powered tools, automation, and the future of programming. Join us for insights on how AI influences how we code and how developers can leverage these advancements to stay ahead in the evolving tech ecosystem.
The panel participants:
Javier Luraschi Asaf Shochet Avida Gil Fink
16:25 GMT
Closure Talk
Closure Talk
This talk concludes the conference. During this 10 minutes talk we will also announce the winners in the various competitions XtremeJ included.