Python One-Hour Crash Course: Syntax, Lists and Files
by Sofia Navarro
Translate everything you know from C# into idiomatic F#, one working example at a time.
JB Created by Jonas Berg
Every bullet below is something you will have built, shipped or be able to explain by the time you finish the last lesson.
7 modules · 68 lessons · 9h 6m of material
12 lessons running 1h 36m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
11 lessons running 1h 28m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
10 lessons running 1h 20m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
11 lessons running 1h 26m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
10 lessons running 1h 22m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
8 lessons running 1h 04m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
6 lessons running 50m in total. Each lesson ships with the finished source files and a short written recap, so you can follow along in your own editor and skim the module again later.
Lesson-by-lesson titles, code downloads and exercises live inside the course library you get access to straight after checkout.
7 modules · 68 lessons
9h 6m total length
Short list, and deliberately so. If you meet these you can start today.
You already know .NET. You know the base class library, NuGet, async, and how a project file works. What you do not have yet is the reflex to model a problem with types and functions instead of classes and mutation. That reflex is the entire subject of this course, and having C# in your background makes it far quicker to build than starting from nothing.
Every concept is introduced as a translation. Records and discriminated unions replace class hierarchies and enum plus switch. Pattern matching with exhaustiveness checking replaces defensive null tests. Option replaces null, Result replaces exception-driven control flow, and the pipeline operator replaces long chains of intermediate variables. Modules and functions replace static utility classes, and units of measure replace comments that hoped nobody would pass milliseconds where seconds were expected.
The second half covers what makes F# productive in real .NET work: computation expressions including async and task, type providers over JSON and SQL, interoperating cleanly with C# libraries, testing with Expecto and FsCheck property tests, and using the F# Interactive window as a genuine development tool. The closing project is a small ETL service that reads messy input, validates it into a well-typed domain and writes a report.
Still unsure about something? Write to misteryjj100@gmail.com and a human answers, usually the same working day.
Reviews are written by people who bought this course. We publish the critical ones too.
5.0
Rated 5.0 out of 5Course rating · 1 review
Helena Ferrari
Software architect
Each idea arrives as here is what you would write in C#, here is the F# version, here is why the second one is shorter. With a decade of C# behind me that is the only approach that would have worked. Making illegal states unrepresentable is now a phrase I use in design reviews and people know what I mean.
Functional programmer and F# instructor
Jonas has written F# in production for over a decade, mostly in insurance and logistics where correctness is far cheaper than speed. He teaches functional programming as a practical tool: types that make bad states unrepresentable, and pipelines you can test without touching a database. His courses convert real imperative code into functional code one step at a time, so nothing feels like a leap of faith. He maintains a small but well-used F# validation library.
One-time payment · lifetime access