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


Ask Me Anything: Front-End Edition
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.


How I Migrated to JAMStack: Next.JS, Vercel, and Contentful.
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.


Framer motion useViewportScroll when element is in viewport
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
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
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
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
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
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
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
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
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
Building a schema with the schema definition language just feels right and works well across different platforms.


GraphQL Resolvers: the Injector Pattern
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.