How many people here love F#?I’m not saying I have all the answers, but I’m saying we all need to think hard about how we present on F#
I started with talks along these lines and I’ve seen given by some of the most experienced speakers. They focus on engagement by being an entertaining speakerBut it’s more about personality than contentAnd does it inspire people to go home and play with F# on their own?Note: I’m not saying talking about features or comparing samples is bad, but it does not inspire anyone to go home and start an F# project!
This is a very difficult mind to break into The most intelligent people tend to be the most opinionated. Target people who you can help
Not social smarter, I mean like the kind of guy they golden handcuff and keep locked in a back office kind of smart.Some of the smartest people are the worst socially. Keep in mind, while the usefulness of lambdas, discriminated unions and tuples seemed obvious to you, it may not be to others.
Obviously I’d like to give and watch more talks oriented toward F# users, but a focus on that won’t grow our community.As things stand right now we have people who learned on their own and those who are interested but know very little.
Prizes, Pride and Vanity Show you’re passionateBuild interest through external motivators
First recursion, then tail recurisonEasy, but intentionally wrong
Just a month ago I was tasked with running a four hour tutorial at the Commercial Users of Functional Programming conference. I presented attendees with a simple API, a template example and a challenge to beat each other. I then and then simply gave them time to play. The end result was a room full of people who were motivated to be creative and solve problems independently. Little did they know that I had planned a path for them to follow just by having had written several of my own solutions previously.
Satisfy the new user and the advanced.
Tomas’s Community for F# TalkTalk about Logo
I challenge you to do better than I have. Find new and engaging ways to bring new users into the fold. Thank you
Fun and Games in F#
Fun and Games in F#F# MVP2MVP<br />Richard Minerich<br />@Rickasaurus<br />RichardMinerich.com<br />
Most Common F# Talks<br />The Feature-Fest<br />A technical description of F# feature by feature<br />Exhaustive Code Comparison<br />Showing sample after sample side by side with another language <br />
Shocking Announcements!<br />Most C# devs don’t even know how to use lambda expressions!<br />Big academic sounding words are scary to even seasoned devs!<br />Many devsstill think F# is a dynamic language!<br />If you already know F#, you are smarter than the vast majority of the devs you’ll meet.<br />
Kinds of Audience Members<br />Beginner<br />(Some members of) F# User Groups<br />.NET User Groups<br />Code Camps<br />Existing F# User<br />(Some members of) F# User Groups<br />The Community For F#<br />
Passion<br />Explain why you care<br />Safety from Types?<br />Abstraction without Obfuscation?<br />Aesthetically Beautiful Code?<br />Speak with enthusiasm<br />Why over how<br />Abstractions instead of details<br />Just try it!<br />
Example 1: Show Examples, Ask Questions, Give Prizes<br />Function<br />> letrecrecFun n = <br />if(n < 3) then 1 elserecFun (n - 1) + recFun (n - 2);;<br />valrecFun : int -> int<br />> recFun 4;;<br />??<br />
Example 2: Teaching with Games<br />The Students are Given:<br /><ul><li> An Obfuscated Library
A Simple API </li></ul>- A Simple Template Example<br />- Time to play<br />- Motivation via Competition<br />
Example 3: The Code-off<br />Some compete for supremacy,<br />others learn a few things.<br />
Example 4: The Playground<br />Play should be fundamental<br />
Help build an inviting F# community culture<br />Tell people about why you love F#<br />Make your presentation format engaging<br />Encourage others to Speak<br />Be sympathetic to new users<br />Agree? Disagree? Email me:<br />Richard.Minerich@gmail.com<br />
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.