journal // May 24, 2024

What I Built This Week: May 20th-24th, 2024

What I Built This Week: May 20th-24th, 2024
journal // May 17, 2024

What I Built This Week: May 13th-17th, 2024

What I Built This Week: May 13th-17th, 2024
journal // May 17, 2024

Introducing: What I Built This Week

Introducing: What I Built This Week
psychology // May 14, 2024

Avoiding the Sunk Cost Bias Trap as a Programmer

Learning to accept that you will invest time in things that will end up being the wrong direction and how to think about the lost time in a positive light.

Avoiding the Sunk Cost Bias Trap as a Programmer
quotes // May 10, 2024

RIP Jim Simons

RIP Jim Simons
links // May 02, 2024

Jonathan Blow on Deep Work

A brief interview with game programmer Jonathan Blow on the shape of deep work and solving hard problems.

Jonathan Blow on Deep Work
css // Apr 18, 2024

What is a CSS Reset (w/ Examples)?

One of the most important tools for a front-end developer is a CSS reset. A set of pre-defined styles that "reset" the default styles for elements offered by browser vendors.

What is a CSS Reset (w/ Examples)?
css // Apr 12, 2024

How to Build a Simple Grid Layout with CSS Grid

Using CSS Grid properties to layout a responsive 3x3 grid.

How to Build a Simple Grid Layout with CSS Grid
opinion // Apr 09, 2024

Shortcuts Are For Amateurs

The only way to get better is to do the work. To try, to fail, and to learn between each iteration. Seeking "shortcuts" only destines you for failure.

Shortcuts Are For Amateurs
ux // Apr 01, 2024

ABGF: Always Be Giving Feedback

A simple mnemonic for remembering to design user-friendly UX flows in your app.

ABGF: Always Be Giving Feedback
ux // Mar 30, 2024

Tip: When to Use a Modal, When to Use a Page

How to decide whether or not content should be displayed in a modal, or, as a standalone page in your app.

Tip: When to Use a Modal, When to Use a Page
opinion // Mar 26, 2024

Why I Don't Get Romantic About Commits Until Later

Why I treat commits more like a rough save point early on in a project and only create more-rigid commits after a public release.

Why I Don't Get Romantic About Commits Until Later
tutorial // Mar 15, 2024

How to Select a Previous Sibling Element With :has() in CSS

How to use the CSS :has() selector to select and style a preceding sibling HTML element.

How to Select a Previous Sibling Element With :has() in CSS
links // Mar 13, 2024

Link: The internet isn't dying, it's changing

Thoughts by Cory Dransfeldt on why the internet isn't dying, it's just completing a cycle similar to the one we saw in the early days of the internet.

Link: The internet isn't dying, it's changing
Announcements // Mar 08, 2024

Launch: Joystick RC1, Push Private Beta, and Mod Pre-Release

Announcing the official release of Joystick RC1, the private beta of our deployment service Push, and pulling the covers back on our new CSS framework, Mod.

Launch: Joystick RC1, Push Private Beta, and Mod Pre-Release
tutorial // Apr 07, 2023

How to Create a Stripe Elements Card Component in Joystick

How to create a Joystick component that renders a Stripe Elements credit card input.

How to Create a Stripe Elements Card Component in Joystick
tutorial // Mar 17, 2023

How to Create a Tar Archive Using Node.js

How to use the tar command line tool to generate a tarball archive using Node.js.

How to Create a Tar Archive Using Node.js
tutorial // Mar 10, 2023

How to Insert an Element Into an Array with JavaScript

How to write a function to insert an element into an array at a specific index using JavaScript.

How to Insert an Element Into an Array with JavaScript
tutorial // Mar 03, 2023

How to Dynamically Create and Inject DOM Nodes with JavaScript

How to dynamically create and inject DOM nodes into a page with JavaScript.

How to Dynamically Create and Inject DOM Nodes with JavaScript
tutorial // Feb 24, 2023

How to Break a Large Array Into Chunks with JavaScript

How to write a function that takes a larger array and breaks it down into an array of smaller chunks.

How to Break a Large Array Into Chunks with JavaScript
tutorial // Feb 03, 2023

How to Handle SEO Metadata in Joystick

How to leverage Joystick's res.render() function to dynamically render SEO metadata for your app.

How to Handle SEO Metadata in Joystick
tutorial // Jan 27, 2023

How to Dynamically Make Videos Responsive with JavaScript

How to dynamically detect all of the videos in a webpage and apply CSS to them to make them adjust their proportions fluidly to the page.

How to Dynamically Make Videos Responsive with JavaScript
tutorial // Jan 13, 2023

How to Build a Responsive Sidebar Nav with HTML, CSS, and JavaScript

How to implement a sidebar navigation that's static on desktop screens and toggleable on mobile screens.

How to Build a Responsive Sidebar Nav with HTML, CSS, and JavaScript
tutorial // Dec 30, 2022

How to Calculate Average Time to Read with JavaScript

How to write a JavaScript function to calculate the average read time for a string of text.

How to Calculate Average Time to Read with JavaScript
tutorial // Dec 16, 2022

How to Implement a Simple Autosave Feature in JavaScript

How to implement a UI that saves to the database automatically as the user makes changes.

How to Implement a Simple Autosave Feature in JavaScript