Oh hey, my name is Levi.

A small, but significant gesture

My friend text me a link the other day to some music they thought I should check out. We like a few of the same bands, but I really have no idea what all types of music they like.

Turns out the link they sent was pretty good stuff. Not necessarily something I would seek out, but I ended up listening to most of the record. It's definitely something I'd put on in the background while I'm cooking dinner.

I've been trying to do my best to at least try and listen, read, or watch when someone in my life sends me a link to something they like or found interesting. It's a tiny gesture, but it means they thought about me and they took time out of their day to commit to a potential conversation. If I stop and think about it, that's really cool and makes me feel good.


Twenty-five more years

I Gave my old bass a makeover today—a quick list of what I upgraded. New pickup (Seymour Duncan Quarter Pound), Fender Hight Mass bridge, new pickguard, chrome knobs, strap buttons

I bought this guitar in 1997 with a few paychecks from my first real job at Taco Bell in high school. I put a lot of miles on this thing in basements/garages/VFWs/coffee shops/bars over the years. It still rips.

Twenty five years ago Musician's Friend didn't have a website. It was a printed catalog made of paper with pictures, specs, and prices of gear that came to your house once a month. I gave my Mom the cash and then called a real person on the phone to use her credit card to place my order.


Wrap element snippet

I've found myself needing to do this on a couple of projects lately so it seemed like a good idea to write it down here as a snippet to reference later.

This sort of a vanilla replacement for jQuery's .wrap() method

/**
 * Helper function to wrap one element with a new element
 *
 * @param {String} wrapWith - the name the element to create as the wrapper
 * @param {Element} toWrap - The existing element to wrap
 * @param {Object} attributes - An object of key value pairs used to create HTML attributes
 */
function wrap(wrapWith, toWrap, attributes) {
  const wrapperElement = document.createElement(wrapWith);
  if (attributes) {
    for (let attr in attributes) {
      wrapperElement.setAttribute(attr, attributes[attr])
    }
  }
  toWrap.parentNode.insertBefore(wrapperElement, toWrap)
  wrapperElement.appendChild(toWrap)
}