I know a lot of people probably think that as a somewhat well-known (in certain circles) globe-trotting programmer guy, I'm no doubt sitting quite comfortably. And it's true that I'm not poor. And I'm not in imminent danger of having my family tossed out on the streets. This isn't a call for charity. But if you've ever thought “gee, I should really sign up for RubyTapas one of these days, I'll bet I'd learn a lot”, now would be a great time to do it.
Avdi, maybe fewer people are subscribing because your videos suck! Yeah, that's a possibility I have to consider. But if anything, the feedback I'm getting says that my latest content has been some of the best ever. And when people tell me why they unsubscribe, the majority say it's only because they've moved on to work in languages other than Ruby.
So, I think the downturn partly reflects trends in the industry. But it also reflects the fact that I have done a really poor job of marketing.
Case in point, here's a common conversation I have at conferences: “Hey Avdi, great to finally meet you in person! So what do you do these days? Are you still consulting, or…”
After doing RubyTapas as a full-time job for around three years, there are a lot of people who know who I am, but don't know what I do for a living.
I'm working on fixing this PR problem. But that takes time. And time-wise, I don't have a lot of leeway to work with. At the same time my income has been going down, our expenses have been going up. Right now my income fully supports six people and partially supports three more.
I don't want to bore you with the details, but just as an example, last year we spent over $18,000 on health insurance premiums alone. That's not counting thousands more in doctor's bills and prescriptions. As a very-small-business-owner I'm stuck with Tennessee's failing ACA healthcare exchange, which basically means our healthcare costs go up by at least 10% every year while our coverage drops by at least the same amount.
We also recently bought our first house. It's nice to finally have more than one bathroom to share between eight people, but of course home-ownership comes with a whole raft of new expenses.
Finally, expenses are also up because I've started to delegate more of my work to others. Ultimately this means I'll have the time to do stuff like finish my next book. But right now I'm in the priming-the-pump phase where outlay is up but income hasn't yet risen to match it.
Now, it's probably true I could take a salaried job at a big company and at least not have worry about the healthcare expenses so much.
But I don't want to do that. I want to keep making videos. I want to keep blogging whenever I feel like it. I want to keep writing and self-publishing books. I want to keep giving talks that take months to research. I want to keep releasing open-source libraries. I'd like to get back into doing open-source pairing sessions.
I want to continue to have the time and freedom to dig deeply into a programming topic, grok it, and then explain it to other people. I like doing this. A lot of people seem to think I do a good job of it. And it's only the freedom and flexibility of self-employment that has made this possible.
And to do all that, I need your help.
Here are some reasons why you should subscribe to RubyTapas, if you don't already:
- Because it will make you better at programming Ruby.
- Because it will make you better at programming, period. I have subscribers who don't even do Ruby for a living, but who still love it.
- Because it covers topics like object-oriented modeling, testing, refactoring, patterns beyond the “gang of four”, and advice on how to think about software designs.
- Because I work very, very hard to make sure that the episodes are tight, fast, crystal clear, and laser-focused on helping you learn one new thing in the space of a coffee break.
- Because in case you don't like watching videos, I provide the scripts and source code as well!
- Because you'll get two new episodes a week, every week!
- Because it features great guest episodes from people like James Edward Gray II, Tom Stuart, Noel Rappin, Peter Cooper, and more!
- Because a lot of people agree that it's really good:
@rubytapas blew my mind with awesome screencasts!!
— Saurabh Purnaye (@saurabhp) July 1, 2015
— Rahil Sondhi (@rahilsondhi) June 25, 2015
@avdi Can verify, subscribed and then became more awesome at Ruby
— Dave Shaffer 🌹 (@flanger001) June 10, 2015
— Jack (@JackAWatt) February 18, 2016
I can't recommend enough @rubytapas episode #401 "Whole Value". Definitely a must watch along with #400 "Primitive Obsession"
— Wojtek Mach (@wojtekmach) April 14, 2016
— Jordan Bach (@jbgo) February 23, 2016
i'm annoyed about some things. i'm neutral on others. @rubytapas consistently brings me joy.
— wam (@xfreepizzax) February 8, 2016
The User @rubytapas episode might be one of my favourite yet. So dense with useful, actionable insights.
— ★★★★☆ (@dissimile) October 7, 2015
@avdi The “Notify, don’t tell” episode was very thought provoking. Am now forced to look differently at my own recent code.
— Adam Lett (@KaptajnKold) August 15, 2015
Today's @rubytapas on Differentiation is excellent, and applicable outside of software development: problem solving, social constructs
— Feminiraptor (@maryloulenhart) July 23, 2015
So yeah. RubyTapas. It's pretty good! At least, I think it is. And subscribing helps me keep doing what I do. For those who do subscribe: thank you so much. If you like it, tell your friends!
Are you part of a team that works on Ruby code? Yes, we offer RubyTapas team plans! Just get in touch and we'll hook you up.
I also write books. You can see some of them on the sidebar of this site.
The book I'm most proud of is Confident Ruby. Here are some reasons you should buy Confident Ruby, if you haven't already:
- Because I did my best to distill a decade of Ruby experience into it.
- Because to my knowledge, it's still the only Ruby book focused exclusively on how to think about structuring individual methods to be readable, maintainable, and robust.
- Because it has a foreword by Sandi Metz, author of Practical Object Oriented Design in Ruby!
- Because it will finally answer your nagging questions about why Ruby has to_i vs. to_int vs. Kernel#Integer() , and when to use which one!
- Because you'll be able to follow along with The Ruby Book Club as they work their way through it!
Convinced yet? Buy it today!
Once again, thank you to everyone who has helped me do what I do over the years. Thank you for your belief, support, and encouragement. I'm not exactly sure what my proper job description is anymore, but I'm grateful to have it, I'm going to strive to continue to be accessible, and as I said recently, I'm going to keep trying to do even better.
P.S. as thanks for reading all that, here's a picture of some wild orchids.