SPA Conference session: Get Clojure!

One-line description:A practical introduction to the Clojure programming language
 
Session format: Workshop (150 mins) [read about the different session types]
 
Abstract:Clojure is a relatively new dynamic language for the Java Virtual Machine. It’s particularly interesting as it is a functional language drawing inspiration from the Lisp family of languages. In fact, it’s been described as Lisp reloaded.

This laptop-based session will allow you to get to grips with Clojure and explore the language’s key features.

We'll be using Clojure 1.1 for the session and will distribute this as a JAR file at the start of the session although it would be handy if people had Clojure installed beforehand.

Objectives:

1. To share our excitement about Clojure.
2. To give people a basic grounding in Clojure so that they can efficiently explore further on their own.
3. To allow them to explore some key language concepts and some programming paradigms (functional programming, novel concurrency approaches, high-level macros) that may be new to them.
 
Audience background:A few years programming experience would be useful. It’s not necessary to have programmed in Clojure or Java before although any previous exposure to functional languages, Java or Lisp-like languages would be useful.

Although there will be some slides this isn’t a theoretical session.
 
Benefits of participating:We like Clojure. We hope you will too after taking part in this session.

You’ll get a high-level overview of the main language concepts enabling you to be more productive if you take the language further.

You’ll also get some hands-on experience with the language in a supported environment to help you get over the initial hump of learning a new language with programming paradigms that might be new to you.
 
Materials provided:Some Clojure reference material.

Example files.

Pointers for future research after the session.
 
Process:The session will be supported through exposition covering the key concepts.

The bulk of the session will be a set of hands-on programming exercises. Participants are encouraged to pair program, particularly if there are a lot of participants, but this isn’t essential if you want to work on your own.

If we have time we will run a short retrospective at the end of the session to give people time to share their experiences.
 
Detailed timetable:
 
Outputs:Retrospective results

Blog page(s).
 
History:
 
Presenters
1. Mark Dalgarno
Software Acumen
2. Robert Chatley
Develogical Ltd
3. Clive Tong
Red Gate