Getting to Know JS: slice vs splice
If you’ve been coding in JavaScript for some time now, you’ve likely run into both slice and splice. Do you know the differences? Do you know when to use one over the other? They both seemingly do the same thing, but there are some key differences between the two. Let’s take a deeper dive into […]
Read Post
Getting to Know JS: Destructuring Objects and Arrays
One very handy feature that JavaScript added was destructuring. You may have heard of it and perhaps even used it. Did you know you can destructure a nested object? Did you know you can probably do a lot more with it than you think? In this post I want to explore the possibilities of this […]
Read Post
Getting To Know JS: let, const and var
JavaScript has gone through numerous iterations over the past few years, and it only gets better and better. For the longest time, JavaScript only had var as an option for declaring a variable. var had numerous issues that I won’t get into at the moment, but something had to be done. ES6 brought the advent […]
Read Post
Vue 3: Making An Input Component with v-model Support
Vue.js is a powerful JavaScript library that makes creating complex web apps more straightforward than ever. Out of the box, Vue.js gives you most of the tools you need to get going. However, something that seems simple can cause some tricky behavior. One common example I’ve seen is having a component with an input interact […]
Read Post
Using debounce in Vue.js templates
If you’ve ever used something like lodash, you may have heard of the debounce function. Debounce is useful for limiting the amount of calls a function makes in a set time frame(in milliseconds). For example, if you want to call a function once per second as a user is typing in a search box, debounce […]
Read Post
Let’s Learn SASS & SCSS: Setting Up The Build (Part 2)
If you’re here, you’ve probably already gone through part 1 of the series. In that post, we covered why SASS is so great and the basics of what it does. This post will be all about getting set up with a basic build process so we can actually start using it on projects. Unfortunately, SCSS […]
Read Post
How To Interact With Iframes Using Cypress.io
Cypress.io is great for testing the front end of your app’s UI, but at the time of this post, it lacks a few fundamental features. One important feature is handling file uploads natively, but there is a workaround for that. Another popular use case I came across is testing and interacting with iframes. Testing iframes […]
Read Post
Testing File Uploads With Cypress.io
Cypress is an end-to-end testing framework designed to provide coverage for front-end UIs. Learning how to automate tests has its learning curve, but the benefits grow with your application’s complexity. I was tasked to test a process that involves uploading multiple types of files. In particular, application/pdf and image/* mime-type files. Doing this with Cypress […]
Read Post
WordPress: How To Create a Custom Admin Button with ACF
There comes a time in a WordPress theme’s life where custom PHP is needed. This can be a packaged plugin that’s used across multiple client sites, or a single theme. There are several ways to approach a custom admin button. A common approach is invoking a JavaScript function on click, then using AJAX to send […]
Read Post
Learning Programming Fundamentals the FUN Way, In Any Language
What timeless advice welcomes fresh programmers? Yes, you guessed it. Fundamentals. Learn how to code in pure JavaScript before learning a framework like Vue.js. Whatever your stack may be, the advice remains rock solid. Learn fundamentals first before diving into the exciting, fancy world of web frameworks. There’s just one problem with this advice, especially […]
Read Post
[Tutorial] Implement Parenthesis Multiplication Using JavaScript & Regex
When learning a new programming language, a calculator is a great way to flex your ability. Going the extra mile and tacking on extra features proves to be an even more valuable experience. In this article, I will show you how to implement a neat feature: the ability to multiply without an * operator.