I also have a couple of tutorials:
and
The video is from 2016 so some syntax has changed, but most of the metaprogramming section is still valid.