Gnarly Learnings from April

Engineering Insights

Kevin Murphy
#
Min Read
Published On
March 13, 2025
Updated On
March 17, 2025
Gnarly Learnings from April

We love reading, watching, and listening to constantly update our skills and learn new perspectives. Here are some of the exciting pieces we learned from this month.

How to Build a Web App with and without Rails Libraries

There's a lot we take for granted when writing an application using Rails. Revisit some of these core principles for building a web application in this detailed explainer.

Use console.log() like a pro

Turns out that your browser's console is a lot more flexible than it might appear at first blush. When debugging your code, you can make your output easily browsable with timers, memory tracking, and deep object introspection. Much more convenient than console.log("Here!") all over the place.

Using the Switch(true) Pattern in JavaScript

By leveraging a switch statement checking against the boolean true, we can avoid the trap of noisy endless ifs and make our various states more readable.

Rails 6.1 adds delegated_type to ActiveRecord

A delegated_type provides a new option to model shared data and behavior. It particularly excel over Single Table Inheritance in situations where the different child models may have many different model-specific attributes. In Single Table Inheritance, this would mean a lot of columns in our database that are only used for one of the children - and null for everything else. Not so with delegated_type!

Using Hotwire Turbo in Rails with legacy JavaScript

With so many examples of Hotwire showing how to use it with a shiny new application, you might be wondering if you can still use it in your well-worn, mature application. This article shows a strategy for selectively using Hotwire functionality while maintaining your existing functionality.

Maximize your mentorship: establish, absorb, and connect

Set the stage with your mentor by providing clear expectations, knowing what questions to ask, and following through on action items. This article (and its companion referenced at the end) can also be helpful for mentors in establishing their relationship with mentees.

Argument Cultures and Unregulated Aggression

This is a great reminder of checking what behaviors and culture you're cultivating in your team and organization - whether you know it or not.

What happens when...

There are more times than I care to admit where I contemplate how changes I'm making even work - or how code ever worked to begin with. But...how do computers work? This repo goes into explicit detail of what's involved to attempt to reach google.com from your browser.

How does the brain interpret computer languages?

This is your brain. This is code. This is your brain on code.

Contributors

Written by
Kevin Murphy
, The Gnar Company

Related Insights

See All Articles
Engineering Insights
Why Your AI Coding Agent Keeps Making Bad Decisions (And How to Fix It)

Why Your AI Coding Agent Keeps Making Bad Decisions (And How to Fix It)

AI coding agents making bad decisions? The frustration comes from two fixable problems: assumptions and code quality. Here's how to get consistently good results.
Product Insights
From Dashboards to Decisions: Why Traditional BI Can't Keep Up

From Dashboards to Decisions: Why Traditional BI Can't Keep Up

Stop waiting days for dashboards. Learn how BI2AI uses LLMs and RAG to eliminate the analyst bottleneck and turn complex data into instant executive decisions.
Product Insights
Are Your Legacy Systems Bleeding You Money?

Are Your Legacy Systems Bleeding You Money?

Technical debt now accounts for 40% of IT balance sheets, with companies paying a 10-20% surcharge on every new initiative just to work around existing problems. Meanwhile, organizations with high technical debt deliver new features 25-50% slower than competitors. Features on your six-month roadmap? They're shipping them in three weeks.
Previous
Next
See All Articles