Reading
Recommended reading
Here are some suggested reading materials.
Do you wish to add your tutorial to this list? Do you have any suggestions for this list? - Let us talk!
Scicloj resources
- The Noj book - Documenting Noj, the main recommended stack of data & science libraries
- The Clojure Data Tutorials - a community-driven collection of reproducible tutorials, organized using devcontainers
- The Clojure Data Scrapbook - a community-driven collection of tutorials, with a bit less strict workflow
Contributions are welcome. 👋
Blogs
TechAscent Blog by the group behind a few of the Clojure high-performance and data-analytics libraries (mostly those at techascent, as well as dtype-next and libpython-clj)
Clojure Tidy Tuesdays by Kira McLean - Clojure data explorations of datasets shared in the R community
Code with Kira - by Kira McLean - in partucular:
- Data Manipulation in Clojure Compared to R and Python (2024-07-18)
- The Current State of ML in Clojure (2024-04-05)
Blog posts by Timothy Pratley
- Exploring probability distributions (2024-07)
- ClojureTV video views analysis (2024-06)
Squid’s Blogs by Carin Meier - deep learning, MXNet, Python interop and other technical topics
Dragan Djuric - numerical computing, linear algebra, high performance computing and deep learning
Atabey Kaygun - math, algorithms, machine learning, and data science topics demonstrated through Clojure and other Lisp dialects - in particular, Graph Algorithms in Clojure with JGraphT (2023-01-14) and many others
Thomas-Sojka - data visualization and other topics - in particular: hiccup-d3 - a gallery of Hiccup D3-charts in Clojurescript
Georgy Toporkov’s Lebenswelt - Data processing, publishing, and other topics - in particular: Dealing with out-of-memory faulty csv’s with Clojure, Duckdb, and Parquet (2024-01-22)
Arthur Caillau’s Blog - featuring the “MXNet made simple” series - deep learning from Clojure
Christopher Small - discussing the development of Oz, among other things
Clojure Goes Fast - overviews tools and practices for profiling and improving performance in Clojure
Applied Science blog by Dave Liepmann, Matt Huebert and Jack Rusher - Deep learning, data visualization, data processing
Other collections of notes
- Mentat Collective - documenting an emerging stack of libraries and tools for math, physics, and data visualization
Tutorials
General Nextjournal collections
Dieter Komentera - various topics
Tomasz Sulej - various topics
Alan Marazzi - various topics
Carin Meier - mainly Python interop
Chris Nuernberger - mainly Python interop
Math
Math for clojurists by Alan Marazzi
Probabilistic programming
Data processing
Transducers
- A general introduction by Amit Ramon
Machine Learning
XGBoost
- clj-boost - A tutorial by Alan Marazzi
Python interop
- See mainly the growing list of tutorials at Squid’s Blogs mentioned above.
Plotting
- vega-lite example Gallery in EDN by Carsten Behring
- Fun With Matplotlib by Chris Nuernberger.
- Panthera tutorials
R interop
- Clojisr tutorials
- Clojisr examples with lots of vizualiations, by Tomsaz Sulej and others
Literate programming
Data Visualization
- Vega-Lite example gallery in EDN by Carsten Behring
- vdquil - Examples from Ben Fry’s “Visualizing Data” in quil - by Dave Liepmann
Colors
- clojure2d.color documentation - path of the clojure2d library
Algorithms
- High-Dimensional Computing With Sparse Vectors Using Clojure by Benjamin Schwerdtner, Sep. 2024
Books
Books by Dragan Djuric about Deep Learning and about Linear Algebra in Clojure - books developed alongside Dragan’s work on libraries in this fields
Clojure for Data Science by Henry Garner - a bit dated in terms of the stack it presents, but stll relevant in terms of the principles presented
Practical Artificial Intelligence by Mark Watson
Other collections of resources
Resources for Clojure beginners collected by Dmitri Sotnikov
An intro to Clojure by Chris Nuernberger, inviting newcomers, mostly Pythonistas, to some of its core ideas