DEV Community

Chris Coyier
Chris Coyier

Posted on

I'm Chris Coyier from CodePen, CSS-Tricks, and ShopTalk Show. Ask Me Anything!

Hello! Like the title says, I am the co-founder of CodePen (I have two fellow co-founders: Tim and Alex), I am the (owner? creator? CEO? lol it's just a blog ok) of CSS-Tricks, and co-host of ShopTalk Show with Dave.

I think websites are great. I have a personal one in addition to the other sites I help run. I probably like yours.

Nothing has been more fun and helpful over the years than writing stuff publicly. It helps me think. It starts conversations. It gets me invited to stuff. Heck, a sizeable chunk of my income comes from sponsorship and advertising which is largely in and around that writing.

Every time I tweet I think, aw snap, that would have been more useful as a blog post.

img

I think of myself as a front-end developer because I mostly write code that is meant for the browser. I feel like I have a decent perspective on the trade, as I work on (and have worked on) lots of projects across lots of different stacks and at lots of different scales. There are good and bad ideas everywhere.

Ask me anything!

Oldest comments (56)

Collapse
 
vinceumo profile image
Vincent Humeau

Hey Chris, first thank you for your work I love codepen and CSS tricks, it always been a great source of daily inspiration!

What have been the most challenging time in your dev career?

Thanks

Collapse
 
chriscoyier profile image
Chris Coyier

I've lived a pretty darn privileged life, so any challenge I've faced is nothing compared to the people fighting racism, sexism, ageism, and every other damn thing people stigmatize people with.

Collapse
 
vinceumo profile image
Vincent Humeau

Thank Chris, sorry English is not my mother tongue, might have got lost into translation. I wanted to ask you about tech challenges. Sorry about that.

Collapse
 
kenbellows profile image
Ken Bellows

I've heard you guys talk about Houdini a few times on ShopTalk. How much do you see yourself personally playing with Houdini APIs as they are released? Which API are you most excited about (Painting, Layout, Typed OM, ...)?

Collapse
 
chriscoyier profile image
Chris Coyier

This super-low level stuff sometimes feels over my head. It's hard for me to picture the industry implications of stuff like this just by looking at specs, ya know?

To me, it seems the layout API has the most powerful potential.

What I'm imagining right now is that Houdini doesn't affect normal day-to-day front-end developers like me that much. I won't be writing much Houdini code. But I'll use fancy things that other people create, because it does something useful for me. Just like most people don't write their own libraries or have published npm packages, they just use them.

It's fun to be wow'd by Houdini. If anyone is looking for that, make sure to look at Vincent De Oliveira's showcase website.

Collapse
 
itsjzt profile image
Saurabh Sharma

CSS or CSS in JS?

Collapse
 
chriscoyier profile image
Chris Coyier

I see a ton of cool stuff happening in CSS in JS. I think it solves a lot of interesting problems for certain websites. For example, I very much like the idea of having the option to write styles that are scoped to a component programmatically. And thus are tree-shaked out when the component isn't used automatically.

But the web is a big place, and dare I say most websites aren't built with JavaScript-powered component models. Thus, CSS-in-JS isn't necessary or appropriate for a lot of sites.

Two things though to be clear:

  • You can't have CSS-in-JS without CSS. CSS-in-JS is still styled that are applied to elements. It doesn't absolve you from learning CSS.
  • The CSS-in-JS landscape is wide. It's a little hard to talk about so vaguely. Each project in the bucket of CSS-in-JS handles things a bit differently and how the styles are applied to the site is even quite wide. I think it sometimes gets lost in the arguments that some of the approaches literally make a CSS stylesheet that you link up like you would any other CSS, even Sass-produced CSS, which there doesn't seem to be much argument about anymore.
Collapse
 
ryansmith profile image
Ryan Smith

Hey Chris, I just want to say thank you for all of the work you have done over the years. I started using CSS Tricks with your tutorials on converting PSDs to HTML/CSS a long time ago and those helped me level up on CSS and design. Even though some of the specific techniques may not be used anymore, the overall lessons on how to look at a design, break down each element into part of the page structure, then style it have stuck with me.

Collapse
 
chriscoyier profile image
Chris Coyier

Cheers. There is still a lot to looking at a design and considering how that's going to translate to HTML, CSS, and JavaScript!

Collapse
 
nickytonline profile image
Nick Taylor

Thanks for all the great resources you've been churning out over the years and thanks for codepen and CSS Tricks.

I'm sure you have tonnes of cool tricks you've done yourself or seen over the years, but do you have a favourite where you were just like wow!

Keep being awesome and I hope your arms are healing well. ๐Ÿ’ช

Collapse
 
nickytonline profile image
Nick Taylor

Side note, but I really enjoyed your recent talk with the Keyframers on Shop Talk.

That made me think of this funny Tweet from @chriscoyier today about position sticky.

I think CSS variables are starting to gain steam. It makes a lot of sense for theming. DEV, for those who aren't aware, uses CSS variables quite a bit for theming.

@davidkpiano recently talked about his heavy use of them for animations on a recent episode of Shop Talk.

Him and David Shaw have this awesome Twitch stream where they reverse engineer animations. They're called the Keyframers and you can follow them on Twitch or on the Twitters.

It's really an amazing thing to watch.

Collapse
 
chriscoyier profile image
Chris Coyier

I think "scroll shadows" in CSS is one of my favorite CSS tricks of all times. Originally by Roman Komarov, explained and improved by Lea Verou. I saw a tool the other day around the idea by Stefan Judis.

It's a real mind-bender involving four layered gradient backgrounds, each positioned, sized, and colored differently, and then behavioraly different regarding scrolling.

It's not just a neat trick, it has real UX implications. Showing a shadow of where you can scroll is important UX. Consider this story of a recent design update in iOS that led to complete confusion UI actions hidden behind a place you could scroll to, but had zero affordence on how to get there. (Happens to me all the time in Spotify, for the record.)

Collapse
 
nickytonline profile image
Nick Taylor

Awesome sauce. Thanks for sharing Chris!

Collapse
 
andy profile image
Andy Zhao (he/him)

Thanks for doing this AMA! Since you've been writing blog posts for so long, have you developed a process for writing one?

Collapse
 
chriscoyier profile image
Chris Coyier

Sorta! It still feels pretty casual to me (hence the, let's call it medium quality to my writing), so it's not like I'm renting a cabin in the wilderness and finding inspiration in the sunsets and cheap whiskey.

  • I write down every blog post idea that comes to me. I try to keep that list fairly public but I also have a personal list where I can be even sloppier.
  • I put as much context into those lists as I can, so I can hope to summon up the same emotion that made me write it down in the first place. If I revisit the idea a week later and can't, it's probably not a very good idea.
  • I write up the post with as much context as I can. Typically at least light research is involved.
  • We have a lead editor on CSS-Tricks, so it's reviewed by at least one person before being scheduled.
Collapse
 
cookavich profile image
Paul Cook

You've built an amazing platform for yourself, and an amazing brand with CSS-Tricks.

What would be your top 3 pieces of quick advice for developers trying to follow a similar path to growing their influence and exposure?

Thanks!

Collapse
 
chriscoyier profile image
Chris Coyier

I think writing is literally the only way.

I can't think of a developer with influence who has that influence for anything other than writing. Or if it's not writing, then it's a YouTube channel or some other form of creating public stuff.

Collapse
 
molly profile image
Molly Struve (she/her)

Every time I tweet I think, aw snap, that would have been more useful as a blog post.

I feel the exact same way a lot of the time!!! How do you determine what you want to turn into a blog post and what you leave as a simple Tweet?

Thanks for much for taking the time to answer questions and inspire the rest of us ๐Ÿค—

Collapse
 
chriscoyier profile image
Chris Coyier

I usually won't avoid the Tweet. The tweet is a good proving ground for the blog post anyway usually. If nobody cared, eh, maybe not that good of a post. If it does get good engagement, it's like the conversation around it is useful in the creation of the blog post anyway. Plus, tweets are so easy to kick out the door. Blog posts, for me, on purpose, have a longer schedule that includes editing and scheduling and such.

Here's an example tweet. Just a silly little UI experiment. I didn't feel like waiting to blog about it to drop the demo. But from the Twitter thread, I got some interesting technical feedback, info about what parts people were most suprised by, and some other related ideas. That will, hopefully, lead to a much more robust blog post.

I mean even treat DEV like that honestly. I wrote this blog post reaction quickly here, but then refinied it for my own blog with some of the feedback.

Collapse
 
molly profile image
Molly Struve (she/her)

I like it, sounds like a solid strategy ๐Ÿ˜ƒ Thanks for taking the time to share!

Collapse
 
anechol profile image
Ashley E

Hey Chris, huge fan of Codepen and CSS Tricks!

I've been trying to level up my CSS skills by learning some advanced concepts (custom properties, extending them with JS, etc.) but as CSS has so much going on, what would you say is a good part to focus on for advanced/expert level work?

Thanks!

Collapse
 
chriscoyier profile image
Chris Coyier

Howdy Ashley!

It's funny, it's very rare I choose to study up on something just for the sake of it. While I think (to go on your example of custom properties) they are cool, I'm not sure I've sat down to just study them independently. It's usually like enough reading to grasp the point of them, letting that lodge in your brain, then next time I'm writing CSS, hoping that my brain presents them as a possible solution to a situation.

Even now, my muscle memory for them has grown to the point I automatically start variable-izing CSS values as I write CSS. It's almost too strong, as I think a lot of CSS variable usage is still best left to CSS preprocessors.

Some comments may only be visible to logged-in visitors. Sign in to view all comments. Some comments have been hidden by the post's author - find out more