Real-World F# Programming

Tomas Petricek and Phil Trelford’s two day course will teach you how to solve real-world .NET problems in F#. Will guide you through several areas where F# can help you be more productive and solve your problems faster, with code that is efficient and easy to maintain.The examples used in this course are based on experience of developing successful commercial applications in F#.In particular, you’ll learn how to benefit from functional concepts when writing concurrent applications; how to obtain, process and visualize data and how to easily solve seemingly complex algorithmic problems.After attending the course, you’ll be able to recognize where using F# can save your time and money and you’ll know how to integrate F# components in the .NET ecosystem.

Learn how to

You’ll learn how to use and understand functional programming concepts and technologies in practice on the .NET platform.

  • Use F# components in a larger .NET system
  • Use agent-based programming to develop scalable concurrent applications and servers
  • Express algorithms in a succinct functional way
  • When to use embedded domain specific languages (DSLs) and how to create them in F#
  • Download, explore and visualize data

If you work in one of the areas covered by the course, you’ll get immediately usable practical knowledge and code samples. If you don’t you’ll learn many advanced techniques that are necessary for any real-world F# programming.

Programme

Day 1 – Working with data & Concurrency

Processing and visualizing data

  • Downloading and exploring data
  • Defining the structure of data with 
F# types and units of measure
  • Accessing data with F# 3.0 type providers
  • Visualizing data using F# charting library

Concurrent and parallel programming

  • Overview of parallel & concurrent technologies
  • How to write scalable server-side applications with asynchronous workflows
  • Concurrent programming with F# agents
  • How F# asynchronous workflows relate to “async” in the futre version of C#?

Day 2 – Developing algorithms

Using domain specific languages (DSLs)

  • Creating composable functional libraries
  • When should I develop a DSL?
  • Modelling problems from the financial domain

Distributed and scientific computations

  • Implementing recommender system in F#
  • Distributed parallelism with MPI.NET

Using F# with agile methodologies

  • Using F# for writing .NET unit tests
  • Specifying and testing behavior using functional Behavior Driven Development (BDD)

Next Session

The next course will be delivered at The Skills Matter eXchange – London, on 8 February 2012 and 11 June 2012 by Tomas Petricek & Phil Trelford. Book online now or contact us directly.

We can also organize a private course for your company. Courses can be organized in United Kingdom, Czech Republic as well as Worldwide. If you’re interested, contact us directly at info@devsense.com.

About the Authors

Tomas Petricek is a long time F# enthusiast, using F# since the early Microsoft Research versions. He has been a Microsoft C# MVP since 2004, and together with Jon Skeet wrote Real-world Functional Programming. He also contributed to the development of F# during internships at Microsoft in Cambridge.
Phil Trelford is a Software Architect at an ISV supplying real-time electronic trading software. His career so far spans over 15 years, with experience in video games, leisure, retail and financial sectors. Phil’s recent commercial development work has been with C++, C#, SQL, JavaScript, and includes over 2 years developing F# applications at Microsoft.

Is this course for you?

If you’re architect, team leader, or a software developer who has some understanding of functional concepts, this Real-World F# Programming course is designed for you!

Note

The course can be tuned to fit your specific needs, typically when teaching the course to developers and architects in your company. For example, we can include more introductory material and focus only on some of the application areas. For more information, contact us at info@devsense.com

Course labs & exercises

This is a very practical workshop focused on solving real-world problems. We’ll briefly present every application area and explain how we can benefit from F# concepts. Then we’ll guide you through the development of a realistic sample application.

Course prerequisites

This is an intermediate level workshop. In order to benefit the most from the course, you should have some previous knowledge of functional concepts and be familiar with basics of the F# syntax.

The prerequisites are completely covered by Tomas Petricek’s and Phil Trelford’s Functional Programming in .NET or by chapters 1-7 of Tomas Petricek’s Real-World Functional Programming.

Share this page

RSS php-compiler.net

  • Writing compiled PHP extensions in PHP February 7, 2012
    PHP offers a lot of various extensions which add additional library functions, classes, constants and other constructs. Common extensions include for example php_mysql and php_iconv. Since extensions are implemented in C language, the performance is great. It also allows programmers to use other native libraries that … Continue reading → […]
  • WordPress on .NET with SQL Server is Possimpible using Phalanger 3.0 January 23, 2012
    In a recent scenario I wanted to run WordPress as a subdirectory of a .NET application. I also wanted to avoid installing PHP and MySql on the Windows server. Impossible? Apparently not! (I’ll get to the word Possimpible a bit … Continue reading → […]