Over the last six months I’ve given variations on the same F# presentation on six separate occasions. Each time I’ve gotten a similar response: enthusiasm from a small percentage of the audience and glazed-over stares from the majority. In retrospect it seems obvious that I’ve been missing one of the major tenets of making great presentations, know thy audience. It’s time for a new approach.
Information Overload
When thinking about how to get people excited about F# I immediately jumped to the learning format that I found the most exciting. There was no time in my life when I was as overwhelmed by information like I was working on my Computer Science degree at UMass Amherst and I loved every minute of it. When I started out, it seemed that using a university lecture as a model was the best possible format for sharing this kind of information.
I’ve since come to realize that this style of soaking the audience with “a fire hose of information” is a poor format for Code Camps. While using this technique, I could see people turning off one by one as they became overloaded with information. This is not in the spirit of code camp which aims to be a much more laid back kind of experience.
As a FP Ambassador
Let’s invert perspectives and think about what an audience member would want. When a person comes to a Code Camp presentation, it’s likely to be one of their first times being exposed to the topic being presented. They don’t want to be taught as if they were in a classroom. Instead, they want to be exposed to new and exciting information. If their interest is piqued, they will seek details later.
So, instead of focusing on the details of F#, this new presentation will be built around the goal of instilling five key ideas to the audience:
- F# will save you time
- F# will help you become a better programmer
- F# is beautiful
- Immutability is next to godliness
- You can start using F# right now
It must be understood that almost every Code Camp attendee will have had little or no exposure to functional programming. To many attendees, to be presenting on F# is to be an ambassador from the strange and nebulous functional programming world. Instead of building walls of information, the goal should be to instead focus on connecting with the audience on the benefits of functional programming.
Planned Talk Structure
- Depending on an Audience Poll, Broad Concepts
- Testing with F#
- nUnit Examples (as a baseline)
- xUnit Examples
- FsStory Examples
- Analysis with F# (A Real Example From Atalasoft)
- Using The F# Interactive Window To Build Tests
- Data Collection
- Visualizing Data
- Conclusion
- Why F#?
More details will follow soon.
