Chris Coyier, Alex Vazquez, and Tim Sabat, the co-founders of CodePen talk about the ins and outs of running a web software business.
400: Hiatus
Marie and I jump on the show to tell y'all we're taking a little break! It feels like years since we've been eluding to the fact that we're working on a new major upgrade to CodePen. Rather than keep dancing around it, we're going to minimize or remove working on anything that isn't working on that. We can't wait to come back for episode 401 and tell you all about it.
Time Jumps
Sponsor: Split
This podcast is powered by Split. The Feature Management & Experimentation Platform that reimagines software delivery. By attaching insightful data to feature flags, Split frees you to quickly deploy, measure, and learn the impact of every feature you release. So you can safely deliver features up to 50 times faster and exhale. What a Release.
Start raising feature flags (and lowering stress). Visit Split.io/CodePen for a free trial.
2/8/2023 • 0
399: Data Munging
There was a small problem in our database. Some JSON data we kept in a column would sometimes have a string instead of an integer. Like {"tabSize": "5"} instead of {"tabSize": 5} of the like. Investigation on how that happened was just silly stuff like not calling parseInt on a value as it came off a <select> element in the DOM. This problem never surfaced because our Rails app just papered over it. But we're moving our code to Go in when you parse JSON in Go, the struct type that you parse it out into needs to match those types perfectly, or else it panics. We had found that our Go code was working around this in all sorts of ways that felt sloppy and inconsistent.
One way to fix this? Fix any bad data going into the DB, then write a script to fix all the data in the DB. This is exactly the approach I took at first, and it would have absolutely fixed this problem.
But Alex took a step back and looked at the problem a bit wider, and we ended up building some tools that helped us solve this problem, and solve future problems related to this. For one, we built a more permission JSON parser that would not panic on something as easy to fix as a string-as-int problem. This worked by way of some Go reflection that could tell what types the data was supposed to be and coerce them if possible. But what should the value fall back to if it's not savable? That was another tool we built to set the default values of Go structs to be potentially other values than what the defaults for their types are. And since this is all in the realm of data validation, we built another tool to validate the data in Go structs against constraints, so we can always keep the data they contain good.
Once all these tools were in place, the new script to fix the data was much easier to write. Just call the safe JSON function to fix the data and put it back. And the result is a cleaned up code base and tools we can use for data safety for the long term.
Time Jumps
Sponsor: Split
This podcast is powered by Split. The Feature Management & Experimentation Platform that reimagines software delivery. By attaching insightful data to feature flags, Split frees you to quickly deploy, measure, and learn the impact of every feature you release. So you can safely deliver features up to 50 times faster and exhale. What a Release.
Start raising feature flags (and lowering stress). Visit Split.io/CodePen for a free trial.
2/1/2023 • 0
398: DevOops
Stephen and I hop on the podcast to chat about some of our recent tooling, local development, and DevOps work. A little while back, we cleaned up our entire monorepo's circular dependency problems using Madge and elbow grease. That kind of thing usually isn't the biggest of deals and the kind of thing a super mature bundler like webpack deals with, but other bundlers might choke on. Later, we learned that we had more dependency issues like inter-package circular dependencies (nothing like production deployments to keep you honest) and used more tooling (shout out npx depcheck) to clean more of it up. Workspaces in a monorepo can also paper over missing dependencies — blech.
Another change was moving off using a .dev domain for local development, which oddly actually caused some strange and hard-to-diagnose DNS issues sometimes. We're on .test now, which should never be a public TLD.
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company’s information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com. Take your first step toward an organized, happier team, today.
1/26/2023 • 0
397: User-Generated Content Saftey
I was asked about the paradoxical nature of CodePen itself recently. CodePen needs to be safe and secure, yet we accept and gleefully execute user-authored code, which is like don't-do-that 101 in web security. Marie and I hop on the show to talk this through as an update from quite a long time ago. It's wonderfully-terribly complicated. Part of what complicates it is that there are many different kinds of worrisome code, from malicious, to distasteful, to spam, and they all need different treatment. This is a daily and never-ending war.
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company’s information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com. Take your first step toward an organized, happier team, today.
1/18/2023 • 32 minutes, 52 seconds
396: Open Source
Robert and I jump on the podcast to have a little chat about open source generally and what we do with open source at CodePen. CodePen itself is not open source, aside from the small bits we've made public and the open-source things we include within it. But all Public Pens on CodePen are open source, so we certainly handle a lot of it! Enough that I felt comfortable making our Mastodon presence on Fosstodon, which is an open-source-focused instance.
Time Jumps
Sponsor: Split
This podcast is powered by Split. The Feature Management & Experimentation Platform that reimagines software delivery. By attaching insightful data to feature flags, Split frees you to quickly deploy, measure, and learn the impact of every feature you release. So you can safely deliver features up to 50 times faster and exhale. What a Release.
Start raising feature flags (and lowering stress). Visit Split.io/CodePen for a free trial.
1/11/2023 • 0
395: The Most Hearted of 2022
Marie and I hop on the show to discuss our recently released Most Hearted of 2022 Pens. We only did the calculations the day before, so this is more of a first reaction than a deep dive.
Congrats to Hyperplexed for #1 and a massive year on CodePen. Last year, just one entry on the Top 100, and this year, nine. "Full layouts" like this appeared a number of times, including Aysenur Turk, last year's winner, at #13 with Liquid Transition Effect, and there were two NFT-themed landing pages (1, 2) in the Top 100.
A lot of Pens attract attention when they have that "I could use this" feel to them, demonstrated by Ryan Mulligan's Logo Wall at #2!
High five to Greensock for taking #3 with a re-creation of Brian Cross' lovely Pen. The tag "gsap" was used a ton in the Top 100.
Jon Kantner took #4 and 10 other spots making this the most appearances on the Top 100 list ever, and also took a spot with a Pen made on December 13th! Aaron Iker and Yoav Kadosh both had 4 spots.
Perhaps my favorite because of the deep CSS trickery involved was Scott Kellum's Apple inspired pride clock. Scott has the oldest account of anyone in the list, over 10 years old! Huge fan of Steve Gardener's joke, though as well.
11 of the Top 100 were created for CodePen Challenges.
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company’s information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com. Take your first step toward an organized, happier team, today.
1/4/2023 • 0
394: Very Remote Work
Rach lives in Australia, so for our otherwise U.S.-based team, that's about as remote as it gets. We've always been remote at CodePen, so we have it built-in to our culture already, but that doesn't mean we don't have to plan for it, think about it, and adjust things to make sure we're all doing the best we can. Writing is a fundamental aspect of it all, but even that is funny sometimes because you have to choose where those words will go that make the most sense. Right now, it's a balance between Notion, GitHub, Slack, and even our codebase itself.
Time Jumps
Sponsor: Split
This podcast is powered by Split. The Feature Management & Experimentation Platform that reimagines software delivery. By attaching insightful data to feature flags, Split frees you to quickly deploy, measure, and learn the impact of every feature you release. So you can safely deliver features up to 50 times faster and exhale. What a Release.
Start raising feature flags (and lowering stress). Visit Split.io/CodePen for a free trial.
12/14/2022 • 0
393: Challenges in 2022
Marie and Chris talk about the year in CodePen Challenges. If you participate, this might be an interesting look into how we think about them. If you don't, it might help you understand what they are and how they might just tickle your fancy.
Time Jumps
Sponsor: Split
This podcast is powered by Split. The Feature Management & Experimentation Platform that reimagines software delivery. By attaching insightful data to feature flags, Split frees you to quickly deploy, measure, and learn the impact of every feature you release. So you can safely deliver features up to 50 times faster and exhale. What a Release.
Start raising feature flags (and lowering stress). Visit Split.io/CodePen for a free trial.
12/7/2022 • 0
392: Project Management Refresh
Dee and Chris chat about our latest take on Project Management (PM), a somewhat tricky topic for us with such a small team where literally everyone is an individual contributor (IC) with a lot on their shoulders aside from PM.
We're attempting a project of large scale, so part of what has helped us so far is scoping the project into phases releases. That way work that we know is in a later release can be put off until we're literally working on that release. Without at least that prioritization, things would take much longer. The releases are also chunked into sub-projects with a no-too-little and not-too-big quality, and within those projects is where the kan-baning happens. If we can keep the whole team on one project (or at least a group of 2-3), it limits the context switching which also helps speed and productivity.
We use Notion for most of this work, and it's been nice to keep literally all of it (all the way up through all the phases) in one big database, then we scope the views down to phases and projects and cards. Each card we make sure has a very actionable tone to it and includes everything one might need to finish the task, including decisions, previous conversations, relevant other tickets, etc. Each card has things you might expect like who is working on it, the current status, whether it's blocked or not, and several other useful bits of metadata. It also contains time estimates, so we can, at a glance, see how far we've come and what's left on any given project. We know things like time estimates can change quite a bit, but everyone is well aware of that and isn't beholden to the numbers. It just gives us some idea of what is going on other than feeling like we're entirely driving blind. Each week we take a look at the progress together as a team.
Time Jumps
Sponsor: Split
This podcast is powered by Split. The Feature Management & Experimentation Platform that reimagines software delivery. By attaching insightful data to feature flags, Split frees you to quickly deploy, measure, and learn the impact of every feature you release. So you can safely deliver features up to 50 times faster and exhale. What a Release.
Start raising feature flags (and lowering stress). Visit Split.io/CodePen for a free trial.
11/30/2022 • 0
391: Early TypeScript at CodePen
TypeScript ain't exactly new, but it's a bit new to us. Robert was the most knowledgeable about TypeScript on the team and felt like it could be valuable for us. What does that mean though? Where would we use TypeScript? What blockers were there? What does it actually help with? The implementation hasn't been trivial, so has it been worth it? Will it be worth it? Robert, Chris, and Stephen discuss.
Time Jumps
11/23/2022 • 0
390: The Social Media Zeitgiest
Marie and I talk about what's going on in the world of social media, and what that might mean for CodePen and front-end developers. Twitter doesn't feel particularly healthy at the moment, but has been the biggest player for front-end developers for a lot of years. Are we moving? Not? Where?
Time Jumps
11/16/2022 • 0
389: Migrating a Ruby on Rails GraphQL API to a Go GraphQL API
One thing that's been keeping us very busy at CodePen is moving our main API. We decided on GraphQL long ago and it's served us pretty well. We originally built it in Ruby on Rails alongside a lot of the rest of our app. But while Rails served us well, we've been moving off of it. We like our React architecture and we're better served leaning into that, with frameworks like Next, than staying on Rails. We proved out this combination of technologies for ourselves, building a whole set of admin tools with it. Now we're ready to keep that train going as we build out more of CodePen with the same stack. But removing Rails means moving off of our Rails-based GraphQL implementation. This means re-writing that API in Go, another bit of tech we've had a lot of luck with.
Turns out that re-writing an API is more time-consuming than writing it to begin with, especially as we need to run them side-by-side and behave identically. No refactoring allowed! Unless of course we want to refactor it on both sides and take even more time.
Dee joined me this week in talking about all this. It's a huge job! But we've been doing well at it, building our own tooling, doing lots of testing, and ultimately proving that it works by releasing it in small areas on the production site. It's all working out how we hoped it would: fast, cheap, and easier to reason about.
Time Jumps
Sponsor: Equinix Metal’s Startup Partner Program
Equinix Metal’s Startup Partner Program helps early stage companies level up. Their experts work with startups like Koord and INVISV to build their competitive edge with infrastructure. Equinix Metal provides real time guidance and support to help startups grow faster. With up to $100,000 in infrastructure credit, access to Equinix’s global ecosystem of over 10,000 customers and 1,800 networks, they might just be what you need to take your startup global.
Visit metal.equinix.com/startups to take your startup to the next level.
11/2/2022 • 0
388: Durable Objects
Robert and I jump on to chat about Cloudflare's product Durable Objects. It's part of their Workers platform, which we already use at CodePen a good bit, but with Durable Objects...
Global Uniqueness guarantees that there will be a single instance of a Durable Object class with a given ID running at once, across the world. Requests for a Durable Object ID are routed by the Workers runtime to the Cloudflare data center that owns the Durable Object.
In their intro blog post a few years back, they call the "killer app" real-time collaborative document editing, which is obviously of interest to us. So we've been tinkering and playing with how that might work with CodePen's future technology.
Time Jumps
Sponsor: Equinix Metal’s Startup Partner Program
Equinix Metal’s Startup Partner Program helps early stage companies level up. Their experts work with startups like Koord and INVISV to build their competitive edge with infrastructure. Equinix Metal provides real time guidance and support to help startups grow faster. With up to $100,000 in infrastructure credit, access to Equinix’s global ecosystem of over 10,000 customers and 1,800 networks, they might just be what you need to take your startup global.
Visit metal.equinix.com/startups to take your startup to the next level.
10/19/2022 • 0
387: CodePen Co-Founders AMA
A few months back, Alex and I did a 10-year anniversary episode that took the form of 10 bits of advice formed in the fires of running a software company for a decade. That was us talking at you. We thought it would be fun to turn the tables and have you talk at us in the form of an Ask-Me-Anything follow-up to that 10-year show.
Time Jumps
10/5/2022 • 0
386: Hakim El Hattab
This week I got to speak with Hakim El Hattab. I feel pretty special as Hakim told me he doesn't do public stuff very often. I get it! He's a busy man with a family, a successful company, and ambitious other projects. I think of Hakim as the master of simple but satisfying UI concepts that have a way of becoming bigger than demos. Consider Ladda, which you can find as part of his personal site, which is a button that expands to show a spinner. This concept started with Hakim and has now made its way to surely hundreds or thousands of websites, some as big as Slack and some as awesome as CodePen itself.
Time Jumps
Sponsor: Equinix Metal
Equinix Metal’s Startup Partner Program helps early-stage companies level up. Their experts work with startups like GenesysGo and Cuemby to build their competitive edge with infrastructure. Equinix Metal provides real-time guidance and support to help startups grow faster. With up to $100,000 in infrastructure credit, access to Equinix’s global ecosystem of over 10,000 customers and 1,800 networks, they might just be what you need to take your startup global.
Visit metal.equinix.com/startups to take your startup to the next level.
9/28/2022 • 0
385: Kristopher Van Sant
This week I got to talk to Kristopher Van Sant! Again! This time we got to talk about Kristopher's professional work as well as some favorite Pens.
Time Jumps
Sponsor: Equinix Metal’s Startup Partner Program
Equinix Metal’s Startup Partner Program helps early stage companies level up. Their experts work with startups like GenesysGo and Cuemby to build their competitive edge with infrastructure. Equinix Metal provides real time guidance and support to help startups grow faster. With up to $100,000 in infrastructure credit, access to Equinix’s global ecosystem of over 10,000 customers and 1,800 networks, see why startups choose Equinix Metal. It’s not just about the infrastructure, it's about the people behind it. Are you ready to go global?
Visit metal.equinix.com/startups to take your startup to the next level.
9/14/2022 • 0
384: The 300 Sparks Milestone
We just recently published the 300th CodePen Spark. Marie joins me on the show, as she leads up the creation of the vast majority of Spark newsletters. We get into things like why we do it, how we create it, how we send it, and things we've learned along the way sending a newsletter of this magnitude. We have some interesting failsafe procedures in place. Plus we get into some of the analytic numbers behind what we're doing. Here's to another upcoming many hundred more!
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company’s information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com. Take your first step toward an organized, happier team, today.
Show Links:
Riccardo Zanutta’s “Animations & Cool Effects”: https://codepen.io/collection/XgZLNA (started in 2014!)AndyMan’s “Patterns, filled space”: https://codepen.io/collection/XBLxoeEric Karkovack’s “ASCII Artwork”: https://codepen.io/collection/MgaYzZJhey Tompkins’ “Speedy CSS Tips”: https://codepen.io/collection/bNWWdOPeter Norton’s “3D CSS”: https://codepen.io/collection/GoZQxGBramus’ “Scroll Linked Animations”: https://codepen.io/collection/xKzjpo
9/7/2022 • 0
383: Soft Delete All
In this show, Stephen and Chris get to talk about an internal technical detail we were improving in our database, which led to a public-facing feature for y'all. The idea is that all (most, anyway) database tables should have a deleted_at column. When you query against them, under regular circumstances, any rows that have a non-null value will be filtered out. This is the concept of "soft" delete. It's not really gone from the database, it just behaves like it is. This has two clear benefits:
Deleting is super fast, it's just manipulating a single value.It opens the door for un-deleting things that perhaps were mistakenly deleted.
This approach can be slightly more work. You'll need to offer a way to truly wipe data completely for users. You'll probably want a reaper to clean up data that has been deleted long enough. You'll need to comply with regulations about data deletion. You might have to build un-deletion features. You might need to be doing that filtering yourself throughout the app. It's work, but it's generally worth it.
In our case, because we soft delete everything on CodePen now, the Deleted Items area of Your Work now works for all Item Types (Pens, Collections, and Projects). Before, it only worked for Pens, and even there it was a little messy as it didn't retain the URL slug or comments and such — now it does.
Time Jumps
Sponsor: Memberful
Memberful is a best-in-class membership software used by the web's biggest creators. If you're building a membership website for a client, Memberful handles the hard stuff so you can complete your builds quickly and your clients can focus on creating content while earning revenue with ease. It seamlessly integrates with popular tools like WordPress, Mailchimp, and Discord, so they can reach and monetize their existing audience. Memberful maintains GraphQL API, webhooks, and OAuth Single Sign on to make integration even easier.
Help your client monetize their passion. Get started for free at Memberful.com
8/31/2022 • 0
382: Bulk Actions for Assets
CodePen will host your assets, like images, data models, libraries, whatever. It's quite useful! They are easy to browse, easy to copy URLs or code snippets of usage, served with the right headers from a fast global CDN, and heck, we'll even help optimize them. It's easy to amass a lof of them, as we allow you upload many at a time.
But while we had Bulk Upload, as it were, we didn't offer any other "bulk" actions, until now. Stephen and I talk about how we added more bulk actions for assets, making them all the easier to manage. Shout out to our user with many thousands of assets which helped provide the motivation to get this out.
Time Jumps
Sponsor: Memberful
Memberful is a best-in-class membership software used by the web's biggest creators. If you're building a membership website for a client, Memberful handles the hard stuff so you can complete your builds quickly and your clients can focus on creating content while earning revenue with ease. It seamlessly integrates with popular tools like WordPress, Mailchimp, and Discord, so they can reach and monetize their existing audience. Memberful maintains GraphQL API, webhooks, and OAuth Single Sign on to make integration even easier.
Help your client monetize their passion. Get started for free at Memberful.com
8/24/2022 • 0
381: Data on External Library Usage
Marie and I this week! Marie dug up some interesting data about "external library" usage on CodePen. In the Pen Editor (specifically), you have the option of adding external resources. These are literally placed in the Settings area and added to the end of your HTML. We're specifically focused on these (not scripts you might add in the HTML by hand, Projects, imports, or otherwise) because we have them in a special database table — good for exactly this kind of data analysis! We're also focusing on just JavaScript this time. We'll look at the top 10 in terms of usage over time.
Time Jumps
Sponsor: Whiskey Web and Whatnot
Whiskey Web and Whatnot is different than your typical dev podcast. We show a lighter, more human side of developers you know and love, like a fireside chat with your favorite devs. Past guests include Tom Preston-Werner, Kent C. Dodds, Charlie Gerard, Wes Bos, and the incomparable Chris Coyier! We have discussed everything from Next.js and TypeScript to Chuck’s past life as a blackjack dealer, favorite power tools, the best casseroles, and of course whiskey!
8/17/2022 • 0
380: Ol’ Jake
This week I got to speak with Jake Albaugh. Long-time listeners will remember Jake as an alumnus of Team CodePen. That's a first for a podcast guest! We looked back a bit, where Marie dug up some of the best Jake classic Pens, and talked with him about what his professional life has looked like post-CodePen.
Time Jumps
Sponsor: Memberful
Memberful is easy to use, best-in-class membership software for independent creators, publishers, podcasters, educators, and more. We take care of the hard stuff so you and your clients can focus on what you do best, while earning revenue quickly. Memberful seamlessly integrates with the tools you already use, like WordPress, Mailchimp, Discord, and lots more. With Memberful, you have full control and ownership of all things related to your brand, your audience, and your finances. Learn more at Memberful.com and get started for free — no credit card required.
8/10/2022 • 0
379: Chris & Alex have been running CodePen for 10 Years. What have they learned? Here’s the top 10!
Both Alex and I, the co-founders of CodePen, spent time trying to whittle down hopefully interesting and practical advice for you from our experience in running a SaaS company for a decade! Let's go back and forth, combining into a top 10 like we did in the show.
🔟 Alex: The High Low Principle
Only do things that are either:
High time, high valueLow time, low value
As in, they take a long time but are going to make a big difference. Or they won't take too long, don't ask too much of you, but are still helpful. This is the answer to the build vs buy conundrum. It's a buy for everything in between.
9️⃣ Chris: The Co-Founder Relationship is at the heart of the business
Every relationship between people at a company is important, but the relationship between the founders is crucial. It sets the culture and makes everything work. The company cannot continue with a broken relationship at the founder level. They say it is like marriage, and that analogy isn't far off.
Chances are, you’re going to find out you are very different people who think and feel differently about all sorts of things. You need to get along, you need to respect each other, you need to trust each other, but you can’t avoid hard conversations (as much as I would like to).
8️⃣ Alex: Build Minimalist Tech
Do more with less. Just because you didn't write it doesn't mean it's less complex. Just because you did write it doesn't mean it's less complex. You might have to add technology in the short term as you're migrating to what will end up with more minimal tech. It is a focusing of you and your team's expertise.
7️⃣ Chris: You're probably undercharging people
You’re probably undercharging people for your software product. Software is always difficult to build and maintain. It's likely your intuition leads you toward lower prices, but every experience we've ever had with higher prices (and raising prices) has been positive. Fewer people than you think will care, revenue goes up, and your time is better compensated. Plus, there is a weird correlation between your high-paying customers being chill and low-paying customers being more challenging.
6️⃣ Alex: One thing at a time
Only do one of these at a time: learn new tech or solve a new problem. Do not do both. One is a magical number. Do one thing at a time.
5️⃣ Chris: Nobody has the same thing in their brain
Making sure everyone is on the same page is hard. There are so many business constructs designed to get everyone there: meetings, documents, emails... and yet, if you think everyone understands what is happening the same way you do, you are not right. But keeping everyone together is still a vital part of the process. Try to get better at expressing what is in your brain and sussing out when you think it might be different than what is in other people you work with's brains. Time spent communicating is time well spent.
4️⃣ Alex: Honesty defines your culture
Honesty is a fundamental part of your culture. That is, honesty or dishonesty, like it or not. Honesty is better. Be honest about your work, your management, and yourself. Remember that honesty has nothing to do with being nice. Being nice doesn't mean being honest. Being mean doesn't mean being honest. But being honest might mean uncomfortable conversations.
A person's success in life can usually be measured by the number of uncomfortable conversations he or she is willing to have.— Tim Ferris
3️⃣ Chris: Time is precious and easily chewed away
Anything and everything is a threat to your time. Slice away what isn’t core to your business. You'll be drowning for time soon enough, so spend it on what really matters to your business. This is where technical debt comes in, and being careful about where you acquire it. You'll make mistakes, but a better you can recover from them. Pay the debts and move on.
2️⃣ Alex: Do not poke
It's easy to poke at problems. Take a guess, try it, and if it seems to work, do it and move on. Don't do that. Draw a line in the sand. Stop poking. Slow down and deeply understand the problem. Read the source code. You'll understand the problem better if you move slowly. Eventually, that style of slow problem-solving will feel smooth, and that smoothness will, ironically, help you move faster.
Slow is smooth and smooth is fast.— Navy Seals saying
1️⃣ Chris: Here are your cheat codes: writing, persistence, and positivity
If anything has given me, and by extension CodePen, a jump in this world, it is these three things. You can build an audience through writing. An audience of people that trust you and like you and will try the things you make. The ability to communicate well with words will serve you forever, inside and outside your company. Persistence is a byproduct of having a good idea, knowing it, and having the wherewithal to see it through. A business is not built in 6 months. Stick with your good idea, it's the only way. Positivity ties it all together. Writing is your vehicle for telling your tribe, over and over, that everything is going to be great and you'll be there to help make sure it is.
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company’s information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com/codepen. Take your first step toward an organized, happier team, today.
8/3/2022 • 0
378: Lee Martin
This week I got to speak with Lee Martin! Lee is a fascinating fella, due in part to him having a job I think we all want: designing weird cool digital experiences for good bands. Fortunately for us, he often writes about them. Just check out the Inter Dimensional Video Player for Lord Huron, for example, or Using Three.js to Hear the Dawn with Jack White. Keep up with Lee on Instagram, Twitter, or his personal site. He's overflowing with ideas, not just doing all the freelancing but taking some of those ideas and scaling them, like he's doing with Turn, Mock, and Listening Party. We got a chance to talk about a handful of Lee's favorite Pens, but there are more in the Collection he made.
Time Jumps
Sponsor: Whiskey Web and Whatnot
Whiskey Web and Whatnot is different than your typical dev podcast. We show a lighter, more human side of developers you know and love, like a fireside chat with your favorite devs. Past guests include Tom Preston-Werner, Kent C. Dodds, Charlie Gerard, Wes Bos, and the incomparable Chris Coyier! We have discussed everything from Next.js and TypeScript to Chuck’s past life as a blackjack dealer, favorite power tools, the best casseroles, and of course whiskey!
7/27/2022 • 0
377: Jase Smith
This week I got to speak with Jase Smith, a kindred spirit bouncing across the designer/developer line out of Denver, Colorado. Before you know it, we're doing a bit of a rundown of Jase's career path, all the way from that all-too-familiar fake-it-til-you-make it early days to being a successful developer and mentoring as a form of industry payback.
We didn't get to talk about as many of them as I would have liked, but Jase graciously made a Collection of some of his favorites. Quite a few explorations of color!
Jase is on Twitter as @CSSBites, has a site of the same name, and is on LinkedIn.
Time Jumps
Sponsor: Reflect
Reflect is an automated no-code testing tool that enables you to shave countless hours off of your end-to-end testing timeline, from writing and maintaining tests to root-causing and debugging errors. Features include cross-browser testing, email/SMS validation, visual validation, and more. All plans include unlimited users and unlimited test creation.
As a special offer for CodePen listeners, get a free t-shirt when you sign up through our referral link. To start your free two-week trial and claim your free t-shirt, visit reflect.run/codepen.
7/20/2022 • 0
376: Ilithya
This week I got to speak with Ilithya, who put together some favorite Pens, some of which we actually manage to get to during the show 😂. Like our chat with Lea Rosema, we really get into the magic of Shaders. Shaders are certainly of the web, but often feel extraordinary, giving off a "the web can do that?" kind of feeling. Check out: personal website, collaboration with Eliza Struthers-Jobin, shaders tutorial video with Alex Trost, NFTs.
Time Jumps
Sponsor: Memberful
Memberful is easy to use, best-in-class membership software for independent creators, publishers, podcasters, educators, and more. We take care of the hard stuff so you can focus on what you do best, while earning revenue quickly. With Memberful, you have full control and ownership of all things related to your brand, your audience, and your finances.
7/13/2022 • 0
375: Craig Roblewsky
This week I got to speak with Craig Roblewsky! Craig does a lot of web animation and hangs around the Greensock forums quite a bit, giving him a unique perspective on solving animation problems and coming up with clever solutions to them. Craig has his own site, motiontricks.com, as well which is an educational resource for animation. We get into all that, some of Craig's own favorite Pens, and some of Craig's other professional history on the show.
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company’s information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com/codepen. Take your first step toward an organized, happier team, today.
7/6/2022 • 0
374: Kevin Powell
This week I got to speak with Kevin Powell! Kevin has had tremendous success on YouTube educating people about CSS 'n' friends. But like so many good content creators, he'll meet with where you are at and what you need — his personal site has written articles, resources, courses, and a newsletter. Kevin is a joy to talk to. We took the opportunity to nerd out on a variety of mostly CSS-related things.
Time Jumps
7/1/2022 • 0
373: Script Injection with Cloudflare Workers
This week Shaw and Chris dig into some deepnerd tech stuff: manipulating HTML. In a perfect world, perhaps we wouldn't need to, but today, and even moreso in the foreseeable future of CodePen, we need to do a smidge of HTML manipulation on the HTML that you write or that is generated by code you write on CodePen. A tiny example is removing the autofocus attribute when a Pen in shown in a grid view <iframe>. A more significant example is that we need to inject some of our own JavaScript into your Pen, to power features of CodePen itself, like the console, which receives information from your rendered page (like logs, errors, etc) and can push commands to execute as well.
So how do we inject a <script> into absolutely 100% arbitrary HTML? Well, it's tricky. We're starting to do it with Cloudflare Workers and the HTMLRewriter stuff they can do. Even then, it's not particularly easy, with lots of edge cases. Thank gosh for Miniflare for the ability to work on this stuff locally and write tests for it.
Time Jumps
6/22/2022 • 0
372: Trends
This week Marie and Chris get together to chat about what's been hot hot hot on CodePen lately. We've discovered there is a really taking to the creamy cardstock look, for one thing. Typography is always great, but we're seeing more typographic trickery often including variable fonts. While not new, there are still loads of really wonderfully creative Pens using Three.js and p5.js. Neon-on-dark is a fresh look. We get into those and more, a bit sneakily as we can take an internal look at what the Top 100 might look like this year, but we can't share those details too early!
Time Jumps
6/15/2022 • 0
371: Jon Kantner
I got to speak to Jon Kantner! Jon is an incredibly prolific creator, and I believe has the most appearances in the CodePen Spark of any creator. Like so many other creators I've talked to Jon also shares what he knows in a variety of ways, like writing (see his personal site, or articles he wrote when I ran CSS-Tricks). We got to chat about some of his iconic Pens, his work, and some past fascinations like Tweet-sized code experiments. Follow him on Twitter here.
Time Jumps
6/8/2022 • 0
370: Alex Trost
This week I got to speak with Alex Trost! Alex has been hard at work created Frontend Horse, a clever brand celebrating the beautiful and clever things in our industry via a newsletter, articles, streaming, a Discord community and more. This is the way to do it!
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company's information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com/codepen. Take your first step toward an organized, happier team, today.
6/1/2022 • 0
369: With Chris Smith
This week I got to speak with Chris Smith! We got to talk about all sorts of things from blogging, to pushing the boundaries of CSS, to logic in CSS, to digging into some of Chris' most interesting Pens, to Chris' actual favorite Pen of all time.
Time Jumps
Sponsor: React Summit
Ken Wheeler, Tejas Kumar, Sara Vieira, Tanner Linsley – these are just a few of the names coming to this year’s React Summit, the biggest React conference worldwide. Discover the future of the React and meet thousands of front-end and full-stack engineers!
The format of the event will be hybrid. The first day, June 17, will be streamed from the Amsterdam venue. The second day, June 21, and numerous free workshops will be streamed to the global audience online.
Would you like to participate? Get 10% off on remote & in-person tickets with our discount code CodePen.
5/25/2022 • 0
368: Lea Rosema
I got to talk with Lea Rosema this week! She's an incredibly talented digital artist and front-end developer. She does quite a bit of art with some of the trickiest web technology out there: shaders! But rather than just learn it and use it, she helps other people learn and get more out of it. Several times that has taken the shape of Web Components. For example, a <shader-art> Web Component that takes some of the boilerplate work out of designing with them. See this Collection of examples.
Time Jumps
Sponsor: JS Nation
Evan You, Kyle Simpson, Addy Osmani, Sarah Drasner – these are just a few of the speakers coming to this year’s JSNation, a 2-day conference focusing exclusively on JavaScript development. Discover the future of the JavaScript ecosystem and get connected to its stellar crowd! The format of the event will be hybrid. The first day (June 16) will be streamed from the Amsterdam venue. The second day (June 20) & numerous free workshops will be streamed to the global audience online.
Would you like to participate? Get 10% off on remote & in-person tickets with our discount code CodePen.
5/18/2022 • 0
367: With Micah Godbolt
I got to talk with Micah Godbolt this week! Micah is is a long-hauler at Microsoft working on Design Systems and such. His CodePen account looks a lot like mine: steady consistent usage of "just trying to figure something out" Pens sprinkled with some ideas that somehow seem to click with the wider front-end world. I found it fascinating that putting the word "Design Systems" into his book title "Front-end Architecture for Design Systems" was suggested by the publisher, and they were right! Turns out the term Design Systems clicked a lot harder since the 2016 publication and I'm sure hasn't hurt sales!
Time Jumps
Sponsor: Linode
Visit linode.com/codepen and see why over a million developers trust Linode for the infrastructure. From their award-winning support (offered 24/7/365 to every level of user) to ease of use and set up; it’s clear why developers have been trusting Linode for projects both big and small since 2003. Linode offers the industry’s best price-to-performance value for all compute instances, including shared, dedicated, high memory, and GPUs. Linode makes cloud computing simple, affordable, and accessible allowing you to focus on your customers, not your infrastructure. Visit linode.com/codepen, create a free account and you’ll get $100 in credit.
5/11/2022 • 0
366: Paulina Hetman
I got to talk to Paulina Hetman this week! Paulina is a heck of a creative coder, using her skills as an illustrator and all-around web developer to make ideas come to life. And she doesn't keep all those ideas to herself, she spends time educating other budding developers both professionally and by building courses and things like her incredibly clever quizzes (as Pens!).
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your company's information but helps with project management as well. We know that all too well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com/codepen. Take your first step toward an organized, happier team, today.
5/5/2022 • 0
365: Klare
Klare is moving on from design at CodePen to design at GitHub. Huge congrats Klare! If you didn't know Klare was our one and only dedicated designer here at CodePen and left a massive mark here in the design and UX of CodePen, the app, as well as internally in our organization practices. I'm talking with Klare here just a few days before her last day to reflect on her years here.
Time Jumps
4/27/2022 • 0
364: Varun Vachhar
I got to talk to Varun! Varun is an incredible artist and would have been interesting to talk with him about literally anything, but since he's dipped numerous toes into the world of NFTs, I wanted to chat with him about that in conjunction with his own art and other artists he's a fan of.
Time Jumps
Sponsor: Linode
Visit linode.com/codepen and see why over a million developers trust Linode for the infrastructure. From their award-winning support (offered 24/7/365 to every level of user) to ease of use and set up; it’s clear why developers have been trusting Linode for projects both big and small since 2003. Linode offers the industry’s best price-to-performance value for all compute instances, including shared, dedicated, high memory, and GPUs. Linode makes cloud computing simple, affordable, and accessible allowing you to focus on your customers, not your infrastructure. Visit linode.com/codepen, create a free account and you’ll get $100 in credit.
4/20/2022 • 0
363: Kyle Shook
This week I got a chance to talk to Kyle Shook. Kyle has started a new job at Foxtrot so we talked about what that process was like. In addition to creating all sorts of incredibly creative work on CodePen (just look at this Collection of Menus), Kyle helps other people level up their front-end skills too, with sites like Frontend Practice.
Time Jumps
Sponsor: Notion
Notion is an amazing collaborative tool that not only helps organize your companies information, but helps with project management as well. We know that all to well here at CodePen, as we use Notion for countless business tasks. Learn more and get started for free at notion.com/codepen. Take your first step toward an organized, happier team, today.
4/13/2022 • 0
362: Chris Nager
This week I got to speak with Chris Nager! I've known Chris quite a while. I remember being inspired by his hand-drawn SVG plus symbol and subsequent guide to <path> commands, which inspired my own shortly after I was properly obsessed with SVG. We talk about all sorts of things like accessibility, how far CSS has come, and some of the amazing stuff that has shipped recently in Safari Technical Preview. Check out Chris' Twitter, personal site, and classic great project Give 'n' Go, a CodePen/Dribbble crossover website.
Time Jumps
4/6/2022 • 0
361: Forks in a New Tab
If you Command (Mac) or Control (PC) click the Fork button, it will open the newly forked Pen in a new tab in your browser. That's new behavior. Before, it would open the fork in the same tab, no matter how you click. That was unfortunate, as Cassie called out:
Why didn't it work like this before? Well, that's what Shaw and I get into in this podcast. It's a smidge complicated. The root of it is that that Fork button isn't a hyperlink. It's a button handled by JavaScript because of the nature of how it works (a fork might have data that only the client knows about: unsaved code changes). But Shaw found a way to make it work anyway, by essentially passing the metaKey information through all the forking process until that moment we had an opportunity to open that new tab.
Time Jumps
Sponsor: Notion
Notion is an incredible organizational tool. Individuals can get a ton out of it, but I find the most benefit in making it a home base for teams. It can replace so many separate tools (documents, meeting notes, todos, kanbans, calendars, etc) that it really becomes the hub of doing work, and everything stays far more organized than disparate tools ever could.
3/31/2022 • 0
360: Sarah Fossheim
I got to talk to Sarah Fossheim this week! One of the impressive things that Sarah does is near photograph-quality recreations of iconic old technology in HTML & CSS. I enjoyed the fact that neither of us quite totally knows what some of these machines even did, but appreciate their incredible aesthetics. Perhaps my favorite part of the conversation was emphasizing that this work, while almost being a relaxing hobby in the vein of knitting, still levels up one's CSS ability. Sarah got me thinking that it's not just CSS, but perhaps equally or more importantly HTML ability, the ability to break down sections into components and think about how smaller parts become a whole, just like any other website work.
Time Jumps
Sponsor: Retool
Custom dashboards, admin panels, CRUD apps—build any internal tool faster in Retool. Visually design apps that interface with any database or API. Switch to code nearly anywhere to customize how your apps look and work. With Retool, you ship more apps and move your business forward—all in less time.
Thousands of teams at companies like Amazon, DoorDash, Peloton, and Brex collaborate around custom-built Retool apps to solve internal workflows. To learn more, visit retool.com.
3/23/2022 • 0
359: Tiffany Choong
I had tons of fun talking to Tiffany Choong this week! I loved learning her process on creating countless code art Pokémon characters. Just look at it and wing it! Wild. While I'm not nearly as creative as Tiffany, I feel some kinship looking through her Pens. Like how there are all these amazingly creative ones that clearly took tons of effort, that don't have nearly the hearts they deserve (c'mon dino loader!), and then relatively simple practical Pens (like a menu) that go nuts with popularity and it's hard to know why.
Time Jumps
3/16/2022 • 0
358: CJ Gammon
I got to chat with CJ Gammon this week! CJ is a creative technologist, a term he's tried to hang onto as he does more development work, so he can continue to communicate that he's a designer as well. CJ has been at Adobe for nearly 10 years and has played with a huge variety of interesting creative technologies.
Time Jumps
3/9/2022 • 33 minutes, 43 seconds
357: Ryan Mulligan
This week I get to talk to Ryan Mulligan! Ryan put together a Collection of some of his personal picks for favorite Pens and we get a chance to talk through a lot of them. There are some classic moments here I really feel, like when something you consider pretty basic gets way more popular than you ever thought it would. Ryan has a knack for feeling out really cool new technologies and then quickly using them to build great demos that play up what those technologies were born to do.
Time Jumps
Sponsor: Automattic
Automattic are the makers of WordPress.com, the fastest and easiest place to spin up a WordPress site, without sacrificing the power of self-hosted options. If you sell stuff on WordPress.com, the built-in help to do that is powered by WooCommerce, the premier eCommerce solution for WordPress. It's the same WooCommerce whether you are on WordPress.com or not. If you are self-hosted, you can almost certainly take advantage of Jetpack, Automattic's WordPress plugin that adds enormous functionality to WordPress, like a vastly improved site search, real-time backups, security features, and tons more.
3/2/2022 • 35 minutes, 12 seconds
356: Amit Sheen
I got to talk with Amit Sheen this week about his journey into creative coding. Even his early work is incredibly interesting and recent work is downright stunning. Now he's entering a phase of sharing what he knows with workshops like Pushing CSS to the Limit. Here's a list of Pens we talk about in the podcast (mostly):
Bubbling - https://codepen.io/amit_sheen/pen/BxQqxzTurning pages - https://codepen.io/amit_sheen/pen/WNweryvBouncing off the walls - https://codepen.io/amit_sheen/pen/abBgWvJHouse of CSS cards - https://codepen.io/amit_sheen/pen/QWGjRKRFlipBoxes - https://codepen.io/amit_sheen/pen/YzQoMxRRadioPoles - https://codepen.io/amit_sheen/pen/RwZwGVQ3D Wobbly Disco - https://codepen.io/amit_sheen/pen/LYLQQpW4D4D SimplexNoise - https://codepen.io/amit_sheen/pen/XWgVKxOTyping effect - https://codepen.io/amit_sheen/pen/YzZYoMVText morphing - https://codepen.io/amit_sheen/pen/xxqYzvmcsStickman - https://codepen.io/amit_sheen/pen/abLPdoQThe Lonely Claw - https://codepen.io/amit_sheen/pen/yLzWVYoNewton's CSS cradle - https://codepen.io/amit_sheen/pen/XWMXwvJTable tenniCSS - https://codepen.io/amit_sheen/pen/PobQjMX
Time Jumps
Sponsor: Retool
Custom dashboards, admin panels, CRUD apps—build any internal tool faster in Retool. Visually design apps that interface with any database or API. Switch to code nearly anywhere to customize how your apps look and work. With Retool, you ship more apps and move your business forward—all in less time.
Thousands of teams at companies like Amazon, DoorDash, Peloton, and Brex collaborate around custom-built Retool apps to solve internal workflows. To learn more, visit retool.com.
2/23/2022 • 0
355: With Adam Argyle
I grabbed Adam intending to chat about all sorts of CSS stuff and his work at Google and on VisBug. But then we chatted pretty much the entire time about color and what's coming there to the web platform.
Time Jumps
Sponsor: WordPress.com
WordPress.com is the fastest way to spin up a WordPress site. You'll be able to build any sort of site around it to power your business or hobby. How do you make the most of it? Subscribe to their brand spankin' new YouTube channel to learn more about using your site and what fellow customers are doing with theirs.
2/16/2022 • 0
354: With Steve Gardner
We've got Steve Gardner on this week! We get into all sorts of nitty gritty detail on the ol' Christmas Cannon, a Pen of pure joy. Steve has some absolute classics that show off the web at it's very best, like the Airplanes Pen. Can't beat Steve's cleverness and execution.
Time Jumps
Sponsor: Netlify
Quirrel Joins Netlify and now we have Scheduled Functions (in Beta)! Wanna run your cloud functions on a time-based schedule? Now you can without even leaving your repo.
2/9/2022 • 0
353: With Louis Hoebregts
Louis Hoebregts (aka Mamboleoo) has been creating wonderfully creative Pens on CodePen for many years. His early work, as we learn on this episode, was inspired by the CSS trickery of Lea Verou! He rotates his tools between HTML and CSS, SVG, and canvas, but tends to have an aspect of motion and the unexpected. Some of the most popular Pens have an aspect of education to them as well. Here's a list of Louis' Pens he chose to talk about, covering some of his history here, each of which is symbolic of a personal era and often unlocking new professional doors:
https://codepen.io/Mamboleoo/pen/ynzCu (March 2014)https://codepen.io/Mamboleoo/pen/dzyBu (Aug 2014)https://codepen.io/Mamboleoo/pen/ByxPvG (Feb 2015)https://codepen.io/Mamboleoo/pen/pvQQde (March 2015)https://codepen.io/Mamboleoo/pen/dowRJo (Aug 2015)https://codepen.io/Mamboleoo/pen/xGeELo (Aug 2015)https://codepen.io/Mamboleoo/pen/PZWPZx (Jan 2016)https://codepen.io/Mamboleoo/pen/oxaXdj (April 2016)https://codepen.io/Mamboleoo/pen/Bppdda (Jan 2017)https://codepen.io/Mamboleoo/pen/GRJKoBw (Feb 2020)https://codepen.io/Mamboleoo/pen/WNxOvjo (Oct 2020)
Time Jumps
Sponsor: WooCommerce
WooCommerce can do it all as far as adding eCommerce functionality to a WordPress site. One off product sales, for sure, including shipping and inventory management and all that. But it can also sell digital products. It can also sell memberships and subscriptions. Put on your what if hat. What if your business sold memberships? What could you offer? It's always worth thinking about.
2/2/2022 • 0
352: With Aysenur Turk
Aysenur Turk had a number of appearances on this year's Top Hearted of 2021, including #1! In this podcast, I get to catch up with her, find out where she gets ideas and inspiration, how much time it takes to build something like her amazing layouts, and what her favorites are.
Time Jumps
Sponsor: Retool
Custom dashboards, admin panels, CRUD apps—build any internal tool faster in Retool. Visually design apps that interface with any database or API. Switch to code nearly anywhere to customize how your apps look and work. With Retool, you ship more apps and move your business forward—all in less time.
Thousands of teams at companies like Amazon, DoorDash, Peloton, and Brex collaborate around custom-built Retool apps to solve internal workflows. To learn more, visit retool.com.
1/26/2022 • 0
351: Moving to PostgreSQL from MySQL
As you read this, CodePen is 100% on PostgreSQL for our main relational database. It was a transition that took a couple weeks of pretty intense effort, and lots of planning and prep before that. I've got Alex on the show to talk about it, as he was the main instigator and led the effort, but everyone contributed in some way.
Wondering why? Well...
We were on a pretty old version of MySQL (5.6), and upgrading to something more modern (like 8) would have required just as much effort, so we thought we'd move on to something we saw more value in.We're undertaking big new efforts that require a bunch of data specific work. It'll be more work to change after that, so it felt like a now or never situation. PostgreSQL means consolidating of technology, which is big for our small team. We've done some of this, and it opens the door for more. For example, we can stop using Elasticsearch as a totally separate database for search and lean on PostgreSQL. The same goes for an analytics-focused database, job queuing, and even potentially static asset hosting.
There is a lot to talk about here, so we get into all the nitty-gritty detail, including how we pulled it off with near-zero downtime and the tools involved.
Time Jumps
Sponsor: WooCommerce
WooCommerce is eCommerce for WordPress. It's powerful software in that it can do anything you could ever want to do in selling online. You can sell physical products. You can sell digital and downloadable products. You can sell memberships or tickets or appointments. The sky is the limit. I've used it personally for all those things and have had a great experience every time.
1/20/2022 • 0
350: 2021’s Most Hearted
It's back! We counted up all the hearts given to every Pen created in 2021 and created a list of the top 100. Marie and Chris chat about this year's list. Who's on it, what's on it, and digging into the numbers where we can.
Remember that people can heart pens up to 3 times each, so if it looks like a Pen lower down the list has more hearts than one higher up the list, it's because of the density of hearts. The number you see on the card only reflects the number of people that have hearted not the true number of hearts.
Lots of folks hitting multiple times. George Francis hit 6(!) times (7, 28, 59, 75, 80, 82), an impressive feat for a member who only joined in late 2020. Four people with four placements: Aysenur Turk (3, 11, 14... and 🥁 1), Yoav Kadosh (17, 33, 72, 95), Dilum Sanjaya (22, 24, 64, 65), and Aybüke Ceylan (38, 46, 63, 91), and a couple of 2-position people. Woot!
"Full page" layouts were quite a trend on the Top 100 this year. That is, Pens that look like complete websites with widgets and cards and navigation and sidebars and the whole nine yards. That's opposed to some past years where more minimal small-yet-surprising Pens were more dominant in the Top 100.
Advice for those shooting for the top? Talk about your work. Almost nobody on the list creates work and then never shares it. Share it on social media, blog about it, make a video, re-promote it multiple times. Be part of the community by liking other people's work. Remember, your hearts come from other CodePen members. Also, feel free to update and revise your Pens. Many of the Top 100 are updated and improved even after their initial wave of popularity.
Time Jumps
Sponsor: Netlify
Did you Netlify offers auth? They call it Netlify Identity. Why would you need auth on a static site? Well, a static site can also by quite dynamic, that's the nature of Jamstack. Say you're building a TODO app. No problem! You can have users sign up and log in. You can store their data in a cloud database. You can pull the data for that user from the database based on information about the logged-in user because of Netlify Identity.
1/12/2022 • 0
349: With Olivia
Olivia Ng has done loads of wonderful work here on CodePen and off (check out her super cool travel bucket list site) She got started just out of pure desire to build things. "I just really like the internet" she told me. Hear hear! Her eye for design takes all her work to the next level. She had a particular focus on grid for a while there, and used those interesting designs to teach it. Also find her on Twitter and on her personal website.
Time Jumps
Sponsor: Jetpack
There are lots of reasons to look at Jetpack for your self-hosted WordPress site. One of which is the powerful search upgrade you get just by flipping a switch. Say you run a lot of WordPress sites, perhaps for clients as an agency would, now Jetpack offers a Licesning Dashboard for managing all the Jetpack subscriptions so that becomes a lot easier.
1/5/2022 • 0
348: With Jhey
Jhey Tompkins is one of the most prolific CodePen creators out there! Find him as @jh3y on CodePen and @jh3yy on Twitter. His creations tend to have a twist of whimsey while being beautifully designed as well as pushing the platform in unique ways. You'll always be surprised at a Jhey Pen! I talk with him about the creative process, problem-solving, and sharing what you learn.
Time Jumps
Sponsor: Notion
For companies of all sizes, Notion provides one central and customizable workspace that can be tailored to fit any team and bring all teams together to get more done and move faster. Notion is an all-in-one team collaboration tool that combines note-taking, document sharing, wikis, project management, and much more into one space that’s simple, powerful, and beautifully designed. Find out how Notion may be the missing piece your team needs to grow, get more done, and delight everyone who uses it in the process.
12/29/2021 • 0
347: Using Notion
Rachel and Chris dig into the many, many ways in which we use Notion at CodePen. Heads up, Notion has sponsored a couple of episodes of CodePen Radio lately, but not this. It's just a tool we heavily use and this podcast is all about that sort of thing. Heck, this podcast itself was planned in a calendar database on Notion, which deals with dates, publication status, sponsors, and all sorts of stuff. And it's probably one of the least involved Notion setups we have. Much more involved is stuff like project planning and our individual structures for our company-public weeknotes.
Time Jumps
Sponsor: Jetpack Backups
The big news from Jetpack is that all backups are realtime now. Realtime backups are awesome. Anything that happens on your site, it's backed up immediately. That makes backups extremely useful as there is no risk you have to miss three-quarters of a day of content, purchase, comments or anything else because all you have is daily backups.
12/22/2021 • 0
346: With Ben Evans
You might recognize Ben Evans from his absolutely incredible CSS "paintings", like the portrait of his daughter or the still life. Paintings aren't the quite word as Ben designs them all to be entirely scalable. And sometimes they have interactivity, like the slight parallax in the Vaccum from Space. Like so many other great artists, Ben's skills aren't isolated to CSS trickery, his portfolio reveals artist exploration across nearly every creative outlet there is, including moss, and as I learned in our conversation, even music.
Time Jumps
Sponsor: Notion
For companies of all sizes, Notion provides one central and customizable workspace that can be tailored to fit any team, and bring all teams together to get more done and move faster. Notion is an all-in-one team collaboration tool that combines note-taking, document sharing, wikis, project management and much more into one space that’s simple, powerful, and beautifully-designed. Find out how Notion may be the missing piece your team needs to grow, get more done, and delight everyone who uses it in the process.
12/15/2021 • 0
345: With Gabrielle Wee
This week I talk with Gabrielle Wee, who's done loads of creative coding work here on CodePen but like so many other creative people we talk to, her creativity explodes into so many other areas like illustration, photography, drawing, and even gardening. Plus a desire to share those techniques. Her path has led her to be working at Apple, a dream job.
Gabrielle on Dribbble and Twitter.
Some advice from Gabrielle: doing work that she was personally interested in, rather than pandering to any recent trend, was much more fun and led to more clear success. Also: be curious and inspect element.
Time Jumps
Sponsor: Jetpack
Jetpack has some good news. All backups are now in realtime, whatever plan you are on or buy. If you already have daily backups on your plan, email them them to get on the new system. The blog post has details. Real time backups are amazing, because you can back up to very specific moments in time (say, right before a certain post was edited) rather than the more broad sword of having to pick a day.
12/8/2021 • 0
344: With Aaron Iker
Today I get the pleasure of talking with Aaron Iker. Aaron builds incredibly delightful bits and bobs of UI that give you the feeling of hey, I bet I could actually use this! And that's exactly what Aaron wants you to do. He takes care to make sure the code is easy for you to use if you wish. This idea of taking somewhat practical-looking UI elements, like buttons, loaders, toggles, etc, and then making them do something unexpected and fun is a perfect fit for popularity on CodePen. Last year, Aaron occupied 10 spots in the Top 100! Aaron's advice: keep challenging yourself.
Time Jumps
Sponsor: Netlify
Netlify is Jamstack hosting with all sorts of features to help make developing sites easier (have you seen Netlify Dev? You can run the whole platform locally) and deployed sites better. But Netlify is a big place! They do all sorts of community things like Jamstack Explorers, a whole learning platform for leveling up your Jamstack skills. Not to mention several YouTube channels loaded with learning and fun.
12/1/2021 • 0
343: cpshots
We've been naming all our services cp____ lately. Get it? cp is short for CodePen. Clever, I know. We have many such services. The latest to join them is cpshots. We've been doing our own screenshotting for a long time now, but like all software we're always working on it for various everchanging reasons.
Robert and I discuss this last round of changes to this service. Part of the purpose of this round is that we wanted to bring image resizing in-house to keep costs down. We need screenshots in various sizes because we literally show them in different circumstances at different sizes, but also because of the responsive images syntax. That resizing we do with sharp via a Lamda. But we only want to do it once! That is, whenever a Pen has changed and the screenshot needs to be regenerated. In order to do that, we send the requests to a Cloudflare Worker which, through the KV store, knows if we already have the screenshot or not. If yes, send it along. If no, head over 1) the screenshotting service to get the screenshot 2) the Lambda for resizing it 3) over to S3 to store the images 4) back to the Cloudflare Worker to serve it.
It's a lot of moving parts! But they are all very smart, simple, tuned parts that are designed to do what they do well. The best parts, for us, is that this project was a great excuse to give Robert a trial-by-fire of a fairly complex tech stack, and that we made literally every part of it work on both development and staging. Making sure every service of CodePen runs locally means that there is no secret magic, we can all work on it and see it working.
Time Jumps
Sponsor: Jetpack and WooCommerce Black Friday Sales
Huge sales in WordPress land! As we write, there is less than 4 days left in the Jetpack Black Friday Sale, which is 60%+ off all Jetpack products and plans for your first year. Over in WooCommerce land, nearly everything in the entire WooCommerce marketplace is 40% off and there is less than 6 days left. It's worth it to spend a little time thinking ahead about what you might need for the year ahead as these deals are pretty massive.
11/24/2021 • 0
342: Workers
Chris and Shaw talk about how CodePen uses Cloudflare Works with the KV storage to power several things on CodePen. We do some cool stuff with them, like serve landing pages with the content provided by WordPress yet served on an entirely different Ruby on Rails powered site. We also serve up assets through them which provides lots of nice features both for us and for users indirectly and directly, like resizing and optimization.
Sponsor: Jetpack
Thanks to Jetpack for sponsoring CodePen Radio! Jetpack is a plugin, or perhaps now more like a suite of plugins, that help out your self-hosted WordPress site. Say you have a lot of WordPress sites under your purview and they all have different needs (super normal!). Jetpack has a new billing dashboard that helps manage at all in a sane way. Say you've got two sites that just need daily backup only, all good. Another that uses Jetpack Complete. Another where you use VideoPress and realtime backup, totally covered. You might have dozens or hundreds of sites if you manage client sites, and now this brings it all together in a manageable way.
11/17/2021 • 0
341: Challenges
Marie and Chris talk about CodePen Challenges, which have been going strong for many years now. The gist is that you pop in and make something along a theme. The "challenge" is doing the work (they aren't meant to be tricky otherwise). We've seen people seriously level up their skills by participating, but of course, there is no obligation, and no prizes other than the satisfaction of a job well done.
One interesting twist is that Chris used to do a lot of the challenges while Marie was running the podcast, but we just up and switched jobs and we both prefer our new jobs much better (for now!).
Time Jumps
Sponsor: Netlify
Just look at the October 2021 changelog at Netlify. They are always building things and making the features they offer better. We know firsthand how difficult that is to pull off, so hats off! One feature (BETA) that is definitely worth a look is On-Demand Builders. What a great idea for making your builds and deploys fast and efficient.
11/11/2021 • 0
340: With George Francis
Chris gets to chat with George Francis, an incredible digital artist in the generative art space as well as educator and all-around developer. George has been all over the place lately, producing really outstanding work (CSS-Tricks uses a Houdini paint worklet from George in the header and footer). Not only does George make art that has that little special something that turns heads, he helps you do it too by sharing all the tools and techniques he uses in blog posts.
Time Jumps
Sponsor: Netlify
Netlify has used the slogan "Static without limits" — which I really like. It's useful to think of Netlify as a static file host as the foundation. That's what Jamstack is, after all. But it doesn't mean that you are limited in what you can build. You can make a site that is every bit dynamic as any other architecture out there, and Netlify not only encourages it but will help you do it with features like hosted cloud functions.
11/3/2021 • 0
339: Apollo at CodePen
Rachel and Chris chat all things Apollo GraphQL. Apollo is in this weird category of software where like by far most websites do not need it or anything like it. But for CodePen, we consider it nearly essential. The typical sales pitch for GraphQL applies to us for sure (e.g. only ask for the data you need!) but you can add to that the fact that it is empowering for front-end developers, which we have plenty of here on the CodePen Staff. But beyond GraphQL, we need ergonomic ways to write those queries and trust technology to do the right things. For example, 15 components on any given page might need to know the PRO status of a user, and thus be part of that components query, but the network very much does not need to do 15 requests. Apollo does stuff like figuring out what the page needs in aggregate and requesting is and dissemeninating that information as efficiently as possible and caching it. Plus we leverage Apollo for client-only state too, meaning we have a unified system for state management that plays very nicely in our React-based world.
Time Jumps
Sponsor: Jetpack Backup Stand-Alone Plugin
If the only feature of Jetpack you need is the backups, now you can install that as a stand-alone plugin and have a paid plan for that feature alone. Built and hosted on WordPress.com’s secure infrastructure, Jetpack Backup provides peace of mind — you can rest easy knowing that what you’ve built will always be there and can be easily recovered in an emergency.
10/27/2021 • 0
338: With Lynn Fisher
Lynn Fisher is my guest this week! You might know her as @lynnandtonic on CodePen and most other platforms. We get to talk about her A Single Div project and all the CSS magic that goes into those, other creative projects and why those are so satisfying, a recent transition over to Netlify, and the fact that we've worked together on an illustration project without ever having met.
Time Jumps
Sponsor: VideoPress
There is a bit of a rebirth of VideoPress that just happened! If you run a self-hosted WordPress site like we do, VideoPress is a major upgrade to hosting videos in content. You get VideoPress through Jetpack. If you buy Jetpack Complete, you've got it, otherwise, it's an ala-carte purchase. Meaning if VideoPress is the only feature of Jetpack you want, no problem, it's literally the only thing you need to pay for and use. To name a few things... with VideoPress you get a nice customized video player, cloud-hosted optimized video delivery, playback speed control, and the videos will look good on mobile without you having to manually create a poster.
10/20/2021 • 0
337: ES Modules on CodePen
ES Modules are a native feature of JavaScript! The import and export keywords are actually a mighty powerful thing for a language to have. You can use them right on CodePen of course. For example, with our URL extensions, you can export stuff from one Pen and import it in another without having to use the External Resources feature in Settings or anything, which might make your code more clear.
Then with incredible services like Skypack, you have the entire world of npm available to import. Here's a whole Collection of examples like that. React is easy pickings:
ES Modules is getting fancier and fancier!
JSON ModulesCSS Module Scripts
import all the things!
Sponsor: Netlify
Among many incredibly innovative things Netlify has done is to offer cloud functions for any site you publish on Netlify. You chuck your functions in a functions folder (configurable) and they'll run as AWS Lambda functions, without you even having to have an AWS account or deal with any of that ceremony. Now if you need a bit of server side code for your otherwise static site, you got it. Incredibly useful for doing any sort of dynamic functionality that needs to reach out to databases or APIs with security. And hey, if you need to import stuff, you got it.
10/13/2021 • 0
336: Cassie Evans
Cassie Evans is our special guest this week! Cassie is a front-end developer with a special talent and passion for animation and SVG, as evidenced in part by her amazing work on CodePen. She's recently became part of the team over at Greensock, a very popular JavaScript-powered animation framework.
We got to talk specifically about the Greensock 3.8 release and an SVG workshop she's got ready to that she does with the gang at Pland.
Time Jumps
Sponsor: Retool for Startups
After working with thousands of startups, we’ve noticed that technical founders spend a ton of time building internal tools—which means less time on their core product. So, we built Retool For Startups—a program that gives early-stage founders free access to a lot of the software you need for great internal tooling.
The goal is to make it 10x faster to build the admin panels, CRUD apps, and dashboards that most early stage teams need. We’ve bundled together a year of free access to Retool with over $160,000 in discounts to save you money while building with software commonly connected to internal tools like AWS, MongoDB, Brex, and Segment.
We give you a head start with pre-built UI components, integrations, and other advanced features that make building from scratch much faster. To learn more, check out our site, apply, join webinars and much more at retool.com/startups.
10/6/2021 • 0
335: Code’s a Drag
There are lots of types of dragging that can happen on websites. While they are all click (or tap), hold down, move, and let go, they are all quite a bit different. For instance:
Drag files/folders onto the browser window and drop them. The likely use case there is uploading.Drag an element on the screen to another (valid) area of the screen. The likely use case is dragging cards from one column to anotherDrag the position of an element. The likely use case is dividers between different areas.
There are native APIs for dragging stuff on the web, and it's nice to use them when you can as that means not relying on potentially hefty JavaScript libraries. And yet, the native APIS are fairly limited, and the JavaScript libraries that exist for this stuff are pretty darn nice.
We use Filestack for file uploading. There are lots of incentives there, like them staying on top of the latest and greatest in browser tech around this stuff rather than us having to. Back when we switched to this, we got mobile uploading support overnight, for example. For drag-elements-to-other-areas we use react-beautiful-dnd, which is a pretty darn nice library for that, especially since we're using React anyway. Interestingly, as robust as react-beautiful-dnd is, it doesn't really support position-dragging at all. Just not what it's built for. So for that, we've gone back to the trenches to write our own componentry, which is a delicate balance of JavaScript event-powered and CSS behind it that supports the changes.
Time Jumps
Sponsor: WordPress.com
WordPress.com is easily the fastest way to spin up a great-looking WordPress site. Not to mention performant and secure, as your site will be hosted on the great WordPress cloud, and they make those things their concern, not yours. You might think you'd have to give up a lot of control and customizability when you use a fully hosted and managed WordPress service (as opposed to hosting yourself), but that's actually not true. If you're on the Business Plan or higher, you can install plugins, SFTP into the server, and even have direct database access like any other host.
9/29/2021 • 0
334: Custom Properties
Chris & Shaw talk about a big ol' conversion to getting CodePen's color system to use --custom-properties all the way through, rather than Sass variables. Why? All sorts of reasons, kinda boiling down to the fact that they are just better. Here's a tiny one: you can use the Web Inspector and see what some other element is colored easily. Here's a huge one: ability to do theming way easier. But the refactoring isn't without some bumps in the road, like the fact that CSS doesn't have a way to alter colors (like lighten, darken, or add alpha) terribly easily yet, meaning we needed some work arounds.
Time Jumps
Sponsor: Retool for Startups
After working with thousands of startups, we’ve noticed that technical founders spend a ton of time building internal tools—which means less time on their core product. So, we built Retool For Startups—a program that gives early-stage founders free access to a lot of the software you need for great internal tooling.
The goal is to make it 10x faster to build the admin panels, CRUD apps, and dashboards that most early stage teams need. We’ve bundled together a year of free access to Retool with over $160,000 in discounts to save you money while building with software commonly connected to internal tools like AWS, MongoDB, Brex, and Segment.
We give you a head start with pre-built UI components, integrations, and other advanced features that make building from scratch much faster. To learn more, check out our site, apply, join webinars and much more at retool.com/startups.
9/22/2021 • 0
333: Robert
New CodePen team member! As we recorded this, it was just Robert's 2nd day at CodePen, and we snuck this podcast in within the hurricane of stuff happening during that time. There is a pile of new software to get access to and acquainted with. There is the dev environment stuff. There is getting acquainted with people, with the extra challenge of doing that remotely. There is understanding the flow and structure of our work days. There are meetings! So many meetings! Figuring out the Zoom culture.
For now though, we chat about Robert's history and how we're luck to have gotten someone with such deep expertise in the field. He lives right in Bend, Oregon where Chris is, hence them knowing each other through BendJS.
Timejumps
Sponsor: Jetpack
It's so cool that Jetpack acquired Social Image Generator. Jetpack already does stuff to help your WordPress site be better integrated with social media (check this video), so why not really go the extra mile and help you with those tricky-to-pull-off social media images? We're all very much looking forward to see what new features this acquisition unlocks.
9/15/2021 • 0
332: Running the Finances of a Startup
Dee and Chris talk about "everything money-related" at CodePen. Dee has been managing this stuff since CodePen's beginning. First largely pro-bono (sorry, Dee), then later as a side gig and part-time job. Dee is full-time now at CodePen, but finance stuff is only part of her role (programming being the main job). It's a lot of work, but she likes being able to influence CodePen for the better from multiple angles.
At a big company, all this finance work would probably manifest as a COO. But CodePen is just a midling startup, too small really for a COO, but also too big for a homegrown spreadsheet. Dee gets into all the work that goes into finance, from the vital documents that are the Profit & Loss Statement, Balance Sheet, and Cash Flow, to other work like cohort analysis and cap table work.
Time Jumps
Sponsor: Retool for Startups
After working with thousands of startups, we’ve noticed that technical founders spend a ton of time building internal tools—which means less time on their core product. So, we built Retool For Startups—a program that gives early-stage founders free access to a lot of the software you need for great internal tooling.
The goal is to make it 10x faster to build the admin panels, CRUD apps, and dashboards that most early stage teams need. We’ve bundled together a year of free access to Retool with over $160,000 in discounts to save you money while building with software commonly connected to internal tools like AWS, MongoDB, Brex, and Segment.
We give you a head start with pre-built UI components, integrations, and other advanced features that make building from scratch much faster. To learn more, check out our site, apply, join webinars and much more at retool.com/startups.
9/8/2021 • 0
331: Next.js + Apollo + Server Side Rendering (SSR)
Our goal here was to explore server-side rendering (SSR) in Next.js using data from Apollo GraphQL, for faster client-rendering and SEO benefits.
There are a variety of approaches, but Shaw has set his sights on a very developer-ergonomic version here where you can leave queries on individual components and mark them as SSR-or-not.
There are two "official" approaches:
Apollo's documentationNext.js' example
These are sorta-kinda-OK, except...
They have to be configured per-pageThey are mostly limited to queries at the top page levelYou'd likely need to duplicate queries with slightly differently handling from client to serverMay or may not populate the client cache so that the client can have live queries without having to query for the same data. For example, ay you have data that you want to change on the client side (pagination, fetching new results). If it's fetched and rendered server-side, you have to fetch again client side or send over the cache from the server so the queries on the client-side can be ready to update with new data.
These limitations are workable in some situations, but we want to avoid duplicating code and also have server-side rendered queries that aren't top-level on the page.
A probably-better approach is to use the getDataFromTree method, which walks down the tree and executes the queries to fill up the ApolloClient cache. We got this from a two-year old Gist from Tylerian showing a way to integrate getDataFromTree into Next.js. Tylerian's gist had some extra complications that might've been due to older Next.js limitations, but the overall process was sound:
Create a shared ApolloClient instanceRender the page using getDataFromTree() to fill the cache with dataRender the page again with that data using Next's Document.getInitialProps()Extract the cache to deliver with the page and hydrate the client-side Apollo cache
The benefits:
Quick to set upNo duplicate queriesNothing special per page to handle server-side rendering or client-side queries.Cache hydration to keep client active without re-querying dataEasy to enable / disable server-side rendering for individual queries
Here's a repo with Shaw's findings.
9/1/2021 • 0
#330: New Admin Tools
Chris & Marie talk about a big long project that we've finished at CodePen: our new Admin Tools. Any web app is gonna need 'em. They do stuff that is unique to customer service on your app. Say you need to manually trigger a password reset email or hand-verify an account. You look them up in an Admin Tool, and perform those specialized actions. Our Admin Tools are heavily focused on users and content. We've totally re-built them to focus on the UX of actually doing customer support, as well as to make a clean UI that users the same componentry that the main CodePen app does. We do a lot of spam cleanup in our Admin Tools as well, so getting a chance to re-think those experiences was satisfying.
We dove into this project not just to make customer support better, but because of an alignment of concerns. We got to use a whole new development stack to do this, using technology we wanted to prove out for more of CodePen. We used Next.js on the front end and for server side rendering, and a Go-powered GraphQL API for the data. We made it all work in our monorepo. We build tools for deployment, so in a cool twist of fate, this app can deploy itself.
Jump Links
Sponsor: Mailpoet
If you build your website and business around WordPress, you're in good hands for a lot of reasons. One of which is that you own your site, you own your own data, you own all aspects of what powers your business, and the rug can't get pulled out from under you entirely. Check out this article and video on how to make a paid subscription newsletter with WordPress + WooCommerce + Mailpoet. That is a business model right there, from which you can grow forever entirely under your control.
8/25/2021 • 0
#329: Gathering Data
Marie and Chris talk about all the sources of data we have, think about, and use to help us. We do have one main database on CodePen, and truth be told, it's got a bunch of data in it. If we want to know how many Pens there are, we can just ask it. We can learn a lot from asking that database questions, and we even have fancy charts that express information like that to us on dashboards. But that database isn't the only place we have data, because it doesn't know everything. It can't tell us, for example, how many times a feature is toggled on and off, because we don't track that kind of data in our main database. But we can track that data, and do when we need to with Appcues. And then there is general analytic data like traffic which we can explore with Cloudflare. And support-driven data we can look at in Front. And that's not all. When answering important business questions, the data can come from lots of sources.
Time Jumps
Sponsor: Clubhouse
Your project management tool should be a breeze to setup, at least mildly enjoyable to use, and help evolve your already existing development workflows so it's easier to get things done. Does that describe your current tool? If it does, great! You can stop reading. If not, then Clubhouse could be the perfect fit. We're project management built specifically for software teams and we're fast, intuitive, flexible, powerful, and many other nice, positive adjectives. Delight the grumpiest scrum masters with Clubhouse.
8/18/2021 • 37 minutes, 7 seconds
#328: Large Scale Planning
Chris and Klare chat about the incredibly daunting task of planning a project that is huge and long-term. We know we're pretty OK at planning smaller-scale projects. We plan, we kanban, we get the job done. But a single basic kanban isn't going to cut it for a truly gigantic project. We get into talking about chopping the project into phases, chopping those phases into sections (sometimes with their own phases), and a databasing/kanbaning strategy to tie it all together. This also touches GitHub workflows and meeting structures, so there is a lot to think through here and it requires constant effort.
Time Jumps
Sponsor: WordPress.com Growth Summit
The WordPress.com Growth Summit is coming up August 17th (Americas & EMEA) and August 18th (Asia Pacific) and is focused on running a business with a WordPress website as a core.
Get expert advice on how to design your site, write effective copy, attract traffic, build a community, and earn money.
8/11/2021 • 39 minutes, 15 seconds
#327: 99.999% Uptime
Chris & Alex talk about DevOps, servers, and keeping CodePen online at all times. We were are 100% for the year until a few weeks ago when we had a 10 minute drop. That still keeps us in the realm of 99.99% uptime, where we get 52 minutes and 35 seconds of downtime per year, but next year we're shooting for 5-nines, that is, 99.999% uptime, where we only get 5 minutes and 16 seconds of downtime. Of course, our goals (and eventually, promises) can only be as strong as the service providers we use. Thankfully with providers like AWS and Cloudflare, we're in good hands.
There are a number of things that have traditionally got in the way of this high of uptime, like database manipulation work. These days, we have the tech and the strategies for that, like seeding a newly manipulated database alongside the existing one and cutting over. We also have code in place for doing intelligent things like cutting off services if they become unreliable, rather than letting them bog down or kill the site entirely.
Time Stamps
Sponsor: Netlify
Netlify is the Jamstack hostess with the mostest. Netlify Dev allows you to run their entire platform on your own machine. That means being able to test things like cloud functions, redirects, form submissions, etc without even having to do a preview build. Another aspect of Netlify, that is fundamental, is that you don't really have to worry about scaling on Netlify. Your static-based site is ready to scale to any level, and that includes all the cloud functions too, as they are lambdas and designed to scale.
8/4/2021 • 32 minutes, 29 seconds
#326: Design Pattern Deepdives: Tabs and InfoBox
Chris and Stephen pick out a couple of components from our design pattern library (which we talked about last here) and go into why they exist, what they do, what makes them complex, and the API choices. Relatively new to us is the idea of compound components which have, so far, been good to us as far as composing components in a way that makes them easier to use and more flexible.
Time Jumps
Sponsor: Jetpack
We're fans of Jetpack! You might recognize Instant Search right here in the CodePen docs. But we're well aware that not everybody feels as strongly positively as we do. Last call here... have your say, tell us why you don't use it if you don't:
7/28/2021 • 29 minutes, 20 seconds
#325: New Embed Modal
Chris and Stephen talk about the New Embed Modal. We got to re-architect the thing into our modern stack, using all our latest design patterns, and improve the UX of it quite a bit while we were at it. This is something like the 4th generation of that experience, and we're already eyeing up future improvements. Such is the nature of software development.
Time Jumps
Sponsor: Clubhouse
Your project management tool should be a breeze to setup, at least mildly enjoyable to use, and help evolve your already existing development workflows so it's easier to get things done. Does that describe your current tool? If it does, great! You can stop reading. If not, then Clubhouse could be the perfect fit. We're project management built specifically for software teams and we're fast, intuitive, flexible, powerful, and many other nice, positive adjectives. Delight the grumpiest scrum masters with Clubhouse.
7/21/2021 • 0
#324: How can we help you better?
Chris and Marie talk about customer support. If you're a regular listener of this show, you'll remember that we've had a lot of success with customer support over the last year, the point that our volume of direct support is rather low. That'll happen when you fix every major problem that comes up. But it also means that we have some space to do better! It's a big bummer when we have a customer leave when they never reach out at all to get a hand from us on whatever they might need. It leaves us thinking... what else can we do? Can we help you with anything? We've been trying a handful of things to get better data and answers to these kind of questions.
And that Call-To-Action: If we can do anything to help you, hit us up.
Time Jumps
Sponsor: WooCommerce + MailPoet = Paid Newsletter Subscriptions!
WooCommerce is the premier eCommerce plugin for WordPress. MailPoet brings a fancy email builder right into WordPress. Combine the two and you get more than power of them individually. For one thing, you get extra powerful eCommerce email abilities — things like abandoned cart emails. Better, you can combine them to make a paid subscription newsletter, but powered by your own site!
7/14/2021 • 17 minutes, 33 seconds
#323: Trends
Chris & Marie talk about some of the types of Pens that have been particularly popular this year so far, now that's we're halfway through it. There is still plenty of time to make the best-of-the-year list (you could make a Pen the third week of December and still make it!). Heads up though, giving out hearts in general on CodePen is a great idea as it helps improve search results, helps improve your own personal feeds, and helps people feel good about what they make.
Some trends are eternal, some trends are ephemeral, and we talk about them both.
Time Jumps
Sponsor: Netlify
The original coiners of Jamstack! Netlify helps you with everything Jamstack. They are a static file host, which is incredibly useful already, in that it means your site is fast and secure and scales forever. That also opens the door for deploy previews, which have gotten even more amazing lately with feedback tools built right in. But they also help with dynamic aspects of the Jamstack like processing your forms and running cloud functions.
7/7/2021 • 34 minutes, 34 seconds
#322: Upgrading Upgrades
Dee and Chris talk about a recent release where we re-built the upgrade experience on CodePen. For example, you're a free user, you want to upload an asset, you can upload via a modal that pops up, and get on with your task. You could kind of do that before, but it was much jankier UI and UX. This release brings that experience in line with current design patterns on CodePen.
But the reality of this release is much deeper than that. There were a half-dozen or more mostly behind-the-scenes releases that were stepping stones to this. The biggest of which was around cleaning up our billing model and billing data into a much easier to manage and much cleaner place. While doing that work, we identified some users that needed to upgrade to maintain their status, so a big aspect of this release was reaching out to them about that, which meant building the lowest-friction-possible upgrading experience and giving us a chance to try out something we'd never tried before: discounts.
Time Jumps
Sponsor: Jetpack
Jetpack has a brand new mobile app. It's essentially the WordPress app, except a bit more streamlined. It allows you to connect to your self-hosted WordPress sites and manage everything from content and comments to plugins and backups.
6/30/2021 • 24 minutes, 14 seconds
#321: Six Million
A big milestone for us! We're now well over that number of registered users on CodePen. It's a fun number to watch — but we know it's not a particularly useful or industry-standard metric. Monthly active users, for example, is much more meaningful. In this podcast, Marie and Chris reminisce a bit on the early days and reflect on what is different between then and now. You'd think we'd have way more support work to do, but we don't. You'd think we'd have way higher server costs, but we don't. We all feel it in different ways. We're more boring in a very satisfying way. We're more consistent, secure, stable, and reliable.
Time Jumps
Sponsor: Secureframe
Security compliance isn’t the biggest priority for startups...until it is. When it comes to enterprise deals, every large company requires a SOC 2 report. Secureframe allows companies to get SOC 2 compliant within weeks, rather than months and monitors 40+ services, including AWS, GCP, and Azure. Secureframe continuously collects audit evidence, runs security awareness training, manages vendors, monitors infrastructure, and more, all automatically.
Our customers save an average of 50% on their audit costs and hundreds of hours of their time. Learn more at secureframe.com
6/23/2021 • 0
#320: Andy and Una from Google’s Learn CSS Project
Learn CSS is a very cool project from a whole team of people at Google (and outside). It does a great job of documenting where is right now, in a fairly comprehensive way. Learn CSS was spearheaded by Una Kravets and Andy Bell did the bulk of the writing, so they are two extra-special guests to have on the show to talk about it. Why CodePen Radio though? Because there are literally hundreds of Embedded Pens used in this course, all using a style guide base and are live editors in the site itself. Cool!
Time Jumps
Sponsor: WooCommerce
WooCommerce supports Apple Pay at checkout now, which is a nice thing to offer. Some people have pretty strong preferences for how they pay online, and it's best to meet them there rather than force one particular payment method.
6/16/2021 • 32 minutes, 53 seconds
#319: Pattern Library
Stephen and Chris talk about cplibrary the Pattern Library that the CodePen Monorepo can use to share components. What goes in there and what doesn't? What are common and not-so-common components? Can components be combinations of other components?
Time Jumps
Sponsor: Lemon Productions
Chris Enns of Lemon Productions edits this podcast. Got a podcast you wanna outsource the editing on? Hit him up.
6/9/2021 • 39 minutes, 22 seconds
#318: Anna Lytical on What CodePen Is
When Anna Lytical heard Stephen and I talking about "What is CodePen?" she mentioned we did fab without her. So of course, I had to do one with her! Anna creates fun coding content all over the web, in addition to being an engineer at Google. Catch her on YouTube, Instagram, TikTok, and Twitter. For Anna, the appeal of CodePen is in the simplicity: nothing to set up, easy/free to get started, and you can get to the heart of learning quickly. Not to mention the sharing—as a teacher you can provide code as simply as sharing a URL. And of course, all the existing code to be inspired by!
Timestamps
Sponsor: Netlify
Did you see that Netlify bought FeaturePeek and rolled into into all Deploy Previews? They did! It's cool! Imagine you need to make a change to a website, and need approval from a client first. You can do a Pull Request against the site and your Netlify-hosted site will give you a URL with a Deploy Preview. They've done that forever, and it's incredibly useful. Now, it's even more useful, as that client can open up a little UI widget on the Deploy Preview and give feedback. They don't need to know anything about GitHub, yet their feedback can manifest as a GitHub Issue. And that's just one possible integration.
6/2/2021 • 29 minutes, 42 seconds
#317: Chattin’ with Stephanie Eckles
I got to chat with Stephanie this week, a senior web engineer at Microsoft, who I've given the prestigious gold-star award for top front-end web development content producer this year ;). She's got so many cool projects like Modern CSS, Style Stage, SmolCSS, and a beginner course on making a website. So many of the sites she makes are in Eleventy, she's taken to teaching that too, like on her site 11ty Rocks and on Egghead. She's always teaching, like through her podcast Word Wrap or in online workshops.
Catch up with Stephanie on CodePen, GitHub, Twitter, and her personal website.
Sponsor: Jetpack Backup
Jetpack offers Full Site Backup (database, theme, assets... everything), but it doesn't just back everything up, it goes above and beyond. For one thing, you can get real-time backups if you need, meaning everything is backed up as it happens, not day-by-day. You can also restore your site to any previous backup with the click of a button. That's above and beyond right there. But if you're a WooCommerce user, you'll rest easy knowing that you won't lose eCommerce sales and product changes when you restore to a historical point. Those changes are then "replayed" on top of the backup.
5/26/2021 • 29 minutes, 47 seconds
#316: Chattin’ Pens with Adam Kuhn
Adam Created this brand new intro video animation for CodePen Radio (on TV). Like when we do a video instead of audio for the podcast. We got to get into his creative process a little bit. While the output of this was a video, Adam used web technology to produce it, using animation libraries like David Desandro's Zdog (David also worked on the CodePen logo) and Greensock. But you won't find those libraries on the final Pen, because to preserve animation performance, those were used only to produce a GIF used as a mask over the TV and static. Sometimes you need to get tricky to produce the final product!
Sponsor: Jetpack Boost
Jetpack Boost is a plugin (separate from the core Jetpack plugin) that does three (for now) huge performance things for your site. 1) Lazy load images 2) Defer JavaScript 3) Critical CSS. All of those are really great things for web performance, and you essentially just flip them on with a switch. Critical CSS in particular is a rather difficult thing to implement by hand.
5/19/2021 • 31 minutes, 3 seconds
#315: Support Success
Over the last year, almost every metric that you want to go up has gone up at CodePen. More users creating and doing more things. You'd think that customer support would go up at the same level. And if it did, we would have thought that was very normal and dealt with it. But customer support doesn't have to be this static thing that just is the way it is forever. If you find that people have the same questions over and over, you can fix your app or documentation such to answer that question better. If people report bugs, you can fix them. In fact, if you do a lot of those things, you can reduce customer support even as the number of customers you support grows. That's exactly what we did at CodePen.
The result is that our customer support went from a job nearly impossible to get all done in a day, or the point where it is a part-time endeavor for whoever is on support that day. Even while our time-to-respond to tickets has also dramatically dropped. We're just over one hour right now, and of course hope to drop below that line. The truth is though, most tickets are half that, it's just some tickets that slip between the cracks and take days that hurt our average.
Timejumps
Sponsor: Headless Commerce Summit
Netlify is throwing a totally free online conference: Headless Commerce Summit.
E-commerce is growing at an unprecedented rate, making everything from your site performance to your ability to iterate faster a critical business advantage.
Take have a day and go! Even if you aren't currently literally building a headless site, it would be good to have in your brain how other people are doing it and what they are getting out of it.
5/13/2021 • 34 minutes, 21 seconds
#314: Team Updates
Marie and Chris discuss the big round of updates that went out around Team Management. There is a new "admin" role that it took us years of having a Teams product to understand that many teams could actually use. In the end, these updates to how Teams work make them way more useful. Teams can self-manage themselves in a way they never could before, and we're hoping that makes people much happier with the product, less likely to leave because of something silly like access controls, and reduce support.
Timejumps
Sponsor: Jetpack Backup + WooCommerce
Aside from Jetpack Backup just being really easy to use and the most trustworthy way to back up your entire WordPress site, it's the only backup solution that works with eCommerce (WooCommerce) in the way you really need it to. Say you need to rollback to a version of your site from 4 days ago because something bad happened that hosed the site. Rolling back is a good idea, that'll get you up and running right away, but when you revert a database back 4 days, that could wipe out all the eCommerce orders and product changes that have happened in that time: not good. Not with Jetpack Backup, it will restore to 4 days ago, but then replay all the orders and product changes, so your store is up to date with reality. Vital.
5/5/2021 • 26 minutes, 39 seconds
#313: Conflict
Being, ya know, human beings with thoughts and emotions trying to build something together, sometimes we clash. There are big clashes. Sometimes those end in drastic changes. We've done that. You might have noticed that we're down to two co-founders actively at the company. There are tiny clashes too, like needing to tell someone when they've made a mistake. Medium clashes (this is not a real classification by the way, it's just how it feels) are when multiple people feel pretty strongly about something and are not in alignment. It's not much of a clash if one person is at a 3 and the other is at a 9 on the care-o-meter. When you're both 10's, it's a clash of conflict. That happens to us sometimes (again, humans). The tricky part is that conflict resolution is never straightforward. If someone feels strongly that the direction should be A, another feels the direction should be B, sometimes the solution is C for compromise. But sometimes compromise weakens a vision, and resolution needs to be A or B so that the vision itself isn't weakened.
Are we experts in this? Far from it. Have we thought about it a lot? Ages. Do we have a long way to go in getting better at this? Sure do. The fact that we all still have extremely different temperaments for conflict at all is part of what makes it hard.
Timestamps
Sponsor: Netlify
It's worth reading up on Netlify's new concept of Distributed Persistent Rendering (DPR) and how that works with On-demand builders. It might just make your existing Jamstack builds way faster and better, or make possible the Jamstack for something you thought could never be.
4/28/2021 • 42 minutes, 27 seconds
#312: What is CodePen?
This isn't actually a podcast actually talking about what CodePen is. Well, it kinda is. But actually it's Stephen and Chris talking about and planning for what they would say if they only had five minutes (or so) to explain what CodePen is. So we need to hash out what the most important things are, what to lede with, and how to cover all the most vital things with clarity in such a short amount of time. We'll have to get around to actually trying to shoot a video like this soon!
Timestamps
Sponsor: Jetpack Boost
Jetpack Boost is a brand spankin' new plugin from the Jetpack / Automattic gang. Jetpack has some very powerful performance features it offers, like giving you a global CDN for your images and core-WordPress-specific CSS and JavaScript. That particular feature is still a part of the Jetpack core plugin, but many performance-specific features are moving their way over to Jetpack Boost. Like Lazy Image loading (a huge performance win) is now in Jetpack Boost and you can turn it on with the flip of a switch. The most amazing, and brand new, feature of Jetpack Boost is that it does Critical CSS handling for you, which is also a big performance win and very difficult to do by hand.
4/21/2021 • 32 minutes, 55 seconds
#311: Event Tracking & Appcues
Marie & Chris talk about the brand new event tracking feature in Appcues. We're still pretty stoked we can even afford Appcues, since it's super pricey software for our company. The fact that they just released event tracking dashboards makes it feel much more affordable though, because this unlocks super valuable information for us instantly. It's like we get what would get by also buying super expensive analytics software, only it's rolled into what we already pay for.
Sponsor: Netlify
High five to Netlify for the sponsorship. This is a tiny part of Netlify, but just think about how cool Netlify Drop is. For all sorts of people, but particularly for beginners and teachers, this little feature makes the web feel real. Imagine you take a quick class learning HTML and CSS, and make a "fake" site on your local computer. That might feel kinda neat, but then you drop it on Netlify Drop, and it becomes an honest-to-god real website on the internet that anyone in the world can see. That's big.
Timejumps
4/15/2021 • 34 minutes, 39 seconds
#310: Front-End Monorepo
We talked about our transition to a monorepo back in episode 305. This move has all sorts of advantages for us, like the simplicity of having a single repo to pull and be up to date with and linting/formatting code in a consistent way across the entire code base of CodePen.
This time we'll get into more of the repercussions of the monorepo from a front-end perspective. For example, since a bit part of the point of the monorepo is sharing code across areas of the site, it made sense to yoink out things that are intentionally sharable into top-level folders. For example, we pulled out our component library that way, then had to figure out how best to consume those components across different areas (e.g. how Next.js consumes those components is different than how our Rails app does. We also pulled out things like common utilities, icons, and shared styles, each of them having their own little journey on getting to work just how we wanted them to.
Timestamps
Sponsor: Jetpack
Jetpack is celebrating it's 10th year! Jetpack does a lot, from major search improvements, full site backup, social media integration, speed boosts, and security measures. Take a look at some of those statistics on their landing page. They are really helping WordPress site owners make their sites better and the web writ large.
4/7/2021 • 36 minutes, 1 second
#309: Elasticsearch
Dee, Chris, and Alex talk all about the technology of Elasticsearch. That's a link to the company itself right there, which is relevant as we use them directly to host our production Elasticsearch. We use it for (wait for it): search. But interestingly enough, that's not all. Elasticsearch is just a data store that can be useful for all sorts of other things. But before we get to that, we explain the technology and some of the problems we've had along the way that we're still on a journey to entirely smooth out.
Timestamps
3/31/2021 • 42 minutes, 18 seconds
#308: User Testing
In this episode, Klare and Chris talk about speaking to users directly about CodePen to get their feedback and as much other intel as we can in the spirit of making CodePen better and validating some ideas for future features.
Timejumps
Sponsor: Netlify
We had a question come in over on ShopTalk Show from a user who wanted to know what the advantage of Netlify was over putting static files in an Amazon S3 bucket with CloudFront in front of it. That was an interesting framing of the question because at first glance, because maybe in looking at the final site, it's not that different. But how do you deploy it? How do you do cache-breaking? How does version control fit into the story? What handles your forms? How much does it cost? The Netlify answer to all those is very satisfying, and the roll-your-own answer to all those is: 😬.
3/24/2021 • 30 minutes, 45 seconds
#307: We’re Hiring a Gopher
A Go-person? A Golanger? A person who's good at Go, anyway. That's who we'd like to hire at CodePen, at the senior level.
In this podcast, we chat about how we're thinking about this new role, why Go has been so important to us so far, and what we hope to do with it. We thought it might be helpful for you, potential hires out there, to hear about how we're thinking about all this and get to know exactly the people you'd be working with.
Timestamps
Sponsor: Linode
Simplify your infrastructure and cut your cloud bills in half with Linode’s Linux virtual machines. Develop, deploy, and scale your modern applications faster and easier.
Whether you’re developing a personal project or managing larger workloads, you deserve simple, affordable, and accessible cloud computing solutions.
Get started on Linode today with a $100 in free credit for listeners of CodePen Radio. You can find all the details at linode.com/codepen.
Linode has data centers around the world with the same simple and consistent pricing regardless of location. Choose the data center nearest to you.
You also receive 24/7/365 human support with no tiers or hand-offs regardless of your plan size. You can choose shared and dedicated compute instances or you can use your $100 in credit on S3-compatible object storage, Managed Kubernetes, and more. If it runs on Linux, it runs on Linode.
Visit linode.com/codepen and click on the “Create Free Account” button to get started.
3/17/2021 • 33 minutes, 50 seconds
#306: The Views of CodePen
(This is a video podcast. Feel free to watch on our YouTube channel instead of downloading if you experience any issues.)
The Editor View, perhaps the most important view on CodePen, is just one of many! In this video, Chris Coyier and Stephen Shaw look at all the different views, from the basic Full Page View to the very useful for testing Debug View, to the real-time magic of Collab Mode.
Sponsor: WooCommerce (12:29)
WordPress is already a great CMS, and when you add WooCommerce to do eCommerce, it just gets better as weaves its way into WordPress perfectly.
3/10/2021 • 23 minutes, 2 seconds
#305: CodePen’s Monorepo
Alex and Chris talk about the glory that is having all of CodePen's code base in a single repository. This was a slow journey of a couple of years. The biggest step was what jokingly named "CodePen in Stereo" which involved consolidating everything Node-based on CodePen (mostly a bunch of lambdas) into a single repo, but still having a second repo for our Rails stuff. The final leap was consolidating those.
This opened up some cool doors for us, like having a sub-project that is our design system that any other sub-project can use. This meant getting into stuff like Lerna and Yarn Workspaces. We were also particularly excited about making sure that every single bit of code we run is right in our main repo meaning it won't be forgotten or neglected and can share resources and dependencies from elsewhere in the code base.
Just as meaningful, it consolidates the human action around the code. A monorepo means all the branches and pull requests are in one place. All the issues are in one place. When you git pull you get everything you need. When you spin up our scriped dev environment, it can be sure it has everything it needs.
Chris wrote a bit more about it here, including touching on why others might not like the idea of a monorepo, which we get deeper into in the podcast.
Time Jumps
Sponsor: Linode
Simplify your infrastructure and cut your cloud bills in half with Linode’s Linux virtual machines. Develop, deploy, and scale your modern applications faster and easier.
Whether you’re developing a personal project or managing larger workloads, you deserve simple, affordable, and accessible cloud computing solutions.
Get started on Linode today with a $100 in free credit for listeners of CodePen Radio. You can find all the details at linode.com/codepen.
Linode has data centers around the world with the same simple and consistent pricing regardless of location. Choose the data center nearest to you.
You also receive 24/7/365 human support with no tiers or hand-offs regardless of your plan size. You can choose shared and dedicated compute instances or you can use your $100 in credit on S3-compatible object storage, Managed Kubernetes, and more. If it runs on Linux, it runs on Linode.
Visit linode.com/codepen and click on the “Create Free Account” button to get started.
3/4/2021 • 0
#304: Security at CodePen
As Alex puts it, and as evidenced by the Falkor header on our Notion planning board, security at CodePen is a NeverEnding Story. Not in an ugkadh this project will never end sense, but in that there is always some patch to stay on top of, some newly-evolving best practice to follow, or some new exploit in the wild to read about and make sure we've covered whatever scenario happened to them. We just so happened to get through a bunch of security upgrades at CodePen recently so hopped on this podcast to chat about them. CSP! HSTS! Zero trust networks!
Time Jumps
Sponsor: Jetpack
This is a perfect sponsor this week, as Jetpack has lots of powerful security features. For example, Jetpack can help automatically keep your plugins updated. A big part of security is keeping all your code up-to-date. Jetpack can also monitor your site's uptime, meaning that if you go down you'll be alerted and can get on top of it. It will also help against brute force login attacks. Just that stuff is amazing, but Jetpack also does backups and can scan your backups for security problems in the code itself. That's a fantastic security package, all together.
2/24/2021 • 0
#303: Using JavaScript Packages / ES Modules on CodePen
Stephen and I dig into just about every way that ES Modules are relevant on CodePen. They are extremely wonderful. The fact that browsers support native import/export for JavaScript, and the existence of amazing projects like Skypack which bring the npm ecosystem to ES Modules, opens up all sorts of doors on CodePen. We look at how to use ES Modules in the Pen Editor, Project Editor, and Vue Editor.
Sponsor: Jetpack
Jetpack is a plugin for WordPress, and we use it right here on this very site. It powers our realtime backups, helps secure the site, allows us to use Markdown, speeds up the site with a CDN, and provides a powerful site search experience.
2/17/2021 • 0
#302: Five Year Employee Milestones
While CodePen itself is about 8.5 years old as I write, Rach was part of the first round of hires we ever did, and has crossed the ever-so-rare and round-of-applause worthy 5-year milestone. She blogged it as well. So has Marie! Both of them join me (Chris) in a chat about that half-decade of life and work here at CodePen.
Time Jumps
Sponsor: Netlify
Netlify is great for a million reasons, chief among them how easy it makes to deploy your code. Not just static files, either. Netlify helps you deploy serverless functions as well. And now, those functions can run much longer: 15 minutes. That's enough time to do long-running tasks like web scraping, media generation and optimization, and things like data syncing.
2/10/2021 • 0
#301: What are Projects?
Chris & Stephen take a look at CodePen Projects (docs), which, for the time, is an entirely different thing than Pens. Rather than just the 3 editors: HTML, CSS, and JavaScript—you have a file system to work with, with arbitrary files and folders like you're used to with a desktop code editor like VS Code or Atom. You've still got the ability to run processors, but you can do more, like literally deploy a production version of the site.
Sponsor: Jetpack
Jetpack is a WordPress plugin for your self-hosted WordPress site that brings you all sorts of useful thing. For one thing, more security. It blocks malicious activity, scans your site for problems, and backs up everything. That backup thing is very great. I just needed it yesterday! But my favorite feature is the Site Search. It replaces the default WordPress site search (which isn't very useful) with an entirely new search experience. Not just the UI of search, but it improves the search results dramatically. I use Jetpack on all my WordPress sites.