diff --git a/src/authors/JonasKruckenberg.md b/src/authors/JonasKruckenberg.md new file mode 100644 index 0000000000..7bd93c8993 --- /dev/null +++ b/src/authors/JonasKruckenberg.md @@ -0,0 +1,7 @@ +--- +name: "Jonas Kruckenberg" +gitHub: JonasKruckenberg +bio: "Senior Engineering Consultant" +title: Senior Engineering Consultant +longBio: Jonas is an open-sourcerer and builderer of things. He's currently building the next generation Operating System based on WASM. +--- diff --git a/src/services/workshops.njk b/src/services/workshops.njk index edc037ddb4..8dfffe8f53 100644 --- a/src/services/workshops.njk +++ b/src/services/workshops.njk @@ -28,6 +28,7 @@ og: collections.workshops | findByCollectionSlug("modernising-ember-development"), collections.workshops | findByCollectionSlug("learn-rust-starting-from-scratch"), collections.workshops | findByCollectionSlug("introduction-to-rust-for-web-developers"), + collections.workshops | findByCollectionSlug("edge-computing-with-webassembly"), collections.workshops | findByCollectionSlug("build-production-ready-apis-in-rust"), collections.workshops | findByCollectionSlug("telemetry-for-rust-apis"), collections.workshops | findByCollectionSlug("an-introduction-to-testing-in-rust"), diff --git a/src/services/workshops/rust.njk b/src/services/workshops/rust.njk index 24879122ed..f5bc6b6cf9 100644 --- a/src/services/workshops/rust.njk +++ b/src/services/workshops/rust.njk @@ -28,6 +28,7 @@ image: "/assets/images/workshops/rust-og-image.jpg" set workshops = [ collections.workshops | findByCollectionSlug("learn-rust-starting-from-scratch"), collections.workshops | findByCollectionSlug("rust-python-interoperability"), + collections.workshops | findByCollectionSlug("edge-computing-with-webassembly"), collections.workshops | findByCollectionSlug("an-introduction-to-testing-in-rust"), collections.workshops | findByCollectionSlug("advanced-testing-in-rust"), collections.workshops | findByCollectionSlug("telemetry-for-rust-apis"), diff --git a/src/workshops/edge-computing-with-webassembly.md b/src/workshops/edge-computing-with-webassembly.md new file mode 100644 index 0000000000..7689420e1a --- /dev/null +++ b/src/workshops/edge-computing-with-webassembly.md @@ -0,0 +1,42 @@ +--- +title: "Edge Computing with WebAssembly" +tags: "rust" +format: "Workshop: 1 day" +subtext: "Bookable for teams – on-site or remote" +description: 1-day workshop – This hands-on workshop teaches how to build such efficient, portable, and secure server-side applications using Rust and WebAssembly. +introduction:
Your backend services are working, but they're not thriving. Docker containers feel heavy, cold starts are slow, and your cloud bill keeps climbing. Security concerns keep you up at night, all while you’re fighting the spaghetti-stack to deliver features on a tight deadline. You've heard WebAssembly is the future, but it seems confined to browsers - can it solve your server-side problems?
Yes it can! WebAssembly is starting to power anything from safety-critical embedded applications to large-scale web services. Employed correctly it gives you microsecond cold boot times, reliable sandboxing, safe user extensibility, and much more.
In this hands-on workshop you will learn how to build such an efficient, portable, and secure server-side applications using Rust and WebAssembly. We’ll cover everything from foundational concepts to cutting edge features and by the end, you’ll have built a microservice in Rust, compiled it to WebAssembly, and deployed it using cutting-edge tooling. You’ll understand when this approach outshines containers, where the technology is headed, and how to incorporate these techniques into your existing infrastructure.
+hero: + color: purple + image: "/assets/images/workshops/edge-computing-with-webassembly/edge-computing-with-webassembly-hero.jpg" + imageAlt: "A dense, abstract network of thin black lines and nodes forming geometric, web-like connections against a light background." +og: + image: /assets/images/workshops/edge-computing-with-webassembly/og-image.jpg +topics: + - title: Foundations + text: > + We start by introducing the basic concepts and building our first WebAssembly HTTP handler in Rust, from setup to deployment. + + + - title: Building Real-World Services + text: > + We then expand on our basic HTTP handler, looking at different Wasm runtimes, deployment options, and common backend patterns in WebAssembly. + + + - title: Advanced Topics + text: > + No production application is complete without tools to debug it. We will look debuggers, performance profiling tools, as well as monitoring solutions. We finish off by building expanding our HTTP handler yet again and - with everything we learned - build a simple calculator API service. + + +leads: + - handle: JonasKruckenberg + bio: > + Jonas is an open-sourcerer and builderer of things. He's currently building the next generation Operating System based on WASM. +--- + + + +## Customised to your team’s needs + +We're happy to customize the workshop to precisely fit your team's specific needs or challenges. If you have a very specific branching model or infrastructure or your team frequently struggles with particular aspects of Git, we can adapt the focus of the workshop more towards these aspects or cover additional topics as necessary. + +All content and examples of the workshop are available publicly on [GitHub](https://github.com/mainmatter/git-workshop). diff --git a/static/assets/images/authors/JonasKruckenberg.jpg b/static/assets/images/authors/JonasKruckenberg.jpg new file mode 100644 index 0000000000..c65227e3fa Binary files /dev/null and b/static/assets/images/authors/JonasKruckenberg.jpg differ diff --git a/static/assets/images/workshops/edge-computing-with-webassembly/edge-computing-with-webassembly-hero.jpg b/static/assets/images/workshops/edge-computing-with-webassembly/edge-computing-with-webassembly-hero.jpg new file mode 100644 index 0000000000..813a2882b2 Binary files /dev/null and b/static/assets/images/workshops/edge-computing-with-webassembly/edge-computing-with-webassembly-hero.jpg differ diff --git a/static/assets/images/workshops/edge-computing-with-webassembly/og-image.jpg b/static/assets/images/workshops/edge-computing-with-webassembly/og-image.jpg new file mode 100644 index 0000000000..a34a1524e7 Binary files /dev/null and b/static/assets/images/workshops/edge-computing-with-webassembly/og-image.jpg differ