Compose :: Melbourne 2016 Review

Seeaich - "Skyline"

Exciting News!

The Compose :: Melbourne 2016 committee has reconvened to make a decision on weather to run the event again in 2017. Everything is looking quite favorable for a continuation of last-year’s inaugural Melbourne-based functional-programming conference. However, something that we had promised we would do (and as part of the preamble to running the event this year) was a review of last-year’s event. The review had been continually delayed for the obvious reason - we were all exhausted from running Compose :: Melbourne in 2016 and there was no pressing need to do it. Well, now that the motions of a new event have begun it seems like a good time to put a little retrospective into order.

I thought that rather than try to do this as a collaborative piece of work, instead I could write up my thoughts in a blog-post, and if the other members of the committee want to remark on their experiences too then they can do the same, or at least suggest amendments to this post.

Just the Feelings

Last year, when the committee set the plan in motion to run the conference, we had a high-degree of uncertainty about the level of demand for such an event in Melbourne. We decided to put everything together on a shoe-string budget and go in with low-expectations. We figured that even if there was no sponsorship and a low turnout, it would at-least be a fun extension of the Meetup groups that we run.

Thankfully, our expectations were well and truly exceeded by the turnout and events at Compose :: Melbourne 2016. Positive experiences were retold to us by many of the attendees and speakers, with a desire to see the event run again next-year. Some of the constructive criticism that we received included remarks that it might make sense to partition the first-day into two tracks - one for beginners and one for advanced practitioners. There was also a desire to see more structure for the unconference on day-two.

Just the Numbers

While I could go on for some time about how the conference was organised and how the days played-out it might be interesting to take a look at some of the raw facts about Compose :: Melbourne 2016.


Compose New-York


Compose :: Melbourne may have topically been about functional-programming, but practically it was really a great-deal more about the people who are involved with FP. The community of practitioners, beginners, educators, organisers, luminaries, and fans in general.


Noon Silk (Chair)
Andy Kitchen
Ken Scambler
Sarah Oakes
Les Kitchen
Lyndon Maydwell
Gala Camacho Ferrari

Advisory Board

Bernie Pope
Javier Candeira
James Harland
James Sofra
Sean Seefried
Bianca Gibson


REA         - Australia lives here.
SEEK        - Australia's no. 1 jobs, employment, career and recruitment site.
YesLogic    - We develop powerful tools for the Web Age.
Silverpond  - Silverpond is a data-science and solutions consultancy.
YOW         - YOW! Conference and Workshops for Developers by Developers.
RMIT        - RMIT is a global university of technology, design and enterprise


M.M.T Chakravarty                - Keynote - Playing with Graphics and Animations in Haskell
Sharon Holliday                  - Practical Programming in an Exception Free World
Paul Bone                        - Plasma Programming Language
Alistair Roche                   - Datomic in Production
Finlay Thompson                  - Using Cloud-Haskell to Build a Continuous-Integration
                                   Platform for Reproducible Research
Lee Naish                        - Equational Reasoning and Intended Semantics in
                                   Functional Programming
Ben Hutchison                    - Getting Work Done with the Eff Monad in Scala
George Wilson                    - The Extended Functor Family
Kris Jenkins                     - Types All The Way Down
Brian McKenna                    - Productionisation of Functional Optics
Sean Seefried                    - The Joy of Refactoring with Strong, Static Types
Magdalena Cassel & Aaron Edwards - Functional Eyes: Applying Functional Principles
                                   in Other Paradigms


Nearly 200 tickets sold.


Our timeline of events stretched for over six months from conception to conference.

First Email to Compose New-York: February 24, 2016
CFP Launch Party: May 19, 2016
Extension of CFP
Close of CFP
Compose Day-One: August 29, 2016
Compose Day-Two: August 30, 2016
Committee Catch Up...


While the conference was a fun and illuminating event for those who attended, we strived to extend the reach of the proceedings by taking time to ensure that they were captured and spread to an audience far wider than those who came on the day. The videography performed by Takeshi and its promotion were the primary way that this was achieved. It’s always nice to come across someone with a Compose :: Melbourne bag, sticker, or t-shirt since it shows that the conference really happened.

Web-Pages and Blog-Posts
Speaker's Gifts
Attendee Swag


We managed the Majority of Compose :: Melbourne via Email, Github and Trello. I’ve enumerated some of the interesting titles below.

Three Mailing-Lists:

Compose :: Melbourne
Compose :: Melbourne Admin
Compose :: Melbourne Advisory Board

Roughly 150 Emails (that I saw). Nearly 30 committee meetings. Nearly 50 Wiki Pages (27 of which were committee meeting minutes).

Home                             Accounting                             Advisory Board
Call for Presentations (CFP)     Ceremonies Scripts                     Committee
Costs                            Haskell Workshop Details               Jokes
Launch Party                     Promotional Email Program Complete     Sponsorship Tiers
Submission Categorisation        Submission Responses                   Submission Guidelines
Ticket Pricing                   Timeline                               Timeline Outlines
Workshops ......

4 Trello boards:

Compose :: Melbourne
On-The-Day Checklist

Nearly 340 Trello cards:

Promotion and Communication                  | Presenters Admin
Soliciting Volunteers                        | Technical Support
Attendee Swag                                | Speakers Swag
Materials on the Day                         | Day-One and Two Checklists
Videography Concerns                         | Conveyance After the Event
Advice from Advisory-Board                   | Publication of Recordings
Promotion of Artefacts                       | Reimbursement of Financiers
Party and Speaker's Dinner                   | Workshop Materials
Committee Meetings                           | Sponsorship Tiers / Prospectus
Sponsorship Agreements                       | Web-Development
Clarification of Purpose                     | Setting dates
Finalising venue details                     | Event on Industry Forums
Communication with NY                        | Finding Committee Members
Roles and Subcommittees                      | Partnership Value Assessments
Call-For-Proposals Design                    | Website content review
Videography assesment                        | Submissions on EasyChair
Feedback                                     | CFP and Speakers
Setup of Materials                           | Reviewing Food Requirements
Recieving Catering                           | Extending the CFP
Reviewing Submissions                        | Travel requirements
Promoting the Keynote                        | Changing the Keynote
Promotion of Conference                      | Developing Marketing Plans
Committee Milestones and Deadlines           | Emailing updates
Promotion of events at Meetups               | Admin and speakers tickets
Printing Branded Clothing                    | Promotion through Podcasts
Creation of Break Slides                     | Unconference development
Soliciting marketing materials from Sponsors | Collating FAQs
Publicising Sponsors                         | Negotiating Wireless at Venue
Administering workshops                      | Setting up registration
Promotion of Diversity                       | Reminding speakers about the dates
Refunding speakers and administrators        | Scripting remarks
Reviewing workshop content                   | Liasing with Volunteers
Due diligence on Sponsor rewards             | Ensure that timings remained strict
Writing Jokes                                | Collecting speakers slides
Organising Backup Speakers                   | Crediting Co-Authors in Biographies
Reminding Attendees about the dates          | Adminitration of Twitter
Procurement of manufacturing for Keyrings    | Procurement of manufacturing bags
Creation of promotional codes                | Reimbursing Keynote flights
Celebration night for the committee          | What to do about profit/loss
Soliciting advisory board                    | Market analysis
Speaker Selection Administration             | Sponsor Solicitation Administration
Creating and publishing content on the blog  | Consider running again next year?
Venue Admin                                  | Backup Gear
Marketing Materials                          | "Less Obvious Checklist" Items
Members for the Advisory Board               | Publication of Photos
Budgeting / Accounting                       | Workshop Organisation
Soliciting Sponsorship                       | Legal Agreements
Reviewing Venues                             | Creation of Mailing lists
Source-Control Administration                | Organisation-Structure Discussions
Finding a Videographer                       | Feedback mechanisms
Graphic-Design, Promo and Swag               | Reviewing Caterers
Closing the CFP                              | Presentation details and Biographies
Event pages on eventbrite                    | Launch Party
Negotiating Branding                         | Venue sponsor
Discussion on Insurance                      | Speaker's technology requirements
Checking registration numbers                | Selecting replacement speakers
Promotion of Ticket sales                    | Liasing with the Venue A/V
Scripting introductions                      | Receiving shipments from Sponsors
Determining diatary requirements             | Exporting trello/easychair for archival
Advertising Workshops                        | Invoicing
Design and print of name-badges              | Ensuring we thank people
Publication of the Code-of-Conduct           | Researching accomadation

All-in-all, Compose :: Melbourne 2016 took a great-deal of organisation and hard-work to make happen, but thankfully we should be able to reuse a large portion of that work when it runs again.