Cute wolf Mabel, who caused quite a Ruckus, courtesy David Beazley


I had started this series, to catalogue my journey learning Rust whilst doing David Beazley’s, Ruckus course.
And just like that, it’s over! 😂 The course is done, and I am already missing Dave and my fellow journey folk, Rodica, Yadu, Marko, Upul, Gabriela, and Eugene!
I never thought the end would be so bittersweet.

Worth it financially?

Yes! Oh, dear God, yes!
To begin with, I never thought that Dave’s courses were expensive. Yes, they cost money, but he’s given so much away for free, that I was willing to save up and put my money where my mouth was.
I also think, I’ve figured out Dave’s schtick with the idea of what he teaches.
Take something, something hard, (Write a compiler? Figure out distributed consensus in networked systems? The big ideas and paradigms in computing?); something that would take an average Joe 4-6 months (or a college semester) to learn, and then compress it down to anything from a couple of days to a work week. Compress the time that is … not the knowledge.
Having that much knowledge dowloaded into your head in that short a time frame, is what (to use a Dave-ism) makes your brain explode.
And now having actually done it, I’m now swinging around to the the price is just right or “He actually undercharges a bit” camp.
This is bloody addicting. I’m just going to save up and do them all as and when I can over time. Like Neo answering Tank’s, “How about some more?”, with a Hell yes!


Worth it for the knowledge I gained?

Have I already said, Oh, dear God, Yes?! Doubly so, here!
Learning it myself, I realised that Rust had paradigms, teasing me at the edge of my vision, which I couldn’t quite see, frustrating my attempts to learn the language.
Python (C/OOP) is my ur-language. Having that made it easy to learn Go. Rust turned out to be a different beast altogether.
Having the big ideas of Rust laid bare and then explained thoroughly was such an eye opening experience.
And I learned it while doing something else, that is inherently hard. Dave makes it easy though, like I describe below.
I just wanted to learn Rust. I didn’t really want to write a small programming language.
But doing that, made me learn Rust without even realising it. He’s that good.
Most big ideas were in there. Ownership and borrowing, check. Compare and contrast how things are done in other languages, dobule check. Macro magic, check and triple check.
The course was more focussed on the why of Rust, more than the more easily discoverable, how.
A fascinating mental model was looking at Rust like Earth. An inner strict core, surrounded by a more relaxed, friendlier outer shell.

Daily work was tremendously mentally taxing. In a good way.
Dave keeps saying that minds explode due to the material. But no good Sir, that is not true!
To Dave I say, “’Tis thou, Dave, who dost cause the explosions of brains!”
He starts with an innocent problem, something innocuous, and then lays his trap.
Simple solutions are shown not to work, teensy yet ghastly exceptions show up to trip you, scenarios that you’d never imagine, lie beneath the surface. And your mind gets wound up so tight, that when Dave finally has finally had his fun, takes pity on us and shows us the solution, it naturally goes, Boom!

I cannot wait, to have my brains exploded once again :)

Am I done with this series?

No.
I jumped into the deep end of the pool, by attempting to learn Rust with a hard project at the same time.
So while I’ve learned a lot, there’s plenty of work to do.
While the others could do their programming exercises quickly, I have seriously lagged behind.
With the notes I’ve made and the resources that I have access to, I will attempt to redo this week myself over the coming months and write about it, and ponder, struggle, work through it here.

Dave as teacher and all round good egg

The man puts in tremendous amounts of work.
Every bit of the course, is planned and structured meticulously and then he just riffs off of the ideas.
There was a collaborative Github repo ready and waiting, there were video recordings ready as soon as the day was done.
Dave never pretends to have all the answers. 99% of the time, he does and hides it well, so we do the thinking, but the few times he didn’t, he let us know and then came back to us with answers and thoughts either in the next session or the next day.
Unfailingly polite, kind and generous to a fault, he fostered an extremely collaborative environment, in which, even when there other folks much more learned and experienced than I; I never felt like a dunce. I never felt spoken down to.
All my kooky ideas were evaluated and then Dave would point out why doing something like what I suggested wouldn’t quite work or why stuff would crash and burn or why what I suggested doing eenie, meenie was in fact, pretty good.
I learned not just what, not just how, but also why.
And I learned it all in a place that was nice, and friendly, and warm, and kind.

To paraphrase Ruby’s MINASWAN motto:

DINASWAN: Dave is nice and so we are nice.


Feedback on this post?
Mail me at feedback at this domain or continue the discourse here.

P.S. Subscribe to my mailing list!
Forward these posts and letters to your friends and get them to subscribe!