SlideShare a Scribd company logo
How F# Learned to Stop
Worrying and Love the Data




Tomas Petricek @tomaspetricek
Conspirator behind http://fsharp.org
software stacks
       trainings teaching F# user groups     snippets

mac and linux   cross-platform books and tutorials
  F# Software Foundation
   F# community   open-source MonoDevelop
  http://www.fsharp.org
         contributions research support
                  consultancy mailing list
The Data
How F# Learned to Stop Worrying and Love the Data
How F# Learned to Stop Worrying and Love the Data
let wb = WorldBank()
wb.
[DEMO]

Exploring WorldBank Data
Asynchronous programming

Asynchrony matters
 Node.js and C# 5.0


F# Async workflows
 Without inversion of control
 Exception handling and loops simple
 Sequential and parallel composition
F# to JavaScript
[DEMO]

WorldBank App for the Web
http://tomasp.net/techmesh
F# to JavaScript

TypeScript type provider
 Import types for JS libraries
 Somebody else writes them!

Libraries & frameworks
 Open source: FunScript and Pit
 Commercial: IntelliFactory WebSharper
Accessing REST services


  REST (Representational State Transfer) is a
    style of software architecture for
distributed systems such as the World Wide Web.
   REST has emerged as a predominant Web
             service design model.
Accessing REST services
[DEMO]

Introducing Apiary Type Provider
Apiary.io Type Provider

Common REST conventions
 GET /movie/{id}               Get movie summary
 GET /movie/{id}/casts         Get cast details

Types from JSON samples
 { "page": 1, "total_pages": 1, "total_results": 5,
   "results": [ { "title": "Skyfall", "id": 94221 } ] }
[DEMO]

The Movie Database Web App
 http://tomasp.net/techmesh
Type Providers in Action


 WorldBank Type Provider
   JSON Type Provider
   Apiary Type Provider
 TypeScript Type Provider
[SUMMARY]

Where to learn more?
Online resources

www.fsharp.org      Information & community
www.tryfsharp.org   Interactive F# tutorials
User groups and trainings

Functional and F# trainings
  In London and New York
  Get in touch tomas@tomasp.net


F#unctional Londoners meetup
  http://meetup.com/FSharpLondon/
F#, Data and Services

                 other languages         web

              tool support   extensibility   code-first

type script       Love the Data                REST
              unstructured data    static typing
  inference
               and integration                       schema

      R language        transparent      java script

More Related Content

PPTX
Domain Specific Languages: The Functional Way
PPTX
Information-rich programming in F# (ML Workshop 2012)
PPTX
Dmitry mozorov on code quotations code as-data for f#
PPTX
Creating Domain Specific Languages in F#
ODP
Progressive f# tutorials nyc dmitry mozorov & jack pappas on code quotations ...
PPTX
F# and Financial Data Making Data Analysis Simple
PPTX
F# Type Providers in Depth
PPTX
Effective Data Analysis with Deedle
Domain Specific Languages: The Functional Way
Information-rich programming in F# (ML Workshop 2012)
Dmitry mozorov on code quotations code as-data for f#
Creating Domain Specific Languages in F#
Progressive f# tutorials nyc dmitry mozorov & jack pappas on code quotations ...
F# and Financial Data Making Data Analysis Simple
F# Type Providers in Depth
Effective Data Analysis with Deedle

Viewers also liked (20)

PPT
Accessing loosely structured data from F# and C#
PPTX
Concurrent programming with Agents
PPTX
PDF
Asynchronous programming in F# (QCon 2012)
PDF
Madrid F# Meetup: Introduction to F#
PPTX
Functional programming in f sharp
PPTX
Qcon2011 functions rockpresentation_f_sharp
PPTX
F# Eye 4 the C# Guy
PPTX
F# Tutorial @ QCon
PPTX
F# on the Server-Side
PPTX
Docase notation for Haskell
PPTX
Queries in general purpose languages
PPTX
London F-Sharp User Group : Don Syme on F# - 09/09/2010
PPTX
Academia
PPTX
F# intro
PDF
F# and SignalR for a FastWeb
PDF
Functional Programming in C# and F#
PPTX
Mobile F#un
PPTX
Introduction to F#
PPTX
F# Presentation
Accessing loosely structured data from F# and C#
Concurrent programming with Agents
Asynchronous programming in F# (QCon 2012)
Madrid F# Meetup: Introduction to F#
Functional programming in f sharp
Qcon2011 functions rockpresentation_f_sharp
F# Eye 4 the C# Guy
F# Tutorial @ QCon
F# on the Server-Side
Docase notation for Haskell
Queries in general purpose languages
London F-Sharp User Group : Don Syme on F# - 09/09/2010
Academia
F# intro
F# and SignalR for a FastWeb
Functional Programming in C# and F#
Mobile F#un
Introduction to F#
F# Presentation
Ad

Similar to How F# Learned to Stop Worrying and Love the Data (20)

ODP
Progressive f# tutorials nyc rachel reese & phil trelford on try f# from zero...
PDF
FunScript: Why bother?
PPTX
F# for functional enthusiasts
PPTX
Domain Modeling & Full-Stack Web Development F#
PPTX
F# for startups
ODP
Progressive f# tutorials nyc don syme on keynote f# in the open source world
PPTX
F# for startups v2
PPTX
Practical F#
PPTX
Building Better Web Apps with F#
PPTX
iOS App Development with F# and Xamarin
PPTX
Building Better Web Apps with F#
PPT
Bay NET Aug 19 2009 presentation ppt
PDF
Doing data science with F# (BuildStuff)
PPTX
Introduction to f#
PPTX
F# Data: Making structured data first class citizens
PPTX
"The F# Path to Relaxation", Don Syme
PPTX
F# for Trading
PDF
The F# Path to Relaxation
PPTX
F# on the Web
PPTX
TechDaysNL 2015 - F# for C# Developers
Progressive f# tutorials nyc rachel reese & phil trelford on try f# from zero...
FunScript: Why bother?
F# for functional enthusiasts
Domain Modeling & Full-Stack Web Development F#
F# for startups
Progressive f# tutorials nyc don syme on keynote f# in the open source world
F# for startups v2
Practical F#
Building Better Web Apps with F#
iOS App Development with F# and Xamarin
Building Better Web Apps with F#
Bay NET Aug 19 2009 presentation ppt
Doing data science with F# (BuildStuff)
Introduction to f#
F# Data: Making structured data first class citizens
"The F# Path to Relaxation", Don Syme
F# for Trading
The F# Path to Relaxation
F# on the Web
TechDaysNL 2015 - F# for C# Developers
Ad

Recently uploaded (20)

PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
Tartificialntelligence_presentation.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
TLE Review Electricity (Electricity).pptx
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Getting Started with Data Integration: FME Form 101
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Machine Learning_overview_presentation.pptx
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
Spectroscopy.pptx food analysis technology
PDF
Network Security Unit 5.pdf for BCA BBA.
Assigned Numbers - 2025 - Bluetooth® Document
Tartificialntelligence_presentation.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Univ-Connecticut-ChatGPT-Presentaion.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Group 1 Presentation -Planning and Decision Making .pptx
A comparative analysis of optical character recognition models for extracting...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
TLE Review Electricity (Electricity).pptx
A comparative study of natural language inference in Swahili using monolingua...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Getting Started with Data Integration: FME Form 101
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Machine Learning_overview_presentation.pptx
Accuracy of neural networks in brain wave diagnosis of schizophrenia
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Spectroscopy.pptx food analysis technology
Network Security Unit 5.pdf for BCA BBA.

How F# Learned to Stop Worrying and Love the Data

  • 1. How F# Learned to Stop Worrying and Love the Data Tomas Petricek @tomaspetricek Conspirator behind http://fsharp.org
  • 2. software stacks trainings teaching F# user groups snippets mac and linux cross-platform books and tutorials F# Software Foundation F# community open-source MonoDevelop http://www.fsharp.org contributions research support consultancy mailing list
  • 6. let wb = WorldBank() wb.
  • 8. Asynchronous programming Asynchrony matters Node.js and C# 5.0 F# Async workflows Without inversion of control Exception handling and loops simple Sequential and parallel composition
  • 10. [DEMO] WorldBank App for the Web http://tomasp.net/techmesh
  • 11. F# to JavaScript TypeScript type provider Import types for JS libraries Somebody else writes them! Libraries & frameworks Open source: FunScript and Pit Commercial: IntelliFactory WebSharper
  • 12. Accessing REST services REST (Representational State Transfer) is a style of software architecture for distributed systems such as the World Wide Web. REST has emerged as a predominant Web service design model.
  • 15. Apiary.io Type Provider Common REST conventions GET /movie/{id} Get movie summary GET /movie/{id}/casts Get cast details Types from JSON samples { "page": 1, "total_pages": 1, "total_results": 5, "results": [ { "title": "Skyfall", "id": 94221 } ] }
  • 16. [DEMO] The Movie Database Web App http://tomasp.net/techmesh
  • 17. Type Providers in Action WorldBank Type Provider JSON Type Provider Apiary Type Provider TypeScript Type Provider
  • 19. Online resources www.fsharp.org Information & community www.tryfsharp.org Interactive F# tutorials
  • 20. User groups and trainings Functional and F# trainings In London and New York Get in touch tomas@tomasp.net F#unctional Londoners meetup http://meetup.com/FSharpLondon/
  • 21. F#, Data and Services other languages web tool support extensibility code-first type script Love the Data REST unstructured data static typing inference and integration schema R language transparent java script