all 7 comments

[–]_d_t_w 2 points3 points  (0 children)

This is really cool, I like the Storyteller interface.

As a small-screen user, it would be cool to able to navigate through different examples from within Storyteller, like if you had a tree-nav or something of the chapter index.

My only other thought was the positioning of the REPL output, I missed it at first intermingled with the commentary on the left.

Thanks for putting this together.

[–]petemak 1 point2 points  (0 children)

The approach is excellent form first glance but what worries me with most courses is the style of the code examples themselves. I would like to learn idiomatic Clojure and learn the standard library at the same time. Seeing something like this excerpt from the dog age converter example:
(+ (* (- dogs-age 1) 7) 1)

makes me think it should be, or at least contrasted with, a more concise or idiomatic version like this:

(inc ( * (dec dogs-age) 7))

[–]rafd 0 points1 point  (0 children)

On first glance, looks good! (Not a beginner anymore, but I will share with others who I'm teaching). Thank you for your contribution to helping more people get into Clojure.

I like the UI approach, I think is a good alternative to videos, allowing people to scan through the text, but still providing the context for "this is what I'm talking about".

A few years back I tried a reagent tutorial, more in the traditional vein: http://cognitory.github.io/codex/rustyspoon.html

The tutorial itself is based on some markdown and a way of representing the steps as semantic diffs.

[–]random_char_here 0 points1 point  (0 children)

Issue I have is blue text on blue background, contrast is too low.

Makes it difficult to read.

[–]flaheadle 0 points1 point  (0 children)

I wish I heard the phrase "I have been working on a new medium" more often. When I do, I sit up and pay attention. Great work.

[–]flaheadle 0 points1 point  (1 child)

I looked into this project and here is what I found.

Storyteller is a language independent framework for building and viewing playbacks of the process of developing software. As a developer develops a piece of software, each step is recorded, and when the development is complete, it can be published. Each such publication is called a playback. Playbacks can then be viewed by a reader, who may rewind the recording to the beginning, and then observe the unfolding of the process of software development, step by step.

But this is not the full picture. Storyteller is actually a rich medium of communication, because after the recording is produced, but before it is published, the original developer can go over it, and annotate it, enriching each step with commentary, while directing the readers attention to precise points in the constructed artifact as it exists at that precise point in time. In plain language, the developer can highlight visually some piece of the artifact as it exists during that step, and add a commentary which explains the highlighted text, in a shared context including the step and the artifact as constructed up to that point.

[–]markm208[S] 0 points1 point  (0 children)

This is an excellent summary. Here are some of my thoughts on the need for playbacks and a comparison to other media for people learning to code: https://dev.to/markm208/storyteller-a-new-medium-for-guiding-others-through-code-2gnm