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
How to Ignore File Permission Changes in Git (And Avoid Long File Staging Lists)
Have you ever worked on a project and seemingly out of nowhere your entire file list in your git staging history? It’s ugly, it ruins any usefulness your current commit had, and can clog up your overall history pretty fast. For a while, I wasn’t even sure what caused this. Turns out, changing file permissions […]
Read Post
How to Remove Commits in the Middle of a Branch Using Git
Have you ever needed to merge a branch but exclude certain changes that aren’t ready yet? This shouldn’t happen super often, but on bigger projects you’ll probably run into something like this. Luckily with Git, there is always a way. Even if you’re not an advanced Git user, this trick should be fairly straightforward to […]
Read Post
Let’s Learn Laravel Blade: Components (Part 4)
In the last posts, we learned about layouts and partials, but Laravel provides even more functionality. You may ask: why use a component when you can just use partials? In Laravel, components are packed with additional functionality. Components give you separation of concerns, letting you outsource PHP logic to a method outside of your blade […]
Read Post
Let’s Learn Laravel Blade: Layouts and Partials (Part 3)
In the last post, we saw how easy it is to conditionally display markup and use inline logic in blade templates. Conditionals are a very useful tool and you will probably use them often. In this post, we will explore how to reduce repetitive code and help adhere to DRY(don’t repeat yourself) principals. What’s one […]
Read Post
Let’s Learn Laravel Blade: Conditional Statements (Part 2)
In our last post, we learned about Laravel Blade and its capablities. That post only scratched the surface, blade can do so much more! In this post, we’ll dive into conditional statements and rendering. Every good templating engine has simple ways to conditionally show blocks of markup. Blade makes this very easy. If you’re used […]
Read Post
Let’s Learn Laravel Blade: Getting Started
If you’re into PHP development, chances are, you’ve messed with or heard of Laravel. To keep it simple, Laravel is a fantastic PHP framework for making all kinds of web apps. As of this writing, Laravel has been around for 9 years and is still massively popular. It’s not going away anytime soon! Laravel uses […]
Read Post
Let’s Learn SASS & SCSS: Diving Deeper into Mixins & Extends(Part 5)
There are four posts before this one. You can check out part 1(getting up and running, part 2(setting up the build), part 3(nesting and variables), part 4(diving into mixins and extends). Mixins and extends are cool, right? In our last article, we dived into the basics of both and have a good idea of what […]
Read Post
Let’s Learn SASS & SCSS: Extending your knowledge with @extends and @mixins (Part 4)
There are 3 posts before this article, checking them out might provide additional context for this article. You can check out part 1(getting up and running), part 2(setting up a build), and part 3(variables and nesting). Now that we’ve covered all of the SASS basics, it’s time to dive into the more advanced features! There […]
Read Post
Let’s Learn SASS & SCSS: Variables and Nesting (Part 3)
If you’re reading this post, there’s a chance you’ve already stumbled upon part 1(getting started) and part 2(setting up a build). If you haven’t, checking them out gives this post additional context! Now that we’re starting to learn SASS, it’s natural to dive into the functionality that’s easiest to implement out of the gate. Don’t […]
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
Let’s Learn SASS & SCSS: Getting Up And Running (Part 1)
If you’ve been in web development long enough, you’ve probably heard of SASS/SCSS. That’s no surprise, considering it has been around for so long(over 10 years), and it’s included in many popular build systems. Webpack builds such as create-react-app and Vue CLI templates come with easy SASS support. If you’re using your own build system, […]
Read Post
Linux | How To Easily Compress a Video With ffmpeg
Every here and there, you may come across a use case where it’s necessary to reduce a video file by 50-80% without any noticeable loss of quality. Often times it’s for front-end performance reasons, but can also come in handy if a server has an upload limit(50MB on a typical WordPress site for example). There […]
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
Git Amend: How To Edit Your Last Commit
Git’s amend command is so simple, yet so powerful. I personally use it multiple times a day and even have a bash alias for it. Why is amending so useful? The answer is simple: programmers make lots of mistakes. Mistakes are a part of the job. Git amend fixes mistakes as simple as a commit […]
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
Easy Inline SVGs With Sage 9/Blade Templates
Inline SVGs are a lesser known trick for performant assets. Using them in traditional static sites is problematic due to how verbose they are. Inline SVGs can be anywhere from a few lines of code to a hundred! Not the prettiest solution. That is why it’s much better to use a component based approach. Using […]
Read Post
Git Good: Using Cherry-Pick to “Move” Commits
It’s no secret that Git is an essential tool for all kinds of software. Git isn’t terribly hard to pick up, yet has a complex learning curve. The neat thing about the learning curve is the little tricks just waiting to be picked up. Today, I will be going over something that can be massively […]
Read Post
CSS Tip: Using a Nested Link to Fill an Entire Div
Hyperlinks are a big part of every webpage, even if they’re not completely apparent. Typically you’d only have text or maybe wrap a <button> element with a link. Sometimes, a design called for an entire <div> (or any other sectional element) to be a clickable link. A typical example is an entire block with some […]
Read Post
Quick Tip: Creating Custom Post Types without A Plugin in WordPress
If you’re creating a custom theme with even a little bit of complexity, chances are, you need some kind of custom post type. There are a few ways to approach it, some involving plugins. The CPT UI plugin is great for managing more complex post types with an intuitive interface. Though, like anything else in […]
Read Post
Make Internet Explorer Cross Browser Testing Less Painful With SCSS
We’ve all been there. We don’t want to do it, we don’t think we need to do it, but it’s necessary. Unfortunately, Internet Explorer (11) is a necessary evil for most business requirements. Certain businesses even require earlier versions than that. *shudder* Fair warning, this article is only keeping the most recent version(11) in mind. […]
Read Post
Prettify Your CSS: Simple Linting Rules For Readable Code
Every web developer has come across CSS at one point or another. For most, it’s a necessary evil that’s easy to learn, but difficult to master. After some time, you start to get the hang of it and maybe even pick up something like SASS and/or flexbox. One thing you may not realize: your code […]
Read Post
Advancing Your WordPress Workflow: Managing ACF Field Groups The Right Way
If you develop custom WordPress themes, there’s no doubt ACF (pro) is in your toolbox. Simply put, it feels like a natural extension for developing custom themes. If you still haven’t picked up this tool, I’d recommend hopping over to their website and see what you’ve been missing. Out of the box, you get powerful […]
Read Post
Getting Sassy: 3 Useful Ways To Use SASS Mixins
For years now, SASS has given CSS the functionalities that native CSS wish it could. These includes variables, selector nesting, mixins, extends, and much more. One simple but very powerful thing SASS gives you is the ability to outsource a similar set of style rules into a reusable “function”. This lets you centralize style logic […]
Read Post
5 Useful Time-Saving Bash Aliases
Defining bash aliases has always been a neat little trick for saving time on the command line. When learning about aliases, a few ideas may immediately jump out. There are also some you may not have thought about. I hope to uncover at least one of those. In this post, I’ll list 5 of my […]
Read Post
Quick Tip: Use Bash Aliases To Save Time on The Command Line
As a developer, a fair portion of your time is spent on the command line. Certain command are used religiously, so why not save a keystroke or ten? Let’s take a common unix need: updating your packages. When you update, you use something like this: sudo apt update && sudo apt dist-upgrade Wouldn’t it be […]
Read Post
Font Awesome Icons Not Showing: The Ultimate Reference For Fixing Your Icons
Font Awesome is a staple in modern web development. It’s a simple way to add professionally designed icons to spice up your web pages. It’s free, simple to use, and actively maintained by a team of professionals. What’s not to like? The setup is simple: you add a reference to the .css or font file, […]
Read Post
Make Your CSS Life Easier, Learn To Abstract Media Queries With SASS Mixins
Digging into the trenches of responsive design can be surprisingly daunting, especially if you’re new to this kind of thing. The amount of shiny front-end build tools seem overwhelming at first, but they are ultimately here to help you. In this post, we’re looking at a shiny build tool called SASS. It’s actually not that shiny, […]
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.