AccueilClientsExpertisesBlogOpen SourceContact

28 juin 2024

Review of dotJS 2024

7 minutes de lecture

Review of dotJS 2024
🇫🇷 This post is also available in french

After several years of absence, the JavaScript conference dotJS made a grand return at Folies Bergère, right in the heart of Paris. On this occasion, the entire team from Premier Octet agency was present to sharpen their technical expertise and interact with the European JavaScript community.

Here is our take on the various talks from this 2024 edition!

Dante's Inferno of Fullstack development

🎤 James Q Quick - @jamesqquick

📺 Watch the talk

In his talk "Dante's Inferno of Fullstack development," James offers a unique perspective on the evolution of full-stack web development, comparing it to Dante’s circles of Hell. He traces the journey from traditional server-side rendering to recent innovations like server components, touching on single-page applications (SPA) and static site generation. Each stage of this evolution is presented as an attempt to solve the problems of the previous approach, while sometimes introducing new challenges.

James concludes by using the metaphor of an upward spiral to illustrate that despite the feeling of returning to the same issues, web development is constantly progressing.

💡 Key Takeaways from the Talk

  • SPAs improved navigation performance but posed challenges in SEO and initial loading times
  • Static site generation solved SEO issues but introduced build time challenges
  • Hybrid rendering and incremental static regeneration aim to combine the best of previous approaches
  • Server components represent the latest innovation, balancing performance, SEO, and dynamic content

💬 Find his slides at https://www.jamesqquick.com/talks/dotjs-2024/

What to test in your web app

🎤 Jessica Sachs - @_jessicasachs

📺 Watch the talk

Jessica dives into the history of testing in web development. She traces the evolution of testing practices from the 90s to today, highlighting the challenges and innovations that shaped our current approach. Jessica emphasizes how infrastructure and network issues have always been central concerns, from the CGI era to the modern age of edge and serverless applications.

Jessica then explores the emergence of various testing tools, from early manual tests to modern test runners like Jest and Vitest. She highlights the growing importance of browser-based unit tests and the impact of technological changes, such as the rise of Node.js and modern bundlers, on testing practices.

Jessica concludes by emphasizing that despite the evolution of tools, manual tests remain relevant in certain contexts.

💡 Key Takeaways from the Talk

  • The evolution of web testing reflects changes in technology and infrastructure
  • In-browser test runners like JSTestDriver paved the way for more sophisticated tools
  • Node.js and JSDOM revolutionized server-side JavaScript testing
  • Manual tests remain relevant for some complex or new scenarios

Converging Web Frameworks

🎤 Minko Gechev - @mgechev

📺 Watch the talk

Minko discusses the convergence of modern web frameworks, using Angular and React as examples. He explains how these frameworks, despite their syntactic differences, share similar underlying structures for managing synchronization between the model and the view. Minko highlights the trend towards using signals to improve reactivity, a trend adopted by many frameworks, including Angular.

He also shares his experience in converging two frameworks at Google: Angular and Wiz. This convergence led to significant improvements, especially for YouTube mobile. Minko concludes by suggesting that the choice of a framework should be based on stability, reliability, and the ecosystem rather than technical differences that tend to blur.

💡 Key Takeaways from the Talk

  • Web frameworks are converging towards similar internal structures despite syntactic differences
  • The adoption of signals as a reactivity mechanism is a major trend
  • The convergence of Angular and Wiz at Google led to significant improvements for YouTube
  • The choice of a framework should be based on stability, reliability, and the ecosystem

API Design is UI Design

🎤 Lea Verou - @LeaVerou

📺 Watch the talk

API Design is UI Design

Lea Verou draws a parallel between user interface design and API design, emphasizing that the principles of UI design also apply to APIs, as APIs are just another type of interface where the users are developers.

The core of Lea's message is that complexity in an API should be revealed progressively, adapting to the actual needs of the users. She stresses the importance of creating a smooth learning curve, where the complexity of the interface increases gradually with the complexity of the tasks to be accomplished. Lea also highlights the importance of user testing for APIs, encouraging designers to observe how developers actually interact with their interfaces.

💡 Key Takeaways from the Talk

  • UI design principles apply to APIs
  • Complexity should be revealed progressively in an API
  • Optimize for the most common use cases
  • Prioritize internal consistency over external complexity
  • Empathy is essential in API design

Becoming the multi-armed bandit

🎤 Ben Halpern - @bendhalpern

📺 Watch the talk

Ben presents an innovative approach to software development by combining art and science through the "Multi-armed bandit" algorithm. Inspired by slot machines, this algorithm optimizes decision-making by balancing the exploration of new options and exploitation of the best-known solutions.

He explains how this algorithm can be applied to software development to optimize data-driven decisions. Ben illustrates his point with concrete examples, including optimizing user experience and A/B testing, emphasizing the importance of balancing exploration of new solutions and exploitation of the best-known options. He stresses integrating this approach into the project's infrastructure to improve team communication and continuously optimize results.

💡 Key Takeaways from the Talk

  • The "Multi-armed bandit" algorithm can optimize decision-making in software development
  • Integrating this method into project infrastructure improves team communication

Remixing the bundler

🎤 Mark Dalgleish - @markdalgleish

📺 Watch the talk

API Design is UI Design

In his talk "Remixing the bundler," Mark explores the evolving boundaries between JavaScript libraries and frameworks, using the evolution of Remix and React Router as examples. He explains how Remix, initially built on ESBuild, is transitioning to Vite to simplify its architecture and offer developers more flexibility. This transition highlights the challenges of orchestrating builds in a full-stack framework and contributes to Vite's evolution.

Mark then explains how this experience led to a major overhaul: merging Remix into React Router. This decision transforms React Router from a simple routing library into a more powerful tool while maintaining its flexibility.

He underscores the rising importance of Vite as a platform for frameworks, simplifying their development and maintenance, and offering better DX.

💡 Key Takeaways from the Talk

  • The distinction between libraries and frameworks is becoming increasingly blurred
  • Vite is emerging as a platform of choice for framework development
  • The fusion of Remix into React Router illustrates this trend towards simplification
  • Vite plugins allow adding framework conventions to libraries
  • This evolution simplifies the creation and maintenance of frameworks

The Future of Serverless is WebAssembly

🎤 David Flanagan - @rawkode

📺 Watch the talk

David presents his vision for the future of serverless with WebAssembly. He starts by illustrating the performance difference between traditional containers and WebAssembly and then highlights Spin, a framework developed by Fermyon, which allows the creation of serverless applications based on WebAssembly.

The talk continues with a demo of Spin, showcasing its ease of use and flexibility. He underscores the advantages of WebAssembly in a serverless context, including its execution speed, portability, and ability to support multiple programming languages.

💡 Key Takeaways from the Talk

  • Spin allows easy creation of serverless applications based on WebAssembly
  • WebAssembly offers superior performance to traditional containers for serverless
  • Spin offers advanced features like component routing, state management, and AI integration
  • The WebAssembly approach enables true zero-scale scalability and per-request isolation

Generative UI: Bring your React Components to AI today!

🎤 Malte Ubl - @cramforce

📺 Watch the talk

The CTO of Vercel, Malte Ubl concluded the day by sharing his vision of integrating AI into front-end development. He highlights the rapid evolution of AI and its impact on software development, shifting from complex machine learning to accessible models through simple API calls.

He then explains how front-end developers can take advantage of this evolution by integrating their React components directly into AI interactions. The talk focuses on a practical demo of this integration using the Vercel AI SDK.

He shows how LLMs can call JavaScript functions, and by extension, React components, illustrating this concept through a flight booking application where AI interacts with React components to provide a smooth and interactive user experience.

We have also written several articles on this topic:

💡 Key Takeaways from the Talk

  • AI is evolving rapidly, becoming more accessible to developers via APIs
  • Textual interfaces are not always the best solution for AI interaction
  • React components can be integrated directly into AI interactions
  • The AI SDK allows easy integration between AI and React components

To conclude

It was a pleasure to participate in this 2024 edition of dotJS. We found the conference well-paced thanks to a mix of long talks (20/25 minutes), Q&A sessions, and lightning talks (5 minutes). As always, Christophe Porteneuve did an excellent job as the master of ceremonies!

If you're in the JavaScript ecosystem, we highly recommend attending next year (early April).

Kudos to the entire dotJS organization team!

See you next year 👋

The Premier Octet agency team

18 avenue Parmentier
75011 Paris
+33 1 43 57 39 11
hello@premieroctet.com

Suivez nos aventures

GitHub
X (Twitter)
Flux RSS

Naviguez à vue