BaseWatch

By Chris Coyier on

There is so much new web technology happening all the time, it is definitely not your fault if you feel like you can’t keep up with it. Big thumbs up to the new service BaseWatch, which will let you know when web technologies you care about become widely available, and thus potentially close enough to […]

Collaborative Markdown

By Chris Coyier on

Just two short long years ago, I wrote an article here called Document Collaboration (with Comments!). As a long-time blogger who helps others with their articles too, I’ve played with lots of tools to help with this flow. I put some options in that post, but none are perfect. The big names come with baggage […]

Goodbye innerHTML, Hello setHTML

By Chris Coyier on

The new .setHTML() method in JavaScript, part of the Sanitizer API, can be a one-to-one replacement for .innerHTML(), making sites more secure from XSS attacks. I think that’s pitch-perfect feature branding from Mozilla on this: Goodbye innerHTML, Hello setHTML: Stronger XSS Protection in Firefox 148. Listen to Frederik Braun go deep into this on ShopTalk […]

A Brief History of JavaScript

By Chris Coyier on

A Brief History of JavaScript from the Deno team, celebrating JavaScript being 30 now. Interesting that the first web request tech was Internet Explorer 5 in 1999, then it took 5 years to get Gmail in 2004, then we started calling it AJAX in 2005, and by 2006, we got jQuery’s $.ajax which made it […]

Working with Legacy Code

By Chris Coyier on

From Nicholas C. Zakas’s regularly interesting newsletter: The best way to work with legacy code is to approach it patiently—understand small parts, write tests, and document what you learn. My favorite line about legacy code, which I’ve probably shared too much, is when David Khourshid called it “Legendary Code”. Legacy code feels a smidge mean […]

Death to Scroll Fade!

By Chris Coyier on

David Bushell is very sick of the “scroll fade” effect. It’s the effect where, as you scroll down a page, elements slide into place. Often, all the elements. I agree it’s overplayed since it’s usually movement for the sake of it, not adding anything to the experience. It’s true that movement catches our eye, but […]

Replicating a Switch Input (and Polyfill)

By Chris Coyier on

Safari has support for <input type=”checkbox” switch> where a normal ☑️ checkbox turns into a toggle. You don’t strictly need the browser support to get the look, as it’s weirdly easy to replicate (based on idea from Richard Keizer). But Thomas Steiner has a more comprehensive polyfill if you want it to behave more exactly […]