Data Programming with F#
4.5 (15 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
179 students enrolled

Data Programming with F#

Explore practical techniques to handle real-world data programming challenges
4.5 (15 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
179 students enrolled
Created by Packt Publishing
Last updated 3/2018
English [Auto-generated]
Current price: $86.99 Original price: $124.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 2.5 hours on-demand video
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Strategies for processing data with the F# platform
  • Parsing data with FParse
  • Handling large data streams
  • Designing and controlling asynchronous workflows
  • Managing asynchronous input with F# agents
  • Processing discontinuous input with reactive extensions
  • Using type providers to simplify handling data from relational databases, web APIs, Azure services, and non- .NET languages
Course content
Expand all 14 lectures 02:29:58
+ Parsing and Processing Data
6 lectures 01:16:38

This video gives an overview of the entire course.

Preview 02:06

In this video, we will plan the steps in data processing, including data acquisition, transformation, and error handling.

Processing Data with Functions and Collection APIs

Sequences are the most flexible way to create data streams in
F#.In order to use them effectively, understand the IE numerable
interface on which they’re based.

Creating Data Streams with Sequence Expressions

Working with data collections often requires joining separate
collections together, splitting them apart, and dividing their elements
into subgroups.

Generating, Merging, and Grouping Data Streams with the Collection APIs
In this video, we will measure the performance of your data processing code.
Handling Large Documents and Data Streams
In this video, we will make use of parsers and combinators to build programs that read complex, hierarchical data formats.
Parsing Data with FParsec
+ Asynchronous and Reactive Programming
4 lectures 44:55
This video helps to understand that asynchronous programming lets you move slow operations onto background threads.
Preview 12:44

This video tells that although the syntax for writing asynchronous
workflows is fairly easy, there are some subtleties in the different
ways to start and control them.

Designing and Controlling Asynchronous Workflows

F# agents give you an asynchronous program model with three
important advantages: first, agents can keep private, isolated, and
state; second, agents respond to messages in FIFO order; and third,
agents are lightweight, and you can run thousands at a time.

Managing Asynchronous Input with FSharp Agents
The observer pattern allows “observable” publishers to send messages to arbitrarily many subscribers.
Processing Discontinuous Input with Reactive Extensions
+ F# Type Providers – Data As Code
4 lectures 28:25
Data is erupting so fast now that techniques for turning data into actionable code are increasingly important.
Using Type Providers in Your Program

This video explains the most famous type provider which is
probably the one Microsoft built on top of Linq-to-SQL for SQL server.

Working with Relational Databases Using Type Providers
This video explains that web APIs can expose metadata, but they can’t force clients to comply with it.
Working with Web APIs Using Type Providers
This video helps us understand that type providers are helpful in programs that will handle large sets of data.
Working with Azure Using Type Providers
  • Basic programming grammar and syntax of F#.

Today, developers are tasked with building applications in less time, while maintaining high standards of quality, reliability, security, and performance.
This video course presents practical techniques for handling real-world data programming challenges. We'll first see how to build efficient, extensible engines to parse and process documents and data streams. Then we'll study how to process large sets of data with maximal performance and efficiency using asynchronous workflows, agents, and .NET reactive extensions. Next, we'll learn to use type providers, a unique F# feature that lets us program with data as if it were code.
By the end of the course, you will be capable of writing solutions with less code, fewer bugs, and better alignment with business requirements.

About the Author

Richard Broida is a software design and programming consultant specializing in Microsoft Windows and Azure technologies. Over his career he has developed enterprise applications for clients in medical, banking, insurance, manufacturing, transportation, and e-commerce. He is a frequent speaker on F#, C#, and cloud technologies and has taught .NET programming courses for adult professionals. You can follow Richard on Twitter (@SirEel) or on LinkedIn. He lives in Cleveland, Ohio.

Who this course is for:
  • This course will appeal to programmers and developers who are confident with the basic grammar and syntax of F# and are now looking to sharpen their F# programming skills. The course also caters for intermediate C# developers who want to gain a deep understanding of F#.