Haskell Pedagogic Ladder - Haskell

Welcome to the Functional Programming Zulip Chat Archive. You can join the chat here.

James King

Is there a non-image version of their proposal? :thinking:

James King

Is there a non-image version of their proposal? :thinking:

Sridhar Ratnakumar

I wonder if the sources (and images) for this PDF is available somewhere. I'm thinking of creating a nice website based on it.

Sridhar Ratnakumar

The mythical creatures in particular.

Sridhar Ratnakumar

Sridhar Ratnakumar said:

let's do it, https://ladder.haskell.page

just clone the repo and run nix run

TheMatten

I think there previously was some discussion about this, and one of the criticisms was that this order of concepts isn't necessarily fixed - you could probably take OOP developers and introduce them to algebraic data together with codata as something they've already used, or you could cover "advanced" type level functionality without ever talking about monad transformers

TheMatten

At the same time, I could probably tick most boxes from this list, but does it necessarily make me an "expert"? I mean, understanding of many of those concepts can have it's own range, e.g. at what point I'm actually able to apply them correctly instead of just knowing how they work, at what point am I able to explain them properly (if ever), and when may my understanding be enough to be able to help advance R&D in these areas?

Sridhar Ratnakumar

I agree re: order. There can be multiple paths in the 'map' - but the 'map' itself would still be valuable.

Sridhar Ratnakumar

That makes me wonder ... the path can be unique to each person. They start from where they are. We just need a "pedagogic function" that takes as input where the person is (and their motivations, and what they are working on), and produces an output that gives them a specific direction as to what to learn next.

TheMatten

Sridhar Ratnakumar said:

I agree re: order. There can be multiple paths in the 'map' - but the 'map' itself would still be valuable.

Yeah, but really as a map instead of metric or competition - e.g. I would love to have some resource that would let you see concepts from FP as graph with connections between dependent topics, which you could then explore as you like

Sridhar Ratnakumar

re: expertise. Well, it is indeed multi-dimensional.

Let's write an Agda program to model all of this pedagogy! Just kidding ... or am I?

Sridhar Ratnakumar

TheMatten said:

Sridhar Ratnakumar said:

I agree re: order. There can be multiple paths in the 'map' - but the 'map' itself would still be valuable.

Yeah, but really as a map instead of metric or competition - e.g. I would love to have some resource that would let you see concepts from FP as graph with connections between dependent topics, which you could then explore as you like

Absolutely. We need connections (edges) in order to be able to build paths.

TheMatten

Sridhar Ratnakumar said:

That makes me wonder ... the path can be unique to each person. They start from where they are. We just need a "pedagogic function" that takes as input where the person is (and their motivations, and what they are working on), and produces an output that gives them a specific direction as to what to learn next.

I think this could then be achieved by filtering topics and simply looking at available and dependent ones? :smiley:

Sridhar Ratnakumar

Yea. They can also filter for "I know x, y, z" and click "show me adjacent topics"

Sridhar Ratnakumar

Or, "I know x, y, z" and "I work on domains p, q, r" (eg: parsing, web apps) and click "show me adjacents"

Sridhar Ratnakumar

Implementation

To implement this site, what we need is a JavaScript library to do graph views, but also with support for rendering text content, plus ability to filter through it.

Wonder what I can use for this ...

Sridhar Ratnakumar

Or maybe a graph view (a la Zettelkasten/Obsidian) would be too liberal for the kind of UX we need.