Noel Rappin Writes Here

Blogs

Books Recommendation List: 2022

Even by my standards, this one is slow to come out, so I’ll keep the intro brief. As I’ve done for the past few years, I quasi-obsessively rank the books I read, and I write about the top several. It’s 40 again this year, and again, I’m really sorry. As usual, don’t take the rankings seriously, they’re just here for some kind of organization. Book links go to Amazon Kindle pages.

Hi, All, It's a Pickaxe Q&A

I haven’t sent out a newsletter in 2022 – about 10% of people subscribed to this newsletter have never seen an actual newsletter in their mailbox. That seems like it should end, so… hi! I’m Noel. I write books, mostly about Ruby. I write this newsletter, which is normally about Ruby, Rails, Agile, and other topics, and is occasionally (like today) self-promotional. Under normal circumstances this comes out a few times a month.

Books That Made Me Happy: 2021

Welcome. Because of the exact kind of person I am, it’s always bugged me when people put out year’s best lists in early December – the year isn’t over, what if you read or see something on, like, December 29th that changes your whole list. (I realize this is a very silly thing to be bugged by.) I traditionally get around this by putting out my favorite book lists sometime around the Ides of March.

Redundancy, Terseness, and Code

Most human communication, text or written, is wordier and more redundant than it needs to be, strictly speaking. That previous sentence, for example, would still communicate its point in about a third of the words with “Most human communication is too wordy”. You’d likely still get the idea if I used about half the characters and wrote: “hmn comms too wrdy”. There are certainly reasons why you might include words when speaking or writing that are technically not needed:

TypeScript and jsbundling and Rails 7

This is a quick bit of service journalism about one thing that seemed less than obvious about converting the code in Modern Front-End Development For Rails to Rails 7.0, namely how to integrate TypeScript with the new tools. Specifically, the Rails 7.0 version of the code ditches Webpacker in favor of the new jsbundling-rails and cssbundling-rails gems and uses esbuild instead of webpack. See here for an only-slightly out-of-date description of the new tools.

Bell Curves and Developer Teams

Jessica Kerr wrote a very interesting post on bell curves and engineering teams. Jessica’s point is that bell curves are for random distributions, and that when teams share information and learn from each other, they no longer can be modeled by a random distribution. I think this as true, and a valuable insight. It reminded me of a different, related observation about teams and bell curves. Back in the 1980s, when he was applying analytics to baseball teams, Bill James argued that a common feature of the decisions made by poorly performing organizations was the assumption that baseball talent was normally distributed and could be modeled with a bell curve.

Another Refactoring Story: ActiveRecord Lists

I’ve now tried to write this post like three times, and one thing that’s clear to me again is why you don’t see more write-ups of even moderately complicated real-ish problems. It’s hard to get enough of the context across to make the code sensible without being overwhelming. But there’s a Rails and ActiveRecord structure that this example gets to that I think is useful, so I’m going to try again.

More Ruby Magic

Hey, if you like this post, you might like my recent books: “Modern Front-End Development for Rails” (Ebook) (Amazon) and “Modern CSS With Tailwind” (Ebook) (Amazon). If you’ve read and enjoyed either book, I would greatly appreciate your help by giving a rating on Amazon. Thanks! When last I talked about the Elmer project tracker, I was talking about Ruby magic and singing the praises of StringInquirer. I was expecting some pushback on the Ruby Magic™, but didn’t get any, so I threatened to do something really weird, like implementing an API for getting project history with something metaprogrammy and dynamic, like project.

Rails 7 and JavaScript

Or: Rails and JavaScript, Part 5 A quick program note: If you like this newsletter, you might like my recent books: “Modern Front-End Development for Rails” (Ebook) (Amazon) and “Modern CSS With Tailwind” (Ebook) (Amazon). If you’ve already read and enjoyed either book, I would greatly appreciate your help by giving a rating on Amazon. Thanks! If you are really interested in how we got here, I wrote about the history of Rails and JavaScript, read Part 1, Part 2, Part 3, and Part 4.

Refactoring, Part Two: In Defense of Magic

A quick program note: If you like this newsletter, you might like my recent books: “Modern Front-End Development for Rails” (Ebook) (Amazon) and “Modern CSS With Tailwind” (Ebook) (Amazon). If you’ve already read and enjoyed either book, I would greatly appreciate your help by giving a rating on Amazon. Thanks! In my last post, I refactored the status field for cards in my project tracker to a more object-oriented representation that used value objects and classes to replace conditionals throughout the code.



Copyright 2024 Noel Rappin

All opinions and thoughts expressed or shared in this article or post are my own and are independent of and should not be attributed to my current employer, Chime Financial, Inc., or its subsidiaries.