Sign in

Playful Programming

@playfulprogramming.com
344 followers 13 following 315 posts

The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions. Join our Discord! discord.gg/FMcvc6T

PostsRepliesMedia
Playful Programming @playfulprogramming.com · 17/08/2026
For example, this is far from finished, but this is the very start of our high-contrast mode. Powered by the same changes to our color system as the tweaks you saw above. More flexibility means more opportunities for others. More fun. More you. We're eager to keep building! 🚀
A very early screenshot of high-contrast mode in Playful Programming; showcasing more stark colors and more.
010
Playful Programming @playfulprogramming.com · 17/08/2026
Who says you can't have fun and improve A11Y at the same time? We're working on themes! This isn't the final theme selection UI by any means, but shows how flexible our design system (ran by @pratti.bsky.social) is Been a lot of fun just testing out! It's enabling a ton of added A11Y work too...
120
Playful Programming @playfulprogramming.com · 09/02/2026
Excited to have @fly.io as a sponsor of Playful Programming. We recently migrated to a more robust deployment infrastructure with our containers powered by Fly; couldn't be happier with our decision. Thank you for supporting educational programming content!
040
Playful Programming @playfulprogramming.com · 09/02/2026
With new content from "This is Learning", we now have 820 articles live on our site today! We just checked — that's 1,400,000+ words 😱 That's a lot of posts to learn programming from!
"This brings our article count to 820+"
110
Playful Programming @playfulprogramming.com · 09/02/2026
It's official, "This is Learning" and @playfulprogramming.com are combining forces! We're elated to have them joining our ranks as we continue to grow. Our joint goal remains the same as it always was: Foster an open community aimed squarely at teaching software engineering.
Two unicorn hooves high-fiving with "Playful Programming hearts This is Learning" text above it
140
Playful Programming @playfulprogramming.com · 05/02/2026
We're excited to announce that @coderabbitai.bsky.social is a new sponsor of Playful Programming. We're looking forward to leveraging it to accelerate our development — Not joking here: We enabled it on our repo and it immediately caught a mistake in a PR. Thank you once again to their team!
A unicorn with a bowtie representing Playful Programming with a heart and the CodeRabbit logo
031
Playful Programming @playfulprogramming.com · 12/01/2026
We're excited to announce that we just completed a zero-downtime migration of our sites and services to @fastly.com ! They're sponsoring our usage and we're extremely grateful for their support!
A cartoon unicorn representing Playful Programming, a heart, and the Fastly logo
040
Playful Programming @playfulprogramming.com · 05/11/2025
Dithering is an important concept to many program's aesthetics... But how does it work under-the-hood?? We're fortunate enough that Damar is willing to join us for tomorrow's book club to answer this question! Come join us in our Discord to hear Damar share his insights: discord.gg/FMcvc6T
010
Playful Programming @playfulprogramming.com · 30/10/2025
Getting apps to be local-first can be a huge challenge. Luckily for us, TanStack has a new library to help solve that problem: TanStack DB! Join our book club tonight at 4:30PM PST to talk about an interactive article on TanStack DB to learn how it can help your applications.
031
Playful Programming @playfulprogramming.com · 24/09/2025
Selectors have a weight to them that we can quantify. This defines their hierarchy and allows you know ahead of time which selector can override another and when!
A visual of a code block showing different selectors being combined for greater CSS specificity.
100
Playful Programming @playfulprogramming.com · 24/09/2025
Selectors come in many varieties, all for different but important purposes. It's important to know which one to use for each case!
A table of different selectors and their usage
100
Playful Programming @playfulprogramming.com · 24/09/2025
📝New article alert! Specificity in CSS is one of the most misunderstood and important concepts in the web dev space. It refers to the algorithm that browsers run when trying to decide which CSS declarations to apply to HTML elements.
121
Playful Programming @playfulprogramming.com · 08/09/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Dan Hollick's "What is a color space?" article! Join our Discord and meet us on Thursday, September 11th, at 4:30 PST!
110
Playful Programming @playfulprogramming.com · 03/09/2025
📚 We have a very special book club this Thursday! 📚 For this week's book club — where we hang out and talk about a dev article — we're joined by the author of an awesome interactive blog post about "Big O": @samwho.dev Join our Discord and discuss the article with us all!
043
Playful Programming @playfulprogramming.com · 27/08/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing @joshwcomeau.com 's "An Interactive Guide to SVG Paths" article! Join our Discord and meet us on Thursday, August 28th, at 4:30 PST! discord.gg/FMcvc6T
Book Club for the article is in our Discord in the "Code & Chat" Voice Channel
040
Playful Programming @playfulprogramming.com · 19/08/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Lee Robinson's "Reflections on the React community" article! Join our Discord and meet us on Thursday, August 21st, at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 14/08/2025
📚 Join our book club today! 📚 In our book club we hang out and talk about an article — this week, we're discussing Framework Field Guide's "Linters, Formatters, and Type-Checkers" article! Join our Discord and meet us on today, August 14th, at 4:30 PST!
000
Playful Programming @playfulprogramming.com · 13/08/2025
📝 Once again, what are monads? Our new article is out, and it covers a topic that's been explained many times, in many different ways: Monads! Monads are a staple of functional programming but, for some, the resources available explaining them don't cut it.
120
Playful Programming @playfulprogramming.com · 23/07/2025
📝 New article: You should be using unitless values for line-height! In our new blog post we lay out why unitless line height values are good for maintainability, and accessibility. Unitless values inherit from the parent, ensuring it works on all value types.
131
Playful Programming @playfulprogramming.com · 10/07/2025
Fiber, the rewrite before it, brought concurrency, prioritization, pausing and incremental rendering. It laid the groundwork for many other features and allowed for error boundaries!
130
Playful Programming @playfulprogramming.com · 10/07/2025
Hooks, for example, were introduced in React 16.8 and introduced useState and useEffect making reusable stateful logic easy. This was a massive improvement over the previous iteration.
130
Playful Programming @playfulprogramming.com · 10/07/2025
🌐 The History of React Through Code We have a new article for you, and this is a big one. 👀 There were many criticisms of React's design throughout the years, but how valid are they? Our new article explores that and much more!
A banner with a timeline graph and the headline "The History of React Through Code"
1132
Playful Programming @playfulprogramming.com · 08/07/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing own our article, Framework Field Guide's "Styling" article! Join our Discord and meet us on today, July 10th, at 4:30 PST!
110
Playful Programming @playfulprogramming.com · 03/07/2025
📚 No, really, what's a monad? 📚 That's what we're gonna answer in today's book club! Every Thursday we hang out and discuss an article; this week, it's Ryan Marcus' article about monads — whatever they are. Join us today on Discord at 4:30 PM PST!
110
Playful Programming @playfulprogramming.com · 26/06/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Stanislav Vishnevskiy’s "How Discord Scaled Elixir to 5,000,000 Concurrent Users"! Join our Discord and meet us on today, June 26th, at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 18/06/2025
The third chapter is about styling, where we discuss different ways to style your apps, either by organizing your code using specific patterns or using existing libraries for customization, like Tailwind.
An example of a button being styled in Tailwind CSS, using classes as styling options.
110
Playful Programming @playfulprogramming.com · 18/06/2025
The second chapter is about linting, formatting, and type-checking; all of which provide insights into your code, allowing you to optimize and fix errors. This includes Prettier, ESLint, TypeScript, and more.
Venn diagram showing the function of Prettier, TypeScript and ESLint.
120
Playful Programming @playfulprogramming.com · 18/06/2025
The first chapter is about bundling, which unlocks many features such as transpiling, automatic linting, merging and optimizing of code and many more features.
A diagram of bundling and their output, where it shows TypeScript getting converted to CSS and JavaScript.
110
Playful Programming @playfulprogramming.com · 18/06/2025
Today we’re proud to release the first 3 chapters of Framework Field Guide’s second book: Ecosystem. This book discusses the tools surrounding frameworks — we're going to talk about all the capabilities that are unlocked when using them and their usefulness!
Banner of Ecosystem, the second book of Framework Field Guide. It has a forest backdrop with the title "Ecosystem" on top.
130
Playful Programming @playfulprogramming.com · 12/06/2025
📅 Now that we've reached the halfway point of 2025, it's time to recap what Playful Programming has been up to so far! Here's a big-ish thread to get you up to speed:
Two unicorn hooves high-fiving.
100
Playful Programming @playfulprogramming.com · 10/06/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Brandon Dail’s "Fault Tolerance"! Join our Discord and meet us on Thursday, June 12th at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 02/06/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Dan Abramov's "RSC for Astro Developers"! Join our Discord and meet us on Thursday, June 5th at 4:30 PST!
110
Playful Programming @playfulprogramming.com · 29/05/2025
Cherry-picking lets you take certain commits and apply them to another branch. This is useful if you want to merge certain commits without merging potentially breaking, sweeping changes alongside them.
A disagram of a commit being cherry-picked.
100
Playful Programming @playfulprogramming.com · 29/05/2025
Conflicts are very common in Git operations, specially considering all the branches and potential issues that may arise when collaborating with others with code. In this chapter, we tackle the most common cases and their fixes!
A graphic of a Git GUI letting the user pick between conflicted file changes.
100
Playful Programming @playfulprogramming.com · 29/05/2025
📣 New article — Git: Into the Weeds! The second chapter of our Git series focuses on conflicts, cherry-picking, and submodules!
An illustration of the Git logo with several icons for different Git actions in the background.
100
Playful Programming @playfulprogramming.com · 26/05/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article; however, this week, we're discussing the original proposal for first-class support for Promises in React! Join our Discord and meet us on Thursday, May 29th at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 24/05/2025
ICYMI: We've been releasing chapters of our newest collection, The Art of Accessibility! This collections plans to cover all you need to know about accessibility concerns, from starting concepts to actual paradigms and technologies used to provide more usable products for everyone.
An illustration of a street with multiple individuals, displaying different types of disabilities. One is carrying a white cane, one uses a wheelchair. The banner says "The Art of Accessibility".
1113
Playful Programming @playfulprogramming.com · 19/05/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Dan Abramov's "RSC for Astro Developers"! Join our Discord and meet us on Thursday, May 22nd at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 12/05/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Dan Abramov's "JSX Over The Wire"! Join our Discord and meet us on Thursday, May 14 at 4:30 PST!
250
Playful Programming @playfulprogramming.com · 07/05/2025
✏️ The Art of Accessibility has a new chapter out! Labels is all about how we bind identifiable names to forms and inputs to help users navigate our screens with accessibility tools!
A form field with a label syntax above it. It applies a label called "Name" to the field.
121
Playful Programming @playfulprogramming.com · 05/05/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Dan Abramov's "Impossible Components"! Join our Discord and meet us on Thursday, May 8 at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 30/04/2025
Our third post is all about text - the majority of the web's content! Text must be accessible in all circumstances to ensure content is readable to all. It's also incredibly important to support dynamic text sizing so users are able to customize it to their needs.
A simple illustration of letters with different levels of visibility. There is a measurement symbol right next to them to indicate that their size is being inspected.
110
Playful Programming @playfulprogramming.com · 30/04/2025
In our second post, we discuss semantic elements and why they're important! Making sure your elements behave the way users expect also allows users with assistive technologies to use the products we're offering with ease.
120
Playful Programming @playfulprogramming.com · 30/04/2025
With our first post, we talk about the challenges that users constantly face, and the advantages companies have by adopting accessibility-first products. It's shown that 1 in 6 users contain some sort of disability - this number should be reflected in the products we use!
Another illustration, showing an array of colors with one selected as the one with proper contrast. A list item is shown with HTML tags determining what they are. There are also large letters with different levels of visibility.
120
Playful Programming @playfulprogramming.com · 30/04/2025
🌐 Introducing: The Art of Accessibility! Our brand-new book teaches you everything to do with accessibility! With a vast array of technologies and methods of providing valuable experiences to all users, it's easier than ever to design better, more inclusive products.
An illustration of a street. There is a visually impaired person, walking with a white cane. A wheelchair user sits next to another person in a small shop. The shop's banner says "a11y.art", the URL for the book.
1165
Playful Programming @playfulprogramming.com · 29/04/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — this week, we're discussing Dan Abramov's "React for Two Computers"! Join our Discord and meet us on Thu at 4:30 PST!
100
Playful Programming @playfulprogramming.com · 23/04/2025
We have graphics for every Git function to help illustrate what we're talking about, which makes it easier to learn! Just with the Basics alone you'll already learn how to interact with a repository and its branches and make your own changes.
120
Playful Programming @playfulprogramming.com · 23/04/2025
In the Basics chapter, we packed a ton of content to get you started — our table of contents overflows by quite a lot 👁️ — but surprisingly, it's all very easy to grasp.
130
Playful Programming @playfulprogramming.com · 23/04/2025
🎉 Meet our new collection! With "Git: A Guide to Greatness", you'll learn everything there is to know about Git, the ubiquotous version control system for software development. The first chapter is out, and the next will closely follow. 👇
1100
Playful Programming @playfulprogramming.com · 21/04/2025
📚 Join our book club this Thursday! 📚 In our book club we hang out and talk about an article — but this week, we're changing it up! We'll talk about an article and a video! Both are about MCP, or Model Context Protocol. Join our Discord and meet us on Thu at 4:30 PST! Links are below!
110