Course Outline
Introduction to Web Programming and WebAssembly
- The evolution of client-side web programming
- Limitations of traditional JavaScript-based browser applications
- An introduction to WebAssembly and its role in modern web development
- Key advantages of WebAssembly:
- Enhanced performance
- Portability across platforms
- Resource efficiency
- Near-native execution speeds in browsers
WebAssembly Architecture and Fundamentals
- Understanding the WebAssembly execution model
- The structure and anatomy of a WebAssembly module
- Interpreting binary formats and text representations
- Modules, memory, tables, and the execution environment
- The interplay between JavaScript and WebAssembly
Transitioning from JavaScript to WebAssembly
- The progression from JavaScript to asm.js and WebAssembly
- Comparing JavaScript and WebAssembly execution models
- Browser support and runtime integration details
- Invoking WebAssembly code within JavaScript applications
Structuring WebAssembly Programmes
- Identifying key WebAssembly components
- Managing functions, imports, and exports
- Handling memory and data exchange mechanisms
- Representing bytecode using Abstract Syntax Trees (AST)
Developing WebAssembly Applications
- Creating your first WebAssembly module
- Understanding instructions and syntax conventions
- Building modules using C and C++
- Compiling source code into the WebAssembly format
- Integrating WebAssembly modules into web applications
WebAssembly Toolchain and Development Environment
- Configuring WebAssembly development tools
- Utilising compilers and build systems effectively
- Working with editors and integrated development environments
- Debugging strategies for WebAssembly applications
- Testing and optimising WebAssembly code
Advanced WebAssembly Concepts
- Addressing performance considerations
- Techniques for optimising WebAssembly applications
- Interacting with browser APIs
- Security implications and best practices
- Exploring interoperability between WebAssembly and JavaScript
Practical WebAssembly Workshop
- Constructing a complete WebAssembly application
- Compiling C/C++ code for browser execution
- Integrating WebAssembly with a web interface
- Refining and enhancing application performance through debugging
Future Applications of WebAssembly
- Current use cases and industry adoption trends
- Application domains including:
- Gaming
- Virtual reality
- High-performance computing
- Advanced web applications
- Emerging trends in browser-based development
Course Review and Conclusion
- Reviewing key WebAssembly concepts and development workflows
- Discussing industry best practices
- Identifying pathways for further learning
Requirements
- Practical experience or a solid understanding of client-side, browser-based programming
- Proficiency in C/C++ programming
- A keen interest in expanding web development beyond JavaScript
Intended Audience
- Web developers
- C and C++ developers
Testimonials (3)
The training helped me expand my knowledge and understanding of Burp Suite. I also realized that what I had learned through self-study was still quite limited. This training was very helpful to me as a QA because Burp Suite is a valuable tool for performing security testing and improving the overall quality of application testing. I will continue exploring this tool and learning more about its features and capabilities.
Rea Mendez - BAKAWAN Data Anallytics Inc.
Course - OWASP Top 10 2025
I really enjoyed learning about AI attacks and the tools out there to begin practicing and actively using for security testing. I took a lot of knowledge away which I didn't have at the beginning and the course met what I hoped it would be. My favorite part shown from the training was Comet Browser and was amazed at what it could do. Definitely something will be looking into more. Overall it was a great course and enjoyed learning all OWASP GenAI Top 10.
Patrick Collins - Optum
Course - OWASP GenAI Security
Hands-on, exercises, in-person helping and questioning.