Update The State Of A State Monad

Share this video with your friends

Send Tweet

Stateful computations require the ability for their state to change overtime. We take a look on one way to replace the state portion of our stateful datatype with a value. We explore the mechanics of how this can be accomplished and introduce the put construction helper. We also see how we can run our instances with execWith to extract the state portion and discard the resultant.

Andrew Hlavats
~ 7 years ago

I find your content very interesting. So much so, that I looked up your youtube channel and watched your series on ADTs. Very engaging! You're an excellent teacher and very knowledgeable. However, I find your manner of speaking in these egghead videos somewhat off-putting. It feels heavily affected and condescending. It makes it difficult to pay attention to the content. In your youtube series you talk very naturally and conversationally, and as such I find the material presented there much more accessible and enjoyable. I look forward to future content from you, but for your next series on egghead I really hope you drop the affectation and talk naturally. You have excellent material. It doesn't need any embellishment :)

Ian Hofmann-Hicksinstructor
~ 7 years ago

@Andrew

Thank you so much for taking the time to provide feedback. I :heart: being able to know what I can do better to create content that others will value.

I apologize for coming of as condescending with what my coworkers call "Presentation Ian". I will do what I can to remove this tone from my future videos, as it is not my intent.

To address the difference between the Livecode vids and the content for egghead it really is a matter of context and function. It can be very challenging to demonstrate a complex thought in a span of 3-7 mins and even harder to do it on the fly. So the way I approach creation of this content is with a scripted approach that can be reviewed and edited before the costly act of recording. Just to make sure the point is driven home, without too much fluff. Even the placement of puns is strategic to drive home points or provide a demarcation point on a chain of thoughts.

When I riff and speak naturally on those livecodes, it can take hours over several videos to explain something and many times, due to the riff nature of it all, I make mistakes on the intuition I am trying to communicate.

So with these vids to allow for natural "punch-in"s during the production process, I can use that inflection to my advantage. If I rise at the end of a statement, I can punch in any edits or corrections easily keeping me from re-recording 2-3 mins to get it to sound natural.

But it sounds like, I may need to alter the inflections a bit so I get what I am looking for and not come off as a salesman or something less desirable. I have started to put some thought in this, and will try some other approaching in my videos going forward.

Thanks again for taking the time, feedback like this is very valuable to me in my learning process of delivering content!