Kane Jamison
banner
kanejamison.com
Kane Jamison
@kanejamison.com
Building @contentharmony.com for content marketing & SEO teams. Enjoying Rails & Tailwind.

🌎 Based in Anacortes, WA
👋 kanejamison.com
📝 contentharmony.com
*️⃣ fixture.media
📈 railsgrowth.com
Reposted by Kane Jamison
🪩⚠️ Alert: @sfruby.com is in 10 days ! ! !

What's inside:
💎 two dozen new and hot Ruby startups like @bolt.new
💎 authors of RubyLLM, Herb, Active Agent, Inertia Rails, ZJIT, and more
💎engineers scaling Ruby and Rails at Chime, Cisco, Intercom, Shopify
💎afterparty by GitButler 🪩
(see part 2)
November 9, 2025 at 6:40 AM
Reposted by Kane Jamison
Hey, if you're going to SF Ruby, you should come biking with me and @kanejamison.com (he's hosting) on Day 3!
luma.com/n1reh5hj
SF Ruby 2025 Golden Gate Bridge Bike Tour · Luma
Welcome SF Rubyists! What: We'll be signing up as a group for the 10am Guided Tour with Blazing Saddles. The tour departs a few blocks from the conference…
luma.com
November 7, 2025 at 9:36 PM
Started working on my first Ruby gem this weekend.

It is probably overly ambitious and is absolutely stretching my programming skills, but I need a re-usable CMS pattern for setting up content collections consistently across different websites that is editor/front-end agnostic.
November 10, 2025 at 1:42 AM
Reposted by Kane Jamison
websites in 2025
November 8, 2025 at 10:05 PM
Ruby & Rails folks going to @sfruby.com:

On Friday I'm organizing a Golden Gate Bike Tour + Alcatraz Ferry Ride from ~9:30am to 1pm:

Registration at luma.com/n1reh5hj
SF Ruby 2025 Golden Gate Bridge Bike Tour · Luma
Welcome SF Rubyists! What: We'll be signing up as a group for the 10am Guided Tour with Blazing Saddles. The tour departs a few blocks from the conference…
luma.com
November 7, 2025 at 9:35 PM
Me getting an email from Dependabot that a dependency just jumped from version 9 to version 43.
November 4, 2025 at 4:45 AM
Reposted by Kane Jamison
We often hear that folks want "wrap detection" in CSS (i.e. when a flex item shifts into a position where it wraps over to the next line)

What is a real-world example of a use-case you would need this for?
November 3, 2025 at 7:43 PM
I sort of understand why Ruby Gem authors set an upper bound on a dependency in a gemspec... "hey I have only tested this up to Rails 8.0, not promising it works with 8.1"

But my immediate reaction is to fork / remove the gem if it's going to be extra drag weight on keeping my app up to date.
October 22, 2025 at 4:31 PM
Reposted by Kane Jamison
How would you build this kind of UI element in a modern Rails app?
October 19, 2025 at 6:48 PM
@andrewaskins.com welcome back!
October 16, 2025 at 9:26 PM
Just caught Claude Code making up a fake @tailwindcss.com class, but in Claude's defense, this would be an awesome class to have =)
October 14, 2025 at 5:20 PM
I got Herb working in CI last night.

The new Herb Linter flagged many more 'offenses' (214) than the `herb analyze .` command (14 files). Feel more like Standardrb.

I had Claude parse the entire lint output and file it into Github Issues to address in separate PRs.

Amazing work @marcoroth.dev 🙏
October 12, 2025 at 5:25 PM
Reposted by Kane Jamison
So I was doing a practice coding assessment today and there is a "Practice Interview with AI" option. So I gave it a shot, and had a good code solution in 10 minutes (out of 60) and then had a test failure due to timeout.

Good so far...
September 30, 2025 at 3:08 AM
So I was doing a practice coding assessment today and there is a "Practice Interview with AI" option. So I gave it a shot, and had a good code solution in 10 minutes (out of 60) and then had a test failure due to timeout.

Good so far...
September 30, 2025 at 3:08 AM
Am I crazy or is ZipRecruiter an elaborate scheme to hire people to work at ZipRecruiter?
September 26, 2025 at 9:09 PM
Reposted by Kane Jamison
The way to understand the importance of cancelling Disney+ is that it is an opportunity not just to exert power, but to pop the Twitter bubble execs have lived in for the past half decade, and show them their insular information environment has put their bottom line at risk.
currently at record-high search interest for canceling disney plus. pulling kimmel is a bigger deal to the company's bottom line than any of the "woke" scandals of the past 5 years. i think news & entertainment corp execs need put more work into understanding their audience, & get off twitter
September 20, 2025 at 5:49 PM
Fascinating to see the differences in engineering hiring processes right now.

I'm seeing teams that are asking their engineers to use AI in the role description but simultaneously trying to pretend AI doesn't exist during the interview and coding assessment.
September 18, 2025 at 6:17 PM
Reposted by Kane Jamison
person with their hand on the ”POUR MICROPLASTICS DIRECTLY INTO THE RESERVOIR“ lever is shocked, SHOCKED at what’s happened to all the drinking water
September 9, 2025 at 12:38 AM
Reposted by Kane Jamison
Hey Rails friends. I'm trying an experiment.

Can you help me send this out to our industry friends?

"A week of Hotwire Office Hours, so you can finally tweak your Hotwire-based app."
Part group training, part accountability, part hangout with friends.

Details soon👇
hotwiresupport.pascal.works
Index
A week of office hours to advance on the Hotwire part of your app
hotwiresupport.pascal.works
September 3, 2025 at 1:50 PM
Reposted by Kane Jamison
I dare you to guess where this video ends. Truly spectacular.
September 3, 2025 at 12:23 AM
We're approaching 400 Rails database migrations in @contentharmony.com which is a little unwieldy in my editor sidebar.

So I wrote a variation of @geetfun.com's database migration rake task that archives database migrations by year.

Simon's version is at codewithrails.com/clean-up-db-...
Cleaning up old Ruby on Rails DB migrations
Did you know that your old DB migrations can cause problems later on? Learn why it’s important to remove old migration files and how to do it efficiently.
codewithrails.com
August 26, 2025 at 6:30 PM
Interesting pricing quirk on AI costs... if you have a medium length prompt, eg 400 tokens, it's more cost effective to add more boilerplate guidance to the model to qualify for cached inputs, which are eligible for prompts over 1024 tokens.

1200 cached input tokens is cheaper than 400 uncached.
August 22, 2025 at 1:15 AM
This is an identical prompt getting sent to gpt-4.1-nano and gpt-5-nano. Based upon the -nano designation you might expect similar behavior.

5-nano is actually *half* the price on input tokens & same price on output, so it's surely a better deal, right?

But the output behavior is way different:
August 20, 2025 at 9:07 PM
Reposted by Kane Jamison
Things I've learned the hard way about web development:

* automated testing is always worth it in the long-run
* limit your dependencies where possible, and keep up with dependency upgrades
* don't write code in anticipation of future needs
* integrate code changes often, no long feature branches
August 19, 2025 at 1:47 PM
Everybody makes a fuss about refried beans but man, refried potatoes is where it’s at.

Chopping up leftover French fries and refrying them for a breakfast bowl?

So awesome.
August 14, 2025 at 4:25 PM