If your notion of what it takes to deliver a web application with a tolerable user interface is based on bitter memories from the early days of IE, then you're in for a pleasant surprise. Life is so much better now.
It's easy to forget that the RAM-devouring, CPU-melting web browsers of today began life as humble document viewers, created to let scientists share documents with each other, but really, it's true. Browsers weren't originally built for the terrible tasks we've foisted upon them, and they certainly weren't intended to be application platforms.
That didn't stop us, of course, so for much of the history of the web, delivering web apps has been a battle with the browser. We piled hack upon hack, just to convince the browser to do things it was never meant to do. (Hey, we're developers — we'll make Doom run on an Etch-a-Sketch just to win a bet.)
Things slowly got better. The browser accumulated increasingly powerful abilities and became ever more programmable. It took years, but in fits and starts, the browser grew from its modest origins into something resembling a place to build applications.
But even with all those advances, browsers still offered little help wrapping that power and programmability inside application-style user interfaces. Sure, we were no longer stuck with tables-for-layout and pixel-shim invisible GIFs (and if you were building web apps way back then, I salute you as a fellow veteran of those dark days), but at best, the advancements just enabled better workarounds. We were still left coercing web pages into pretending to be UIs.
I've got good news: Times have changed, and they've most definitely changed for the better. Browsers have finally gained the powerful layout and UI capabilities that we've needed for so very long, in the form of dramatic improvements to every developer's favorite technology — CSS! (Yes, really!) Grid, Flex, and a host of other additions and improvements large and small have taken CSS from "Okay, fine, if there's really no other way" to "Wow! Where has this been all my life?"
Hard to believe, I know, but I'm happy to prove it to you. In this talk, we'll put all this snazzy stuff through its paces, and show how it makes creating powerful browser-based UIs easier, faster, and even fun.
Bill Odom has been a software designer, developer, or systems architect for nearly three decades. For the last several years, he’s served as a consultant, trainer, and senior software developer for organizations large and small all across the US and beyond. These days, he divides his time between building large, complex web applications, and teaching other people how to build large, complex web applications. He feels weird writing about himself in the third person.