James Won

James Won @jwwnz

About: Front-end Software Developer based in Auckland, New Zealand

Location:
Auckland, New Zealand
Joined:
May 29, 2022

James Won
articles - 18 total

JavaScript Hoisting: What It Is And Why It Was Implemented

Hoisting is a key concept in JavaScript that can cause unexpected behavior in your code if you're not...

Learn More 11 0May 24 '23

The Importance of Doing Code Reviews

As a software engineering team, you want to produce high-quality code that is efficient,...

Learn More 0 0Apr 3 '23

Why you should create new GraphQL queries: How I caused an incident expanding an existing query and the lessons learned

I recently started a new job about a month ago and at my new company we use GraphQL. I'm fairly new...

Learn More 5 1Dec 4 '22

Trust The Process

I was recently preparing giving a talk to university students. As I prepared a number of tips for...

Learn More 7 0Sep 11 '22

Spreading arrays in a resilient way using JavaScript/TypeScript

Spreading is a really handy technique that we JavaScript developers use daily. Some common usages...

Learn More 2 0Sep 10 '22

How we sped up the loading time of a critical experience by 3x

Recently we sped up the loading time of a critical experience in our application by over 3x. Here's...

Learn More 0 0Aug 23 '22

How PR Wait time can impact contributor experience with open source repos

My colleague from Multitudes Jenny Sahng wrote a great medium blog post about her research delving...

Learn More 0 0Aug 23 '22

Why you should put effort into your Pull Request description

Pull Requests are the primary way new code is proposed, reviewed and merged. We know that Pull...

Learn More 21 9Aug 22 '22

Apply DRY to knowledge, not source code

DRY or Do Not Repeat Yourself, is an often repeated important concept in programming. Most of us try...

Learn More 3 0Aug 21 '22

The importance of being descriptive when naming

There are only two hard things in Computer Science: cache invalidation and naming things. Phil...

Learn More 0 0Aug 16 '22

TIL: Template Strings used with a function

ES6 introduced the handy Template literals that you probably use day-to-day to avoid string...

Learn More 0 0Aug 16 '22

Reflections: Take care when adding dependencies

Today we ran into a problem where an abandoned dependency was blocking our ability to update...

Learn More 0 0Aug 15 '22

Don't abstract code too early

When we first learn to code we learn that abstracting is a good thing. "You should avoid repeating...

Learn More 4 0Aug 12 '22

Importance of not mutating state in redux/react

Recently I found myself in a situation where I faced a bug caused by a mutated reducer. This led me...

Learn More 8 0Aug 12 '22

Simple trick to use Array.includes() for conditionals

This is a quick post on a sweet little trick I learned. Conditionals When writing a...

Learn More 6 0Jun 22 '22

JavaScript modules: The real difference between `import`, `require` and `import()`

Introduction I'm a bit ashamed to admit it but I didn't know (or care) about the...

Learn More 11 0Jun 4 '22

Redux 101: Using `forwardRef` with Redux

TL;DR When wrapping a component using forwardRef in Redux's connect function, make sure your connect...

Learn More 9 0Jun 2 '22

Performant React 101: `useEffect` or `useLayoutEffect`?

Front-end developers working with React use the useEffect hook all the time to render...

Learn More 27 0May 29 '22