It took me 6 years to realize I had a great idea

General Musings with Kevin Powell · Intermediate ·🌐 Frontend Engineering ·2y ago

Key Takeaways

The video discusses the speaker's 6-year journey to realizing the potential of CSS Grid, a feature that has been supported by all major browser engines since 2017, and how it can be used to create robust layouts with simple usage. The speaker also touches on the latest developments in CSS, including new features and improved browser support.

Full Transcript

hello my friend and friends and welcome to my podcast General musings my name is Kevin and this podcast is the audio version of my weekly Sunday newsletter where I talk about whatever is front of mine for me in any given week usually in some way that's related to front-end development as well as share interesting sites and resources that I've come across in the last week and usually share what I've been up to as well today is going to be a little bit of a story about how sometimes it can take a really long time to realize the you've actually had a really good idea or well that's the case for me at least now the Story begins all the way back in August of 2017 when I posted my first CSS grid video grid was new back then and it was something that I was excited about I'd been happy with flexbox up until that point but I was really an early adopter on jumping onto the grid bandwagon I actually ended up making a handful of videos exploring different grid features shortly after that first one with six videos dedicated to different grid features and then an eight-part Series where I made a portfolio website with a really large focus on using grid throughout and actually since that series I've actually created 20 more videos specifically looking at grid and some of its different features and different ways that we can work with it which is a lot of videos and of course during all of that time I've also used it for all sorts of things from production websites to personal projects to Quick demos that I together and honestly at this point I think I'm pretty sure that I use grid basically every time I write CSS but despite using it that much during these last few weeks I realized something that in my opinion was a game Cher for creating layouts and it all started with a video that I put out a few weeks ago which I talked about back then so you might remember it where I looked at using grid as a replacement for containers and wrappers and this definitely isn't a new idea by any means after all it was building off of something that Stephanie Eckles had shared over on small CSS and an idea that Ryan Mulligan had actually blogged about over a year ago but it was the first time that I'd really played around with this and I really I loved it so much and I was getting really excited about it or actually I thought it was the first time that I played around with this idea but it actually turned out that I had thought about this way back in 2018 and I actually thought it was cool enough to make a video about all the way back then and obviously I wasn't the only one who who slept on this a little bit cuz that video that I put out in 2018 was my worst performing grid video with just a shade over 7,000 total views on it as I'm recording this and over the years I've had worse performing videos than that but it's probably among my worst ones when it comes to like tutorials on a specific topic and the thing is it's basically just a less well refined version of the one that I posted a couple of weeks ago which is thankfully doing much better than that older one now the idea behind that older video just like the newer one now was the idea of using grid to replace containers or wrappers by using named grid lines to be able to do it and now that I've rediscovered that video that I'd made back then I actually vaguely remember creating it uh and I even remember really liking the idea I'd sort of fallen in love with it for a very short period of time so why did I know about this feature get really excited about it and then completely forget about it browser support back in 2018 browser support for grid was far from perfect at the time all of the major browser engines actually did support it uh in fact grid was the feature that actually showed us that a big complicated feature could get shipped by every engine within a short period of time they actually all launched it in March of 2017 when CSS 3 became a thing it was very exciting as we got all of these new features and a lot of really cool stuff but it also led to the horror that was vendor prefixes and that was actually followed up by a disaster of the flex box roll out which actually started in 2016 with Firefox adding support for it then no it wasn't complete support but it sort of was there uh 2018 Safari added its partial support for it 2010 Chrome added support for it so that was like already four years of the browser slowly getting there makes me think of subgrid a little bit but let's not get into that um but the problem there was even though they added it they didn't actually do it properly it went through years of different syntaxes vendor prefixes and partial support for all of its features like Flex WP only first gained support in 2012 and it was only fully supported by all of the browsers in 2014 which was 8 years after landing in the first browser so even sub Grid's looking pretty good compared to that but yeah grid was the first time that the spec added a new feature and then all of the browsers implemented it quickly some of you might be thinking about Internet Explorer version of grid knowing that wasn't 100% the best but Microsoft was actually the Pioneer behind grid and it's early prefixed versions of grid are what set the stage for everyone else to do it properly so it gets a little bit of a pass there but going back to our story sorry for the little Sidetrack there despite the good support for Grid in 2018 as we know once all the browser engines actually support something it still takes a while for a feature to have good enough support to be able to use in production and doubly so when it's something that will completely break a layout of a site if it isn't supported like which would happen with grid so in that old original video that I did and I'll put a link to the show notes for that one in case you're curious and you want to check it out it's not not as good production quality as my newer stuff but if you're you're curious to see what my older videos were like you can check that one out but I looked at a solution that included a fallback that we could use that actually worked really well so even if grid wasn't supported the whole thing didn't fall apart the problem wasn't so much with that solution it was just after my initial excitement around grid I calmed down on using it a little bit as I was waiting for browser support to improve with it in general and my YouTube content actually shows this Gap in my grid usage where after those initial six videos that I put up plus that long series all of those came out in 2017 I only made two grid focused videos in 2018 one of them which is the one that I was just talking about now and I only put out one in 2019 before I started to ramp things up a little bit more in 2020 and sort of went completely back on board in 2021 now even though I wasn't using it as much I didn't completely forget how to use grid even as I did let it take a little bit of a back seat but as support for grid increased I also started increasing how much I was using it but by then the only thing I remembered about this idea of replacing containers and wrappers with grid is that I didn't really feel like it was worth it at the time I didn't remember why I thought that I just figured I probably had a good reason for going like oh that was something I explored it didn't really work I don't know whatever I'm not going to go back to it cuz I why would I I just remember it being something that I didn't really want to bother with and I also remembered grid line names being something that I didn't particularly like because grid line numbers did what I needed to or I could use a grid area if I wanted to name something so I just never went back to that idea but of course that then does lead us all the way back to this week where I posted a new video where I was looking at how we can use grid line names to expand on what I looked at a few weeks ago and in that most recent video I actually explored a few different things that we can do with them but the part that I really liked and to me is the biggest day-to-day game Cher is something I cover in the first half of the video where I sign multiple names to a single grid line and this opens up having a container that you can break out of with a pop out or a full width section as I looked at a few weeks ago but it also makes it possible to easily have things break out only to the left or only to the right and of course that can even be expanded on from what I looked at in the video in my example my breakouts either went from you know they were within my sort of pseudo container or they would break out all the way to the extreme left or the extreme right but you could have different levels of breakouts as well just you have a pop out and then you can have a pop out that's only on the left or a pop out that's only on the right and you can have different levels of that and yes you could sort of do this with line numbers as well but it's a lot clunkier and harder to use especially if you're working in a team or something right cuz a grid column breakout right is a lot easier to remember than declaring a grid column 3 over1 which might also have to be updated within a media query or something like that whereas you know you just say breakout right it's always going to work it's going to go where you want it to and so yeah I'm really excited about this idea and I've literally slept on named grid lines for years now because as I mentioned using numbers was faster and grid areas is easier when you want to name something but it turns out that named grid lines might be the most useful feature of Grid at least in my opinion and what I've been playing with it all right because not only can we replace having a container or wrapper but we can create a much more robust system that's also really simple to use and I'm now completely fully on board with this approach going forward uh I I think the funniest thing about all of this is like I've been late to the party in the past having a great idea that I'm super proud of only to realize that someone much smarter than me figured it out years ago but to realize that I'm the one who figured it out years ago and then didn't stick with it's a little bit different but I'm happy that I've managed to figure it out all over again and actually circling back a little bit to the idea that grid showed us that new features can actually roll out across all of the browser engines pretty quickly 2023 has definitely continued to highlight that which brings us over to our other awesome stuff from around the web section of this podcast as the Chrome for developers Blog has recently put out a fantastic wrapup of all the things that have come to CSS in 2023 it goes over the different Fe features including mentioning how browser support is doing which is surprisingly good for so many of the features that they they talk about and it also includes really nice graphics and demos and other features like that so definitely I would recommend checking that one out and speaking of new CSS features Jeff Graham has posted a great article over on Smashing Magazine called a few ways CSS is easier to write in 2023 that takes a look at how a bunch of these new features make CSS easier to write from really simple things like using the is pseudo selector thing I don't pseudo selector function I don't know what we call that anyway that you know colon is parentheses you put your selectors in there to managing color schemes with color mix and a bunch of other great things that we now have at our disposal uh even sneaks in one that's not really supported yet outside of safari which is margin trim and actually I was always thinking of margin trim only using it on the top and bottom but he showed a really cool use case of also for left and right now where it could come in handy too I don't know what the timeline is for the other browsers on margin trim but it's one of the features that I'm actually really looking forward to so hopefully in 2024 all the browsers are on board with that one because as much as people like to complain about CSS and browser support it really is in a much better place today than it ever was before and we really should be thankful for how great it is now I mean yeah we need to wait a little while once a feature does land to be able to use it in production but at least we have a decent idea of how long that's actually going to take now unlike back in the day when something like flexbox took the better part of a decade just to be stable across all the browsers and that's it for this week depending on how you're consuming this if you'd prefer a written version a podcast version or a video version the link to all of those are in the show notes as well as links to everything else that I've mentioned along the way thank you so much for listening and until next time don't forget to make your corner of the internet just a little bit more awesome

Original Description

Today is a bit of a story about how sometimes it can take a really long time to realize that you’ve actually had a really good idea. Or, well, that’s the case for me, at least. You see, I recently have become so excited about how we can use a CSS feature that I’m changing my approach to creating the core structure for websites going forward. The sort of final version of this idea I’m talking about is something that I posted about this week on my main channel, but in reality, it’s something I figured out over five years ago, and I just never realized how great it was at the time. Or rather, I realized I was onto something, and then, for reasons we’ll get to later, I stopped bothering with it and eventually totally forgot about it. Other awesome stuff around the web: - CSS Wrapped: 2023 on the Chrome for Developers blog: https://developer.chrome.com/blog/css-wrapped-2023 - A few ways CSS is easier to write in 2023 by Geoff Graham: https://www.smashingmagazine.com/2023/11/few-ways-css-easier-write-2023/ What I’ve been up to this week (and other links of mine that I mentioned): - My first video on Grid: https://youtu.be/plRcoRqLriw - My video from 2018 on grid as a container replacement: https://youtu.be/eC2v0v229Ec - My recent video on using grid as a container replacement: https://youtu.be/eC2v0v229Ec - My video from this week that expands on that idea: https://youtu.be/cf-J4ffMBfo - I ranked the CSS units into different tiers: https://youtu.be/S0wilV67hjQ My primary YouTube channel where I teach frontend development, with a strong focus on CSS: https://youtube.com/@kevinpowell ✉ The written version of my newsletter: https://www.kevinpowell.co/newsletter 💬 Come hang out with other dev's in my Discord Community: https://discord.gg/nTYCvrK Help support my channel 👨‍🎓 Get a course: https://www.kevinpowell.co/courses 👕 Buy a shirt: https://teespring.com/stores/making-the-internet-awesome 💖 Support me on Patreon: https://www.patreon.com/kevinpowell
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from General Musings with Kevin Powell · General Musings with Kevin Powell · 25 of 60

1 Intrinsic Web Design
Intrinsic Web Design
General Musings with Kevin Powell
2 When you feel like you're losing motivation
When you feel like you're losing motivation
General Musings with Kevin Powell
3 Are you sure you want to freelance?
Are you sure you want to freelance?
General Musings with Kevin Powell
4 How I use Notion to help stay on task
How I use Notion to help stay on task
General Musings with Kevin Powell
5 The problem with learning roadmaps
The problem with learning roadmaps
General Musings with Kevin Powell
6 My curse
My curse
General Musings with Kevin Powell
7 The CSS Mindset
The CSS Mindset
General Musings with Kevin Powell
8 My simple technique for a better work/life balance
My simple technique for a better work/life balance
General Musings with Kevin Powell
9 Grids auto-fit syntax is weird at first but its amazing
Grids auto-fit syntax is weird at first but its amazing
General Musings with Kevin Powell
10 When you don’t know where to start
When you don’t know where to start
General Musings with Kevin Powell
11 Making the browser do the work for us
Making the browser do the work for us
General Musings with Kevin Powell
12 Why mobile-first isn't always best
Why mobile-first isn't always best
General Musings with Kevin Powell
13 The problem with following tutorials
The problem with following tutorials
General Musings with Kevin Powell
14 make your navigation work with one line of css  video
make your navigation work with one line of css video
General Musings with Kevin Powell
15 Am I cursed?
Am I cursed?
General Musings with Kevin Powell
16 Keeping up momentum with self-paced learning
Keeping up momentum with self-paced learning
General Musings with Kevin Powell
17 Understanding vs Knowing how to do something
Understanding vs Knowing how to do something
General Musings with Kevin Powell
18 Supercharge your learning
Supercharge your learning
General Musings with Kevin Powell
19 Supercharge your learning
Supercharge your learning
General Musings with Kevin Powell
20 Why is CSS so frustrating for so many people?
Why is CSS so frustrating for so many people?
General Musings with Kevin Powell
21 How people's struggles with CSS evolve over time
How people's struggles with CSS evolve over time
General Musings with Kevin Powell
22 How do you know you're ready to start applying for jobs?
How do you know you're ready to start applying for jobs?
General Musings with Kevin Powell
23 Is 54 units too many units, or not enough?
Is 54 units too many units, or not enough?
General Musings with Kevin Powell
24 Two important dev skills that don’t get enough attention
Two important dev skills that don’t get enough attention
General Musings with Kevin Powell
It took me 6 years to realize I had a great idea
It took me 6 years to realize I had a great idea
General Musings with Kevin Powell
26 Don't rely on this non-existent optimization
Don't rely on this non-existent optimization
General Musings with Kevin Powell
27 Quick one as we head into the holidays!
Quick one as we head into the holidays!
General Musings with Kevin Powell
28 Taking a short break
Taking a short break
General Musings with Kevin Powell
29 Is HTML the easiest, or hardest, to get right?
Is HTML the easiest, or hardest, to get right?
General Musings with Kevin Powell
30 How teaching helped me become a better developer
How teaching helped me become a better developer
General Musings with Kevin Powell
31 Answering your questions - Mailbag episode
Answering your questions - Mailbag episode
General Musings with Kevin Powell
32 A conversation with Una Kravets: The rapid evolution of CSS and hobbies outside of work
A conversation with Una Kravets: The rapid evolution of CSS and hobbies outside of work
General Musings with Kevin Powell
33 It's easy to get stuck in our ways
It's easy to get stuck in our ways
General Musings with Kevin Powell
34 How much browser support is enough?
How much browser support is enough?
General Musings with Kevin Powell
35 A conversation with the person who inspired my channel, Travis Neilson
A conversation with the person who inspired my channel, Travis Neilson
General Musings with Kevin Powell
36 I felt like I was taking a step backward
I felt like I was taking a step backward
General Musings with Kevin Powell
37 A conversation with Clark Sell
A conversation with Clark Sell
General Musings with Kevin Powell
38 The slow adoption of new CSS features
The slow adoption of new CSS features
General Musings with Kevin Powell
39 Why does CSS keep getting more complex?
Why does CSS keep getting more complex?
General Musings with Kevin Powell
40 I hate that people say stuff like this...
I hate that people say stuff like this...
General Musings with Kevin Powell
41 Why You Should Learn CSS Grid Before Flexbox
Why You Should Learn CSS Grid Before Flexbox
General Musings with Kevin Powell
42 Don't overthink it
Don't overthink it
General Musings with Kevin Powell
43 Why competition is a good thing
Why competition is a good thing
General Musings with Kevin Powell
44 ADHD as a dev can be a blessing (or a curse!)
ADHD as a dev can be a blessing (or a curse!)
General Musings with Kevin Powell
45 ADHD can help developers be more creative
ADHD can help developers be more creative
General Musings with Kevin Powell
46 Gain inertia with very small easy tasks
Gain inertia with very small easy tasks
General Musings with Kevin Powell
47 Dev work might be the best job for someone with ADHD
Dev work might be the best job for someone with ADHD
General Musings with Kevin Powell
48 You don't need to be hyper to have ADHD
You don't need to be hyper to have ADHD
General Musings with Kevin Powell
49 Navigating ADHD as a developer
Navigating ADHD as a developer
General Musings with Kevin Powell
50 Nerding out about CSS with Adam Argyle
Nerding out about CSS with Adam Argyle
General Musings with Kevin Powell
51 Is productivity a lie?
Is productivity a lie?
General Musings with Kevin Powell
52 So much new CSS stuff! How can we keep up?!
So much new CSS stuff! How can we keep up?!
General Musings with Kevin Powell
53 Selective learning
Selective learning
General Musings with Kevin Powell
54 Should you use AI to help you learn?
Should you use AI to help you learn?
General Musings with Kevin Powell
55 Navigating Accessibility Challenges in Web Development
Navigating Accessibility Challenges in Web Development
General Musings with Kevin Powell
56 Teaching Front-end, making sense of CSS, and more with Josh Comeau
Teaching Front-end, making sense of CSS, and more with Josh Comeau
General Musings with Kevin Powell
57 Getting more involved with CSS with Miriam Suzanne
Getting more involved with CSS with Miriam Suzanne
General Musings with Kevin Powell
58 The Unplanned Path: Finding Passion in Teaching and CSS
The Unplanned Path: Finding Passion in Teaching and CSS
General Musings with Kevin Powell
59 Navigating CSS Layout Decisions
Navigating CSS Layout Decisions
General Musings with Kevin Powell
60 The future of CSS layouts: a new unified approach
The future of CSS layouts: a new unified approach
General Musings with Kevin Powell

The video teaches the importance of perseverance and staying up-to-date with the latest developments in CSS, particularly with regards to CSS Grid and its potential for creating robust layouts. The speaker shares their personal journey and provides insights into the latest CSS features and browser support.

Key Takeaways
  1. Learn about CSS Grid and its features
  2. Use named grid lines to create robust layouts
  3. Stay up-to-date with the latest CSS features and browser support
  4. Experiment with new CSS features, such as margin trim
  5. Read articles and blogs, such as Smashing Magazine, to stay current with front-end development trends
💡 CSS Grid has the potential to revolutionize front-end development, and staying up-to-date with the latest features and browser support is crucial for building robust and efficient layouts.

Related AI Lessons

Up next
The masks we wear | Zora Krstić | TEDxLuxembourgCity
TEDx Talks
Watch →