Top Banner
F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
49

F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Jun 09, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

F# is the future of OSS .NETOpen FSharp 2017, San Francisco

@lenadroid

Page 2: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 3: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Community is

Power

Page 4: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Independence

Page 5: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Impact

Page 6: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Voice

Page 7: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Openness

Page 8: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Should I use F# for my project?

Page 9: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 10: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

+ Functional first, and more paradigms!

+ Strong typing and type inference

+ Default immutability

+ Fully OSS!

+ Cross platform

+ .NET interoperability

+ F# interactive, explorative programming

+ Pattern matching

+ Type providers

+ Computation Expressions

What makes F# F#

Page 11: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

IDEs+ VS Code

+ Xamarin

+ Visual Studio

+ Rider

+ Atom with Ionide

+ Sublime

+ Vim

+ Emacs

+ MonoDevelop

+ More

+ Windows

+ Linux

+ OS X

+ Mobile (iOS, Android, etc.)

+ IoT (i.e. Azure IoT)

+ Docker

+ GPUs

+ JS ecosystem through Fable

OSes and platforms

Page 12: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Myths about F#

+ It is only for scientific projects and math

+ It is beyond complicated to get started with

Page 13: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 14: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

by @kot_2010

C# F#

Page 15: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

C# F#

by @kot_2010

Page 16: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 17: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Java engineers exploring F#

Page 18: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Data Science engineers exploring F#

Page 19: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

C#? F#?

Page 20: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

* Is it harder to learn F# than C#?

* (no)

Page 21: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

➔Faster “time to market”➔Correctness in business logic➔Ease of maintenance➔Freedom of options, fully OSS➔Helpful and friendly community➔Cutting edge language features➔Smaller code base➔Any C# programmer can learn F#➔Can use F# with existing C# libraries

Page 22: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Thousands of Github repositories use F#

Dozens of thousands users all over the world

More than 140 contributors to fsharp/fsharp

More than 5,150 members in F# meetups everywhere

Page 23: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Personal top favorites OSS F# projects

Page 24: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

MBrace cloud { … }

Page 25: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 26: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Lightweight web server for F# web applications

Page 27: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Simple non-blocking web server

Page 28: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Routing in Suave

Page 29: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 30: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

http://fable.io/repl

Page 31: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

F# for Web

Page 32: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

More F# for the Web and serverless

Page 33: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

F# and Docker containers

Kubernetes

Apache Mesos

Docker Swarm

Hashicorp Nomad

Azure Container Instances

Amazon EC2 Container Service

Endless opportunities...

Page 34: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

PaketBetter dependency management

paket.dependenciespaket.lockpaket.referencespaket.template

Page 35: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Expecto+ Tests are first class values

+ More flexibility and leverage when writing tests

+ Parallel and async by default

+ Integrates with Ionide, and has a VS adapter

+ Works well with FsCheck

Page 36: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 37: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Expecto is

Page 38: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

“Type provider” F# projects

Data formats type providersSQL type providerR type providerSwagger type provider

Page 39: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid
Page 40: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

All this is a result of community work

Page 41: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

What can each of us do to make F# even better?

Page 42: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Solve issues and ask questions+ Attempt to solve it yourself first

+ Contribute to documentation

+ Write answers on StackOverflow or Quora (even if it seems easy now)

+ Join FSSF and participate in F# mentorship program

+ Ask and discuss questions on Twitter #fsharp!

+ Start your project on Github! Look at “up-for-grabs” items.

Page 43: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Develop your ideas. Everybody has one+ Don’t ignore your ideas

+ Discuss it with F# Community

+ Tweet #fsharp

+ Join F# Slack

+ Bring FSSF Board’s attention to it

+ You will always find advice and help!

Page 44: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

F# Ninjas, share your experience+ Live stream your F# coding, mentor beginners

+ Write blog posts and create videos to help others

+ Walk through your contributions to ecosystem & tools

+ Share knowledge about F# compiler

+ Experiment

+ Create next new revolutionary F# project, continue to contribute!

Page 45: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Live Streaming F#

Page 46: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Maintaining an F# project?+ Mark items for new contributors as “up-for-grabs”

+ Maintain your documentation up to date

+ Create examples on how to contribute

+ Welcome new ideas and appreciate new contributions

Page 47: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Companies that use F#+ Publicly state the fact that you use F#

+ Share your F# success stories

+ Submit a testimonial http://fsharp.org/testimonials

+ Write blog posts on how F# helps you achieve more

You will attract more talent from the market!

Page 48: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

Expand F# usage at your job+ Create prototypes in F#

+ Do it gradually, use it with existing C# code

+ Teach your colleague F#

+ Demonstrate how powerful, quick, simple, concise and efficient F# is

+ Emphasize faster time-to-market of F# code

+ Clearly show your boss that you save time, money and support efforts

Page 49: F# is the future of OSS - GitHub Pages › presentations › openfsharp2017... · 2019-08-21 · F# is the future of OSS .NET Open FSharp 2017, San Francisco @lenadroid

F# is the future of OSS .NETbecause

we are making it so.