41554 blogs · [ { "id": "01a08798-1fb8-7247-9b2b-335fac6e00c2", "title": "A Conjure Piglet Client", "url": "https://lambdaisland.com/blog/2025-08-20-conjure-piglet-client", "published_at": "2025-08-20T09:32:34+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fac749c4d", "title": "The Hidden Lessons in a re-frame App", "url": "https://lambdaisland.com/blog/2025-07-24-re-frame-app", "published_at": "2025-07-24T08:08:02+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fad115a8d", "title": "On Cognitive Alignment", "url": "https://lambdaisland.com/blog/2025-07-03-on-cognitive-alignment", "published_at": "2025-07-03T11:58:58+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fad94a181", "title": "Beyond the If Pattern", "url": "https://lambdaisland.com/blog/2025-06-03-beyond-the-if-pattern", "published_at": "2025-06-03T14:20:01+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fae3516dd", "title": "On Interactive Development", "url": "https://lambdaisland.com/blog/2025-05-13-on-interactive", "published_at": "2025-05-13T03:35:07+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335faef7effe", "title": "Learning Fennel from Scratch to Develop Neovim Plugins", "url": "https://lambdaisland.com/blog/2025-04-16-fennel", "published_at": "2025-04-16T04:43:58+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335faf1289e3", "title": "On Inspectability", "url": "https://lambdaisland.com/blog/2025-03-20-on-inspectability", "published_at": "2025-03-20T10:46:34+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb00c8c46", "title": "On Extensibility", "url": "https://lambdaisland.com/blog/2025-02-18-on-extensibility", "published_at": "2025-02-18T14:28:46+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb041d55d", "title": "Ornament", "url": "https://lambdaisland.com/blog/2025-01-14-ornament", "published_at": "2025-01-14T09:52:11+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb12fcaac", "title": "The Admin Process", "url": "https://lambdaisland.com/blog/2024-12-19-admin-process", "published_at": "2024-12-19T09:39:23+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb1c1abc0", "title": "Announcing our Clojurists Together Plans", "url": "https://lambdaisland.com/blog/2022-11-04-clojurists-together-2022", "published_at": "2022-11-04T19:45:28+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb252df0d", "title": "The REPL is Not Enough", "url": "https://lambdaisland.com/blog/2022-06-23-the-repl-is-not-enough", "published_at": "2022-08-11T21:55:59+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb5f68bff", "title": "Unboxing the JDK", "url": "https://lambdaisland.com/blog/2022-01-27-2022-01-27-unboxing-the-jdk", "published_at": "2022-06-23T18:19:15+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb3371fdb", "title": "Setting up M1 Mac for Clojure development", "url": "https://lambdaisland.com/blog/2022-05-09-clojure-setup-m1-mac-arm", "published_at": "2022-05-09T13:14:03+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb3fb0f3b", "title": "Making Lambda Island Free", "url": "https://lambdaisland.com/blog/2022-04-25-making-lambda-island-free", "published_at": "2022-04-25T10:20:38+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb46fa8dd", "title": "What Is Behind Clojure Error Messages?", "url": "https://lambdaisland.com/blog/2022-04-07-Clojure-Error-Messages", "published_at": "2022-04-07T11:57:28+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb4ca569c", "title": "Improve your code by separating mechanism from policy", "url": "https://lambdaisland.com/blog/2022-03-10-mechanism-vs-policy", "published_at": "2022-03-11T11:50:21+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb541478b", "title": "How to control the metacognition process of programming?", "url": "https://lambdaisland.com/blog/2022-02-17-the-fg-command", "published_at": "2022-03-10T11:23:18+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb6d70a0f", "title": "Lambda Island Open Source Update January 2022", "url": "https://lambdaisland.com/blog/2022-01-13-lioss-update", "published_at": "2022-01-13T12:41:15+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb7519555", "title": "Making nREPL and CIDER More Dynamic (part 2)", "url": "https://lambdaisland.com/blog/2021-11-24-making-nrepl-cider-more-dynamic-2", "published_at": "2021-11-24T09:19:41+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb85f6084", "title": "The Classpath is a Lie", "url": "https://lambdaisland.com/blog/2021-08-25-classpath-is-a-lie", "published_at": "2021-11-16T16:22:47+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb799c818", "title": "Making nREPL and CIDER More Dynamic (part 1)", "url": "https://lambdaisland.com/blog/2021-11-03-making-nrepl-cider-more-dynamic-1", "published_at": "2021-11-03T17:14:39+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb7d91332", "title": "The Obstacles of Effective Debugging", "url": "https://lambdaisland.com/blog/2021-09-21-the-obstacles-of-effectively-debugging", "published_at": "2021-09-22T05:11:43+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb931d6da", "title": "A Tale of Three Clojures", "url": "https://lambdaisland.com/blog/2021-08-18-a-tale-of-three-clojures", "published_at": "2021-08-19T23:07:38+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb9e8590b", "title": "Launching the Lambda Island Redesign", "url": "https://lambdaisland.com/blog/2021-07-23-launching-lambda-island-redesign", "published_at": "2021-07-23T15:08:07+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fb9ecb754", "title": "Lambda Island Open Source Update July 2021", "url": "https://lambdaisland.com/blog/2021-06-29-lioss-update-june-2021", "published_at": "2021-07-19T15:00:55+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fba272b7a", "title": "Lambda Island is Changing", "url": "https://lambdaisland.com/blog/2021-06-17-lambdaisland-is-changing", "published_at": "2021-06-17T05:33:24+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fba516016", "title": "Why are Clojure beginners just like vegans searching for good cheese?", "url": "https://lambdaisland.com/blog/2021-06-04-clojure-beginners-just-like-vegans-searching-for-good-cheese", "published_at": "2021-06-08T06:34:01+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbaf59666", "title": "The beginner's way", "url": "https://lambdaisland.com/blog/2021-04-05-things-i-have-learned-in-my-1st-month-of-clojure", "published_at": "2021-04-05T18:12:16+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbb8a7a43", "title": "Call for Contributions to Lambda Island Open Source", "url": "https://lambdaisland.com/blog/2021-01-21-call-for-contributions-to-lioss", "published_at": "2021-01-25T19:55:08+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcf3e0c6a", "title": "Reloading Woes", "url": "https://lambdaisland.com/blog/2018-02-09-reloading-woes", "published_at": "2020-11-24T12:48:33+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbb9cbe74", "title": "Logging in Practice with Glögi and Pedestal.log", "url": "https://lambdaisland.com/blog/2020-09-28-logging-in-practice-glogi-pedestal", "published_at": "2020-09-28T16:03:51+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbc24d33d", "title": "Well Behaved Command Line Tools", "url": "https://lambdaisland.com/blog/2020-07-28-well-behaved-command-line-tools", "published_at": "2020-07-28T12:21:33+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc5227593", "title": "Advent 2019 part 11, Integrant in Practice", "url": "https://lambdaisland.com/blog/2019-12-11-advent-of-parens-11-integrant-in-practice", "published_at": "2020-07-01T08:16:56+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbc37b18e", "title": "Logging in Clojure: Making Sense of the Mess", "url": "https://lambdaisland.com/blog/2020-06-12-logging-in-clojure-making-sense-of-the-mess", "published_at": "2020-06-12T16:55:10+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbc400463", "title": "Lambda Island Open Source Update May 2020", "url": "https://lambdaisland.com/blog/2020-06-05-open-source-update-may-2020", "published_at": "2020-06-05T13:46:30+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbc61c70a", "title": "Lambda Island Open Source Update April 2020", "url": "https://lambdaisland.com/blog/2020-05-04-open-source-update-april-2020", "published_at": "2020-05-04T07:33:26+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbd3e9d6c", "title": "Coffee Grinders, part 2", "url": "https://lambdaisland.com/blog/2020-03-29-coffee-grinders-2", "published_at": "2020-03-29T12:01:58+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc3c15861", "title": "Advent 2019 part 14, Why did the Clojurist drop out of school?", "url": "https://lambdaisland.com/blog/2019-12-14-advent-of-parens-14-why-did-the-clojurist-drop-out-of-school", "published_at": "2020-02-05T06:10:19+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbd589d0d", "title": "Launching an Open Collective for Lambda Island OSS", "url": "https://lambdaisland.com/blog/2020-02-03-open-collective-lambda-island-open-source", "published_at": "2020-02-04T06:42:00+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd1565a48", "title": "Clojure Gotchas: Surrogate Pairs", "url": "https://lambdaisland.com/blog/2017-06-12-clojure-gotchas-surrogate-pairs", "published_at": "2020-01-15T13:39:44+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbe0df47a", "title": "Advent 2019 part 24, The Last Post", "url": "https://lambdaisland.com/blog/2019-12-24-advent-of-parens-24-the-last-post", "published_at": "2019-12-24T15:01:10+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc9d54fbf", "title": "Advent of Parens 2019", "url": "https://lambdaisland.com/blog/2019-11-25-advent-of-parens", "published_at": "2019-12-24T13:46:34+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbee66e44", "title": "Advent 2019 part 23, Full size SVG with Reagent", "url": "https://lambdaisland.com/blog/2019-12-23-advent-of-parens-23-full-size-svg-with-reagent", "published_at": "2019-12-24T13:43:45+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fbfacd519", "title": "Advent 2019 part 21, Project level Emacs config with .dir-locals.el", "url": "https://lambdaisland.com/blog/2019-12-21-advent-of-parens-21-project-config-dir-locals", "published_at": "2019-12-21T14:05:11+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc06dbfed", "title": "Advent 2019 part 20, Life Hacks aka Emacs Ginger Tea", "url": "https://lambdaisland.com/blog/2019-12-20-advent-of-parens-20-life-hacks-emacs-ginger-tea", "published_at": "2019-12-20T14:28:35+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc140c5c3", "title": "Advent 2019 part 19, Advent of Random Hacks", "url": "https://lambdaisland.com/blog/2019-12-19-advent-of-parens-19-advent-of-random-hacks", "published_at": "2019-12-19T19:20:03+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc216bf8d", "title": "Advent 2019 part 18, Exploring Bootleg", "url": "https://lambdaisland.com/blog/2019-12-18-advent-of-parens-18-exploring-bootleg", "published_at": "2019-12-18T09:43:36+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc2e4fc16", "title": "Advent 2019 part 17, trace! and untrace!", "url": "https://lambdaisland.com/blog/2019-12-17-advent-of-parens-17-trace-untrace", "published_at": "2019-12-17T10:02:59+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc2f8e0fb", "title": "Advent 2019 part 16, Coffee Grinders", "url": "https://lambdaisland.com/blog/2019-12-16-advent-of-parens-16-coffee-grinders", "published_at": "2019-12-16T10:48:08+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc31ffa0c", "title": "Advent 2019 part 15, jcmd and jstack", "url": "https://lambdaisland.com/blog/2019-12-15-advent-of-parens-15-jcmd-and-jstack", "published_at": "2019-12-15T19:12:50+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc438d042", "title": "Advent 2019 part 13, Datomic Test Factories", "url": "https://lambdaisland.com/blog/2019-12-13-advent-of-parens-13-datomic-test-factories", "published_at": "2019-12-13T09:13:23+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc46c62ea", "title": "Advent 2019 part 12, Pairing in the Cloud with Tmux", "url": "https://lambdaisland.com/blog/2019-12-12-advent-of-parens-12-pairing-cloud-tmux", "published_at": "2019-12-12T11:40:51+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc64521da", "title": "Advent 2019 part 9, Dynamic Vars in ClojureScript", "url": "https://lambdaisland.com/blog/2019-12-09-advent-of-parens-9-dynamic-vars-clojurescript", "published_at": "2019-12-11T09:13:09+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc5b9ce79", "title": "Advent 2019 part 10, Hillcharts with Firebase and Shadow-cljs", "url": "https://lambdaisland.com/blog/2019-12-10-advent-of-parens-10-hillchart-reagent-shadow-firebase", "published_at": "2019-12-10T10:45:32+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc6453879", "title": "Advent 2019 part 8, Everything is (not) a pipe", "url": "https://lambdaisland.com/blog/2019-12-08-advent-of-parens-8-everything-is-a-pipe", "published_at": "2019-12-09T14:55:37+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc66c2860", "title": "Advent 2019 part 7, Do that doto", "url": "https://lambdaisland.com/blog/2019-12-07-advent-of-parens-7-do-that-doto", "published_at": "2019-12-07T19:43:58+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc708c5ae", "title": "Advent 2019 part 6, A small idiom", "url": "https://lambdaisland.com/blog/2019-12-06-advent-of-parens-6-a-small-idiom", "published_at": "2019-12-06T12:09:03+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc7b06e01", "title": "Advent 2019 part 5, Clojure in the shell", "url": "https://lambdaisland.com/blog/2019-12-05-advent-of-parens-5-clojure-in-the-shell", "published_at": "2019-12-05T16:57:16+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc7f707d1", "title": "Advent 2019 part 4, A useful idiom", "url": "https://lambdaisland.com/blog/2019-12-04-advent-of-parens-4-a-useful-idiom", "published_at": "2019-12-04T15:49:43+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc89bb9aa", "title": "Advent 2019 part 3, `every-pred` and `some-fn`", "url": "https://lambdaisland.com/blog/2019-12-03-advent-of-parens-3-some-fn-every-pred", "published_at": "2019-12-03T15:07:22+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc8aca1fb", "title": "Advent 2019 part 2, Piping hot network sockets with Netcat", "url": "https://lambdaisland.com/blog/2019-12-02-advent-of-parens-2-netcat", "published_at": "2019-12-02T15:11:45+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fc96fa46c", "title": "Advent 2019 part 1, Clojure Vocab: to Reify", "url": "https://lambdaisland.com/blog/2019-12-01-advent-of-parens-1-clojure-vocab-reify", "published_at": "2019-12-01T22:26:32+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcad150d5", "title": "Lambda Island Streaming Live this Thursday and Friday", "url": "https://lambdaisland.com/blog/2019-09-03-streaming-sessions-thursday-friday", "published_at": "2019-09-03T14:35:18+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcafe227b", "title": "Fork This Conference", "url": "https://lambdaisland.com/blog/2019-08-09-fork-this-conference", "published_at": "2019-08-09T12:03:10+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcbb6e3cf", "title": "Advice to My Younger Self", "url": "https://lambdaisland.com/blog/2019-08-07-advice-to-younger-self", "published_at": "2019-08-07T14:21:30+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcc7d2381", "title": "ClojureScript logging with goog.log", "url": "https://lambdaisland.com/blog/2019-06-10-goog-log", "published_at": "2019-07-02T07:12:48+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd1287260", "title": "Dates in Clojure: Making Sense of the Mess", "url": "https://lambdaisland.com/blog/2017-07-26-dates-in-clojure-making-sense-of-the-mess", "published_at": "2019-05-29T06:52:36+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcca7b3e3", "title": "The Art of Tree Shaping with Clojure Zippers", "url": "https://lambdaisland.com/blog/2018-11-26-art-tree-shaping-clojure-zip", "published_at": "2018-11-26T15:33:21+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fcd6ecbc5", "title": "Test Wars: A New Hope", "url": "https://lambdaisland.com/blog/2018-11-02-test-wars-new-hope", "published_at": "2018-11-02T16:56:03+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fce5c0137", "title": "Two Years of Lambda Island, A Healthy Pace and Things to Come", "url": "https://lambdaisland.com/blog/2018-06-15-second-year-lambda-island", "published_at": "2018-06-15T12:49:18+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fce7433ce", "title": "D3 and ClojureScript", "url": "https://lambdaisland.com/blog/2018-04-26-d3-clojurescript", "published_at": "2018-04-26T18:33:30+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd01fac58", "title": "The Bare Minimum, or Making Mayonnaise with Clojure", "url": "https://lambdaisland.com/blog/2017-12-29-the-bare-minimum-clojure-mayonnaise", "published_at": "2017-12-29T14:54:49+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd0b3d959", "title": "Clojure Gotchas: \"contains?\" and Associative Collections", "url": "https://lambdaisland.com/blog/2017-10-02-clojure-gotchas-associative-contains", "published_at": "2017-10-02T16:57:57+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd1fab55a", "title": "Simple and Happy; is Clojure dying, and what has Ruby got to do with it?", "url": "https://lambdaisland.com/blog/2017-05-25-simple-and-happy-is-clojure-dying-and-what-has-ruby-got-to-do-with-it", "published_at": "2017-05-25T19:32:53+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd260b5dd", "title": "Loading Clojure Libraries Directly From Github", "url": "https://lambdaisland.com/blog/2017-05-17-loading-clojure-libraries-directly-from-github", "published_at": "2017-05-17T13:59:23+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd2a73a20", "title": "Lambda Island Turns One, The Story of a Rocky Ride", "url": "https://lambdaisland.com/blog/2017-05-13-lambda-island-turns-one", "published_at": "2017-05-13T11:49:17+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd2b8737e", "title": "Writing Node.js scripts with ClojureScript", "url": "https://lambdaisland.com/blog/2017-05-02-nodejs-scripts-clojurescript", "published_at": "2017-05-02T17:24:45+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd376f520", "title": "Announcing lambdaisland/uri 1.0.0", "url": "https://lambdaisland.com/blog/2017-02-27-announcing-lambdaisland-uri", "published_at": "2017-02-27T15:20:20+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd44aaf4a", "title": "re-frame Subscriptions Got Even Better", "url": "https://lambdaisland.com/blog/2017-02-11-re-frame-form-1-subscriptions", "published_at": "2017-02-11T11:10:43+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd4f7bde4", "title": "Why React & re-frame are fast in 7 Performance Hacks", "url": "https://lambdaisland.com/blog/2017-02-02-why-react-reagent-fast-7-performance-hacks", "published_at": "2017-02-02T13:38:02+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd5a8edac", "title": "Game Development with Clojure/ClojureScript", "url": "https://lambdaisland.com/blog/2016-12-08-game-development-with-clojure-clojurescript", "published_at": "2016-12-08T21:27:46+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd644de5c", "title": "Using ClojureScript with Google Apps Script", "url": "https://lambdaisland.com/blog/2016-10-01-clojurescript-and-google-apps-script", "published_at": "2016-10-01T11:10:33+00:00" }, { "id": "01a08798-1fb8-7247-9b2b-335fd6b2d0eb", "title": "Union Types with Clojure.Spec", "url": "https://lambdaisland.com/blog/2016-09-25-union-types", "published_at": "2016-09-27T14:32:12+00:00" } ] posts Claim your blog
Back to lambdaisland.com
Blog · corpus.blog/blogs/lambdaisland.com/posts

lambdaisland.com

lambdaisland.com

2025

2024

2022

2021

2020

2019

2018

2017

2016