JavaScript

Here is where I post about JavaScript, React, and client-side web applications.

How I Migrated to JAMStack: Next.JS, Vercel, and Contentful.

5 min read

I've recently taken the plunge on JAMStack, using Next.JS, Vercel, and Contentful. Here's what you want to know if you're considering migrating your web app.

Ask Me Anything: Front-End Edition

13 min read

What questions do you want to ask a Software Engineer about Frontend Web Development? I will try to answer your questions to help you get started.

Framer motion useViewportScroll when element is in viewport

2 min read

Framer motion `useViewportScroll` can create a parallax effect as the page scrolls. Here's how to scroll when an element is in the viewport area.

Framer Motion useViewportScroll 100% height parallax bug

2 min read

Framer motion has a great method (useViewportScroll) for creating a parallax scrolling effect. If your parallax is not scrolling, here's what you need to know.

Supercharge your code with AST: Abstract Syntax Trees

7 min read

Abstract Syntax Trees (AST) is how programming language parsers understand our code. AST and codemods let us supercharge our source code and refactor with ease.

Render Less React @ React Boston 2018

9 min read

Rendering takes time: mutating the DOM, calculating styles, and applying the layout. This presentation will give you a high level overview of virtualized rendering, and how to render massive layouts with performance in mind.

Hard to Read: Coding, with Communication

5 min read

Whether code is hard to read or not, is a matter of familiarity and accessibility to the codebase. Developers often forget about the latter when debating it.

JavaScript ES6 Symbols: A Metaprogramming Primitive

2 min read

JavaScript Symbols are a primitive data type with unique values. They can be used as identifiers or as properties that don't overlap with other libraries or modules.

Test your DOM Markup with Data Attributes

2 min read

It's no secret: we don't write enough unit tests and we neglect them. Here is how data attributes can make your tests more stable and give you peace of mind.

Color Theory: Accessible Complementary Colors

3 min read

Complementary colors feel vibrant and make things on the page pop. Luckily, there are tools out there we can use to generate accessible, complementary colors.

Testing GraphQL in 3 minutes

3 min read

Testing your GraphQL server can help you sleep at night. Here are some snippets and recommendations for testing your GraphQL server, schema, and resolvers.

Structuring Schema with Apollo Server

5 min read

Building a schema with the schema definition language just feels right and works well across different platforms.

GraphQL Resolvers: the Injector Pattern

2 min read

Resolvers are most often flat functions that take arguments and return a shape of data. Sound familiar? Think of them as controllers or directives in Angular. They need to return a specific shape that matches what the schema expects.

Read it before anyone else. Subscribe to my newsletter for early access to the latest news in software engineering, web development, and more.