A line graph showing a dip at a point when jemalloc was introduced to the server.

Upgrading to Rails 7.1, Ruby 3.3, jemalloc and YJIT

Over the holiday break, I decided to be a good boy and keep up with the regular updates to this website. This website uses a Dockerized Ruby on Rails app and is deployed on Render. I had four primary things I wanted to get done:

  1. Upgrade to Rails 7.1 (from Rails 7.0)
  2. Upgrade to Ruby 3.3 (from 3.2.2)
  3. Turn on jemalloc
  4. E...

Lessons from a barbershop

I have been going to the same barber for around seven years now. It's a multi-generational barbershop with views of Lake Washington, where the aroma of coffee and Italian food floats as you walk in. In the summer, you occasionally have to park a few blocks away because they have street vendors that set up shop along th...

Mastodon header

Customize your Mastodon Handle

Let’s say some narcissistic moron buys the social media company you use daily and decides that it would be better off with 100x the Nazis. You decide this isn’t for you, so you find yourself exploring the world of Mastodon.
A bird who is tripping balls in a fiery hellscape.

I'm leaving Twitter

I joined Twitter in December 2008. I was at the beginning of my career and eager to see what the web design and development field was up to. I enjoyed the platform’s brevity and the immediate consumption of information it allowed.

Regex match for spaces outside of HTML tags

:::{info} This turns out to be quite a tricky problem to solve. The solution below is meh. I have since stumbled across a fantastic gem called Truncato that handles these situations beautifully. :::

Let’s say you are truncating a blog post to produce an excerpt for multiple posts in an index view. In Ruby on Rails, we...

How to prepare Rails assets before running tests

I’m currently building a Rails 7 app that was started with rails new myapp --css=bootstrap. This means Rails set up my app to use esbuild to compile all my CSS and JavaScript assets. This new --css flag provided by Rails is a fantastic improvement over previous implementations like Webpacker. Now we can just run bin/de...

How to exclude ID lookup by integer when using FriendlyId

Hello there! Are you at the point in your Ruby on Rails project where you’d like integer-based slugs like /users/2 to be friendlier and look like /users/matt instead? How about /posts/how-to-make-great-tacos instead of /posts/31? There are many reasons you’d want to do something like this, and there’s a great gem calle...

Using Clearance with Rails 7

For some time now, the Ruby on Rails community has anointed Devise as its preferred authentication solution. I’ve repeatedly used Devise, and it’s great. Not all of us have the time or expertise to roll our own auth, so it’s fantastic a solution exists that is widely adopted. It was only natural that I’d reach for Devi...

I cancelled my Hey email accounts

Yesterday I canceled two @heyhey email accounts. It’s really hard to figure out what the two fellas at the top were thinking by implementing their new company policy on political/social discussions. It’s especially bizarre given the outspoken nature of both the founders.

Unfortunately, it’s becoming apparent today tha...

Pleased with WordPress and DreamHost

Disclaimer: I’m not being paid or getting any referral kickbacks from DreamHost. This is just an honest review.

COVID has forced us all to make changes in our lives and I’m no exception. For a year I’d planned to start building my video game in September when our daughter started school. Welp, that’s not happening qu...

About These Posts

Matt Haliski's mug

My blog primarily contains writings about my work on computers, but I occasionally mix in fun life stuff. I am, at best, a mediocre writer, but I like doing my part to give back to the community. Feel free to contact me if you have specific something to chat about. See you around!