More Posts
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
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
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
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
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 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
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
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
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
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 […]