Writing (archives)
- 13 checks
- 80/20
- Add a prop to JSX elements with Babel
- Answering questions in blog post form
- Appending and prepending to JavaScript files with Babel
- remark-mdx
- Component Shadowing and Composition
- Blocks Desktop with Electron
- Nested Attributes with Rails 3
- Validating Presence with Nested Attributes in Ruby on Rails
- Link With Icon, A Gem
- Email Format Validator for Rails
- Url Format Validator, Yet Another Gem
- The Origins of Creative Insight & Why You Need Grit
- Open a Bundled Gem in Sublime Text
- Create a pretty browser window mockup in HTML+CSS
- Decorators on Rails
- Strong Parameters with Rails 4
- Getting Started with Ember JS Generators
- Urls for Humans
- An Introduction to the Swift Programming Language - Part One
- An Explanation of the Difference Between Mixins and Extends in Sass
- Build Tasks with Gulp.js
- Creating an Ember.js Addon with the Ember CLI
- Convention Over Configuration
- Improving CSS Performance
- Jekyll and UnCSS
- Isolated Theme UI Context
- Remark and Slate Serialization
- Gatsby Theme Blog Child Theme
- Authorable format
- Bash script to convert JSONL to JSON
- Bash loop
- Rename all files in a directory
- Better science through art
- The Bezold Effect
- Blank Canvas
- Notes on Blender Guru's donut course
- Blender pine tree
- Blender
- Blogchains
- Build for you
- Lighting one candle with another candle
- Components, props, and Cartesian products
- Changesets
- ChatGPT and blogging
- ChatGPT and politeness
- ChatGPT Prompts
- Check a PostgresQL connection in ruby
- Code style
- Notes on Codify
- Coffee
- The compilers course
- Component organization with Gatsby themes
- Composing multiple MDX documents with Gatsby
- Composition over configuration
- Composition over data-driven templates
- CORS handling with Netlify Functions
- Create a table of contents component for MDX in Gatsby
- Creating a minimalist docs site with Gatsby and MDX
- Creativity and Unpredictability
- Generating code and the webpack loader
- Debugging props in mdx
- DesignQL
- Egghead
- Extending Gatsby plugins
- Fitness
- Fixing MDX imports and exports
- Friction
- MDX: From Markdown in JSX to JSX in Markdown
- The JavaScript Function constructor
- Generate blog post frontmatter with bash
- GitHub Actions with lerna
- GitHub hosted images
- Guessable
- Hello, 2023
- I Still Enjoy React
- Innovation at the boundaries
- Introduction to natural language ASTs
- An introduction to React Suspense
- Inversion
- JSX as a design tool data structure
- What is pragma?
- Latent Component Shadowing
- Looking up an alias definition
- MacOS
- Notes on Magic Ink
- Markdown graph
- MDX DX
- Moonlander
- Move directory between repos while preserving git history
- Multi-size Heading
- Naming props
- Organizing posts
- Parsing GraphQL
- Why use peer dependencies?
- Presentational Context
- Programmatic redirects with Gatsby
- Publishing Gatsby starters from a monorepo
- Randomness and color
- React drag and drop
- React Hooks in MDX
- React Hooks and stale state
- Recipes interpreter with a custom React reconciler
- Remote work
- Remove a function with babel
- Remove a parent with babel
- Retirement Calculator Spreadsheet
- Retrieve the MDX AST with unified
- RSI
- SaaS
- Searching for a node in the Babel AST
- Notes on Shaders
- Gatsby themes shadowing and aliases
- SQL Slug Function
- Static Site Generators vs Server Side Rendering
- Stability
- Stringify an AST with unified
- Building a beautiful, reusable button with Styled System
- Styling themes
- Symbolic links with git
- To it, not through it
- Tokens vs words with LLMs
- Tomato
- Typeface Selection
- useEffect for fetching data in MDX
- Using pg, the tiny, low-level node library for postgres
- Using React context with a custom hook
- VIM 1
- VIM 2
- VIM 3
- VIM
- VS Code Syntax Highlighting Theme
- VS Code Webview Panel
- Web components in MDX
- Weber-Fechner law
- Working on the iPad Pro with the Magic Keyboard
- Wrap a JSX element with babel
- Write
- Why I use yarn instead of npm
- 2020, the year of the interactive blog post