Search
JavaScript Proxy
26.2.2019
I’ve always loved the flexibility of Objects and prototypes in JavaScript, but for a long time, I felt that a level of dynamism was lacking. JavaScript eventually added get and set methods for object properties, which was an awesome step, but there was still room for improvement....
The Magic of React-Based Multi-Step Forms
15.2.2019
One way to deal with long, complex forms is to break them up into multiple steps. You know, answer one set of questions, move on to another, then maybe another, and so on and so forth. We often refer to these as multi-step forms (for obvious reasons), but others also take to calling it a “wizard”...
Storing and Using the Last Known Route in Vue
2.1.2019
There are situations where keeping a reference to the last route a user visited can come in handy. For example, let’s say we’re working with a multi-step form and the user proceeds from one step to the next. It would be ideal to have the route of that previous step in hand so we know where the user...
Mercurial: Mass Add and Remove All Files
29.10.2018
While I much prefer git and the GitHub workflow, Firefox’s codebase (mozilla-central) is store in a mercurial repository. There are tools that wrap mercurial so you can use a git-like interface, like git-cinnabar, but my philosophy is to learn the root tool so that I know what’s going...
Creating Apple's Website with Bootstrap 4
8.8.2018
In this step-by-step video lesson we will recreate Apple's iconic home page using Bootstrap 4 from scratch
CSS Grid in IE: Faking an Auto-Placement Grid with Gaps
6.7.2018
This is the third and final part in a three-part series about using CSS grid safely in Internet Explorer 11 (IE11) without going insane.
In Part 1, I covered some of the common misconceptions that people have about IE11’s native CSS grid implementation. In Part 2, I showed the world how easy...
Debugging JavaScript in Google Chrome and Visual Studio Code
19.6.2018
Learning to debug is an essential skill for taking the next step as a developer. It's important to understand and leverage the vast array of tools that exist for a given languge. Unfortunately, deb