56,966 blogs · [ { "id": "01a08747-776b-71c7-b253-f18b05647e16", "title": "Trash Signal's album is out now on Bandcamp!", "url": "https://blog.djy.io/trash-signal-album-is-out-now-on-bandcamp/", "published_at": "2025-01-01T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a2d95f00", "title": "Using lots of instruments in an Alda score", "url": "https://blog.djy.io/using-lots-of-instruments-in-an-alda-score/", "published_at": "2024-06-24T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a3ce3502", "title": "MusicXML import and other new Alda features", "url": "https://blog.djy.io/musicxml-import-and-another-new-alda-features/", "published_at": "2023-06-26T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a44b94b7", "title": "JUXT Cast interview at Strange Loop 2022", "url": "https://blog.djy.io/juxt-cast-interview-at-strange-loop-2022/", "published_at": "2022-11-17T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a541c294", "title": "Trash Signal - \"The Palms\"", "url": "https://blog.djy.io/trash-signal-the-palms/", "published_at": "2022-11-16T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a576a7d7", "title": "Alda welcomes your Hacktoberfest contributions!", "url": "https://blog.djy.io/alda-welcomes-your-hacktoberfest-contributions/", "published_at": "2022-10-10T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a6359511", "title": "Clojure through the lens of music", "url": "https://blog.djy.io/clojure-through-the-lens-of-music/", "published_at": "2022-03-30T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a715c70c", "title": "10 Bash quirks and how to live with them", "url": "https://blog.djy.io/10-bash-quirks-and-how-to-live-with-them/", "published_at": "2022-01-31T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a7ec0fea", "title": "Announcing Alda 2", "url": "https://blog.djy.io/announcing-alda-2/", "published_at": "2021-06-30T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a8c99472", "title": "Why I'm rewriting Alda in Go and Kotlin", "url": "https://blog.djy.io/why-im-rewriting-alda-in-go-and-kotlin/", "published_at": "2021-03-29T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a923deab", "title": "How I deploy my personal projects", "url": "https://blog.djy.io/how-i-deploy-my-personal-projects/", "published_at": "2021-02-09T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32a98bb95f", "title": "Something cool that happened every month of my life: 2011", "url": "https://blog.djy.io/something-cool-that-happened-every-month-of-my-life-2011/", "published_at": "2021-01-25T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32aa45661b", "title": "Alda and the nREPL protocol", "url": "https://blog.djy.io/alda-and-the-nrepl-protocol/", "published_at": "2020-12-14T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ab1c9b8e", "title": "Alda has a new logo and website", "url": "https://blog.djy.io/alda-has-a-new-logo-and-website/", "published_at": "2020-10-26T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ab939ba9", "title": "Conjuring Clojure in Vim: 2020 Edition", "url": "https://blog.djy.io/conjuring-clojure-in-vim-2020-edition/", "published_at": "2020-10-05T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ac7e8a85", "title": "Using git write-tree to cache builds", "url": "https://blog.djy.io/using-git-write-tree-to-cache-builds/", "published_at": "2020-08-20T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32acf49c28", "title": "How to implement an Alda library for your favorite language", "url": "https://blog.djy.io/how-to-implement-an-alda-library-for-your-favorite-language/", "published_at": "2020-06-29T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ad046763", "title": "Fixing timing issues in tests", "url": "https://blog.djy.io/fixing-timing-issues-in-tests/", "published_at": "2020-04-15T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ade62ba4", "title": "The FIFO-controlled, text-to-speech narrator", "url": "https://blog.djy.io/fifo-narrator/", "published_at": "2020-02-28T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ae1ab93d", "title": "Exit Mice: Eggshells", "url": "https://blog.djy.io/exit-mice-eggshells/", "published_at": "2020-01-25T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32ae389a21", "title": "Reorganizing my vimrc", "url": "https://blog.djy.io/reorganizing-my-vimrc/", "published_at": "2019-12-19T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32aeb8c589", "title": "PlantUML turns text into diagrams", "url": "https://blog.djy.io/plantuml-turns-text-into-diagrams/", "published_at": "2019-12-16T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32af42a0e9", "title": "Working with OSC: UDP vs. TCP", "url": "https://blog.djy.io/working-with-osc-udp-vs-tcp/", "published_at": "2019-12-13T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32afd9cb79", "title": "Conjuring Clojure in Vim", "url": "https://blog.djy.io/conjuring-clojure-in-vim/", "published_at": "2019-11-22T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b026a955", "title": "Writing music with Alda #3: flats, sharps, and key signatures", "url": "https://blog.djy.io/writing-music-with-alda-3/", "published_at": "2019-11-11T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b0dff7a4", "title": "Writing music with Alda #2: rhythm and meter", "url": "https://blog.djy.io/writing-music-with-alda-2/", "published_at": "2019-10-23T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b1355fe6", "title": "Writing music with Alda #1: your first notes", "url": "https://blog.djy.io/writing-music-with-alda-1/", "published_at": "2019-10-11T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b1df14e7", "title": "Minutiae #5: Strange Loop, Mantra & Chronoid", "url": "https://blog.djy.io/minutiae-5/", "published_at": "2019-09-23T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b29a9c8b", "title": "Minutiae #4: Strange Loop talk, git submodules", "url": "https://blog.djy.io/minutiae-4/", "published_at": "2019-09-10T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b2ec8c29", "title": "Minutiae #3: alda-clj lightning demo, weather data, Seven Languages in Seven Weeks", "url": "https://blog.djy.io/minutiae-3/", "published_at": "2019-08-26T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b3a088d4", "title": "Minutiae #2: Crux, slideshow tools, Asciidoc, Heart of Clojure", "url": "https://blog.djy.io/minutiae-2/", "published_at": "2019-08-15T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b3af9e84", "title": "Minutiae #1: Alda stuff, Clojure tooling for Vim", "url": "https://blog.djy.io/minutiae-1/", "published_at": "2019-07-28T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b472ce0a", "title": "Out of the Blue", "url": "https://blog.djy.io/out-of-the-blue/", "published_at": "2019-07-15T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b477682a", "title": "A Music Composition Language With a Functional Backbone", "url": "https://blog.djy.io/a-music-composition-language-with-a-functional-backbone/", "published_at": "2018-10-18T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b5661670", "title": "Exit Mice and an ode to grunge pop", "url": "https://blog.djy.io/exit-mice-and-an-ode-to-grunge-pop/", "published_at": "2018-07-04T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b6016e5a", "title": "Taskwarrior, where have you been all my life?", "url": "https://blog.djy.io/taskwarrior-where-have-you-been-all-my-life/", "published_at": "2018-05-09T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b66a20fc", "title": "A History of the Architecture of Alda", "url": "https://blog.djy.io/a-history-of-the-architecture-of-alda/", "published_at": "2017-10-02T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b6fc95ce", "title": "Alda for Clojurists", "url": "https://blog.djy.io/alda-for-clojurists/", "published_at": "2016-06-15T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b793b405", "title": "Alda: A Music Programming Language Built With Clojure", "url": "https://blog.djy.io/alda-a-music-programming-language-built-with-clojure/", "published_at": "2016-05-24T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b7dd7eb6", "title": "Vignettes: Vimwiki, HTTPie, jq", "url": "https://blog.djy.io/vignettes-vimwiki-httpie-jq/", "published_at": "2016-05-13T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b7e9b62c", "title": "moar no love videos!!!", "url": "https://blog.djy.io/moar-no-love-videos!!!/", "published_at": "2016-05-07T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b8857993", "title": "Alda Has a Bunch of New Features", "url": "https://blog.djy.io/alda-has-a-bunch-of-new-features/", "published_at": "2015-11-28T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b95a3592", "title": "Getting Your First Programming Job: Not as Hard as You Think", "url": "https://blog.djy.io/getting-your-first-programming-job-not-as-hard-as-you-think/", "published_at": "2015-11-17T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32b9ed84e7", "title": "Something cool that happened every month of my life: 2010", "url": "https://blog.djy.io/something-cool-that-happened-every-month-of-my-life-2010/", "published_at": "2015-10-12T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bac24d46", "title": "Alda: A Manifesto and Gentle Introduction", "url": "https://blog.djy.io/alda-a-manifesto-and-gentle-introduction/", "published_at": "2015-09-05T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bacb35d6", "title": "Making MIDI Sound Awesome in a Clojure Program", "url": "https://blog.djy.io/making-midi-sound-awesome-in-a-clojure-program/", "published_at": "2015-06-25T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32badb29f4", "title": "Vignettes: Vim, Fish Shell, Amethyst", "url": "https://blog.djy.io/vignettes-vim-fish-shell-amethyst/", "published_at": "2015-06-12T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bb22d53f", "title": "Making MIDI Sound Awesome in Your JVM", "url": "https://blog.djy.io/making-midi-sound-awesome-in-your-jvm/", "published_at": "2015-04-17T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bb7d031c", "title": "Susanne", "url": "https://blog.djy.io/susanne/", "published_at": "2015-04-13T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bc27f9c1", "title": "I put some S-expressions in your Ruby", "url": "https://blog.djy.io/i-put-some-s-expressions-in-your-ruby/", "published_at": "2015-03-07T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bc2a611d", "title": "No Love @ WKNC", "url": "https://blog.djy.io/no-love-at-wknc/", "published_at": "2015-01-30T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bc7c9bbe", "title": "Pixel Rain", "url": "https://blog.djy.io/pixel-rain/", "published_at": "2015-01-24T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bd721c58", "title": "Clojure character utilities, now available as a clojar!", "url": "https://blog.djy.io/clojure-character-utilities-now-available-as-a-clojar/", "published_at": "2014-12-25T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bdcd11d9", "title": "Antibubbles - 'Cactus'", "url": "https://blog.djy.io/antibubbles-cactus/", "published_at": "2014-12-14T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32be22d937", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 7", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-7/", "published_at": "2014-11-23T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bf1751b6", "title": "A character utility library for Clojure", "url": "https://blog.djy.io/a-character-utility-library-for-clojure/", "published_at": "2014-10-14T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32bf927eb4", "title": "RIP, iPod Classic :(", "url": "https://blog.djy.io/rip-ipod-classic/", "published_at": "2014-09-18T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c01f917f", "title": "Introducing Riffmuse", "url": "https://blog.djy.io/introducing-riffmuse/", "published_at": "2014-08-23T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c0ecd1c3", "title": "Antibubbles - Live @ the Layabout (8/5/11)", "url": "https://blog.djy.io/antibubbles-live-at-the-layabout-8-5-11/", "published_at": "2014-08-16T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c179e6e4", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 6", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-6/", "published_at": "2014-08-14T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c1ce55c8", "title": "20 cool Clojure functions", "url": "https://blog.djy.io/20-cool-clojure-functions/", "published_at": "2014-07-30T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c2a09e74", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 5", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-5/", "published_at": "2014-07-09T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c2ede4e1", "title": "Saint-Saëns' \"The Swan\" on Theremin", "url": "https://blog.djy.io/saint-saens-the-swan-on-theremin/", "published_at": "2014-07-05T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c30af540", "title": "A novel solution to FizzBuzz", "url": "https://blog.djy.io/a-novel-solution-to-fizzbuzz/", "published_at": "2014-06-14T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c328475e", "title": "4Clojure Problem #178 - Revised", "url": "https://blog.djy.io/4clojure-problem-178-revised/", "published_at": "2014-04-06T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c3300447", "title": "4Clojure Problem #178", "url": "https://blog.djy.io/4clojure-problem-178/", "published_at": "2014-04-03T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c4224e99", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 4", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-4/", "published_at": "2014-03-19T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c4949943", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 3", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-3/", "published_at": "2014-03-05T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c50c8b8d", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 2", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-2/", "published_at": "2014-02-20T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c5d8d7e7", "title": "_why's (Poignant) Guide to Ruby in Clojure: Part 1", "url": "https://blog.djy.io/whys-guide-to-ruby-in-clojure-part-1/", "published_at": "2014-01-06T00:00:00+00:00" }, { "id": "01a08747-776c-7367-a8e0-ae32c6374890", "title": "Happy New Year!", "url": "https://blog.djy.io/happy-new-year/", "published_at": "2014-01-01T00:00:00+00:00" } ] posts Claim your blog
Back to blog.djy.io
Blog · corpus.blog/blogs/blog.djy.io/posts

blog.djy.io

blog.djy.io

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015

2014