Playful Programming
banner
playfulprogramming.com
Playful Programming
@playfulprogramming.com
The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions.

Join our Discord!

https://discord.gg/FMcvc6T
Onboarding is changing — and AI is accelerating the shift.

New hires now arrive with AI tools, different expectations, and less patience for outdated onboarding flows. This creates real pressure on documentation, team practices, and how knowledge is actually transferred.
February 11, 2026 at 8:32 PM
Today we’re covering how async JavaScript works in the browser — from Promises and fetch to error handling, status codes, and loading states.

If you want a stronger mental model for real-world frontend behavior, this is a great time to join the today's class at 6pm PST/ 9pm EST: discord.gg/FMcvc6T
Join the Playful Programming Discord Server!
The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions. | 2738 members
discord.gg
February 10, 2026 at 11:12 PM
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!
February 9, 2026 at 6:51 PM
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.
February 9, 2026 at 12:18 PM
Web Fundamentals Bootcamp — Office Hours Today at 6pm PST/9pm EST

This is where the DOM concepts click.

We’re practicing real browser interactions, from simple click handlers to scoped DOM queries.
February 6, 2026 at 11:01 PM
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!
February 5, 2026 at 11:33 PM
We’re working directly in the browser in today’s Web Fundamentals Bootcamp.

Scripts, selectors, DOM updates, and events—no frameworks, just how JavaScript actually talks to the page.

If you want JS to feel predictable instead of magical, join us.
February 3, 2026 at 10:01 PM
Reading technical books cover-to-cover is overrated.

What matters is extracting the content without burning time.

In this post, hear about how to break down a pragmatic way to read technical books & docs like a working developer—not a student.
January 30, 2026 at 5:43 PM
Thursday in the Web Fundamentals Bootcamp is all about applied practice.

Building on Tuesday’s fundamentals, we’re working through structured exercises that reinforce control flow and abstraction.

Join us in our discord at 6pm PST/ 9pm EST 👇

discord.gg/FMcvc6T
Join the Playful Programming Discord Server!
The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions. | 2728 members
discord.gg
January 29, 2026 at 10:01 PM
Jacob Asper is committing to learning Go in 2026—not casually or “on the side,” but intentionally.

If you’ve been considering Go, or re-evaluating your approach learning, this may resonate: playfulprogramming.com/posts/commit...
Committing to learning Go in 2026
Time to learn Golanguage
playfulprogramming.com
January 28, 2026 at 3:24 PM
Today in the Web Fundamentals Bootcamp: JavaScript, continued!

Today we’re focusing on the building blocks you’ll use in almost every JS program:
- Functions (including lambdas, without getting lost in edge cases)
- Loops
- Arrays
Join the Playful Programming Discord Server!
The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions. | 2728 members
discord.gg
January 27, 2026 at 9:56 PM
Rust’s static keyword gets a bad reputation.

It does not automatically mean memory leaks, global state gone wrong, or “unsafe by default.”
January 26, 2026 at 8:12 PM
Building apps for the world? English isn’t enough.

Internationalization (i18n) + Localization (l10n) are your keys to global success.

Here’s a developer’s guide 👇
January 23, 2026 at 7:34 PM
Building on the JavaScript fundamentals we covered Tuesday, today in the Web Fundamentals Bootcamp we’re moving into exercises:

• Build a number guessing game (“too high / too low”)
• Introduce boolean logic (&&, ||)
• Understand the difference between `null` and `undefined`
Join the Playful Programming Discord Server!
The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions. | 2723 members
discord.gg
January 22, 2026 at 7:29 PM
React’s new compiler can silently break library logic, especially around memoization, hooks, and runtime behavior. ⚡

@crutchcorn.dev just wrote a detailed guide showing exactly how these issues appear and what library authors need to know.
January 21, 2026 at 4:03 PM
Today in the Web Fundamentals Bootcamp: JavaScript.

No frameworks yet — just:
– What JS is
– The browser console
– Variables & runtime types
– Blocks {}
– Conditionals

Want a refresher or a clean introduction?

Starting at 9pm ET / 6pm PT in our discord. Join us 👇

discord.gg/FMcvc6T
Join the Playful Programming Discord Server!
The perfect place to learn all kinds of programming, from introductory ideas to advanced abstractions. | 2723 members
discord.gg
January 20, 2026 at 7:16 PM
Reposted by Playful Programming
Working on @tanstack.com Form's React Compiler support has taught me a lot about adapting libraries to support it.

Here's what I've learned:

playfulprogramming.com/posts/react-...
Adapting Library Logic for React Compiler
A deep dive into debugging React Compiler issues involving object mutation and referential stability.
playfulprogramming.com
January 19, 2026 at 5:52 PM
Rich text editors seem simple until you try to build one. They’re not just `contenteditable`, they’re document models, selections, transactions, and explicit control over user intent.

This is why editors like ProseMirror and Lexical share similar internals, even if their APIs look very different.
January 19, 2026 at 6:06 PM
We often hear about (and see) React performance problems, but where do they come from?

Courtney walks us through an extreme example of performance problems in React to kick off a new series about React performance:

playfulprogramming.com/posts/where-...
Where React performance issues start
Let's dive into the React fundamentals. This will help us build up a solid mental model that will allow us to understand what happens when react updates the UI.
playfulprogramming.com
January 13, 2026 at 2:01 PM
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!
January 12, 2026 at 3:47 AM
Reposted by Playful Programming
We need more humanizing elements in engineering.

As such, I'm starting a blog post series that outlines personal (and sometimes extremely vulnerable) experiences that I think touch on the interpersonal aspects of our field.

To start? Survivorship bias.

playfulprogramming.com/posts/surviv...
Confronting Survivorship Bias
A cautionary tale about successes in my career and survivorship bias.
playfulprogramming.com
December 1, 2025 at 2:07 PM
We're excited to announce our first-ever code bootcamp!

It's a FREE 12-week program in person at Sacramento, California & remote in our Discord.

In this bootcamp, we'll be teaching the basics of Web Development: HTML, CSS, JS, & React.

Sign up on our site:

playfulprogramming.com/events/sacra...
Playful Sacramento — Code Bootcamp
Welcome to Playful Programming's first bootcamp!
playfulprogramming.com
November 17, 2025 at 5:50 PM
Choosing your tech stack can be a challenging decision to make, especially if you've never led a team before.

To help, we have a new article on the site where Courtney walks us through how he decided what tools to use to build a job searching pipeline tool:

playfulprogramming.com/posts/how-i-...
How I Chose The Tech Stack For Job Helper
Choosing a tech stack isn’t just about picking trendy tools, it’s about aligning architecture with real-world needs.
playfulprogramming.com
November 7, 2025 at 3:31 PM
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
November 5, 2025 at 9:48 PM
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.
October 30, 2025 at 8:38 PM