Rust’s reputation for being slow to compile can be a major obstacle for developers who value rapid iteration and feedback. The easy answer is that iteration is slower, but we need less cycles as the code written tends to be more correct.
We’ll explore strategies to take control of Rust’s compilation time, from optimizing compiler options and leveraging faster linkers or faster compilers, to reusing compilation results between projects with sccache or shared target folders.
Les modèles de Machine Learning sont réputés comme étant durs à tester, et non déterministiques. Pourtant il faut bien valider ce qu’on met en prod.
Quels sont les points d’attention qu’il faut avoir ? Que vérifier lors d’un premier déploiement ? Comment s’assurer qu’on ne casse pas les scénarios utilisateurs avec une mise à jour ? Qu’est-ce qui est du ressort des data scientists, et jusqu’où peut-on leur faire confiance ?
Nous allons explorer les différentes étapes de déploiement d’un service utilisant du Machine Learning, depuis la préparation des données jusqu’à la production. Nous verrons comment intégrer les tests à chaque étape, pour garantir que le modèle est fiable et efficace. Nous aborderons également les défis liés à la mise à jour des modèles en production, et les stratégies pour minimiser l’impact sur les utilisateurs.
Retour d’expérience sur la collaboration entre les dévs, les QAs et les data scientists pour déployer des services basés sur du Machine Learning fiables et efficaces, du premier dataset de training à l’inférence en prod.
Docs are one of the superpower of Rust, thanks to the tooling and the central platform hosting them. Let’s take it to the next level!
After a quick look at some of the most known features of rustdoc and docs.rs, we’ll review the guidelines and explore some of the advanced features available, like interacting with the #[doc] attribute directly or scraping examples.
We’ll then look at how to enrich the docs with some crates from the ecosystem, like aquamarine for graphs, katex-doc for mathematical expression or document-features for automatic feature documentation, or with some templating, and see how far we can take it to have a complete documentation.
To finish, we’ll dip our toes into documentation theory, through the Diátaxis framework and the Good Docs Project, check how rustdoc fit in those, and how other tools like mdbook or zola can complement it.
How to test a game engine on macOS, Linux, Window, iOS, Android, WebGL2, WebGPU? Bevy does it (almost) all, and in CI!
Let’s talk about the tooling Bevy provides to help tests, and the tools used to run those tests, like GitHub actions, Pixel Eagle and the resulting reporting page.
SQLite est partout… de la configuration de serveurs aux applications mobiles. Depuis février 2023, SQLite est aussi disponible en Wasm, et est maintenant directement intégré dans les principaux navigateurs.
Côté mobile, les bénéfices de l’utilisation SQLite sont une réduction des échanges réseaux, une meilleure disponibilité et un respect de la vie privée. En l’intégrant dans vos applications web, vous pourrez profitez des mêmes avantages.
Venez explorer les possibilités d’intégrations de SQLite et des autres méthodes de stockage dans les navigateurs: les APIs WebStorage et IndexedDB, et l’OriginPrivateFileSystem.
Bevy doesn’t have an editor, but initiatives and prototypes are starting… which means it’s the perfect time to look at what others are doing.
Outside of the common scene view that all game engine editors seem to have, what would be an ECS engine editor? What does it means to edit entities, components and systems?
Bevy has a few plugins that try to explore this space, but we should also look at the competition, like the Flecs Explorer or Unity DOTS Editor.
Bevy is a game engine using an Entity - Component - System architecture and a modern renderer. One of its main goal is to be cross-platform, and that means supporting WASM running in the browser!
We’ll see how Bevy uses a few crates to interact with the browser:
And the limitations, around multithreading, renderer, native library usage and networking.
We’ll finish with some patterns on how to interact between a Bevy game and the JS world of the browser.
Avez vous déjà codé la lumière ? Le plus difficile, c’est les ombres !
L’écosystème du jeu vidéo en Rust est en plein boom ! Après avoir conquis les amateurs et indépendants, même les grands studios s’y mettent.
Après un tour de quelque projets Rust dans le monde du jeu vidéo (Amethyst, Macroquad, rg3d, Nannou, …), nous nous concentrerons sur le moteur de jeu Bevy et ce qu’il propose :
Venez explorer les idées de Pipeline Rendering, shaders, ECS, Global Illumination, Ray Tracing, Clustered Forward Rendering et tant d’autres!
Et comment, grâce à un moteur de jeu qui vous semblera rapidement naturel, vous pourrez enfin faire ce jeu auquel vous rêvez depuis tout petit….
Finalement, l’IoT à la maison, c’est un peu comme une prod à gérer…
Il y a les utilisateurs mécontents, le legacy à gérer, … Et avec les protocoles qui se multiplient, c’est pas parti pour se simplifier ! On commence par une ampoule connectée, et on finit avec le chauffage par zone et des volets connectés qui s’ouvrent en fonction de l’ensoleillement.
ZigBee, Z-Wave, 433MHz, fil pilote, signaux infrarouges, api HTTP, … petit tour d’horizon des protocoles utilisés, et des outils pour rationaliser sa maison : Home Assistant, ESPHome, Pi-hole, Node-RED, mais aussi Ansible, Telegraf, InfluxDB, Grafana, Telegram