Studio711.com – Ben Martens

Buying Piano Music with AI

I play music for some of our church services, and lately I’ve been playing for about 75% of them. My normal process is to look at the scheduled hymns and then look through all of my piano music to see if I have any arrangements of songs that match the hymns so I can use them for pre and post service music. Every time I buy a new piano book, I put it into a spreadsheet that matches the sheet music tunes to the hymn tunes so I can look them up easily in the future.

Now that I’ve been playing more Sundays, I’ve been looking to fill in some holes in my collection. But which piano book would fill the most holes? Sounds like a good programming problem.

I started by feeding AI the shared spreadsheet that the church worship team uses. I had it analyze all the hymns we’ve used for the last three years and then figure out how often we use them. Then I fed it my spreadsheet of all the music I already have. Then I pointed it to some online shopping sights from my favorite arrangers.

Using all that information, it assigned a point value to each hymn based on how often we’ve sung it in the past year and then filtered out any hymns that I already have covered with some other sheet music. Then it looked through the online catalogs of all the arrangers I like and, in the end, it spit out a list of books I should consider buying and told me who many “points” they would cover in my library.

I ordered the books a few minutes after I saw that report and later it dawned on me that maybe I should have validated the results before spending money based on what AI just told me. But it worked out great! The new books were excellent ways of giving me pre and post service arrangements that match some of our most-used hymns.

If you also play piano and are curious what arrangers I pointed the AI to, here is a list:

There are a lot more that I like but that seemed like a good enough sample size to prove whether this worked and I will probably expand it more in the future if I try to execute this again.

Deception Pass Camping

Every year we try to go camping with Tyla’s family. I’m pretty sure we’ve done it every year since 2008! This year we went to an old favorite: Deception Pass State Park. It’s a very busy place and we had to book right when the reservations opened up 9 months earlier, but this time we stayed on the east side of the park in the Quarry Pond campground. That seemed a bit more laid back and we could still access all the various parts of the park.

Don always brings his trailer and we congregate there for all the meals, but I was able to book a cabin that was right next to their site. When you go camping in June around here, there’s a decent chance that it will be cold and rainy so the cabin is nice to have. Thankfully we had almost perfect weather with temps around 70 and clear skies.

We watched beautiful sunsets every night down at the beach, walked across the bridge, explored the tide pools in the north part of the park, and hiked around the Quarry Pond side of the park. A huge thanks to Don, Logan, and Megan for getting the camper ready for this one weekend trip and then storing it again!

As I was watching the sunset one night, I wondered where it was rising. Stop and think about that for a moment. You’re sitting near Seattle in June watching the sun going down over the Pacific. Where is it rising? The answer surprised me: Paris!

They all left one day before us because of some family stuff, but we enjoyed our time with them and also the time with just the three of us.

Nostalgic Coding

One of my favorite classes in my undergrad studies at Purdue as CS251 – Data Structures and Algorithms. Do I use them every day? Nope. But the fundamentals from that class are a key part of being a successful programmer. For a field of study that is full of text, I remember loving the mental part of this class. I could visualize how all these algorithms were working on a small scale, but then I’d be amazed to see how fast they could run over enormous datasets. It’s still at the root of what fascinates me today. This recent video from Veritasium dives into one of the most discoveries in computer science: Dijkstra’s algorithm. So if you want to know part of what excites me about programming, check this one out.

Car Refrigerator

Until recently, I didn’t even know that 12v refrigerators were a thing that you could buy, but once I found out, I couldn’t stop thinking about how convenient it could be for our road trip. After some research, I settled on the BougeRV CRPRO 30. (For some reason it is much cheaper at Walmart than Amazon.) This particular model is powered by either 12v or 120v and the temperature can be set anywhere from -8F to 50F. Theoretically it has a voltage meter built in so it will shut off if the car battery gets low, but so far I have been unplugging it when we leave the car for very long.

I’ve enjoyed four main benefits over a traditional cooler besides the obvious one of not having to buy ice:

  • Initially, it looks tiny when you compare it to a cooler, but when you realize you don’t have to add ice, it suddenly feels much bigger.
  • I can easily add more cans/bottles to it as you go and they will get cooled off without destroying your ice in the process. (Did you know it takes over half a bag of ice to chill a 12 pack?)
  • One of the last things I would do before a trip is buy ice and pack the cooler. With this, I can just have it sitting on the floor in the kitchen plugged into the wall and I can throw stuff in throughout the week.
  • In a cooler, I have to protect many things from getting wet. With this, I don’t have to mess with all those extra bags.

We used it on our recent camping trip and it was great! It held all the chilled food that we needed and then we restocked it with drinks throughout the weekend. We had it plugged into the truck on the drive to the campground and then we used power at our campsite to keep it cold.

It was definitely a luxury to have it at the campsite, but I think where it will really be useful is on our big road trip coming up later this summer. We almost always pack lunches and snacks to save money and time so instead of buying endless bags of ice, we’ll have an easy way to keep things cool. It’s a little awkward to carry into the hotel and back to the car every night, but I bought a shoulder strap to go with it that will hopefully make it simpler.

Car Repairs

When I had my motorcycle, I bought a set of 9 DVDs that explained a lot of maintenance tasks (including things like valve adjustments!) It was extremely helpful to be able to see the work being done on the exact same motorcycle that I owned.

Fast forward and now pretty much anything you need is on YouTube. I have a playlist of common vehicle things that I need to do, but I was very happy to recently stumble on the TRQ app. You punch in the details about your vehicle and then you get a curated list of videos specifically for your vehicle. It saves time clicking around trying to find the right answer, but of course it helps if you have a common vehicle. My F150 has over 90 videos!

I’m sure there are a lot more apps like this. If you have a favorite, please let me know. Thankfully I haven’t had to do much beyond basic maintenance but I’m sure that time will come.

Confirmation

Elijah was recently confirmed at church. Most people probably don’t know what that means, and those that do probably have differing definitions. My quick explanation of it has been that for the last two years, Elijah has been taking extra classes at church with Pastor and this is his graduation ceremony which is also part of the church service. I think that’s a decent surface level explanation, but I wanted to go a bit deeper here.

First of all, let’s talk about what it is not. Confirmation is not a sacrament, nor is it anything that is commanded in the Bible. It doesn’t save you. You’re not receiving Christ. While it is the point at which you start taking communion, it’s not the same as “first communion” in other churches. You don’t need to do this to get to have faith or get to heaven.

Instead, it’s a church practice where someone (usually towards the end of middle school) publicly affirms their faith. They are acknowledging that they have been taught what the Christian faith is and they are saying they believe that it is true. It’s somewhat similar to a wedding vow renewal ceremony. A wedding vow renewal doesn’t create marriage. The couple was already married, but it is still meaningful and publicly reaffirms what is already true. Somewhat similarly, confirmation does not create salvation. It publicly reaffirms the faith already given by the Holy Spirit through the gospel.

Confirmation class is a structured way to instruct people about what the Bible teaches. Various churches in our national church body handle it slightly differently, but our church does Bible History class in 6th grade, Catechism class in 7th grade, and then life application in 8th grade. The confirmation ceremony happens between 7th and 8th grade. So my quick “graduation” explanation is not at all what we want to happen. Your Christian training lasts your whole life and even the classes continue on next year as they talk about how to apply their faith in their lives.

We were happy that both Tyla’s family and my parents could be there to celebrate along with friends from church. It was a special day in his life, and we pray that it’s just a solid start to his life of faith.

P.S. I’m always happy to talk more about this if you have questions, or you can check out this quick summary of what the Bible teaches: The Great Exchange – WAJ. The rest of that site is great as well.

Unified Theory of Time Management

Whether through some series of life events, personality quirks, or the fact that it has literally been my job for many years, I love efficiency. Or rather, I am deeply troubled by inefficiency. I can’t get rid of inefficiency in others, but I optimize my time to what is probably a bit of an unhealthy level. As I think about how to optimize my optimization efforts, there are two main ways I look at how I spend my time:

  • Am I producing or consuming?
  • Am I serving others or serving myself?

Both questions help me be intentional about how I spend my time. For example, I feel better about myself at the end of the day if I spent most of my time creating something new versus just ingesting what someone else created. And I feel better about myself if I am serving others versus indulging my own wishes.

As I was chewing on this recently, I realized that these two ways of analyzing my time could be complimentary. Imagine a grid like this:

With this model, each box starts to make sense:

  • Producing / Serving Others – This is anything you’re creating where someone else is the primary beneficiary. Examples: Making dinner, planning a family trip, doing yard work, creating a family budget, volunteering on the church council, or practicing piano for playing at church services. This box is where the vast majority of my time goes and I think that’s a good thing.
  • Consuming / Serving Others – This quadrant doesn’t always feel productive in the moment but it can make your service more effective in the future. Examples: Reading a book about team leadership, learning a new technology, or studying the Bible to prepare to teach a Bible class. I don’t think I have a lot of regular tasks that fit in this quadrant.
  • Producing / Serving Self – In this zone, you’re producing something where you are the primary beneficiary. Examples: Woodworking, personal finance planning, or organizing the garage. If I had no responsibilities, this is where I’d love to spend all my time. In reality, this box usually gets squished out by the producing/serving others box.
  • Consuming / Serving Self – While there’s nothing inherently wrong with this quadrant, it’s the “candy”. Left unchecked, this can get out of hand. Examples: Watching TV, playing video games, or taking a nap. I do reserve some time at the end of the day to wind down with TV and reading a book. If I run fast right up until the point I crawl into bed, I don’t get very good sleep.

I think that whether you’re trying to lose weight, break a habit, or optimize your time, writing it all down is a great way to tackle the challenge. Seeing everything listed out at the end of the day or the week can be eye-opening. With something like this that is more subjective, you have to be very honest with yourself because not everything fits nicely into a single quadrant. For example, why am I blogging right now? I’m definitely producing content, but who does it serve? Some of it is recording content for my family to look back on in the future, some of it I think will be useful to others, and a lot of it is just me enjoying writing. Ultimately, if you have to say “well technically” before your answer, you probably already know which quadrant it should fit in.

I don’t think there’s any “right” answer about how your time gets divided among these four quadrants, but I do try to be intentional about it, and I pointedly focus on keeping the bottom right quadrant to the bare minimum. Social media and doom scrolling apps fall squarely in that bottom right quadrant, but that’s a topic for another post.

Homemade Window Washing Solutions

I don’t wash our windows at home often enough, mostly because I’m lazy, but partly because I always end up with streaks. On the outside, I use a window washing soap diluted in a bucket of water and inside I use Windex.

This year I decided to try something different. I searched around for a bit and tried:

  • 3 parts distilled water
  • 1 part isopropyl alcohol
  • 1-2 drops of dish soap

I applied that with a microfiber cloth and then dried the windows with a second. It worked amazingly well! I still haven’t seen any streaks. In fact, it worked so well that I tried it on the car windows and had great success there too. I now keep a spray bottle of it in the Tesla to use at charging stops.

20 Year Workiversary

A little over 20 years ago, I moved out here to start my new job. On the one hand, it’s hard to believe it has been that long, but on the other hand, a LOT has changed in those 20 years.

Let’s take a quick trip back to 2006:

  • Sites like Twitter, OneDrive, and Spotify did not exist.
  • Not many people had heard of Facebook yet. It was only 2 years old and you had to have a college email address to join it.
  • Sites like Digg and Reddit were brand new. Most nerds were getting their news via slashdot.
  • The Blu-Ray and HD-DVD battle hadn’t even started yet.
  • Microsoft stock was hovering around $20 and people wondered if it would ever move again.

I started out at the most junior level of software engineer and I started in the test org. After a few years of that, I become a first level manager and eventually helped ship much of what you now see as the Data tab in Excel and the Power BI editor experience. I then moved to Azure as a dev back when it was clear Azure was becoming a thing but “cloud computer” was still very new. Satya had just made his “mobile-first, cloud-first” quote. Fast forward to today and Azure is one of a very tiny number of hyper-scalers on the planet.

It has been wild to have a front row seat for this transformation that impacts not just the tech industry but pretty much everyone on the planet. It’s exciting to play a tiny role in a product that runs 911 call centers, operates rides at your favorite amusement park, handles huge portions of global banking transactions, serves you endless information from the web, and on and on. As if the cloud computing explosion wasn’t enough, now the demand for AI growth dwarfs anything civilization has seen before.

I’m extremely thankful for this job and the opportunities it has provided!

Olympic Peninsula Road Trip

I don’t know how this started, but our family is trying to visit every county in Washington state. With our impending move next summer, we are trying to finish off the remaining counties soon. I divided them up into two trips, the first of which was an Olympic Peninsula tour. It was about 800 miles so we chopped it up into three days and did it over Memorial Day weekend.

Before we started, I added two doses of nerd to the trip:

  1. I had GitHub Copilot create a nicely formatted HTML page with our itinerary on it and then I shared it with Tyla and Elijah so they could look at it during the trip. It had all our stops on it along with links to menus at restaurants. It also included the nice header image that you see in this post.
  2. I used GitHub Copilot to build an app that lets me generate custom podcast. First it asks me how long I want the podcast to be. Then it researches a bunch of material about the topic and generates a two-speaker script. Then it renders that script into audio using my Azure subscription. Finally, it generates a podcast XML feed and uploads it all to my webserver. That gives us custom podcasts based on specific things that we’re going to see on our trip. It’s not as good as real humans but it’s fun to learn more about specific things we’re seeing.

Saturday

On Saturday, we left early to get in line for the Edmonds to Kingston ferry. We knew it would be very busy (and it was) but we got on comfortably to our target sailing. It’s a pretty quick ride across the Sound and then we made our way west to US 101. Our first stop was Forks, WA for lunch, but since we were doing good on time, I lengthened the trip a bit by taking SR 112 which follows much closer to the water. That road was wild! It had clearly been washed out in many different places and hastily repaired. The speed limit was slow but going any faster would probably destroy your vehicle anyway.

We ended up in Forks for lunch and I was happy to see that a lot of the Twilight-themed stuff had disappeared. There was still plenty of vampire tourism going on though. We charged the car and had lunch ate at the Longhouse Cafe. It’s an authentic Native American restaurant and everything they serve comes with or on Indian frybread. Delicious!

After that we continued on to our stop at the Hoh Rainforest Visitor Center in Olympic National Park. This is where we hit my big mistake in the itinerary. Visiting a national park on Memorial Day weekend? Duh. Huge line. We waited close to two hours to get through the entrance station, but thankfully we were in the Tesla so we weren’t stopping and starting our cars every few minutes like everyone else in line. We stamped Elijah’s National Park passport book at the Visitor Center and the rangers were very impressed with our idea to put a family photo next to each stamp. We hiked a few short trails but we didn’t stay long. Olympic National Park is a tough one to visit. It’s beautiful but it’s a huge area and each entrance is very far apart. So even though we’ve been to multiple parts of it, they’ve all been for short visits where we just see glimpses of the overall park.

From there we continued our trek down to Aberdeen, WA for our first hotel stay and we had dinner at Billy’s Bar & Grill which was also a winner.

Sunday

On Sunday, our first stop was the Historic Grays River Covered Bridge. It was built in the early 1900s and you can still drive your car across it today. I’ve never seen a covered bridge before so I was glad that there was basically no one around and we could spend our time looking at it.

From there we headed to Hood River by way of Jimmy John’s for lunch. For this stretch, we hopped back on the interstate and drove through Oregon. At Hood River we stopped for a round of disc golf and then had ice cream while watching the wind surfers. Then we took the toll bridge across the Columbia back into Washington to collect a few more counties on our way to Yakima.

We had perfect weather both Saturday and Sunday which gave us great views!

Monday

Our last day of the trip was just a ~2.5 hour drive back home, but since it was the Monday of Memorial Day weekend, we didn’t want to delay our start. We shot through Snoqualmie Pass before it clogged up and we were back home before lunch.

Summary

All in all it was just under 800 miles. A silly road trip like this would have been harder to justify at $6/gallon for gas, but the whole trip only cost us $87 in electricity. We stayed both nights in Best Western Plus’s (as usual) and got some discounts there from the rewards we’ve built up. Eating out was a big slice of the total cost and we could have cut that down by packing lunches like normal, but part of the fun was the food along the way.

Now we have one more trip planned to hit the remaining counties in southeast Washington.