The Procedure/Function Block Convention in Ruby
Ruby lets you enclose blocks in either {...} or do...end delimiters. Which you choose is a matter of style. There are two conventions that I know of for deciding which form to use. The one I see...
View ArticleRubyTapas Freebie: Blocks, Procs, & Lambdas
It’s been way too long since I posted a Monday freebie. Today’s little video tries to answer a question I hear pretty often: what’s the difference between blocks, procs, and lambdas—and which one...
View ArticleWhy does Ruby have blocks?
Ruby’s blocks are easily the biggest hurdle most newbies to the language have to overcome. Even for people with years of experience in other languages, the the concept of blocks is often an elusive one...
View ArticleRubyTapas Freebie: Blocks, Procs, & Lambdas
It’s been way too long since I posted a Monday freebie. Today’s little video tries to answer a question I hear pretty often: what’s the difference between blocks, procs, and lambdas—and which one...
View ArticleWhy does Ruby have blocks?
Ruby’s blocks are easily the biggest hurdle most newbies to the language have to overcome. Even for people with years of experience in other languages, the the concept of blocks is often an elusive one...
View ArticleRuby Singleton Objects
Here’s another freebie from the deep RubyTapas stacks. This one is about a truth of object modeling that we don’t often talk about: not every object needs to have state. If an object has no state,...
View ArticleControlling superclass argument pass-through in Ruby
In Ruby class-based programming, superclass versions of subclass methods are always invoked explicitly using the super keyword. There are some nuances to using super though, particularly when it comes...
View ArticleRe-Use SSH Config Inside Docker Containers with WSL2
Docker and WSL have been getting more and more chummy lately. The Docker Desktop WSL2 backend integrates Docker containers with the “official” integrated Windows/Linux ecosystem (boy that still feels...
View ArticleThat’s So Fetch
It’s time for another dip into the RubyTapas archives! In this third and last episode on Ruby’s #fetch family of methods, now free to all, we get into some advanced #fetch usage. Including: deep...
View ArticleSIGAVDI #89: Apple Pie Funnel Cake Edition
Hello friends, There’s a shiny red convertible in my garage. Some mornings I look out the window and it’s sunny and bright and I think, what a perfect day to go for a drive. Then I discover that since...
View ArticleSafely Call Superclass Methods from Ruby Modules
In today’s RubyTapas throwback, we tackle a metaprogramming topic. How do you reliably call superclass methods from included modules… when you can’t know for sure if those methods exist, or if they...
View ArticleWhy you shouldn’t inherit from Ruby’s core classes (and what to do instead)
Sooner or later you’ll want to subclass Ruby’s String, Array, or Hash. In this now-free RubyTapas video, you’ll learn why that’s a bad idea… and what to do instead. Director’s commentary: This was...
View ArticleSIGAVDI #90: Chicken soup edition
Hello friends, I’m back in Tennessee, having recently weathered a (gorgeous) mountain snowfall and a (less gorgeous) fever over Christmas. In my client work I’ve been working a lot on Rails test...
View ArticleSIGAVDI #91: Sweet Potato Pie Edition
Hello friends, What’s this? Two SIGAVDIs in two weeks??? OK yes I admit it, I’m using this to procrastinate on my email. Schnappi, my self-appointed “pet”, has been growing bolder. Does anyone know...
View ArticleSIGAVDI #92: Breakfast Smoothie Edition
Hello friends, It’s been a hectic couple of weeks. I’ve been doing a lot of RSpec test suite maintenance. I have lots of Big Opinions about how to do spec suites well, but the truth is the combination...
View ArticleThere’s Always Money in the Banana Stand
In the TV show Arrested Development, character George Bluth Sr. repeatedly reassures his son Michael, that no matter what other dire financial mishaps are occurring to the comically mis-managed family...
View ArticleA Pattern Language of Banana Stands: Your Mailing List
So I’m doing this series of posts on the various parts that go into a “banana stand” business. And I’m going to tackle them like software design patterns, because I’m a nerd like that. Starting with…...
View ArticleA Pattern Language of Banana Stands: Your Newsletter
OK so hopefully I’ve convinced you of the paramount importance of your mailing list. But where to start? (If you’re lost, see There’s Always Money in the Banana Stand for an intro to this series)...
View ArticleThe Tote Bag Economy
The Banana Stand businesses I’ve been writing about are digital content businesses. Today I thought we could talk about the economics of selling lumps of data. One upon a time, selling information was...
View ArticleOn Piracy
At some point in your Banana Stand’s lifetime you will become aware that people are consuming your content without paying you for it. Either someone will send you an email that’s like “hey, I think I...
View Article
More Pages to Explore .....