Skip to content

Commit 1ce69e8

Browse files
add notes on scinoj-light-1
1 parent 90f48d7 commit 1ce69e8

File tree

3 files changed

+75
-22
lines changed

3 files changed

+75
-22
lines changed

README.md

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ quarto preview site
5555

5656
Merged pull requests are shown on the website via a workflow.
5757

58-
5958
## Design
6059

6160
Align with Clojure's values: simplicity, community, and tooling that helps you think.
@@ -103,32 +102,33 @@ Differentiation between posts, pages, and presentations is by `type` metadata (a
103102

104103
#### Examples
105104

106-
| Namespace | Description |
107-
|----------------------------------------------------------------|---------------------------------------------------------------|
108-
| `scicloj.clay.clojure-notebooks-for-pythonistas` | Introduction to Clay for Python programmers. |
109-
| `lambdaisland.kaocha.customization-tips-and-tricks` | Tips for fast iteration with Kaocha. |
110-
| `lambdaisland.kaocha.up-and-running-on-ubuntu` | Kaocha setup guide for Ubuntu. |
111-
| `clojure.transducers.how-it-works-explained-with-diagrams` | Explains transducers with diagrams. |
112-
| `clojure.lazy-sequences.detailed-explanation-by-example` | In-depth example-driven guide to lazy sequences. |
113-
| `clojure-conj.2023.state-of-clojure.notes-from-the-backrow` | Notes on the "State of Clojure" talk at Clojure/Conj 2023. |
114-
| `hiccup.basic-html-generation` | Tutorial on generating HTML with Hiccup. |
115-
| `algorithms.graph.layout.force-directed-spring-simulation` | On force-directed graph layout algorithms (library-agnostic). |
116-
| `data-structures.datoms.all-about-eavt` | EAVT indexing, not tied to any vendor. |
117-
| `clojure.deps-edn.monorepo-setup-in-detail` | Monorepo setup using `deps.edn`. |
118-
| `cursive.super-easy-debugging-techniques` | Debugging in Cursive IDE, for beginners. |
119-
| `cognitect.datomic.cloud.how-we-scale-to-5million-users` | Datomic Cloud scaling case study. |
120-
| `reagent.component-lifecycle.a-tale-of-life-death-and-rebirth` | A whimsical take on Reagent component lifecycles. |
105+
| Namespace | Description |
106+
|-------------------------------------------------------------------------|---------------------------------------------------------------|
107+
| `scicloj.clay.clojure-notebooks-for-pythonistas` | Introduction to Clay for Python programmers. |
108+
| `lambdaisland.kaocha.customization-tips-and-tricks` | Tips for fast iteration with Kaocha. |
109+
| `lambdaisland.kaocha.up-and-running-on-ubuntu` | Kaocha setup guide for Ubuntu. |
110+
| `clojure.transducers.how-it-works-explained-with-diagrams` | Explains transducers with diagrams. |
111+
| `clojure.lazy-sequences.detailed-explanation-by-example` | In-depth example-driven guide to lazy sequences. |
112+
| `conferences.clojure-conj-2023.state-of-clojure.notes.from-the-backrow` | Notes on the "State of Clojure" talk at Clojure/Conj 2023. |
113+
| `hiccup.basic-html-generation` | Tutorial on generating HTML with Hiccup. |
114+
| `algorithms.graph.layout.force-directed-spring-simulation` | On force-directed graph layout algorithms (library-agnostic). |
115+
| `data-structures.datoms.all-about-eavt` | EAVT indexing, not tied to any vendor. |
116+
| `clojure.deps-edn.monorepo-setup-in-detail` | Monorepo setup using `deps.edn`. |
117+
| `cursive.super-easy-debugging-techniques` | Debugging in Cursive IDE, for beginners. |
118+
| `cognitect.datomic.cloud.how-we-scale-to-5million-users` | Datomic Cloud scaling case study. |
119+
| `reagent.component-lifecycle.a-tale-of-life-death-and-rebirth` | A whimsical take on Reagent component lifecycles. |
121120

122121
### File system organization
123122

124-
| Directory | Description |
125-
|--------------------------------|----------------------------------------------------------------------|
126-
| `src` | Code for building a website and database |
127-
| `notebooks` | Source root for notebooks (Clojure and Markdown), images, data files |
128-
| `site` | Static assets of the Quarto website |
123+
| Directory | Description |
124+
|-------------|----------------------------------------------------------------------|
125+
| `src` | Code for building a website and database |
126+
| `notebooks` | Source root for notebooks (Clojure and Markdown), images, data files |
127+
| `site` | Static assets of the Quarto website |
129128

130129
Non-Clojure files in `notebooks` will be synced to `site`.
131-
Shared images can go in `images`, but prefer placing images and data files as siblings to your namespace under `notebooks`.
130+
Shared images can go in `images`, but prefer placing images and data files as siblings to your namespace under
131+
`notebooks`.
132132
All Clojure and Non-Clojure files in `notebooks` should go under a subdirectory,
133133
so that it is clear they are not part of the static configuration of `site`.
134134
When building the site, Clojure namespaces are built to markdown files under `site/{my/namespaced/notebook.qmd}`.
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
---
2+
title: "The Hallway Track: SciNoj/Light#1 data analysis stories"
3+
author: Timothy Pratley
4+
type: post
5+
date: 2025-05-28
6+
category: data
7+
tags: [data-science, noj]
8+
keywords: [noj]
9+
---
10+
11+
The SciNoj Light #1 Conference brought together Clojure enthusiasts, data scientists, and researchers for an engaging exploration of functional programming in scientific and AI applications.
12+
The event fostered a collaborative, informal atmosphere where participants exchanged ideas across disciplines from cognitive psychology to urban planning.
13+
14+
If you missed it, you can view the talks on the [Youtube playlist](https://www.youtube.com/playlist?list=PLb_VRZPxjMAAaoAPnk8ClWET3baRV1Whv).
15+
The [conference website](https://scicloj.github.io/scinoj-light-1/speakers.html)
16+
has detailed information about the talks and speakers.
17+
18+
![Noj core components](hallway_track.png)
19+
20+
A major focus was the development of Clojure's data science Noj toolkit.
21+
This suite of libraries demonstrated how Clojure combines functional programming elegance with practical performance.
22+
Speakers highlighted Noj's interoperability with Python and Java ecosystems while emphasizing its advantages for reproducible and maintainable workflows.
23+
The community's collaborative energy was evident throughout.
24+
25+
> "You can have the cake of Clojure's immutable persistent data structures and eat it too;
26+
> Get your answers fast and make your customers happy."
27+
> — Harold
28+
29+
Artificial intelligence emerged as a recurring theme, with several talks exploring hybrid approaches to enhance reliability.
30+
One discussion centered on Retrieval-Augmented Generation (RAG) systems,
31+
where combining large language models with Clojure's logic programming capabilities could improve accuracy in structured domains like government Q&A.
32+
Another session delved into probabilistic programming with Inferme, illustrating Bayesian methods for modeling uncertainty.
33+
These technical deep dives were balanced by ethical considerations and reflections on technology's societal implications.
34+
35+
Scientific applications showcased Clojure's versatility.
36+
One talk explored simulating fluid dynamics.
37+
Another focused on forecasting tropical cyclone paths using physics-informed machine learning.
38+
Cognitive science experiments were also featured, using collaborative games and puzzles to study human planning behavior, and brain wave monitors.
39+
The conference also highlighted social impact work, such as data-driven advocacy for safer street designs, proving that technical tools can drive urban change.
40+
41+
What stood out to me was how effectively the SciCloj community uses Clojure notebooks for collaborative work.
42+
Presenters shared their research through executable notebooks that cleanly combined code, visualizations and explanations.
43+
It's a practical pattern broadly applicable.
44+
45+
Throughout the event, a sense of optimism prevailed about Clojure's untapped potential.
46+
While acknowledging gaps in ML tooling compared to Python, speakers demonstrated that Clojure's functional rigor and JVM scalability make it a good fit for data science.
47+
Attendee discussions envisioned collaborating further on logic-guided AI and semantic web ontologies.
48+
There was a recurring theme of bridging the gap between academic theory and real-world engineering.
49+
SciNoj Light ultimately painted a picture of Clojure not just as a language, but as a catalyst for interdisciplinary innovation.
50+
51+
A big thank you to the organizers!
52+
I'm looking forward to the next SciNoj,
53+
it's a rare and valuable blend of science, technology, community and code.
439 KB
Loading

0 commit comments

Comments
 (0)