[ANN] ReasonableCoding: a live-stream showcasing Reason/OCaml

Hello!

For about 2 months I’ve been running a live-stream on Twitch called ReasonableCoding. You can pick it up live on Twitch, and subscribe to upcoming events here, but all the past episodes are available on a YouTube channel of the same name: ReasonableCoding

In the episodes, I’ve explored topics in software development: http servers, profiling code, async/parallel programming, unit testing, property-based testing, command line tools, esy, graphql servers, how does the OCaml garbage collector work, etc.

While it is not exclusively aimed at Reason/OCaml, they are the languages I’m using on a daily basis and thus most of the episodes feature them or libraries in the Reason/OCaml ecosystem.

What does it look like?

The format tends to be quite raw and straightforward, albeit the stream taking, normally, over 2 hours:

  1. Set up a context / state a problem
  2. Work on it live

Sometimes includes digging deep into a library, like lwt, and just making sense of the whole thing. It may include drawings.

It is quite raw in the sense that there is no language censoring, there’s a lot of “how did this work?” followed up by unearthing sources and reading through documentation, and quite a few a-ha moments as well.

If you can join, there’s a bunch of interaction with the audience (albeit I could improve my setup!), and users like @anmonteiro, @ulrikstrid, @p1xelHer0, @andreypopp and @thangngoc89 have made very impactful suggestions and comments, and ultimately have helped me out a lot during them.

I think you would enjoy it too :slight_smile:

Content

Find below a list of the episodes so far (date of this edit) uploaded to YouTube.

Season 0

RC002 — Understanding Library Packaging in Sketch.sh
RC003 — Parallelizing the Buildgraph Execution in Cactus (Part I)
RC004 — Parallelizing the Buildgraph Execution in Cactus (Part II)
RC005 — Adding Templates to Cactus
RC007 — Helping Sketch.sh Packaging Libraries
RC008 — Async and Parallel Programming with Reason
RC009 — Making Command Line Tools with Cmdliner

Season 1

RC010 — Serving Static Files with http/af
RC011 — A Twitch.tv Command Line Interface
RC012 — Native GraphQL APIs
RC013 — Property-based Testing with qcheck
RC014 — Profiling Reason Native with landmarks
RC015 — A GraphQL Testing Server
RC016 — lwt from the Inside Out
RC017 — Reason Native with esy
RC018 — A GraphQL API in Erlang
RC019 — Building Design Systems with ReasonML (Part I)

Season 2

RC020 — Understanding the Reason Native Garbage Collector (Part I)
RC021 — Exploring Algebraic Effects in Eff
RC022 — Exploring the Actor-model in PonyLang
RC022 — Building Design Systems with ReasonML (Part II)


Hope you enjoy it and feedback appreciated :smile:

/ Leandro

22 Likes