Fast Track to F# with Tomas Petricek

Topics covered at F#-FASTTRACK-01-02
View Schedule & Book More dates available

Next up:


Ready to take advantage of functional and concurrent programming concepts? Join this F# course and learn how to use F# to solve complex problems with simple, maintainable and robust code, how to simplify domain modelling & testing, and how to use its advanced features for asynchronous and concurrent programming and data processing.

Learn how to:

  • Write effective and succinct solutions to complex problems in F#
  • Model complex domains with functional types and domain specific languages (DSLs)
  • Learn how to integrate F# in to your company workflow through prototyping, testing and scripting
  • Use F# 3.0 type providers to gather and process data
  • Use F# asynchronous workflows and agents to write scalable concurrent code

  • What the community says

    "Excellent. Very knowledgeable and helpful."

    Attendee on 2nd Apr 2019

    "Very good. Knows everything but also can easily see it from the students' eyes and understand their questions."

    Gareth, Just Eat

    "Very nice exercises, well explained course."


    "Thank you very much for the Fast Track to F# course. It was extremely good, and confirmed my impression that F# is under-appreciated. It was great to learn from Tomas and to have the chance to talk with him in the breaks"

    Justin Forder

    "Really enjoyable and useful, good mix of lectures and hands-on learning. "

    Chris Cracknell

    About the Author

    Tomas Petricek

    Tomas is a computer scientist and open-source developer. He is a Visiting Researcher at the Alan Turing Institute working on tools for open data-driven storytelling. He wrote a popular book called "Real-World Functional Programming" and is a lead developer of several F# open-source libraries.


    Introducing F#

    • How does F# fit with the rest of the world?
    • Object-oriented F# from a C# perspective
    • Working with F# types and functions
    • How F# avoids NullReferenceExceptions

    Domain modelling and DSLs

    • Modelling problem domains with functional types (“Domain on a single page”)
    • Implementing business logic in F#

    Writing applications in F#

    • Testing F# code and using F# as a testing tool
    • Building a retail .NET application in F#

    Data processing and F# 3.0 type providers

    • Obtaining data with type providers
    • Processing and visualizing data
    • Numerical calculations and machine learning
    • How do F# type providers work?

    Asynchronous and concurrent programming

    • How to write non-blocking computations
    • Asynchronous workflows for server-side and client-side programming
    • Introducing agent-based concurrency in F#
    • Designing concurrent scalable data-processing systems in F#



    If you are an experienced C# & C++ developer or architect, keen to learn how to develop real world systems in F# and gain a solid understanding of concurrency and functional ideas, then this Fast Track to F# course is for you!


    Whilst this Fast Track to F# course does not require prior experience with F# or functional programming, we do recommend that you have prior experience writing applications in C++, C# or some other object-oriented language. Some prior knowledge of .NET is helpful, but not essential to benefit from this course.

    Bring your own hardware

    You are invited to bring your own laptop with your preferred IDE to this Fast Track to F# course, so you can learn he new concepts and skills covered in this course, using the tools, languages and IDEs you are already familiar with.

    If you are unable to bring your own laptop and you let us know as soon upon booking and at least 1 week prior to your attendance of this course, so our team can provide you with a laptop that is pre-installed with the relevant environment.