consensus-shipyard / mir

Apache License 2.0
46 stars 14 forks source link

Make introduction video for onboarding helpers #245

Closed jsoares closed 1 year ago

jsoares commented 2 years ago

Candidates: @matejpavlovic Estimate: 1wk

matejpavlovic commented 1 year ago

(1) Introduction: Principles of Distributed Programming with Mir

This video provides a high-level overview of distributed programming using the Mir framework. In particular, we cover the following topics:

Slides

Video

(2) Ping-Pong: Writing low-level code a distributed protocol using Mir

Best viewed (at least the coding part) at 1.5x speed.

This video demonstrates how we can use Mir to implement a distributed algorithm completely from scratch. We will only use the very low-level Mir primitives to express our algorithm, which is tedious and requires substantial amounts of boilerplate code. We purposefully write everything by hand to provide insight into how Mir works in its core.

In practice, to implement actual protocols, one can use higher-level primitives and code generation supported by Mir, allowing us to skip writing most of the boilerplate code. Those will be demonstrated in the next videos.

In this video, we will:

Slides

Video

Outdated: @jsoares Could you please help me out with submitting this to the video editing team youtubeable? I already cut the recordings so that they only need to be joined in one video (plus the little edit on video 2). Thanks a lot!

jsoares commented 1 year ago

@matejpavlovic I filed a request with the video team already. Since I'll be out and don't want to be a blocker, I set you as the PoC. You'll likely be mentioned in Filecoin slack today/tomorrow as they import the request.

vukolic commented 1 year ago

@matejpavlovic passcode for Video9 seems wrong

matejpavlovic commented 1 year ago

Oops, sorry, the password contains an asterisk and markdown removed it. I fixed it in the comment above.

jsoares commented 1 year ago

@matejpavlovic Is this issue resolved with the two videos you already recorded, or still pending follow-up ones? I realise they're still in editing and ergo not complete, but just so I know.

matejpavlovic commented 1 year ago

I'd like to make at least 2 follow-up ones, ideally more. But, realistically speaking, not sure when I'll have cycles for that. Two follow-up ones should be feasible (a very small one on active modules and one on Trantor), so let's resolve this after those two, and leave the rest for later.

matejpavlovic commented 1 year ago

@jsoares the first 2 videos are ready (links updated in the issue description). Can we put them on YouTube? Thanks!

jsoares commented 1 year ago

@matejpavlovic the videos are up. A few notes:

I also started a tutorial here (PR here). Let me know how you feel about it.

matejpavlovic commented 1 year ago

Thanks @jsoares!

For the titles, is the Mir: prefix a hard constraint, or is Mir good too (without the colon)? In that case, we could have those titles:

  1. Mir Introduction: Principles of Distributed Programming
  2. Ping-Pong: Writing low-level code for a distributed protocol

Yes the coding video could be indexed better, it's not quite obvious though where to put the chapters (although one could find some natural break points). I put it on my todo list, but doesn't have the highest priority right now.

The tutorial is beautiful! Makes me really eager to add more videos (but will unfortunately probably only happen after SpaceNet)

matejpavlovic commented 1 year ago

Can we also add to the description, maybe even as the very first thing, something like

This video is part of a tutorial on the Mir distributed protocol implementation framework.

jsoares commented 1 year ago

Titles changed; chapters can wait; tutorial moved to review and awaiting merging.

We can add links back to the tutorial once the page goes live. But because youtube only does naked hyperlinking, we may want to put it at the end.

jsoares commented 1 year ago

Backlink added.

Post spacenet additional videos tracked in #299