Noel Rappin Writes Here

Most Recent Books

 logo

Programming Ruby 3.3

The Pragmatic Programmers' Guide

Ruby is one of the most important programming languages in use for web development. It powers the Rails framework, which is the backing of some of the most important sites on the web. The Pickaxe Book, named for the tool on the cover, is the definitive reference on Ruby, a highly-regarded, fully object-oriented programming language. This updated edition is a comprehensive reference on the language itself, with a tutorial on the most important features of Ruby—including pattern matching and Ractors—and describes the language through Ruby 3.3.

 logo

Modern Front-End Development for Rails, Second Edition

Hotwire, Stimulus, Turbo, and React

Improve the user experience for your Rails app with rich, engaging client-side interactions. Learn to use the Rails 7 tools and simplify the complex JavaScript ecosystem. It’s easier than ever to build user interactions with Hotwire, Turbo, and Stimulus. You can add great front-end flair without much extra complication. Use React to build a more complex set of client-side features. Structure your code for different levels of client-side needs with these powerful options. Add to your toolkit today!

 logo

Modern CSS with Tailwind, Second Edition

Flexible Styling without the Fuss

Tailwind CSS is an exciting new CSS framework that allows you to design your site by composing simple utility classes to create complex effects. With Tailwind, you can style your text, move your items on the page, design complex page layouts, and adapt your design for devices from a phone to a wide-screen monitor. This new edition of the book covers Tailwind 3.0, which changes the way Tailwind generates its CSS and has a large number of new features powered by the new system.

 logo

Rails 5 Test Prescriptions

Build a Healthy Codebase

Does your Rails code suffer from bloat, brittleness, or inaccuracy? Cure these problems with the regular application of test-driven development. You’ll use Rails 5.1, Minitest 5, and RSpec 3.7, as well as popular testing libraries such as factory_bot and Cucumber. Updates include Rails 5.1 system tests and Webpack integration. Do what the doctor ordered to make your applications feel all better. Side effects may include better code, fewer bugs, and happier developers.

Most Recent Blog Posts

Better Know A Ruby Thing #4: Keyword Arguments

Last time on Better Know A Ruby Thing, we covered positional arguments, and now we’re going to move on to keyword arguments. I really did think this was going to be shorter than the last one, and then I got to the conversion between keyword and positional arguments, and then… well, it’s not shorter. (I know I said the next newsletter was going to be Conway’s Law, that’s coming, but this one moved along faster…)

Better Know A Ruby Thing #3: Positional Arguments

Ruby has three ways to pass information from a method call to a method definition: positional arguments, keyword arguments, and block arguments. Each of these ways has: A syntax to declare an argument of that type in a method definition A syntax to declare an argument of that type in a method call A class that can can be used to convert arbitrary objects into and out of method calls A text marker that is associated with that kind of argument, *, **, or &.

The Pickaxe is out and I am Happy

I am extremely excited to say that Programming Ruby 3.3, also known as The Pickaxe Book, is now done done, finished, completely available as an ebook, and winding its way to distributors to ship to people as a genuine physical book. The PDF and ePub versions of the book are available at Pragmatic’s website. The print book should be available wherever you get print books, including Amazon and Bookshop. I’ve talked in the past about what’s in the book, what’s new, and whether you should buy it.

How To Manage Duplicate Test Setup, or Can I Interest You In Weird RSpec?

You have a series of test cases. They cover the same logic with different inputs. In order to get to that logic, there’s some overhead: objects have to be created first. Then there’s more logic needed to evaluate the result. What’s the best way to manage these tests? You want it to be easy to add new tests. You also want it to be clear what part of the test is different in each round and what part is just the common logistics.
Mastodon

Tech Done Right

Most Recent Videos

RailsConf logo

RailsConf 2023

Rails on Ruby: How Ruby Makes Rails Great

April 2023
RubyConf logo

RubyConf 2022

In Defense of Ruby Metaprogramming

November 2022
RailsConf logo

RailsConf 2021

Hotwire: HTML over the Wire

May 2021



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.