From Heroku / Salesforce
Speaker, author, conference organiser & community obsessed developer - loves Clojure, Emacs, Cats, Cycling & Agile development. @Heroku @SalesforceDevs
Clojurescript is a well designed functional programming language allowing developers to concentrate on what their webapps should do, rather than be tied up in the mechanics of the language. The dynamic nature of ClojureScript supports highly interactive development for rapid prototyping; coupled with a built-in specification library & generative testing you can easily develop a robust and well defined codebase.
By encouraging immutability via persistent data structures and using the core.async library to write asynchronous code in a synchronous style, you gain huge performance boost whilst clearly reasoning about your code.
Reactive apps are supported by Clojurescript libraries or using React.js directly.
Who should attend your session?
Any developer interested in writing reactive frontend web apps, or some simple games, who want to try the functional approach in a nice clean language. Or anyone just curious about Clojure/Clojurescript.
What are the 'next steps' for an attendee to take after attending your session?
The workshop content will include additional tutorials and resources for your continued journey into Clojure, Clojurescript and reactive apps. Attendees can practice what they have learnt at coding dojos held by the LondonClojurians.org community.
Who is your favourite British fictional character?
Baldrick (from Blackadder). I have a cunning plan...
How can developers get into ClojureScript?
Apart from my wonderful workshop, anyone can get into Clojurescript by visiting https://clojurescript.org/
The syntax is the same for Clojure, so the most challenging bit is understanding front-end development and React concepts.
The LondonClojurians.org community runs 4 events every month, so plenty of chance to join in the fun.
What are the advantages over other popular languages for apps?
Clojurescript has a very small syntax and helps you solve complex problems by composing immutable functions together. Each part of your application is therefore very easy to understand and its behaviour is deterministic (when using pure functions).
Clojurescript also enables you to write asyncronous applications simply, using the concept of channels.
With built-in immutable data structures, it’s simple to parallelize your application over multiple cores without having to manage state mutation, leading to very high scalability of your applications.
Its arguably the most fun language ever invented.