~/talks

Scott Wlaschin

what they talk about

all 8 in the filters

where they keep going back

all 8 in the filters

on a stage with

never shared a talk

who talks about the same things

titleconferencedate
Thirteen ways of looking at a TurtleNDC London 20252025-01-27
Thirteen different F# implementations of a turtle graphics API appear, each making a concrete tradeoff: 13 implementations delivered in ~4 minutes each, from…
Talk on
Moving IO to the edges of your app: Functional Core, Imperative ShellNDC London 20242024-01-29
Argues to keep all non-deterministic I/O at the perimeter and make business logic a pure, testable core that returns explicit decision types; demonstrates C#…
Talk on
Pipeline-oriented programmingNDC Porto 20232023-10-16
Compares C# LINQ and F# pipelines and shows concrete code: implements a generic pipe extension helper with overloads for 1–n parameters, three demos (Roman…
Talk on
Building confidence in concurrent code with a model checkerNDC London 20232023-01-23
Demonstrates using TLA+ / TLC to model-check concurrency: a count-to-three model reveals a deadlock reached until a loop (stuttering) and weak fairness are…
Talk on
Domain Modeling Made FunctionalDevTernity 20222022-12-08
Shows concrete F# code that models domains as types: F# discriminated unions for choices, option types instead of null, and wrapper types that enforce…
Talk on
Pipeline-oriented programmingDotNext 2021 Moscow2021-10-21
Argues that moving data through small, one-input/one-output stages enforces single-responsibility and open‑closed design, using LINQ and F# pipes and a tiny C#…
Talk on
Experience Report: Domain Modeling with F# (short talk)ML 20212021-08-26
Argues that F# serves as a practical replacement for COBOL/Java for business domain modeling by using algebraic types, single‑case unions and smart…
Talk
Thirteen ways of looking at a TurtleNDC London 20212021-01-25
Builds a simple turtle API and delivers 13 implementations that each demonstrate a real FP technique: partial application, currying, State/Result/Async…
Talk on
Building confidence in concurrent code with a model checkerNDC Oslo 20202020-06-08
Demonstrates using TLA+ and the TLC model checker to find real concurrency bugs: a queue model with max size 2 checks 1 producer/1 consumer (8 states) and…
Talk on
The Power of CompositionNDC Oslo 20202020-06-08
Argues composition builds large systems from tiny reusable functions and types, demonstrated with a Roman‑numerals pipeline, a composable FizzBuzz using a…
Talk on
Reinventing the Transaction ScriptNDC London 20202020-01-27
Argues that classic Transaction Script becomes practical and testable by using F#-style functional techniques: model workflows as workflows as functions with…
Talk on
The power of compositionDotNext 2019 Moscow2019-11-06
Argues composition builds large systems from tiny, testable pieces and demonstrates it with C# and F# code: Roman numerals via a pipeline, FizzBuzz using a…
Talk on
Domain Modeling Made FunctionalKanDDDinsky 20192019-10-17
Shows how using F# and composable types (options, wrapper types, discriminated unions) turns vague fields into enforced invariants: email becomes EmailAddress…
Talk on
The Functional ToolkitNDC Oslo 20192019-06-17
Explains a compact toolkit of about 11 core functions — specifically map and bind, return, apply/lift and sequence — and shows concrete F# implementations…
Talk on
The Functional Programmer's ToolkitNDC London 20192019-01-30
Begins by naming eleven practical tools and then shows concrete implementations in F#: map, return, bind, apply plus reduce and monoid combiners. Demonstrates…
Talk on
Four Languages from Forty Years AgoNDC London 20192019-01-30
Claim: the 1970s produce the core paradigms still used today — SQL, Prolog, ML, Smalltalk and VisiCalc (the ancestor of Excel). SQL gives a expression-based…
Talk on
The Power of CompositionNDC Oslo 20182018-06-11
Begins with concrete F# techniques: currying and partial application to turn multi-arg functions into composable one-arg pieces, then uses a pipeline style to…
Talk on
Four Languages from Forty Years AgoNDC Oslo 20182018-06-11
Survey of four 1970s languages shows concrete lessons: SQL is a expression-based set model with declarative queries, separable DDL/DML and interactive tuning…
Talk on
The Power of CompositionNDC London 20182018-01-15
Clear claim: build large systems by composing tiny functions and types. Uses F# code: composition operator and pipe and compose operators, currying and partial…
Talk on
Functional Design PatternsNDC Sydney 20172017-08-14
Uses F# code to show exact patterns: uses a NonZeroInt type and Option return to make a divide function total, demonstrates partial application for DI by…
Talk on
Domain Modeling Made FunctionalNDC Sydney 20172017-08-14
Shows how F#’s type system—option type, discriminated union and generics—encodes business rules so invalid states can’t exist at compile time. Builds concrete…
Talk on
F# for C# programmersNDC Oslo 20172017-06-14
Compares C# and F# with concrete side‑by‑side code, demoing F# Interactive inside Visual Studio and VS Code (Ionide), a Roman‑numeral converter and pipeline…
Talk on
Domain Modeling Made FunctionalNDC Oslo 20172017-06-14
Shows concrete rewrites of a messy contact model into F# types that enforce rules at compile time: uses Option<T> instead of null, wraps strings as single-case…
Talk on
Thirteen ways of looking at a TurtleNDC London 20172017-01-16
Thirteen concrete implementations of a simple turtle API show actual tradeoffs: mutable OOP and opaque ADT versions, an immutable functional chain, State monad…
Talk on
Understanding parser combinators: a deep diveNDC Oslo 20162016-06-08
Builds a tiny parser-combinator library in F# from scratch (about 500 lines total) that exposes basic combinators: sequence, choice, map, many/optional and…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.