So, I'm biased, and I think that my CSS course is the best way to level-up your CSS skills… but even *I* have to admit, there are TONS of great free resources!
Sharing some of my favourites in this thread, in case CSS for JavaScript Developers isn't within your budget.
👇
1. Google recently released Learn CSS, a wonderful tour through the fundamentals of the CSS language. It's built by a superstar team (including @Una@rachelandrew@piccalilli_ and @argyleink).
2. @rachelandrew goes through the fundamental principles of the CSS language in this fantastic blog post, “How To Learn CSS”. It's short and concise, and it links off to additional resources in each section.
In general, specifications are intended for browser vendors and aren't written for front-end devs. This is definitely more of an intermediate-to-advanced thing, but I've found the specs surprisingly easy to read and v. helpful!
There are advantages to my course, for sure. It's closer to a college course than a book. Plus, I haven't seen many resources specifically for folks using a JS framework like React.
But it is absolutely possible to become a CSS wizard using nothing but free resources. 🪄
Couple more wonderful resources, from the replies:
For most of the web, the text is the most important thing on the page.
🧵 Let's look at some of the stuff I've learned for keeping our text readable + accessible for everyone.
For folks with poor vision, larger text will help them be able to read.
There are two primary ways to increase font size: 1. Using the browser "zoom" controls (cmd/ctrl +, cmd/ctrl –) 2. Picking a larger default font size in the browser settings
Browser zoom works with most units, including px, em, and rem. It doesn't work with viewport units (vw/vh).
Scaling the default font size only works with em/rem/%.
So, while it's not as bad as it used to be, we still shouldn't use px for typography.
First, I wanna clarify that this isn't all just about aesthetics. It's important to understand *why* shadows are such a powerful tool.
Shadows give our application depth and realism, and let us focus attention by elevating important elements.
In the past, when I wanted to add a shadow, I'd play with the numbers until I liked the way it looked. As a result, I had a mess of incongruous shadows, breaking the overall illusion of depth 😅
We can avoid this problem by understanding how shadows work.
🌠 It's so easy to get sucked into performance micro-optimization territory.
Someone will say that Method X is slow, and inevitably somebody else will point out that it doesn't really matter outside of contrived, unrealistic benchmarks.
🧵 I wanna dig into that a bit…
Here's an example. We have a list of users, and we wanna filter so that we only show the people who are online.
We can do that with a "filter", or with a "reduce", or with a "forEach". Which is faster? Does it matter? Why or why not?
Are you interested in teaching stuff to developers? Maybe through a blog, or a workshop, or an online course?
🧵 This thread is a quick summary of some of the most-critical stuff I've learned, over years of blogging, teaching at a bootcamp, and working in edtech at Khan Academy.
I believe that there are two categories of learning: active and passive.
Active learning means that the learner is doing something. They're solving a problem, writing some code, playing with an example. Passive learning is watching a video, listening to a lecturer.
Which one is better? Well, I think active learning is probably more effective, but it's also more draining. Nonstop active learning is *exhausting*.
I like to treat it like interval training: I intersperse both types, so that we're constantly hopping between them.
From March 2020 to ~October 2020, I wasn't really able to use a keyboard/mouse.
I've been pretty public about how I worked around it (joshwcomeau.com/blog/hands-fre…), but I haven't been as public about how I overcame it.
🧵 This thread is about my personal experience with RSI.
This is a story about my own experience, not a tutorial for how to solve RSI. Everyone's different, and just because something worked for me doesn't mean it'll work for you.
Please read all the way through before trying anything.
[cw medical stuff / surgery discussion]
In March 2020, I injured my left arm. Certain activities, like typing, would cause a burning pain in the elbow, and occasionally the wrist or fingers.
In May 2020, the same thing started happening in my right arm.