Lead with Love

This poem is for the confusion and heartache I sometimes face. I need to forgive myself. My family has not gathered for a holiday in quite some time. Every holiday at my grandma’s house looked like…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




How I Got Started With WebAssembly

WebAssembly Text

Our team started doing technical knowledge-share “Lunch and Learn” sessions. Each week someone presents a technical topic of their choice. For my knowledge-share, I decided to research WebAssembly (aka. WASM). Before taking on this task, I had only heard of WASM in conversation and when I looked it up, it didn’t make much sense to me. I am going to share with you how I approached my WASM research and some of my findings. Before we get started, you should know I am primarily a JavaScript (JS) developer so a lot of my comparisons are being done with JavaScript in mind. Now, let’s begin.

I approached this exercise by looking at the 5 Ws.

WASM is:

Although WASM is its own language, we don’t have to learn it because we can take code written in any language and compile it to WASM and run it in the browser. WASM can be used for both mobile and web. For example, if you’re writing in C++ you can use emscripten to compile your code to WASM and if you’re using Rust you can use wasm-pack.

I’m sure by now you’re already seeing the potential WASM has in a web developer’s toolkit but let me outline the aspects I find most important.

You may have heard of WASM in the context of no longer needing to use JavaScript and its large ecosystem. However, that does not NEED to be the case. JS and WASM can work together to create high performing and efficient applications.

This title is purposefully vague. There are a lot of ways to go about this question. I chose to look at how supported WASM is in terms of browser support, language support (since many languages compile to WASM), and who is using WASM. According to caniuse.com, a little over 94% of internet users are running browsers that support WASM. Currently, WASM has full support for 23 languages: JS, Rust, Ruby, TypeScript, AssemblyScript, C, and C++ being a few. I found 3 different great examples of WASM being used in the real world.

WASM is great for graphics, intense computations, and building apps that do more than just the CRUD operations. WASM will be a great tool for our app and other upcoming projects that involve lots of graphics and audio. I also want to point out that since WASM can’t manipulate the dom, accessibility is a concern. Keep that in mind as you assess whether WASM is good for your project. In terms of next steps, I hope we are able to look at our app and upcoming projects and think about current and potential performance bottlenecks and assess whether WASM can help us alleviate those.

Thank you for joining me on this journey and I hope this has been helpful. Happy learning!

Below are a list of resources I found useful on my learning journey:

Add a comment

Related posts:

How to stop operating theatres from wasting two hours each day

What does a good use of a hospital theatre look like? We don’t want surgeons and their teams to work all hours, or stay behind late to get through more work? But nor do we want to see hospital…

The Influences That Childhood Has Had On My Career Path

I was born in late 1994. I have and have always had a love and affinity for technology. On some level I have always had a fascination with computers; not so much with the programming side of them so…

Grilled Lamb Burgers

Grilled Lamb Burgers. This is a simple recipe for BBQ amateur cooks to try it out. This was my first recipe, and I designed this recipe to understand the heating….