Een lijst van resources voor de beginnende Clojure-programmeur
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
img
Alternatief.md
README.md

README.md

Clojure

De Clojure overstapservice

Deze overstapservice is samengesteld voor programmeurs die eens iets anders willen.

Clojure is dan een prima, volwassen alternatief, want:

  • Clojure is simpel
  • Clojure is data-georiënteerd
  • Clojure vereist minder regels code
  • Clojure ondersteunt meerdere platformen
  • Clojure is interactief
  • Clojure is full stack
  • Clojure voorkomt callback hell
  • Clojure ... etc

Waarom dit zo is kun je lezen in dit artikel.

Als je daadwerkelijk die overstap wil maken, dan zijn hier wat pointers die je daarbij zouden kunnen helpen.

Tools

Je kunt Clojure direct uitproberen, via de website Try Clojure.

Een ClojureScript versie van de REPL kun hier proberen via clojurescript.io.

Er is ook een mobiele app, namelijk Replete voor iOS. De Android-versie heet Replicator en zal binnenkort verschijnen.

Maar als Clojure op je eigen machine wil draaien, dan heb je een editor en een build tool nodig.

Editors

Emacs

Onder Clojure-ontwikkelaars is Emacs het meest populair, waarschijnlijk omdat het de meest krachtige editor is voor Lisp-achtige talen. Je hebt in de vorm van CIDER een ingebouwde REPL en debugger, en via ParEdit beschik je over de mogelijkheid van structural editing.

Echter, als Emacs nieuw voor je is, hou dan wel rekening met een steile leercurve. Maar voor de dapperen onder ons: op de Clojure for the Brave and True website staan prima aanwijzingen om met Emacs aan de slag te gaan.

vim-fireplace

Voor vim-adepten bestaat bovendien de Spacemacs distributie, maar als je liever voor de 'echte' vim gaat, dan kun je fireplace gebruiken, dat ook letterlijk 'REPL' bevat.

Cursive

Cursive is een Clojure-plugin voor IntelliJ. Het heeft een ingebouwde REPL, biedt ondersteuning voor debugging en structural editing, en daarnaast natuurlijk alle features die de IDE van IntelliJ je biedt. Het is een commercieel product, maar onder bepaalde voorwaarden mag je 'm gratis gebruiken.

CounterClockwise

Als je meer een fan bent van de Eclipse IDE, dan is wellicht CounterClockwise iets voor jou.

Light Table

Is een IDE te zwaar voor je, dan is de lichtgewicht editor Light Table een prima alternatief. Eén van de opvollende features van Light Table is de instant feedback die je krijgt in de vorm van uitgerekende datawaarden, zodat je kunt zien hoe de data door je programma stroomt.

Build Tools

Leiningen

Leiningen was lange tijd (en is nog steeds) de de-facto build tool voor Clojure.

boot

Tegenwoordig is het niet langer Leiningen vs. the ants, maar Leiningen vs. boot. Zoals de makers het zelf uitdrukken: het is geen build tool, het is build tooling, omdat het je in staat stelt om verschillende bouwstappen te combineren tot een build pipeline.

Boeken

Een gangbare manier om een programmertaal te leren is door er een boek over te lezen. Inmiddels zijn er al talloze titels verschenen over het onderwerp, waardoor het moeilijk is om er één uit te kiezen. We denken echter dat de volgende drie voor beginners echt de moeite waard zijn.

Clojure for the Brave and True

Dit boek van Daniel Higginbotham (@nonrecursive) is volgens velen echt het leukste boek over Clojure voor newbies.

Clojure Programming

Geschreven door Chas Emerick (@cemerick), Brian Carper (@cdaddr) en Christophe Grand (@cgrand). Goed voor het totaaloverzicht - niet alleen van de taal - maar ook het ecosysteem van Clojure, waaronder vele libraries en dergelijke.

The Joy of Clojure

Dit pareltje van Michael Fogus en Chris Houser gaat meer in op de filosofie achter Clojure. Voor als je de beginselen net onder de knie hebt en meer wil lezen over de kracht van de programmeertaal.

Trainingen

In het volgende rijtje vind je diverse manieren om je in Clojure te trainen.

Clojure Inside Out

Heb je geen zin om een boek te lezen, dan krijg je met Clojure Inside Out keen grondige en uitgebreide videotraining van Stuart Halloway(@stuarthalloway) en Neal Ford(@neal4d).

Living Clojure

Als je het lezen van een boek wil combineren met het volgen van een cursus, dan is Living Clojure van Carin Meier (@gigasquid) ideaal voor jou. Want naast een goede introductietekst bevat het ook een compleet plan om je in zeven weken op een gestructureerde manier Clojure te leren.

Functional Programming with Clojure

De enige massive open online course (MOOC) die volledig is gewijd aan de programmeertaal Clojure. In het Engels gegeven, door de Universiteit van Helsinki.

Inleiding Functioneel Programmeren met Clojure

Collegedictaat van de Nederlandstalige Clojure-cursus, ontwikkeld door Michiel Borkent (@borkdude), voor Hogeschool Utrecht (cursusjaar 2012-2013).

Clojure from the Ground Up

Als een complete academische cursus je net iets teveel is: Kyle Kingsbury (@aphyr), onder meer bekend van het (Clojure-gebaseerde) monitoringsysteem Riemann en de Jepsen serie over gedistribueerde systemen, biedt je een hands-on tutorial in tien hapklare brokken.

4Clojure

Een andere manier om je Clojure skills te testen, is via het oplossen van de programmeerproblemen van 4Clojure. Naast de webversie is er ook een Android-versie beschikbaar op Google Play.

Meetups

Via lokale meetups kun je in een kleinschalige, informele setting een avondje uithangen met die andere Clojure ontwikkelaars, die hier in Nederlands actief zijn.

The Amsterdam Clojure Meetup

De Amsterdamse meetup over Clojure (@amsclj) wordt georganiseerd door Carlo Sciolla (@skuro). Deze community noemt zichzelf de Amsterdam Clojurians.

Functional Rotterdam

Rotterdam had ooit een Clojure Meetup, maar organisator Vijay Kiran (@vijaykiran) heeft met Functional Rotterdam de scope van de meetup verbreed naar ook andere programmeertalen.

Conferenties

Conferenties helpen om je in een paar dagen tijd helemaal te wentelen is van alles wat maar met Clojure te maken heeft. Daarnaast biedt het je de gelegenheid in contact te treden met ontwikkelaars van over de grens.

De meest conferenties rondom Clojure worden georganiseerd door Cognitect. De enige 'onafhankelijke' Clojure conferentie is een initiatief van Skills Matter.

Mocht het je niet lukken om erbij bij te zijn dan kun je de talks alsnog bekijken via ClojureTV of de Skillscasts.

Clojure/West

Laatste editie: 20-22 april, 2015, Portland (Oregon, USA)

Clojure/West 2015 Videos

Euroclojure

Laatste editie: 25-26 juni, 2015 in Barcelona (Spanje)

Euroclojure 2015 videos

Clojure/conj

Laatste editie: 16-18 november, 2015 in Philadelphia (Pennsylvania, USA).

Clojure/conj 2015 videos

Clojure eXchange

Laatste editie: 3-4 december, 2015 in Londen (UK)

ClojureX 2015 videos

Videos

Hieronder hebben een aantal videoregistraties van inmiddels 'legendarische' voordrachten op het gebied van Clojure.

Rich Hickey: Simple Made Easy

De voordracht die Rich Hickey hield op Strange Loop in 2011. Rich gebruikt de term 'de-complecting', en geeft hiermee een van de belangrijkste drijvende krachten achter het ontwerp van Clojure aan. Clojure is niet zozeer gemakkelijk ('easy'), maar wel eenvoudig ('simple').

Video | Transcript

Rich Hickey: Are We There Yet?

In deze talk legt Rich Hickey aan de hand van quotes van Whitehead uit wat de waarde is van immutable datastructures, en hoe dit via persistent datastructures werkt in Clojure.

Video | Transcript

Rich Hickey: Hammock Driven Development

Met een knipoog naar fads zoals Test Driven Development, vertelt Rich Hickey over de waarde van de hangmat bij het oplossen van programmeerproblemen. Want soms helpt het om even niet te coderen, maar om goed na te denken.

Video | Transcript

David Nolen: The Functional Final Frontier

In deze talk helpt David Nolen je om over te stappen van een MVC-architectuur, naar een meer functionele smaak van User Interface design, en hoe de persistent datastructures van Clojure(Script) daarbij helpen.

Video | Transcript

Podcast

Cognicast

Regelmatig verschijnende podcast van Cognitect, gehost door Craig Andera (@craigandera).

Blogs

Er worden talloze blog-artikelen over het onderwerp geschreven, waaronder velen die geschikt zijn voor de beginnende Clojure-programmeur.

Planet Clojure

Een metablog over Clojure, bijgehouden door Baishampayan Ghose (@ghoseb en Alex Ott (@alexott_en). Op dit moment houdt Planet Clojure ongeveer 839 blogs bij.

Clojure Gazette

Je kunt je hier abonneren op Clojure Gazette, de newsletter van Eric Normand (@ericnormand). Deze verschijnt elke week met een aantal van commentaar voorziene links naar interessante blogartikelen.

Eric houdt zelf ook een blog bij, LispCast. Zo heeft hij onlangs het artikel Where to find time to learn clojure? gepost, met daarin een aantal waardevolle tips om jezelf in de kortst mogelijke tijd in Clojure onder te dompelen.

Community

Er komt een moment, vroeger of later, dat je vast komt te zitten. Dat is het moment waarop je community om hulp kunt vragen. De Clojure community is een relatief kleine community. Echter, Clojurians zijn actief en behulpzaam, zoals je zult ondervinden bij onderstaande initiatieven.

Google Groups

Het Clojure forum, gehost door Google Groups.

Stack Overflow

Tagged questions voor Clojure op Stack Overflow.

IRC

#clojure

Clojurians Slack Chat

Met op dit moment 4745 geregistreerde slackers.