It's Spelled 'Accessibility', not 'Disability'

Keyboard with Accessibility key

If your mobile phone is in silent/vibrate mode right now, would you say that you're using an accessibility feature, or just a feature of your phone? If you've ever adjusted the size of onscreen content by pinching or stretching, do you feel like you have a disability, or are you simply using your phone as it was meant to be used? [Learn more...]

The Wrong Kind of Fast: Embracing Evidence-Based Architecture

Man running in a suit

Of course we want software to be fast, but we should want it to be the right kind of fast. In this keynote, Scott Davis (Principal Engineer and Web Architect, ThoughtWorks) debunks common software tropes with empirical, quantifiable, measurable facts -- what he calls "Evidence-Based Architecture". [Learn more...]

The Framework-Free Web: Browser-Native Web Development

Crusty Homemade Bread

Netflix saw a 50% performance improvement when they removed React from their landing page. Moving to Google's Accelerated Mobile Pages (AMP) project lead publishers like Gizmodo and the Times of India to see 300% performance improvements. Their secret? Removing client-side JavaScript. [Learn more...]

Introducing Gauge: A Framework for User Journey Testing


In this talk, Scott Davis (Web Architect and Principal Engineer, ThoughtWorks) introduces a wholly different kind of testing -- User Journey testing. User Journey tests are written in the language of the user, not the developer. ("I'd like to add tomatoes to my shopping cart", not "I'd like to add the UPC string of the selected item to that array of Strings over there in that CartComponent.") Gauge and Taiko -- both free and open source -- allow you to level up your testing skills and start thinking like a user. Are you up to the challenge?[Learn more...]

Introducing Taiko: Driving Your Web Browser Programmatically


As a web programmer, I've always wanted to drive my web browser programmatically -- open this page, fill in that field, click on that button over there; all driven by JavaScript instead of a pesky human. Past solutions were flaky at best, because they were third-party, aftermarket attempts to add functionality to a browser that didn't support it natively. Modern browsers now offer this level of programmatic instrumentation baked-in. All we have to do is start using it.[Learn more...]

Introducing Mountebank: Testing and Mocking Microservices


Web services are an indispensable part of the modern web technology stack. Testing these crucial services should be equally indispensable. Creating mocks and stubs for your microservices in an automated, programmatic way is exactly what Mountebank offers.[Learn more...]

Deconstructing the Modern Web Browser

Milk and butter

In this talk, Scott Davis (Web Architect and Principal Engineer, ThoughtWorks) will take you on a guided tour of the inner mechanisms of a web browser. You'll learn about the HTML Rendering Engine (like Blink, Gecko, and WebKit). You'll learn about the Scripting Engine (like V8, SpiderMonkey, and Nitro). With those two pieces of knowledge in hand, we'll discuss running headless browsers (for testing in your CI/CD pipeline) and headless JavaScript engines (perhaps you've heard of NodeJS?). And then the fun really begins, digging into developer consoles, Lighthouse audits for a11y and performance, and automated ways to drive the browser remotely using the Chrome DevTools Protocol, Puppeteer, ThoughtWorks' Gauge and Taiko, and more. [Learn more...]