February 26-28, 2025
Montreal, Canada

Gleb Bahmutov

Gleb Bahmutov

Gleb Bahmutov is a JavaScript ninja, image processing expert, and software quality fanatic. During the day Gleb is making the web a better place as Sr Director of Engineering at Mercari US. At night he is fighting software bugs and blogs about it at https://glebbahmutov.com/blog/. Microsoft MVP for Open Source Software, GitHub Hero, Algolia Ambassador, CircleCI Ambassador

Proposals - Montreal 2025

Is There Anything GitHub Actions Cannot Do?!

Writing continuous integration YML scripts is a cumbersome and awkward process. What if there was a better way? GitHub Actions let you write JavaScript code to build, test, and deploy your applications. Even better, you don't have to write actions yourself. You can reuse actions written by others. Plus, integration with the GitHub repo security lets your CI code easily contribute back to the repository or trigger other steps.

Testing With Cypress vs Playwright: What Is the Difference?

I will show how the two most popular modern web application testing tools, Cypress and Playwright, approach the same problem differently. We will see how to write end-to-end, API, and component tests using both tools and how to execute them on a continuous integration system. Instead of declaring a winner, we will see the advantages of each test runner.

End-To-End Test Your Web Security

Script injection attacks can load the attacker's code and run it on your website when other users browse it. You can prevent such attacks using content security policies, but how do you ensure your defense mechanisms actually work? By testing them! In this talk, I explain the content-security-policy, the security violation reporting, and how we can write a Cypress test to verify the attacks are stopped.

Writing Tests Using GitHub Copilot

I want to show you the secret weapon I have used for the past year. The GitHub Copilot lets me write full tests quickly, fills the gaps in my knowledge of 3rd party tools, and even writes clear descriptive commit messages. But it is not a "press the button to do it all". You need to guide the AI to do the right thing, which takes experience, but most importantly, you need to decide _what_ you want the AI to do, step by step. Remember: AI is

Montreal 2025 sponsored by

Become a sponsor