All blogs / Lisp / Clojure / Scheme
anders murphy
A blog mostly about Clojure programming
Lisp / Clojure / SchemeDatabasesPerformance / optimizationConcurrency
- Posts
- 87 from 27 Aug 2015 to 12 Oct 2026
- Posting
- monthly (6 in the last year)
- Kind
- personal blog
- Feed
- https://andersmurphy.com/feed.xml
2026 5
2025 4
2024 10
- Clojure: Synchronous server sent events with virtual threads and channels
- How to max throughput when pulling data from a third party service
- Clojure: virtual thread and dynamic var performance
- Clojure: structured concurrency and scoped values
- Clojure: managing throughput with virtual threads
- Clojure: CI with Github Actions and Postgres
- Clojure: pruning HTML with clojure.walk
- Emacs: streaming radio with emms
- Clojure: the REPL makes contributing to open source easy
- Clojure: clj-kondo datalog linting
2023 5
2022 6
- Clojure: sending emails with postal and Gmail SMTP
- Clojure: pretty print strings
- Clojure: extend honeysql to support postgres 'alter column' and 'add constraint'
- Clojure: removing namespace from keywords in response middleware
- Clojure: making missing environment variables fail at compile time
- Heroku: buildpack for Clojure tools
2021 10
- Clojure: compiling java source with tools.build
- Clojure: check if instant happened today at timezone
- Emacs: the joy of reducing workflow friction with elisp
- Emacs: building from source on macOS
- Clojure: code highlights for this website
- Clojure: website link checker
- Clojure: map-occurrence
- Clojure: ensuring multimethods are required
- Clojure: destructive macros
- Clojure: crawling Hacker News with re-seq
2020 13
- Clojure: cond-merge revisited
- Clojure: adding dissoc-in to our cond-merge macro
- Clojure: cond->, deep-merge, remove-nils and the shape of data
- Clojure: string similarity
- Clojure: adding compile time errors with macros
- Clojure: previous, current and next
- Clojure: jdbc using any and all as alternatives to in
- Emacs: setting up Apheleia to use Prettier and Zprint
- Homebrew: write your own brew formula
- Clojure: code formatting pre-commit hook with zprint
- Clojure: java interop with bean
- Clojure: code as data
- Clojure: persistent rate limiting
2019 20
- Clojure: permutations
- Ruby: functional programming
- Clojure: flattening key paths
- Clojure: manipulating HTML and XML with zippers
- Clojure: sorting tuples
- Clojure: generating HTML and XML
- Clojure: using java.time with clojure.java.jdbc
- Clojure: connection pooling with hikari-cp
- Clojure: emoji in strings
- Clojure: a debug macro for threading macros using tap>
- Clojure: intro to tap> and accessing private vars
- Clojure: sorting a sequence based on another sequence
- Clojure: personalising text
- Clojure: case conversion and boundaries
- Clojure: contains? and some
- Clojure: sorting
- Lisp-1 vs Lisp-2
- Clojure: merging maps by key (join)
- Clojure: string interpolation
- Clojure: sending emails with SendGrid