Course Outline
Introduction to Web Programming and WebAssembly
- The evolution of client-side web programming
- Limitations of traditional JavaScript-based browser applications
- Overview of WebAssembly and its significance in modern web development
- Key benefits of WebAssembly:
- Enhanced performance
- Portability
- Efficiency
- Near-native execution speed in browsers
WebAssembly Architecture and Fundamentals
- How the WebAssembly execution model works
- Structure and components of a WebAssembly module
- Binary format and its text representation
- Modules, memory management, tables, and the execution environment
- The interplay between JavaScript and WebAssembly
From JavaScript to WebAssembly
- Tracing the progression from JavaScript to asm.js and then to WebAssembly
- Performance comparisons between JavaScript and WebAssembly
- Browser support and runtime integration details
- Invoking WebAssembly functions from within JavaScript applications
WebAssembly Program Structure
- Core components of a WebAssembly program
- Handling functions, imports, and exports
- Memory management and data exchange mechanisms
- Using Abstract Syntax Trees (AST) to represent bytecode
Developing WebAssembly Applications
- Writing your first WebAssembly module
- Syntax and instructions specific to WebAssembly
- Building modules using C and C++
- Compiling source code into the WebAssembly binary format
- Integrating WebAssembly modules into broader web applications
WebAssembly Toolchain and Development Environment
- Configuring tools for WebAssembly development
- Utilizing compilers and build systems
- Setting up editors and development environments
- Techniques for debugging WebAssembly applications
- Testing strategies and code optimization
Advanced WebAssembly Concepts
- Performance optimization strategies
- Advanced methods for improving application speed
- Interacting with browser APIs
- Security considerations and best practices
- Interoperability patterns between WebAssembly and JavaScript
Practical WebAssembly Workshop
- Constructing a complete, functional WebAssembly application
- Compiling C/C++ code specifically for browser execution
- Connecting WebAssembly modules to a web user interface
- Refining application performance through debugging
Future Applications of WebAssembly
- Current use cases and industry adoption trends
- Key application areas:
- Gaming
- Virtual reality
- High-performance computing
- Advanced web applications
- Emerging trends in browser-based development
Course Review and Conclusion
- Summary of key WebAssembly concepts and development workflows
- Discussion of industry best practices
- Pathways for continued learning and skill development
Requirements
- Familiarity with or understanding of browser-based, client-side programming.
- Experience in C/C++ programming.
- A keen interest in web programming that extends 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.