Course Outline
Introduction to Web Programming and WebAssembly
- The progression of client-side web programming
- Constraints of conventional JavaScript-based browser applications
- Overview of WebAssembly and its impact on contemporary web development
- Key benefits of WebAssembly:
- High performance
- Portability
- Resource efficiency
- Near-native execution capabilities in browsers
WebAssembly Architecture and Core Concepts
- Analysis of the WebAssembly execution model
- Structure and composition of WebAssembly modules
- Comprehending the binary format and its text-based representation
- Examining modules, memory management, tables, and the runtime environment
- Interplay between JavaScript and WebAssembly
Transitioning from JavaScript to WebAssembly
- Historical context of JavaScript, asm.js, and the rise of WebAssembly
- Differentiating JavaScript execution from WebAssembly performance
- Assessing browser compatibility and runtime integration
- Invoking WebAssembly code within JavaScript applications
WebAssembly Program Structure
- Breakdown of WebAssembly components
- Implementation of functions, imports, and exports
- Strategies for memory management and data exchange
- Representation of bytecode via Abstract Syntax Trees (AST)
Developing WebAssembly Applications
- Creating an initial WebAssembly module
- Mastery of WebAssembly instructions and syntax
- Developing modules using C and C++
- Compiling source code into the WebAssembly format
- Incorporating WebAssembly modules into web projects
WebAssembly Toolchain and Development Setup
- Configuring WebAssembly development tools
- Utilizing compilers and build systems
- Selecting appropriate editors and development environments
- Debugging techniques for WebAssembly applications
- Testing and performance optimization strategies
Advanced WebAssembly Concepts
- Addressing performance-related considerations
- Optimizing application efficiency
- Interacting with browser APIs
- Evaluating security implications
- Exploring interoperability patterns between WebAssembly and JavaScript
Practical WebAssembly Workshop
- Constructing a comprehensive WebAssembly application
- Compiling C/C++ code for browser deployment
- Integrating WebAssembly components with web interfaces
- Refining and enhancing application performance through debugging
Future Applications of WebAssembly
- Current use cases and industry adoption trends
- Sector-specific applications:
- Gaming
- Virtual reality
- High-performance computing
- Complex web applications
- Emerging trends in browser-based development
Course Review and Conclusion
- Recap of key WebAssembly concepts and development workflows
- Discussion on industry best practices
- Identification of pathways for continued learning
Requirements
- Familiarity with or experience in browser-based, client-side programming.
- Practical experience in C/C++ programming.
- Curiosity about web development technologies beyond JavaScript.
Target 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.