I’m excited to be giving a tutorial, a presentation and a panel at JAOO 2009 in Aarhus in early October. I’ve had the good fortune to be involved with JAOO and QCon a few times over the last few years, and am honoured to be presenting in Aarhus, the home of it all.

 

I’ve copied details below – hope to see you there!

 

Tutorial: "Getting Started With F#"

Time: Sunday, 4 Oct,  9:00 – 12:00

Abstract:  F# is a succinct and expressive typed functional programming language for the .NET platform, and Microsoft will be supporting F# as a first class language in Visual Studio 2010. In this tutorial you'll get a taste or F# programming from the basics through to some parallel and asynchronous programming with F#. You'll learn how to get started with the functional, imperative and object-oriented programming in F#, how to use shaped functional data to reduce the amount of state in your application, and how to use units of measure to bring sanity and checking to your numerical code. You'll also get a taste for some parallel and asynchronous programming, and take a look at some more advanced techniques in reflection.

 

Target Audience: Developers, architects and anyone interested in learning how to apply functional techniques in practice and have fun along the way

Presentation: "An Introduction to F#"

Track: Programming Languages

Time: Monday, 5 Oct, 13:30 - 14:30

Abstract: F# is a succinct and expressive typed functional programming language for the .NET platform, and Microsoft will be supporting F# as a first class language in Visual Studio 2010. We'll take a look at what you need to know to start having fun with F#, and how to use it productively. We'll also look at some sample applications of F# and functional programming and cover aspects of parallel, reactive and asynchronous programming with F#.

Target Audience: Developers, architects and anyone interested in learning how to apply functional techniques in practice and have fun along the way

Panel: "Concurrency Expert Panel"

Track: The Concurrency challenge

Time: Tuesday, 6 Oct,  13:30 - 14:30

Abstract: One theme of the panel is concurrent programming models. Specifically; classic locking, transactional memory and actors. And with concurrency we mean parallel systems (e.g. shared-memory multicore, cluster)

  • The goal is performance
  • One trust domain
  • Latencies are small and predicable
  • One failure => kill the program is just about tolerable
  • One of the goals for the discussion would be to get a better understanding of strengths and weaknesses; advice and discussion about when to use which model.

Another goal is:

  • for the audience to get to "pick the brains of the experts"
  • to get a good discussion going amongst the experts
  • to get concrete advice on choice of programming language (hence model) for certain problems.
  • advice on solving common problems that appear when using a particular model