CSS is essential for creating a good user experience, ensuring that websites are functional, accessible, and easy to use. It plays a critical role in how users interact with a product, making it a valuable skill even as other technologies evolve.
Accessibility ensures that all users, including those with disabilities, can use a website. Neglecting accessibility can lead to technical debt, as retrofitting accessibility issues later is more time-consuming and costly. Focusing on accessibility from the start avoids this and ensures no users are left behind.
Technical debt refers to taking suboptimal approaches to development, which accumulate work that needs to be fixed later. It's like real debt, where you incur interest in the form of a website that doesn't work as well as it could, and eventually, you have to pay the principal with interest by fixing it.
Before Flexbox and Grid, layouts were created using tables or floats, which were hacks. Flexbox and Grid introduced proper layout tools, making it easier to create responsive designs. Flexbox is great for flexible, content-based layouts, while Grid allows for more control over placement, similar to table-based layouts but more user-friendly.
Responsive web design allows websites to adapt to different screen sizes and devices. Before responsive design, developers had to maintain separate mobile and desktop versions of a site, which was inefficient. Responsive design, introduced by Ethan Marcotte, uses flexible layouts and media queries to make websites work on any device.
Mobile apps have simplified layouts due to limited screen real estate, making designs more uniform. However, they have also made web development more challenging by requiring developers to ensure websites are mobile-friendly and responsive. Progressive web apps (PWAs) have become a solution, allowing developers to create apps using HTML, CSS, and JavaScript that work across all platforms.
Kevin started his YouTube channel as a hobby while working as a teacher. His channel grew slowly over time, focusing solely on CSS. He gained recognition through collaborations and engaging content, eventually becoming synonymous with CSS education on YouTube, earning him the unofficial title of 'King of CSS'.
Tutorial hell is when learners follow tutorials step-by-step but struggle to apply the knowledge on their own. Skateboarding taught Kevin that understanding a concept isn't enough; practice is crucial. Just as skateboarding requires physical practice, coding requires hands-on experience to build the necessary skills and confidence.
Teaching in a classroom helped Kevin understand the beginner mindset and anticipate common questions. It also taught him to break complex topics into smaller, digestible pieces. These insights have made his YouTube tutorials more effective, as he can address common pitfalls and explain concepts clearly.
CSS is a foundational web technology that ensures developers have control over the user experience. While frameworks and tools can speed up development, understanding CSS allows developers to make customizations and maintain their code more effectively. As web technologies evolve, CSS knowledge remains relevant for creating responsive and accessible designs.
Take our year-end freeCodeCamp podcast listener survey real quick: https://forms.gle/2M9NW776723uSdDT7
On this week's episode of the podcast, freeCodeCamp founder Quincy Larson interviews Kevin Powell. He's a designer, a software engineer, and an expert in CSS. He's runs a CSS-focused YouTube channel with nearly a million subscribers. There's nothing sensational there – he literally just teaches people CSS.
Support for this podcast comes from a grant from Wix Studio. Wix Studio provides developers tools to rapidly build websites with everything out-of-the-box, then extend, replace, and break boundaries with code. Learn more at https://wixstudio.com.
Support also comes from the 11,043 kind folks who support freeCodeCamp through a monthly donation. Join these kind folks and help our mission by going to https://www.freecodecamp.org/donate
CORRECTION: I (Quincy) say during the interview that the Uber found a way to access microphones on iOS without users' knowledge. There have been documented cases of malware doing this (like Pegasus) but Uber didn't do this. They did do a lot of other shady things, like continue collecting data even after you deleted their app – but mic spying was not one of them. Yes, early Uber was an ethical tire fire. But it's important to get facts right here.
We talk about:
Links we talk about during our conversation:
Kevin's YouTube channel: https://www.youtube.com/kevinpowell
Original Space Jam website Kevin mentions: https://www.spacejam.com/1996/
The article that coined the term Responsive Design: https://alistapart.com/article/responsive-web-design/
Kevin's freeCodeCamp article on how learning skateboarding helped him out of tutorial hell: https://www.freecodecamp.org/news/how-learning-to-skateboard-helped-me-find-a-way-out-of-tutorial-hell/
Kevin's freeCodeCamp course on building and deploying a portfolio page: https://www.freecodecamp.org/news/how-to-build-a-portfolio-website-and-deploy-to-digital-ocean/
Playable Minesweeper in CSS that Quincy mentions: https://codepen.io/bali_balo/pen/BLJONZ
Acknowledged mistakes that are permanently coded into CSS: https://wiki.csswg.org/ideas/mistakes
Talk on why is CSS so weird: https://www.youtube.com/watch?v=aHUtMbJw8iA