Skip Ribbon Commands
Skip to main content
  
  
  
  
  
Abstract
Links
  
  
  
MS NERD4/9/2009 6:30 PM4/9/2009 8:30 PM

​For the first meeting of the New England F# User Group I gave a 30 minute rundown of the most fundamental language features and syntax.  I then, as a code kata, had the group work through Project Euler problem #25.

Richard Minerich - New England F# User Group Jumpstart Video (4/9/2009)Richard Minerich
  
MS NERD5/4/2009 6:30 PM5/4/2009 8:30 PM

In this talk I introduce VSLab, an environment based on F# and Visual Studio integration, designed to offer an environment similar to Matlab or Mathematica, suitable for Scientific computing. VSLab is an add-in developed at University of Pisa in collaboration with Microsoft Corp. whose main contribution is the ability to control Visual Studio toolwindows from F# interactive even if the interaction is between two distinct processes.  VSLab is an interesting F# application in several respects, interop, integration in Visual Studio, and core windows programming.

Antonio Cisternino
  
6/1/2009 6:30 PM6/1/2009 8:30 PM

​"Arguably one of the most powerful features of the F# Language is its pattern-matching capability. Often touted as F#’s approach to if-then and switch-case control flow, Pattern-Matching does all this – and more. In this session, Richard will start with the fundamentals of Pattern-Matching (what it is, and how it works) and he’ll follow with alternative applications of it. We’ll look at Pattern-Matching syntax and how it compares to C#, conditional matching and guard rules, what happens with unmatched patterns and how to apply Pattern-Matching in a variety of scenarios. You’ll leave the session with a deeper understanding of the power of F#’s pattern-matching features and how you can use it in F# programs (or leverage it from C# programs).

Richard Hale Shaw - F# and Pattern Matching Video (6/1/2009)Richard Hale Shaw
  
MS NERD7/6/2009 6:30 PM7/6/2009 8:30 PM

​F# is Microsoft’s multi-paradigm language which sets out to deal with problems in the .Net ecosystem that are more easily solved with a functional approach. Perhaps you’ve seen some of the basic syntax which although itself is interesting, it’s now time to check out what people are doing with the language in a commercial context. We’ll show how F# helps out with concurrent programming in an actual enterprise application including legacy code interaction. We’ll also discuss OO FP as an architectural decision: the good, the bad, and the ugly.

Amanda Laucher
  
MS NERD8/3/2009 6:30 PM8/3/2009 8:30 PM

​With the increasing amount of data available to us, we need new ways of thinking around how to create scalable solutions in order to best exploit it. In the past, concurrency programming has been difficult with very few understanding the low-level constructs such as locks, semaphores, mutexes and so on.  The multi-core revolution gives us an opportunity to look at concurrency in different ways rather than our shared-state past.  Languages such as F# are well suited as it is a functional language which emphasizes immutability, side effect free functions and a lack of state. Through the use of rich programming models, and functional programming techniques, come find out how F# can create rich solutions using asynchronous and parallel programming techniques.

Matthew Podwysocki
  
9/7/2009 6:30 PM9/7/2009 8:30 PM

​In this talk we’ll take another look at some of the core features of F#, from an advanced user point of view, to better understand why the language has those features in the first place. We’ll go on to talk about how this affects the way that F# programs are structured. The architecture of a functional style program will be compared to the way that traditional procedural and object oriented programs are structured.

Robert Pickering - Why F# Is Like It Is - Video (9/7/2009); Robert Pickering - Why F# Is Like It Is - Slides (9/7/2009)Robert Pickering
  
MS NERD10/5/2009 6:30 PM10/5/2009 8:30 PM

​The way we deal with data is changing.  Increasingly, model based approaches are having an effect on the way we organize and implement the notation we use to compose data transformations and manage side effects.  At the basic end of this spectrum is the philosophy of fluent interfaces, and domain driven design.  At the extreme end is the full implementation of  domain specific languages.   I refer to a design driven by its placement on this spectrum as Language Oriented Programming.  In this talk I will explore several examples of Language Oriented Programming, and show that this particular design approach hits the sweet spot of F# and functional programming.   Examples will include functional notation as a language, modeling language design with algebraic data types and transforming models to execute on alternative platforms such as the GPU.

Chance Coble - Language Oriented Programming in F# Video (10/5/2009)Chance Coble
  
MS NERD11/2/2009 6:30 PM11/2/2009 8:30 PM

In choosing the right framework for building a modern web application, there are many trade-offs to be made.  A cynic might be tempted to say:

"Programmer productivity, security, scalability: pick 2 (or maybe just 1?)".  This talk is about my attempt to jam all three into one framework.  In fact, I will be talking about a new domain-specific programming language, Ur/Web.  I claim that Ur/Web is significantly ahead of all of the mainstream competition, in every one of the three categories I mentioned.  Ur/Web supports new abstraction and modularity techniques, statically guarantees absence of common security vulnerabilities, and has an optimizing compiler that generates fast native code that doesn't use garbage collection.  The secret weapon is ideas from the world of typed functional programming, including the ML family, Haskell, and more recent advances in dependently-typed programming.

I will demonstrate the key elements of Ur/Web through a series of demo applications with source code.  This will be an interactive presentation, and we can try modifying the demos or cooking up new ones on the fly, in response to what the audience is curious about.The way we deal with data is changing.  Increasingly, model based approaches are having an effect on the way we organize and implement the notation we use to compose data transformations and manage side effects.  At the basic end of this spectrum is the philosophy of fluent interfaces, and domain driven design.  At the extreme end is the full implementation of  domain specific languages.   I refer to a design driven by its placement on this spectrum as Language Oriented Programming.  In this talk I will explore several examples of Language Oriented Programming, and show that this particular design approach hits the sweet spot of F# and functional programming.   Examples will include functional notation as a language, modeling language design with algebraic data types and transforming models to execute on alternative platforms such as the GPU.

Adam Chlipala - Towards the Ultimate Web Application Framework via Fancy Types - Video 1 (11/2/2009); Adam Chlipala - Towards the Ultimate Web Application Framework via Fancy Types - Video 2 (11/2/2009)Adam Chlipala
  
MS NERD12/7/2009 6:30 PM12/7/2009 8:30 PM

​Asynchronous, concurrent, and parallel programming can be challenging.  Microsoft has been working on several projects to make these tasks less difficult and more robust.  Many of these projects, including the Task Parallel Library, PLINQ, and functional programming via F#, have matured to the point that they are ready for prime time and will be baked into Visual Studio 2010.  Talbott will describe the different concepts of concurrent programming and investigate some of F#'s inherent mechanisms for addressing these challenges such as Asynchronous Workflows. 

Talbott Crowell - Parallel Programming with F# - Slides (12/7/2009); Talbott Crowell - Parallel Programming with F# - Video (12/7/2009)Talbott Crowell
  
MS NERD1/4/2010 6:30 PM1/4/2010 8:30 PM

​An exploration of structures from category theory and the roles they play in functional programming from an F# perspective.   Applications and examples will be presented along with a discussion on how to utilize these structures in F# programs.  The ability to provide fast, reliable and secure programs  depends greatly on what we can reason and assume about programs - with the aid of the machine proof assistant CoQ, emphasis will be placed on what we can reason about F# programs and the value this reasoning provides us.

Mutaamba Maasha - Categories and Reason - Slides (1/4/2010)Mutaamba Maasha
  
MS NERD2/1/2010 6:30 PM2/1/2010 8:30 PM

​We are going to explore a few of the many F# Tools and Testing Frameworks.  Included will be NaturalSpec, FsCheck and perhaps some others.

Richard Minerich
  
MS NERD3/1/2010 6:30 PM3/1/2010 8:30 PM

​We'll explore some of the features of F# that help to write short, correct, and readable programs.

Jason King
  
MS NERD4/5/2010 6:30 PM4/5/2010 8:30 PM

​Learn how to use F# to build Silverlight applications using the Silverlight toolkit to make graphs and charts. No knowlege of F# necessary. Visual Studio and either C# or VB.NET knowledge is recommended.

Talbott Crowell - F# and Silverlight - Slides (4/5/2010); Talbott Crowell - F# and Silverlight - Video (4/5/2010)Talbott Crowell
  
MS NERD5/3/2010 6:30 PM5/3/2010 8:30 PM

Carl and Richard are loading up the DotNetMobile (a 30 foot RV) and driving to your town again to show off the latest and greatest in Visual Studio 2010 and .NET 4.0! And to make the night even more fun, we’re going to bring a mystery rock star from the Visual Studio world to the event and interview them for a special .NET Rocks Road Trip show series. Along the way we’ll be giving away some great prizes, showing off some awesome technology and having a ton of laughs.

This stop will include an intro to F# and a special topic panel dicussion on F# featuring New England F# User leaders:

  • Richard Hale Shaw (MVP)
  • Rick Minerich (MVP)
  • Talbott Crowell

Carl Franklin/Richard Campbell/.NET Rocks! Ken's Blog (5/3/2010); Carl Franklin/Richard Campbell/.NET Rocks! Rick's Blog (5/3/2010)Carl Franklin, Richard Campbell
  
MS NERD6/7/2010 6:30 PM6/7/2010 8:30 PM

​Steffen is the author of the two open source F# projects: FAKE - F# Make and NaturalSpec.  In this talk, he shows these tools in action, and talks a bit about some internal implementation details. In particular he shows why he used F# and how specific language constructs help to simplify the usage.

Steffen Forkmann - Open Source Tools in F# - Video (6/7/2010)Steffen Forkmann
  
MS NERD7/5/2010 6:30 PM7/5/2010 8:30 PM

​F# makes it very easy to develop high performance, readable, and efficient code.  However, like all things, a lack of discipline and best practice adoption can lead to a mess.  In this talk we will cover 5 best practices that you can start using today to make yourself a better F# developer.  We will explore each best practice, discuss the reason(s) that the described approach is preferred, and explore a few examples.

Daniel Mohl is a professional software engineer with over 11 years of hands-on development and team lead experience.  He actively blogs and tweets about F#, has spoken on F# at various forums, and co-organized the Nashville F# Firestarter.  You can view his blog at blog.danielmohl.com and follow him on twitter at twitter.com/dmohl.

Daniel Mohl - 5 Best Practices for F# Development - Slides (7/5/2010)Daniel Mohl
  
MS NERD8/2/2010 6:30 PM8/2/2010 8:30 PM
F# Workflows are a powerful and elegant tool for solving many real-world problems, though they can be rather daunting at first. We'll survey some ways in which Workflows in the standard F# libraries are used for common development tasks, then dig into detail on how they work. We'll then build a workflow that provides a validation framework that can be used for parsing or other tasks.

Scott Theleman is a Software Developer with over 10 years professional design and development experience in both small startup and mid-sized corporate/Enterprise environments on applications ranging from desktop GUIs to website/web applications to server side and middleware work. He has also been Technical Lead on several government contracts. He has worked on a diverse range of projects including a network discovery and topology product, a Learning Management System, Enterprise Service Oriented Architecture components for a large and complex search service, and atmospheric and weather sciences applications.
Scott Theleman - Understanding F# Workflows - Slides (8/2/2010); Scott Theleman - Understanding F# Workflows - Video 1 (8/2/2010); Scott Theleman - Understanding F# Workflows - Video 2 (8/2/2010)Scott Theleman
  
MS NERD9/13/2010 6:30 PM9/13/2010 8:30 PM

​Vladimir gives a WebSharper overview and explore its applications. Code samples include: rich client-side programming capabilities (WebExcel), integration with existing JavaScript libraries (demo with minor subset of JsRX), and client-server communication.

Vladimir Matveev - Web Development in F# - Slides (9/13/2010)Vladimir Matveev
  
MS NERD10/4/2010 6:30 PM10/4/2010 8:30 PM

​In this talk Anton will present a pre-release version of WebSharper 2.0 by developing and testing a small standalone JavaScript component. Anton will demonstrate that WebSharper 2.0 gives as much flexibility and runtime efficiency as coding JavaScript by hand, while also providing static typing, IDE integration and standard library support. We will have a look at using JavaScript idioms from within WebSharper, controlling the shape of the generated code, debugging, unit testing and deploying the components. Anton will also briefly mention the new optimizations available in WebSharper 2.0.

Anton Tayanovskyy - Developing WebSharper 2.0 Applications - Video (10/4/2010)Anton Tayanovskyy
  
MS NERD11/1/2010 6:30 PM11/1/2010 8:30 PM

​In this session, Richard discusses the habits of successful programmers, how you create them and how you ensure that they take root and grow – and to do so, Richard draws off of nearly 28 years of programming, development, team leadership, consulting and other experience in the software industry. If you’re unhappy with whom you are as a programmer, or think that you can vastly improve your ability to perform as a software developer, you’ll want to view this session. For more info, go to Richard's site at CodeWithConfidence.net.

Richard Hale Shaw - Habits of Successful Software Developers - Video (11/1/2010)Richard Hale Shaw
  
MS NERD12/6/2010 6:30 PM12/6/2010 8:30 PM

​Talbott will provide a brief introduction to WP7DEV (Windows Phone 7 Development) followed by an interactive programming environment where everyone can participate. Bring your laptop loaded with Windows Phone 7 tools. Or bring your laptop with F# and work on an alternative assignment. Or don’t bring a laptop and just your brain and help out with the gang by providing advice and or options. We will be building a Windows Phone 7 app for viewing upcoming F# User Group meetings.

Talbott Crowell WP7 Code Kata - Code Sample 1 (12/6/2010)Talbott Crowell
  
MS NERD1/9/2011 6:30 PM1/9/2011 8:30 PM

JSON APIs are the hot new thing, and everything from detailed Web apps to quick command-line scripts need to interact with them. There is a tension, though: the vaguely-typed, quick, carefree syntax of JSON can be tedious when put against the statically-typed general syntax of Haskell. In this talk I discuss JSON and this conflict, existing solutions, how to use them, and how this is being used in the Github  library for Haskell.

Mike Burns
  
MS NERD1/10/2011 6:30 PM1/10/2011 8:30 PM

Scott will continue last month's dual code kata - Windows Phone 7 and Poker Strategies in F#! Bring your laptop loaded with Windows Phone 7 tools. Or bring your laptop with F# and pit your Poker strategies against other F#ers. Or don’t bring a laptop and just your brain and help out with the gang by providing advice and or options. We will continue building a Windows Phone 7 app for viewing upcoming F# User Group meetings. Check the Previous Speakers page for links to code samples (newer versions will be up soon).

Scott Theleman
  
MS NERD2/7/2011 6:30 PM2/7/2011 8:30 PM

Q: What are Agent Based Models? Can I see an example? How about an example in a functional language? How about the same example in an OO language? Oh, can we compare them?
A: A different approach to statistical models, Yes, Yes, Yes, and Yes.
We'll be looking in depth at a classic ABM: The "Averages Kill" model (http://www.informs-sim.org/wsc01papers/172.PDF) and examples in Java + Clojure.

Zach is fascinated by the programming process, different approaches to design, and programmer's education. 
He's been a professional software engineer for 7 years and currently runs the Boston Software Craftsmanship group (http://groups.google.com/group/boston-software-craftsmanship)
Zachary Shaw
  
MS NERD3/14/2011 6:30 PM3/14/2011 8:30 PM

​Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant and type-safe way.

The goal of this talk is to give a broad overview of this state-of-the-art language and present its key features.

Furthermore, it will try to show why Scala might be your best choice not only for cross-platform
functional programming, but also when a mix of functional and imperative styles of programming is desired.

Nermin Serifovic: Scala for F# DevelopersNermin Serifovic
  
MS NERD4/4/2011 6:30 PM4/4/2011 8:30 PM

In this talk we'll explore how F# could be used for parsing structured data formats like JSON and how to implemnet a simple StackOverflow client using this F# parser.

Petr Lepilov Parsing JSON Sildes; Petr Lepilov Parsing JSON source codePetr Lepilov
  
Microsoft Waltham5/2/2011 6:30 PM5/2/2011 8:30 PM

​First class functions are like numbers in a lot of ways; they share many of the same properties.  This is far from just a novelty, it's largely these properties that make functional programming so fantastic.  From composition to computation expressions, they enable much of what F# has to offer.

Richard Minerich
  
MIT Stata Center, Cambridge, MA6/13/2011 6:30 PM6/13/2011 8:30 PM
Runar Bjarnason
  
Microsoft Cambridge7/11/2011 6:30 PM7/11/2011 8:30 PM

F# Futures: Type Providers

F# 2.0 gives users several tools for manipulating data in a strongly-typed, functional fashion.  This talk will cover a powerful new feature coming in F# 3.0, Type Providers, and show how they enable strongly-typed access to external data sources.  Come see a live demo of how easy Type Providers  make it to programming against data sources such as databases and web services.

Bio

Keith Battocchi is a contractor working with the F# team, where he is contributing templates, samples, and guidance to make it easier to do data-rich programming with F#.  Keith has been using F# enthusiastically since 2007, and answers many F#-related questions on StackOverflow.com under the handle kvb.

Keith Battocchi
  
Microsoft NERD Center (Cambridge, MA)8/1/2011 6:30 PM8/1/2011 8:30 PM

​"Take it easy" is the Clojure motto, that's how laid back it is.  Hack in Clojure, a Lisp dialect for Java, if you want to chill out and have a good time.  Another reason to hack Clojure is if you want to hack with friends.

(Note: "Take it easy" is probably not really the Clojure motto.  It's probably "better living through parentheses" or something equally droll.)

I can't teach you how to program in Clojure; that would take too long.  I merely want to give you an idea of what progamming in Clojure is like - how it tastes.


Bio


I need to scre up Emacs in 2002, and have been using various Lisp dialects, amateurishly and professionally, since then.  I joined a South Florida company last year to work on mobile web optimization in Clojure, and since its acquisition, now do the same at Akamai in Cambridge Center.

You can find me on the Interwebs by googling "S11001001" too; no one has decided to share my username, for some reason.

Stephen Compall
1 - 30Next