Helpful. Thanks. I enjoyed a TED talk (http://www.ted.com/talks/mihaly_csikszentmihalyi_on_flow) by the author of the book you suggested, I might read it.
Reading it now -- it's somewhat academic, but comprehensive. Many people have recommended Dan Pink's "Drive" as a good popular summary of the findings.
Flow would be a deep-dive after that -- I skipped Drive, because I was already reading a lot about it, and was looking for deeper information.
Peopleware also covers this topic from a programmer-centric perspective.
Re:How do you make programming fun again?
by lpwaterhouse on Wednesday April 30, 2014 @07:43PM
(#7677249)
Your link has a LRM (left-to-right mark) at the end.
Here's the link without it: http://www.theoryoffun.com/theoryoffun.pdf
These are slides for a talk based on a book the author wrote.
You might want to check out the book "Flow" as well
The short answer is that we get bored when the challenges and skill level are misaligned. To keep something fun (or enjoyable), it has to keep getting challenging at a pace we can handle.