<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Personal blog of Drew Powers</title><description>Design engineer at Figma, former co-creator of Astro, professional dumbass</description><link>https://pow.rs/</link><item><title>10 Years of Frontend</title><link>https://pow.rs/blog/10-years-of-frontend/</link><guid isPermaLink="true">https://pow.rs/blog/10-years-of-frontend/</guid><description>Plus another 6 of whatever you called it before that.</description></item><item><title>3 Layers of UI Interaction</title><link>https://pow.rs/blog/3-layers-of-ui-interaction/</link><guid isPermaLink="true">https://pow.rs/blog/3-layers-of-ui-interaction/</guid><description>Every interactive UI element should consider all 3 layers; do yours?</description></item><item><title>The great(er) divide in front-end</title><link>https://pow.rs/blog/3-pillars-of-front-end-knowledge/</link><guid isPermaLink="true">https://pow.rs/blog/3-pillars-of-front-end-knowledge/</guid><description>A year of reflecting on Chris Coyier’s “The Great Divide” post. I think it holds up, but requires a little more nuance.
</description></item><item><title>All the answers to “should designers code?”</title><link>https://pow.rs/blog/all-the-answers-to-should-designers-code/</link><guid isPermaLink="true">https://pow.rs/blog/all-the-answers-to-should-designers-code/</guid><description>the eternal war rages on</description></item><item><title>Anger can be a force for good</title><link>https://pow.rs/blog/anger-can-be-a-force-for-good/</link><guid isPermaLink="true">https://pow.rs/blog/anger-can-be-a-force-for-good/</guid><description>if expressed right—a huge, ginormous “if”</description></item><item><title>A handbook to animation easings</title><link>https://pow.rs/blog/animation-easings/</link><guid isPermaLink="true">https://pow.rs/blog/animation-easings/</guid><description>If you use default easings for your animations you might as well not even bother animating it.</description></item><item><title>Are images your slow-down?</title><link>https://pow.rs/blog/are-images-your-slowdown/</link><guid isPermaLink="true">https://pow.rs/blog/are-images-your-slowdown/</guid><description>the secret to optimizing images</description></item><item><title>Bazel is incompatible with JavaScript</title><link>https://pow.rs/blog/bazel-is-incompatible-with-javascript/</link><guid isPermaLink="true">https://pow.rs/blog/bazel-is-incompatible-with-javascript/</guid><description>If you don’t know what Bazel is, you not only can skip this blog post; I envy you greatly.</description></item><item><title>Build your own touch slider with hammer.js</title><link>https://pow.rs/blog/build-your-own-touch-slider-with-hammerjs/</link><guid isPermaLink="true">https://pow.rs/blog/build-your-own-touch-slider-with-hammerjs/</guid><description>high-performance touch events for demanding jobs</description></item><item><title>check out these foundries for new fonts</title><link>https://pow.rs/blog/check-out-these-foundries-for-new-fonts/</link><guid isPermaLink="true">https://pow.rs/blog/check-out-these-foundries-for-new-fonts/</guid><description>designs looking a little stale? it’s probably your weak fonts</description></item><item><title>Cloud-jumping: swap hosted services easily with Manifold</title><link>https://pow.rs/blog/cloud-jumping-with-manifold/</link><guid isPermaLink="true">https://pow.rs/blog/cloud-jumping-with-manifold/</guid><description>how to take back full control of your cloud services in one afternoon</description></item><item><title>CSS puzzles: a mentorship program for better styling</title><link>https://pow.rs/blog/css-puzzles/</link><guid isPermaLink="true">https://pow.rs/blog/css-puzzles/</guid><description>How a 12-week program resulted in open-source education</description></item><item><title>Did we fuck up the internet? part 1</title><link>https://pow.rs/blog/did-we-fuck-up-the-internet-pt-1/</link><guid isPermaLink="true">https://pow.rs/blog/did-we-fuck-up-the-internet-pt-1/</guid><description>The principal designs of the internet were made a long time ago, for different uses than what we use it for today. Are keeping those old designs hurting the internet long-term?
</description></item><item><title>Did we fuck up the internet? part 2</title><link>https://pow.rs/blog/did-we-fuck-up-the-internet-pt-2/</link><guid isPermaLink="true">https://pow.rs/blog/did-we-fuck-up-the-internet-pt-2/</guid><description>As the philosopher Thom Yorke once said, “where do we go from here?”
</description></item><item><title>The distributed web part 1: you don’t need a website</title><link>https://pow.rs/blog/distributed-web-pt-1/</link><guid isPermaLink="true">https://pow.rs/blog/distributed-web-pt-1/</guid><description>when to not get sold by marketing speak</description></item><item><title>The distributed web part 2: …or do you?</title><link>https://pow.rs/blog/distributed-web-pt-2/</link><guid isPermaLink="true">https://pow.rs/blog/distributed-web-pt-2/</guid><description>when is it time to pony up for custom development?</description></item><item><title>Don’t use HSL</title><link>https://pow.rs/blog/dont-use-hsl-for-anything/</link><guid isPermaLink="true">https://pow.rs/blog/dont-use-hsl-for-anything/</guid><description>HSL is great in theory, but worse than you realize in practice</description></item><item><title>Dribbble is a painkiller, not a vitamin</title><link>https://pow.rs/blog/dribbble-is-a-painkiller-not-a-vitamin/</link><guid isPermaLink="true">https://pow.rs/blog/dribbble-is-a-painkiller-not-a-vitamin/</guid><description>how instant gratification can curb growth</description></item><item><title>What I learned working at Envy Labs</title><link>https://pow.rs/blog/envy-labs/</link><guid isPermaLink="true">https://pow.rs/blog/envy-labs/</guid></item><item><title>Envy Labs’ 2017 rebrand</title><link>https://pow.rs/blog/envy-labs-2017-brand-rediscovering-meaning/</link><guid isPermaLink="true">https://pow.rs/blog/envy-labs-2017-brand-rediscovering-meaning/</guid><description>rediscovering meaning, returning to form</description></item><item><title>Error handling like a three-prong outlet</title><link>https://pow.rs/blog/error-handling-like-a-three-prong-outlet/</link><guid isPermaLink="true">https://pow.rs/blog/error-handling-like-a-three-prong-outlet/</guid><description>the hidden part of programming</description></item><item><title>Expanding hex colors to 48 bit</title><link>https://pow.rs/blog/expanding-hex-colors-to-48-bit/</link><guid isPermaLink="true">https://pow.rs/blog/expanding-hex-colors-to-48-bit/</guid><description>Dumb solutions can be smart, sometimes</description></item><item><title>getting started with webpack</title><link>https://pow.rs/blog/getting-started-with-webpack/</link><guid isPermaLink="true">https://pow.rs/blog/getting-started-with-webpack/</guid><description>harnessing the web’s most powerful build tool</description></item><item><title>Hey now, you’re an AI Star</title><link>https://pow.rs/blog/hey-now-youre-an-ai-star/</link><guid isPermaLink="true">https://pow.rs/blog/hey-now-youre-an-ai-star/</guid><description>My world’s on fire, how ’bout yours?</description></item><item><title>How to get a job coding in 2022, part 1</title><link>https://pow.rs/blog/how-to-get-a-job-coding-in-2021/</link><guid isPermaLink="true">https://pow.rs/blog/how-to-get-a-job-coding-in-2021/</guid><description>It’s tough to get started, but the rewards are worth it.
</description></item><item><title>How to get a job coding in 2022, part 2</title><link>https://pow.rs/blog/how-to-get-a-job-coding-in-2021-pt-2/</link><guid isPermaLink="true">https://pow.rs/blog/how-to-get-a-job-coding-in-2021-pt-2/</guid><description>Go read part 1 first if you haven’t!</description></item><item><title>How to optimize images for web</title><link>https://pow.rs/blog/how-to-optimize-images/</link><guid isPermaLink="true">https://pow.rs/blog/how-to-optimize-images/</guid><description>not all optimization techniques are equal</description></item><item><title>lessons from Astro</title><link>https://pow.rs/blog/lessons-from-astro/</link><guid isPermaLink="true">https://pow.rs/blog/lessons-from-astro/</guid><description>lessons from helping start a startup from scratch and working on open source fulltime
</description></item><item><title>Media queries are (still) a hack</title><link>https://pow.rs/blog/media-queries-are-still-a-hack/</link><guid isPermaLink="true">https://pow.rs/blog/media-queries-are-still-a-hack/</guid><description>Media queries are janky. No, it’s not just you.
</description></item><item><title>On Startups</title><link>https://pow.rs/blog/on-startups/</link><guid isPermaLink="true">https://pow.rs/blog/on-startups/</guid><description>How to burn out your employees AND bridges all at the same time!</description></item><item><title>Planet of the Apps: where are they now?</title><link>https://pow.rs/blog/planet-of-the-apps-where-are-they-now/</link><guid isPermaLink="true">https://pow.rs/blog/planet-of-the-apps-where-are-they-now/</guid><description>Looking back on everyone’s favorite cursed Shark Tank ripoff.</description></item><item><title>4 tips for setting a playfulness budget</title><link>https://pow.rs/blog/playfulness-budget/</link><guid isPermaLink="true">https://pow.rs/blog/playfulness-budget/</guid><description>At what point does whimsy and “delight” turn into user frustration?
</description></item><item><title>Playwright for visual regression testing in Storybook is stupid easy</title><link>https://pow.rs/blog/playwright-vrt/</link><guid isPermaLink="true">https://pow.rs/blog/playwright-vrt/</guid><description>It will exceed your wildest expectations, or your money back.</description></item><item><title>React is… fine</title><link>https://pow.rs/blog/react-is-fine/</link><guid isPermaLink="true">https://pow.rs/blog/react-is-fine/</guid><description>The year of React’s demise should be coming the same year as the Linux Desktop.
</description></item><item><title>Responsive modular typography scales in css</title><link>https://pow.rs/blog/responsive-modular-typography-scales-in-css/</link><guid isPermaLink="true">https://pow.rs/blog/responsive-modular-typography-scales-in-css/</guid><description>a time-saving type system with little config and lots of flexibility</description></item><item><title>How to handle responsive font sizes in css</title><link>https://pow.rs/blog/responsive-type-scales-in-css/</link><guid isPermaLink="true">https://pow.rs/blog/responsive-type-scales-in-css/</guid><description>Get perfect, easy-to-use font scaling with &amp;lt; 1kB of CSS. Sound too good to be true? It’s not!
</description></item><item><title>Secure runtime variables in IronWorker with Manifold</title><link>https://pow.rs/blog/secure-runtime-variables-in-ironworker/</link><guid isPermaLink="true">https://pow.rs/blog/secure-runtime-variables-in-ironworker/</guid><description>Docker secrets with minimal code &amp; configuration</description></item><item><title>Stylable: the good, the bad, the weird</title><link>https://pow.rs/blog/stylable-the-good-the-bad-the-weird/</link><guid isPermaLink="true">https://pow.rs/blog/stylable-the-good-the-bad-the-weird/</guid><description>taking the new CSS preprocessor from Wix for a spin</description></item><item><title>Not enough people are talking about ES Modules</title><link>https://pow.rs/blog/the-state-of-es-modules-in-2020/</link><guid isPermaLink="true">https://pow.rs/blog/the-state-of-es-modules-in-2020/</guid><description>JavaScript changed forever in 2019. Did you miss it?
</description></item><item><title>There’s no such thing as multi-axis modes</title><link>https://pow.rs/blog/theres-no-such-thing-as-multi-axis-modes/</link><guid isPermaLink="true">https://pow.rs/blog/theres-no-such-thing-as-multi-axis-modes/</guid><description>Modes, themes, collections, whatever you call it, doesn’t solve your busted design token setup.</description></item><item><title>Learning javascript? try Vue</title><link>https://pow.rs/blog/try-vue/</link><guid isPermaLink="true">https://pow.rs/blog/try-vue/</guid><description>great for beginners, great for experts</description></item><item><title>VIM setup for a designer/front-end dev on macOS</title><link>https://pow.rs/blog/vim-setup-designer-developer/</link><guid isPermaLink="true">https://pow.rs/blog/vim-setup-designer-developer/</guid><description>when you want to use vim but don’t want your eyes to bleed</description></item><item><title>Why aren’t you using Vitest for testing yet?</title><link>https://pow.rs/blog/vitest/</link><guid isPermaLink="true">https://pow.rs/blog/vitest/</guid><description>Throw away whatever you’re using already and use this for testing.</description></item><item><title>Is it time to retire HTML?</title><link>https://pow.rs/blog/was-html-a-mistake/</link><guid isPermaLink="true">https://pow.rs/blog/was-html-a-mistake/</guid><description>HTML was designed for basic text editing. How is it still holding up in a world where we’re building rich interactive experiences?
</description></item><item><title>We migrated to Next.js to serve our home page 7.5× faster</title><link>https://pow.rs/blog/we-migrated-to-nextjs/</link><guid isPermaLink="true">https://pow.rs/blog/we-migrated-to-nextjs/</guid><description>server-side rendering by the numbers</description></item><item><title>Web design isn’t becoming more boring, and isn’t losing its soul</title><link>https://pow.rs/blog/web-design-isnt-losing-its-soul/</link><guid isPermaLink="true">https://pow.rs/blog/web-design-isnt-losing-its-soul/</guid><description>don’t listen to the haters</description></item><item><title>webpack + postcss + cssnext</title><link>https://pow.rs/blog/webpack-postcss-cssnext/</link><guid isPermaLink="true">https://pow.rs/blog/webpack-postcss-cssnext/</guid><description>writing future CSS in a modern JS setup</description></item><item><title>the weird, wacky world of RGB</title><link>https://pow.rs/blog/weird-wacky-world-of-rgb/</link><guid isPermaLink="true">https://pow.rs/blog/weird-wacky-world-of-rgb/</guid><description>Color isn’t as simple as one might think</description></item></channel></rss>