for a long time now I wanted to make a Julia workshop that had the following properties:
- It is intensive, and can be done in one day. I always prefer such intensive workshops, I think they are much more efficient in teaching anything, from coding to physics to arts.
- It shows the truly important (in my eyes) language features while skips details about other features.
- It teaches everything necessary in order use Julia like a pro (*)
So I thought, what this workshop should be like in order to achieve these goals, and I came up with the following things, that I was able to fit in a workshop that spanned one day (the participants suggested that it would be better to do in two days though, and I agree with them after doing the workshop):
- Basic syntax: loops, collections, functions, broadcasting
- Performance caveats: type stability and memory allocation
- Multiple dispatch and the type system
- Using Julia packages and how well Julia packages play with each other
The results are contained in the following video, and all workshop materials are on GitHub:
Hope it helps, and please feel free to share and re-use as much as you want!
(*) of course, to truly use Julia like a pro you need weeks (if not months) of experience, but I honestly believe that the basic knowledge necessary in order to do that is not that big and can indeed be shown in a full day workshop. And I think this is a huge asset of Julia.