lambdaconf / winter-retreat-2017

The official repository for the LambdaConf 2017 Winter Retreat (January 8 - 12).
12 stars 0 forks source link

Guide: Chris Allen #8

Open bitemyapp opened 8 years ago

bitemyapp commented 8 years ago

I'm Chris Allen, an author of Haskell Programming from First Principles, commonly known as the haskell book. I'm an uneducated working programmer that got tired of unnecessary trade-offs between types and expressiveness.

I originally started teaching so that I could spin up coworkers on Haskell, but found teaching itself to be more energizing than writing code.

Past topics I've covered in some way include:

Topics I don't have much practice teaching with but would be happy to explore with someone include:

I am excited to be a guide at the LambdaConf Winter Retreat! I'm not stuck on anything in this list, so if you have requests, please tell me as soon as possible!

Edit:

Final talk description

Hello everyone! I'm known primarily for the book Haskell Programming from First Principles and for some free Haskell tutorials and guides. The material of my presentation at the winter retreat will be based on my upcoming book named Haskell Almanac. The content will be focused on intermediate topics which are commonly needed in industry software projects. Think "web applications", except I may not devote much actual time to a web framework, but rather, the peripheral dependencies of a Haskell web application.

It is safe to assume that you should have the basics of Haskell down to get the full value of this lesson! The first 2/3s or 3/4s of the Haskell Book is a good baseline for what you should know. Remember that merely reading the material isn't sufficient, you will need to have done the exercises. If you're already using Haskell productively and can sling things like monad transformers without too much comfort, you probably do not need the book although some advanced readers have enjoyed the insights it offers.

bitemyapp commented 8 years ago

Requests so far have been:

mudphone commented 8 years ago

I'd also be interested in learning about building web apps. Doing so with Yesod and Persistent, or GHCJS sounds fun!

EncodePanda commented 8 years ago

Yeah, Chris :) !! For me you can talk about anything, I'm all ears :)

haroldcarr commented 8 years ago

Interested in (in listed order):

jdegoes commented 8 years ago

My vote: Workshop on using both type families and functional dependencies, and showing how different scenarios benefit from either.

serras commented 8 years ago

+1 to @jdegoes I would love hearing about the interplay of type classes, open and closed type and data families, associated types, functional dependencies and injectivity annotations. They all look similar, but each of them is tricky in its own way.

rezalesmana commented 8 years ago

web apps with event sourcing would be great

purefunctions commented 8 years ago

GHCjs, and functional front-end in general

ErrorNullPointer commented 8 years ago

+1 to @haroldcarr

I second his vote.

LambdaMathematician commented 8 years ago

+1 to lambda calculus, expressions, types, polymorphism, typeclasses, higher kinded types, functor/applicative/monad, foldable/traversable, reader, state, monad transformers, benchmarking and profiling, laziness, IO, and more

bitemyapp commented 8 years ago

For anyone wanting rank n types: https://www.youtube.com/watch?v=k0cZe0LVFI4

purefunctions commented 8 years ago

@bitemyapp Do you have the slides/code from the talk above? The screen isn't that observable in the video

bitemyapp commented 8 years ago

@emptyslot

https://github.com/bitemyapp/presentations/blob/master/rank_n_types_talk/rankn.pdf

https://github.com/bitemyapp/presentations/blob/master/rank_n_types_talk/tuple.hs

https://github.com/bitemyapp/presentations/blob/master/rank_n_types_talk/ranks.hs

gilligan commented 8 years ago

Servant

Personally I would be very interested in developing some small servant project. I would possibly consider the fact that you don't know Servant that well as a bonus because that way I could see how you explore new Haskell libraries/frameworks.

So developing a small servant app ideally with some tiny frontend part would be great for me. Maybe not thrilling as some of the fancy topics mentioned here but anyway.. ;)

alexi21 commented 7 years ago

My work is all web applications so anything relating to that would be great.