Swizec's articles in the "front end" category
I aim to write mindblowing emails with real insight into the career and skills of a modern software engineer. "Raw and honest from the heart!" as one reader described them.
Below are 139 articles filed under front end
. Enjoy ❤️
Software Engineering Lessons from Production
Join Swizec's Newsletter and get insightful emails 💌 on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.
"Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. 👌"
Why react-hook-form is my new favorite form library
August 3rd, 2020
Build a new design system in a couple afternoons
July 3rd, 2020
Wormhole state management
June 29th, 2020
Using scopes for elegant JAMStack permissions
June 15th, 2020
Screw web performance, just wait a little 😈
May 22nd, 2020
Add granular role-based access to your JAMStack app
May 18th, 2020
Why you should build a form generator
Lemme guess, every project involves 1 or 2 forms and they're all the friggen same. You got forms coming out the wazoo. Render fields. Connect to state. Add field validation. Detect submit. Add form validation. Send fetch request. Repeat.
April 27th, 2020
How tests uncover hidden complexity in simple code
April 14th, 2020
The surprising performance boost from changing gif embeds
April 6th, 2020
Mocking and testing fetch requests with Jest
February 28th, 2020
How GraphQL blows REST out of the water
Let's have a look at hyow GraphQL makes queries so much easier and more pleasant than REST
January 23rd, 2020
A promises gotcha that will catch you out
December 16th, 2019
Towards a Gatsby+Suspense proof-of-concept
November 11th, 2019
Experimenting with the new React Concurrent mode
November 6th, 2019
Is hot dog taco?
What if I told you modern tools let you build and launch a small webapp in 30 minutes? Complete with SSL, a .com domain, a database, a documented API, CDN hosting, fast static initial loads, and a hydrated SPA? That's the challenge I posed at Silicon Valley Code Camp this weekend. The audience didn't believe me, so it was time to perform some magic. 🧙
October 21st, 2019
useReducer + useContext for easy global state without libraries
August 12th, 2019
A Drilldown Piechart with React and D3
June 28th, 2019
Is JavaScript really getting too complex?
June 10th, 2019
Getting the CSS out of rendered React components
June 3rd, 2019
Custom markdown extensions with Remark and HAST handlers
April 8th, 2019
Trying the new ResizeObserver and IntersectionObserver APIs
April 3rd, 2019
BrowserStack – a less painful way to test weird browsers
March 20th, 2019
Fixing laggy UI with React.memo
March 18th, 2019
useDimensions – a React Hook to measure DOM nodes
March 13th, 2019
Why dataviz does better for your career than TODOapps
March 6th, 2019
Behind the curve ... of my bar donut chart 🤨
March 5th, 2019
JavaScript’s most popular dataviz library
February 26th, 2019
An experiment to merge React and Vue
February 20th, 2019
Custom react hooks ❤️
February 11th, 2019
Async, await, catch – error handling that won't drive you crazy
February 8th, 2019
Why CSS-in-JS is winning, an example
January 30th, 2019
Tooltips and state across various d3 charts in a React dashboard!
January 28th, 2019
Delightful state management with hooks and Constate
January 16th, 2019
How to build a Remark plugin to supercharge your static site
January 9th, 2019
DRY is a footgun, remember to YAGNI
January 7th, 2019
How to use React Context effectively
January 2nd, 2019
Tooltips ... tooltips are not so easy 🧐
December 10th, 2018
Building a React dataviz with React hooks
December 6th, 2018
Oh the things you can learn with a fun weekend hack project 🏗
November 19th, 2018
Waiting for Godot with callbacks, promises, and async
November 16th, 2018
Announcing D3blackbox and useD3
November 6th, 2018
Easy D3 blackbox components with React hooks
November 1st, 2018
React hooks in a nut shell 🥐
October 29th, 2018
Build responsive SVG layouts with react-svg-flexbox
August 17th, 2018
Answering some common questions about React + D3 2018
August 2nd, 2018
Creating the perfect rounded edge with D3 curves
July 31st, 2018
Hire these interns
July 10th, 2018
Use ref callbacks to measure React component size
June 7th, 2018
Tiny React & D3 flamegraph tutorial
June 6th, 2018
Towards a WebRTC mesh network with RTCDataChannel
May 30th, 2018
Learning WebRTC peer-to-peer communication, part 2 – connecting 2 browsers on different devices
May 16th, 2018
Learning WebRTC peer-to-peer communication, part 1
May 7th, 2018
Declarative D3 charts with React 16.3
April 27th, 2018
Using YouTube as a data source in Gatsbyjs
April 24th, 2018
Blockchain-redux becomes useful, part 1
April 3rd, 2018
Livecoding Recap: A new more versatile React pattern
March 27th, 2018
How our engineering team got 12x faster using these 5 lessons about integrating 3rd-party services
March 15th, 2018
Build a Chrome extension from idea to launch in an afternoon
March 13th, 2018
Benchmarking Vue
March 5th, 2018
Make your things pretty with chroma-js
March 2nd, 2018
Seamlessly render a Preact component in a React project
February 28th, 2018
Building an interactive DOM benchmark, preliminary results
February 27th, 2018
What I learned making my first open source React component
February 21st, 2018
Loops are the hardest
February 15th, 2018
3 key insights that make D3.js easy to learn
February 8th, 2018
Fade in lazy loaded images with React and CSS – a quick guide
January 31st, 2018
How to populate react-redux-form with dynamic default values
January 25th, 2018
Advent of Code Day 22 – Sporifica Virus
December 22nd, 2017
Advent of Code Day 20 – Particle Swarm
December 20th, 2017
Advent of Code Day 19 – A Series of Tubes
December 19th, 2017
Advent of Code Day 15 – Dueling JavaScript Generators
December 15th, 2017
Advent of Code Day 14 – Disk Fragmentation
December 14th, 2017
How to DDoS yourself with analytics –– a war story
November 29th, 2017
Arcane JavaScript knowledge still useful
November 17th, 2017
How JavaScript linters cause bugs
I was doing code review for a coworker, and it soon became obvious that he used a linter and that the linter gave him a bright idea: _use strict comparisons_.
September 14th, 2017
How you can translate any random D3 example to React
August 31st, 2017
A Fast Mutex Lamport Lock with JavaScript Promises
March 30th, 2017
N-body Collision Simulation with React, D3, and MobX
March 16th, 2017
Livecoding #34: A Map of Global Migrations, Part 3
February 20th, 2017
Livecoding #30: Dipping my toes in React Native
January 17th, 2017
Livecoding #29: Optimizing React choropleth map rendering
December 19th, 2016
Using HOCs to DRY up your code
December 16th, 2016
Dancing tree fractal with React
December 13th, 2016
Fun surprise: UglifyJS can't ES6
December 7th, 2016
Livecoding #28: Productizing the door-answering Slack bot, Part 1
December 5th, 2016
One awkward thing about MobX: Complex models
December 2nd, 2016
Livecoding #27: New React Indie Bundle page almost done
November 21st, 2016
Fast, searchable dropdown inputs with React
November 16th, 2016
I made a python script that converts SVG to React ?
November 15th, 2016
Livecoding #26: A new page for a new React Indie Bundle
November 14th, 2016
How to structure your MobX app for the real world
November 4th, 2016
A tiny ES6 fetch() wrapper that makes your life easier
November 2nd, 2016
Livecoding #25: Adding MobX to a vanilla React project
October 31st, 2016
Simple MobX-driven modals
October 28th, 2016
How to use MobX with create-react-app
October 27th, 2016
Histogram in D3v3 vs D3v4
October 25th, 2016
CSS classes don't work the way you think they work
October 21st, 2016
A trick to make your big dataviz load super fast
October 17th, 2016
Backbone → React: Handling state with MobX
September 22nd, 2016
Backbone → React: it's a people problem after all ?
September 21st, 2016
Backbone → React – Step 1
September 20th, 2016
A puzzle in JavaScript objects
This is a puzzle you can run into if you’re not careful, and sometimes, despite your best efforts, even if you are careful. It happened to me when I had a settings object that I passed into a view. The view then did things. When I made a new view from the settings object, it looked like the view I had just cleared.
September 9th, 2016
Work on React+D3js ES6 v2 begins in earnest
September 8th, 2016
Backbone with ES6
September 1st, 2016
How to add ESLint to your project
August 31st, 2016
Livecoding #21: Use Babel for libraries, not Webpack
August 29th, 2016
Animated string diffing with React and D3
August 22nd, 2016
Livecoding #20: You can’t extend an object
August 21st, 2016
Conway’s game of life in Google Docs
August 16th, 2016
Livecoding #19: It’s hard to package a library
August 15th, 2016
JavaScript can fetch() now and it's not THAT great
August 12th, 2016
I broke AJAX in Chrome 52 ?
August 11th, 2016
JS object optimization bug in Chrome 52
August 10th, 2016
Livecoding #18: An abstract React transition component
August 7th, 2016
Livecoding #17: Particle physics is hard
August 4th, 2016
Livecoding #15: Reaching the limits of canvas redraw speed
July 20th, 2016
Livecoding #13: rendering React components with canvas
June 28th, 2016
Livecoding #12: towards animating 10k+ elements with React
June 16th, 2016
Using d3js transitions in React
April 28th, 2016
How to Make a Piechart using React and d3
April 15th, 2016
Animating with React, Redux, and d3
March 11th, 2016
Don't Worry; It's a Compiler Bug
December 29th, 2015
There's a "bug" in ES6 modules
November 2nd, 2015
React+Flux can do in just 137 lines what jQuery can do in 10
October 16th, 2015
React components as jQuery plugins
August 7th, 2015
Software Engineering Lessons from Production
Join Swizec's Newsletter and get insightful emails 💌 on mindsets, tactics, and technical skills for your career. Real lessons from building production software. No bullshit.
"Man, love your simple writing! Yours is the only newsletter I open and only blog that I give a fuck to read & scroll till the end. And wow always take away lessons with me. Inspiring! And very relatable. 👌"