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.
He is a partner at fsharpWorks where he provides trainings and consulting services. Tomas recently submitted his PhD thesis at the University of Cambridge focused on context-aware programming, but his most recent writings also includes two essays try to understand programming through the perspective of philosophy of science.
Tomas tweets at @tomaspetricek, and his website can be found here.
Read Tomas' Blog
Talks I've Given
-
Prisoner's Dilemma Coding dojo with Tomas Petricek
Featuring Tomas Petricek
We will spend the evening writing game strategies for the "iterated prisoner's dilemma" problem. This is a simple round-based game with two players. In each round, each player can choose to cooperate with or betray the other play. If you betray but the opponent cooperates, you win 3...
f# machine-learning. game-theory dojo -
Rethinking Compilers With Live Coding
Featuring Tomas Petricek
Live coding environments run your program on-the-fly as you write it. This makes development easier, but it is a challenge for compiler writers - textbook compiler architecture does not work for live coding systems.
functional-programming functional f# compilers -
Building your own Elmish web apps with F# and Fable
Featuring Tomas Petricek
This is a hands-on session, so bring your own laptop with F# and Fable installed! To get everything ready, follow the Fable getting started instructions at: http://fable.io/docs/getting-started.html …
Writing user interfaces in a functional way should be impossible - functional languages...
fable elmarchitecture -
2
How to be a Rock Star Developer with Tomas Petricek & Phillip Trelford (& Son)!
Featuring Tomas Petricek and Phil Trelford
You’ve seen the adverts from agents seeking rock star and ninja developers, but what does that even mean? In this session, we’ll look at what it takes to be a true rock star developer and we’ll also venture into the space of rock star data scientists. Like true rock stars, we’ll eschew software...
fsharp fsharpx rockstar software-development good-practices bigdata data-science functional microservices -
Observables, Events, Asynchronous Sequences and Other Wild Animals - Audience Level: Mixed
Featuring Tomas Petricek
F# added support for asynchronous workflows 10 years ago, so you would think that the problem of asynchronous programming should have been fixed by now. Yet, if you try to make sense of the different abstractions for asynchronous programming, it is easy to get lost! What is the difference between...
fsharp fsharpx asynchronous iobservable async asyncseq -
Visualizing Olympic Medals with F# and Fable
Featuring Tomas Petricek
What if you could look at the source code behind any online visualization, check what data sources it uses, reproduce the results and modify any of its parameters?
-
Park Bench Panel Session with #ProgFSharp experts!
Featuring Tomas Petricek
Park Bench Panel Session with #ProgFSharp experts!
progfsharp fsharp progfsharpldn -
Fable, the F# compiler that generates JavaScript you can be proud of!
Featuring Tomas Petricek
Fable is an open source compiler that brings all the power of F# to JavaScript: the functional paradigm, static typing with type inference, pattern matching, type providers and a so on. Besides a comprehensive library to handle collections, text, observables and more, which translates to less...
fsharp progfsharp fable javascript compiler -
2
Building a chatbot therapist
Featuring Tomas Petricek and Evelina Gabasova
This year has seen a boom in chatbots, they are appearing everywhere online. In this tutorial, we'll look at how to build one from scratch. You'll see what are the necessary parts of any chatbot and how do they integrate with each other - from processing user input to deployment....
fsharp progfsharp chatbot bot -
2
Hacking Web Stuff with F#
Featuring Phil Trelford and Tomas Petricek
Want to learn more about F# libraries? Then join this talk with Phil Telford & Tomas Petricek. Please be sure to register as seating is limited.
f#-3.0 .net f# functional-programming -
Celebrating New Year's Eve with F# and Suave
Featuring Tomas Petricek
You would expect that the largest number of "Happy New Year" tweets would in every part of the world would appear around the midnight of December 31. But can we nicely visualize the live stream of tweets and see the tweets live as the old year comes to its end?
I'll talk about a...
f# suave -
Functional web development with F#
Featuring Tomas Petricek
One of the myths about F# and functional programming is that it is only good for complex mathematics. This could not be further from truth. A web server is essentially a function from a request to a response and so functional programming is a perfect fit for it.
progf# -
Suave Hands On With Tomas Petricek
Featuring Tomas Petricek
Suave is a lightweight, non-blocking web server. The non-blocking I/O model is efficient and suitable for building fast, scalable network applications. In fact, Suave is written in a completely non-blocking fashion throughout. Suave runs on Linux, OS X and Windows flawlessly. In this hands on...
f# functional-programming web-applications azure heroku -
The Big F# and Open-Source Love Story
Featuring Tomas Petricek
True open-source is not about having the source code available on GitHub. It is about the community and the mentality in the community. In this talk, I’ll look at the thing that I love the most about F# - the active open-source community around it. You can see the spirit when you watch how people...
f# functional-programming fake f#-4.0 paket -
Literate_programming.With("F#")
Featuring Tomas Petricek
In this session, long time F# enthusiast Tomas Petricek will talk about the F# tools for literate programming, including the F# Formatting library (which parses literate F# and Markdown), ProjectScaffold (a template for projects that lets you write literate documentation) and FsReveal (a tool for...
f# projectscaffold fsreveal -
2
Calling and extending the F# compiler
Featuring Tomas Petricek and Don Syme
In this tutorial, we’ll look under the cover of the F# compiler. We’ll explore how editors and tools can call the F# compiler API to parse and type check F# code.
fsharp progfsharp .net functional-programming -
Deedle: Effective Data & Time Series Analysis Hands On with Tomas Petricek
Featuring Tomas Petricek
Would you like to find out more about Deedle, a new open-source library for data and time series manipulation? Then join Tomas who will explain how Deedle supports a wide range of operations such as slicing, joining and aligning, handling of missing values, grouping and aggregation, statistics...
dataframes f# deedle datascience data-structures data statistics .net -
Deedle: Effective Data & Time Series Analysis with Tomas Petricek
Featuring Tomas Petricek
Are you interested in “data science” and F#? Would you like to learn how to use Deedle , the new open-source library for data and time series manipulation? Check out this talk on Deedle and F#!
f# deedle data-analysis c# types functional-programming .net -
2
FCell: Numerical Development in Excel w/ F#
Featuring Tomas Petricek and Adam Mlocek
Are your Excel Add-Ins difficult to develop, test and deploy? Frustrated with C++, VSTO or VBA based solutions? Or maybe you would simply love to run interactive F# scripts within Excel? Come and learn about FCell Add-In, an integrated F# development platform embedded in Excel.
-
2
Calling and extending the F# compiler
Featuring Don Syme and Tomas Petricek
In this tutorial, we’ll look under the cover of the F# compiler. We’ll explore how editors and tools can call the F# compiler API to parse and type check F# code.
-
Machine Learning Hands On with F#
Featuring Tomas Petricek
In this regular meetup we'll take on one or more programming challenges in F#. All levels of experience welcome, from beginner to expert. This month we'll go hands on with a Machine Learning introduction in F#.
f# machine-learning -
2
Processing data with F# 3.0 and type providers
Featuring Tomas Petricek and Don Syme
In this tutorial, we will look how to easily access a wide range of data sources including Databases, XML and JSON files and REST services, how to process the data in a clear succinct style and how to expose the result as a REST service.
.net prognet rest json xml asp.net-web-api f#-3.0 -
F# Type Providers Hands On
Featuring Tomas Petricek
In this regular meetup we'll take on one or more programming challenges in F#. All levels of experience welcome, from beginner to expert. This month we'll go hands on with Type Providers with Tomas Petricek.
f# type-providers -
2
Try F# Hands On
Featuring Phil Trelford and Tomas Petricek
In this regular meetup we'll take on one or more programming challenges in F#. All levels of experience welcome, from beginner to expert.
This month we'll take a look at some the tasks on the excellent Try F# site.
f# -
2
Coding Kata
Featuring Phil Trelford and Tomas Petricek
In this session we'll break up in to teams and solve a fun coding puzzle (Code Kata) in F#, to help learn aspects of the language and explore new features.
BRING A LAPTOP!
monodevelop f# .net mono f#-bindings functional functional-programming -
2
F# Foundation
Featuring Phil Trelford and Tomas Petricek
Phil Trelford & Tomas Petricek deliver a brief introduction to the newly formed F# Foundation.
f# .net functional functional-programming -
2
Processing concurrent time-series data
Featuring Tomas Petricek and Simon Cousins
Computer systems in energy, finance or cloud computing need to process time-series data that are produced concurrently by a number of data sources. In this talk, you’ll learn how to process and analyse such data in F# using agents.
f# bigdata functional-programming .net concurrency functional -
Programming with the stars!
Featuring Tomas Petricek
This is a hands-on session, designed to help you shift into the functional mindset. Many programming articles set out a problem and give a completed solution, but leave out the steps in the middle. In this session our programming stars will be given a set of problems to solve, and they will...
f# c# .net functional functional-programming -
Coding Kata: Writing Markdown parser
Featuring Tomas Petricek
In this session, we’ll look how to write parser for the Markdown document format in F#. We’ll start by writing the parser in a direct style and then evolve it using the power of F# active patterns.
f# markdown -
2
Domain-specific languages in F#
Featuring Tomas Petricek and Phil Trelford
When designing software, developers often need to solve numerous instances of a single problem. Examples include writing business rules engine, detecting patterns in changing prices and many others. Domain specific languages (DSLs) provide a powerful mechanism for solving such problems – by...
-
2
Adv Track - Numerical Computing with F#
Featuring Tomas Petricek and Adam Mlocek
Many developers need to implement solutions which require some math or stat modelling. In this session we will show you how F# allows us to write elegant and expressive numerical code. You will work with matrices, random number generators and linear solvers.
-
F# Domain Specific Languages for Finance
Featuring Tomas Petricek
In this code-focused session, Tomas Petricek will look at developing DSLs (Domain Specific Languages) for the financial domain in F#
f# dsl .net functional functional-programming -
F#'s Type Providers In Depth
Featuring Tomas Petricek
The purpose of most of the real-world applications is to process data that are available in external data sources such as databases and XML files or obtained using a web service or REST API. Accessing such data sources in a typed way is difficult, because the compiler does not understand the...
f# -
2
Data access in F#, Today and Tomorrow
Featuring Tomas Petricek and Phil Trelford
Tomas Petricek & Phil Trelford: Most of the real-world applications are written to work with data, yet accessing data in .NET is often quite painful.
c# f# data .net types functional functional-programming -
2
Asynchronous Programming
Featuring Tomas Petricek and Simon Cousins
Tomas Petricek & Simon Cousins: Asynchronous programming is the key to writing scalable server-side applications, but it also enables programming models that let you better structure your applications.
f# .net asynchronous-programming functional functional-programming -
Asynchronous C# and F#
Featuring Tomas Petricek
Tomas Petricek will give a talk for F#LUG on Asynchronous C# and F#.
c# f# .net asynchronous asynchronous-programming functional functional-programming -
F# on the server-side
Featuring Tomas Petricek
Server-side applications are interesting because they concurrently handle multiple requests in parallel. On systems where threads are expensive, it is important to do this without unnecessary blocking of system threads. In this talk, we'll look how to use F# synchronous workflows to implement...
f# functional-programming .net asynchronous-workflows functional -
2
TickSpec – BDD for C# & F# & Writing concurrent applications using agents
Featuring Phil Trelford and Tomas Petricek
TickSpec is a lightweight Behaviour Driven Development (BDD) framework for C# and F#. Specify the behaviour of your system in plain text with the Gherkin business language. Then run and debug your text specifications from inside Visual Studio.
bdd f# testing tickspec .net gherkin functional concurrency -
Reactive Programming in F-sharp
Featuring Tomas Petricek
Tomas Petricek will talk about his most recent favourite F# programming area - reactive programming.
reactive-programming f# .net event-driven asynchronous-workflows
My Work
@tomasp has not provided any work info yet.
Social and Blogging
@tomasp has not provided social links yet.