[1][fpjs] read [2][joc] read or [3]learn more [4]Send More Paramedics λ λ λ [5]Fogus' [6]Thoughts on life, [7]programming, and [8]thinking ❤ [9]c [10]clj [11]erl [12]pl [13]frink [14]fth [15]cl [16]org [17]pure [18]icl [19]qi ❤ Follow me on Twitter... [20]● or RSS... [21]● Run this blog in [22]mobile [23]2024 [24]2023 [25]2022 [26]2021 [27]2020 [28]2019 [29]2018 [30]2017 [31] 2016 [32]2015 [33]2014 [34]2013 [35]2012 [36]2011 [37]2010 [38]2009 [39]2008 [40]2007 [41]2006 [42]2005 [43]2004 [44]2003 [45]2002 [46]The best things and stuff of 2024 Dec 23, 2024 Great things and people that I discovered, learned, read, met, etc. in 2024. No particular ordering is implied. Not everything is new. also: see the lists from [47]2023, [48]2022, [49]2021, [50]2020, [51]2019, [52] 2018, [53]2017, [54]2016, [55]2015, [56]2014, [57]2013, [58]2012, [59]2011 and [60]2010 Great posts | articles | talks read/watched • [61]ELITE: The game that couldn’t be written from Alexander the ok – Elite was one of my favorite games on my Commodore 64 1,000,000 years ago and so I’m a sucker for articles on this gem. If you’re interested, also check out [62]the annotated C64 source code. ^[63]1 • [64]The Rich History of Ham Radio Culture by Kristen Haring – I missed out on the Ham radio craze and only recently learned about its rich history. This article is a good overview and starting point if you’re interested in learning too. • [65]Get to Know Your Japanese Bathroom Ghosts by Eric Grundhauser – Describes the interesting Japanese cultural folklore around bathroom ghosts. • [66]The History of WordStar by Abort Retry Fail LLC – A great historical article about one of the most influential software suites ever created. Additionally, the comments are a goldmine of additional information and corrections and should not be skipped. • [67]Combinatory Programming by zdsmith – Describes combinatorial programming using motivated examples — a technique that’s surprisingly scarce in articles about the topic. • [68]Philip K. Dick’s Favorite Classical Music by Open Culture – Discusses PKD’s love for classical music and the references to composers and their works in his fiction. The post also, includes an [69]11-hour classical music playlist for your listening pleasure. • [70]Goodbye, Kory by Andy Looney – The world lost Kory Heath, a game designer whom I admire immensely. I’ve talked about his magnum opus [71] Zendo on this blog before and have run numerous play sessions over the years. He was single-handedly responsible for hundreds of hours of enjoyment around my home and within my group of friends. The world is much the poorer without him in it. RIP. ^[72]2 Most viewed blog posts by me • [73]On method values, part 1 – We released Clojure 1.12.0 this year and so I wanted to write about one of the features that I worked on. Method values are symbolic references to Java methods that can be used in value contexts and the design and implementation of this feature was interesting enough to talk about. The feature has been generally well received by the Clojure community. Favorite technical (and technical-adjacent) books discovered (and read) • [74]And so FORTH by Timothy Huang – I found this long out of print Forth tome via inter library loan and enjoyed it immensely. It’s a nice blend of the ideas in Brodie’s [75]Thinking Forth and something like Geere’s [76] Forth: The Next Step. It was a sad day when I had to return this beauty back to the library because I could have used another read or two at least. • [77]BASIC and FORTH in Parallel by S.J. Wainwright – This style of book is exactly the kind of book that I would one day like to write. While the specifics of any such book would be different, the central conceit is perfect. That is, this book uses BASIC to create a simple stack machine and Forth interpreter and then presents simple Forth programs exercising them. Favorite non-technical books read • [78]Butcher’s Crossing by John Williams – Follows Harvard drop-out Will Andrews as he escapes to the American frontier with a wad of cash to find adventure and “an original relation to nature”. Andrews eventually finds Miller who is more than happy to help the young man part with his money in an attempt to find a hidden Colorado valley filled with buffalo that may or may not still (if it ever did) exist. The book follows Miller and Andrews’ (plus a skinner Schneider and driver Hoge) trek throw the frontier and describes in harrowing detail their tribulations. I could not stop reading and finished the book in a weekend. This one demands multiple reads to really absorb the nuance. • [79]The Spectral Link by Thomas Ligotti – Contains two stories by Ligotti: “Metaphysica Morum” and “The Small People”. The first is quite different than most of Ligotti’s work that I’ve read so far. It follows a self-described “metaphysical mutant” and blends overtly dark humor with an underlying pessimistic philosophy centered on a theme of euthanasia. “The Small People” is a dream-like exploration of paranoia and isolation. Both stories are a good introduction to the range in Ligotti’s work if you’re interested in checking him out. • [80]The Corvo Cult by Robert Scoble – Frederick Rolfe (aka Baron Corvo) was an little-known Edwardian author who is often remembered more for his bombastic personality than his fictional works. This book talks about the rise and growth of the still active “Corvo Cult” — an obscure literary fandom. In many cases, Rolfe’s fervid devotees matched the controversial author in eccentricity, but the true fascination lies in the broad range of people drawn to his eclectic works. Number of books written or published 0 Number of programming languages designed 0.5 Favorite music discovered • [81]The Paragons – At some point I became interested in the roots of ska and The Paragons were the best group that I discovered during my explorations. • [82]That’s All! by Sammy Davis Jr. – *A fantastic performance from a master of the vocal form. The songs are brilliant but the banter between songs will keep me listening into the distant future. Favorite films discovered • [83]Withnail & I – [84]Sam Aaron recommended this film to me years ago but I only managed to watch it in 2024. It’s a great example of a dry comedy following a couple of screw-ups and their misadventures. • [85]Jodorowsky’s Dune – A documentary about the most influential film that never was. • [86]Requiem for a Dream – I’m probably the last person in the world to watch this relentless survey of despair. Not for the faint of heart. Favorite podcasts • [87]Will Radio – Will Byrd started the year promising a KiloTube of videos (i.e. 1024 videos) in 2024 and it’s been a blast following along! There’s no one quite like Will and so any chance that I can get to experience more of him I will jump on. • [88]Eros + Massacre – Another podcast triumph by Samm Deighan surveying the weird world of psychotronic cinema. Favorite programming languages (or related) I hacked on/with on my own time • [89]Joy – Joy is a mindfrak of a programming language in the concatenative functional language family. The core of Joy is beautiful and among the foundational programming languages in my opinion. • [90]Forth – Sticking with the concatenative family in 2024, I continued to explore Forth. Interestingly the language is incredibly rich in history and conducive to a wide range of techniques and paradigms. I’m unsure if I’ll ever find the opportunity to use Forth in anger, but I will say that I should come out of my explorations a stronger programmer and program designer. Programming languages used for work-related projects • [91]Java – Working deep in the Clojure compiler means that much of my work in 2024 was in Java. • [92]Clojure – 2024 marks the 15th year^[93]3 as a full-time Clojure programmer and the 1st year as a full-time Clojure core developer. • [94]ClojureScript – Less-so now than when I was consulting full-time but I occasionally dig into explore the implications of changes to Clojure on CLJS. • [95]Datalog – The [96]Datomic flavor of Datalog is the flavor of choice for database access, be it in-process or in the cloud. Again, my day-to-day usage is limited, but I have my share of personal databases hosted on Datomic. Programming languages (and related) that I hope to explore more deeply • [97]Joy – There’s a mountain of deep information on Joy that I would like to devour in 2025.^[98]4 • [99]Mouse – Yet another concatenative language to explore that’s long-dead but still has some lessons to teach one such as myself. • [100]POP-11 – Another dead language that was designed to support AI applications in the 70s and 80s. I love the idea of exploring the language and the suite of applications that built up around it. Favorite papers discovered (and read) • [101]Recursion Theory and Joy by Manfred von Thun – Joy’s underlying reliance on combanatory programming manifests deep in the language even to the degree that recursion in the language is implemented in userspace via recursive combinators. This paper describes the “Joy Way” and its relationship to recursion. • [102]A Simple Applicative Language: Mini-ML (PDF) by D. Clement and J. Despeyroux and T. Despeyroux and G. Kahn – Presents a beautiful definition of ML language and its compilation to an abstract machine. Still haven’t read… I Ching, A Fire upon the Deep, Don Quixote, and [103]a boat-load of sci-fi Favorite technical conference attended • [104]Clojure/conj 2024 – This was the first Clojure conference that I played a somewhat active part in organizing. Let me be clear, my part in the matter was minimal at best, but it did provide me a window into the complexities of organizing a conference. The conference itself was a blast and it was great to meet old and new Clojure friends as well as [105] colleagues! Favorite code read • [106]Restrained Datalog in 39loc by Christophe Grande – I’ve learned over the years that if Christophe writes a technical article then it behooves me to study it deeply. The highlight of the year from Christophe was his simple, yet rich, Datalog implementation in 39 lines of Clojure code. It’s clear that 39 lines of Clojure goes a long way and especially so when a master of the language plays in it. • [107]Post-Apocalyptic Programming by Serge Zaitsev – I love the central conceit of the post, summarized as “what technology could/should we create in the absence of modern computing niceties?” The post starts with a CPU emulator, builds a language for it, and motives its decisions along the way. There’s a brilliant hard science fiction story in here somewhere, I can feel it. • [108]MINT – MINT is highly inspirational to me as a lesson in minimal programming language design. Based on Forth, MINT makes various design decisions and trade-offs to remain small and fast. Life-changing technology “discovered” Nothing this year. State of plans from 2023 • Clojure 1.12 – Released in [109]early September and one of the biggest releases in years as far as feature additions go. • Go much deeper down the concatenative rabbit-hole – An unmitigated success! • Publish even more non-technical writing – My research into the Corvo-related archives stored at Georgetown University was a success. However, my efforts in writing up my findings has stalled. Plans for 2025 • [110]Clojure 1.13 – Thinking around the 1.13 release is ongoing and we’d like to get it out sooner rather than later. Stay tuned. • [111]clojure.core.async next – We’ve laid the groundwork for a new version of core.async and released it as version 1.7.701. We’d love to leverage JDK 21+ virtual threads to vastly simplify core.async’s implementation and have started along this path in earnest. • [112]Simplify my blog – I’d love to move away from WordPress in 2025. • [113]Juxt – Juxt is my exploration in functional concatenative language design built on the JVM. It’s not yet clear to me if or when I would ever release this into the wild, but the explorations have been great fun and I’ve used Juxt as a vehicle for finding relevant books and papers.^[114]5 That said, most of my programming time is spent maintaining and evolving Clojure, but there are rare moments of time that I can spend on Juxt, and I plan to continue to do so in 2025. [115][juxt-274x300] 2024 Tech Radar • try: [116]Boox Go 10.3 tablet – recommended by many colleagues • adopt: [117]Blank Spaces app – helps to avoid phone brain-drain • assess: [118]TypeScript – What does it buy me over JS? • hold: [119]Zig – This looks like a dead-end for me • stop: [120]Joy of Clojure 3rd edition – Another edition is unlikely but hopefully something else may come of this work… this is an evolving situation. People who inspired me in 2024 (in no particular order) Yuki, Keita, Shota, Craig Andera, Carin Meier, Justin Gehtland, Rich Hickey, Nick Bentley, Paula Gearon, Zeeshan Lakhani, Brian Goetz, David Nolen, Jeb Beich, Paul Greenhill, Kristin Looney, Andy Looney, Kurt Christensen, Samm Deighan, David Chelimsky, Chas Emerick, Stacey Abrams, Paul deGrandis, Nada Amin, Michiel Borkent, Alvaro Videla, Slava Pestov, Yoko Harada, Mike Fikes, Dan De Aguiar, Christian Romney, Russ Olsen, Alex Miller, Adam Friedman, Tracie Harris, Alan Kay, Janet A. Carr, Wayne Applewhite, Naoko Higashide, Zach Tellman, Nate Prawdzik, Bobbi Towers, JF Martel, Phil Ford, Nate Hayden, Sean Ross, Tim Good, Chris Redinger, Steve Jensen, Jordan Miller, Tim Ewald, Stu Halloway, Jack Rusher, Michael Berstein, Benoît Fleury, Rafael Ferreira, Robert Randolph, Joe Lane, Renee Lee, Pedro Matiello, Jarrod Taylor, Jaret Binford, Ailan Batista, Matheus Machado, Quentin S. Crisp, John Cooper, Conrad Barski, Amabel Holland, Ben Kamphaus, Barry Malzberg (RIP), Kory Heath (RIP). Onward to 2025! :F ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1. I also recommend and excellent YT video [121]“The Making of ELITE”. [122]↩ 2. Dave Chalker also wrote about Kory on his blog at “[123]Remembering the Master: An Inelegant Eulogy for Kory Heath“. [124]↩ 3. This is strictly my work-life time. My total use of Clojure has been longer. [125]↩ 4. Sadly the death of Manfred von Thun brought the death of Joy with it. The literature the language is indeed deep but it’s finite and has stopped growing entirely. I would like to help fix this stagnation if I can in 2025. [126]↩ 5. You can see the current [127]Juxt bibtex on Github. [128]↩ Related posts: 1. [129]The best things and stuff of 2023 2. [130]Goodbye Sir Arthur Clarke 3. [131]The best things and stuff of 2012 No Comments, [132]Comment or [133]Ping Comments are closed. [134][ ][135][Submit] Copyright © 2002 - 2011 by [136]Fogus ([137]license information) [138]read about my policy on affiliate links Theme heavily influenced by [139]Ryan Tomayko [ | [140]Log in | [141]top] References: [1] http://www.amazon.com/Functional-JavaScript-Introducing-Programming-Underscore-js/dp/1449360726/?tag=fogus-20 [2] http://www.joyofclojure.com/buy [3] http://www.joyofclojure.com/ [4] https://blog.fogus.me/ [5] http://fogus.me/me/ [6] http://fogus.me/static/ [7] http://fogus.me/fun [8] http://blog.fogus.me/linkage/ [9] https://github.com/search?q=username%3Afogus+language%3Ac [10] https://github.com/search?q=username%3Afogus+language%3Aclojure [11] https://www.erlang.org/ [12] https://www.swi-prolog.org/ [13] http://futureboy.us/frinkdocs/ [14] https://colorforth.github.io/ [15] http://www.cons.org/ [16] http://orgmode.org/worg/org-contrib/babel/ [17] https://agraef.github.io/pure-lang/ [18] https://clean.cs.ru.nl/Clean [19] http://shenlanguage.org/ [20] http://www.twitter.com/fogus [21] http://blog.fogus.me/feed/ [22] http://blog.fogus.me/index.php?wptheme=Carrington+Mobile [23] https://blog.fogus.me/2024/ [24] https://blog.fogus.me/2023/ [25] https://blog.fogus.me/2022/ [26] https://blog.fogus.me/2021/ [27] https://blog.fogus.me/2020/ [28] https://blog.fogus.me/2019/ [29] https://blog.fogus.me/2018/ [30] https://blog.fogus.me/2017/ [31] https://blog.fogus.me/2016/ [32] https://blog.fogus.me/2015/ [33] https://blog.fogus.me/2014/ [34] https://blog.fogus.me/2013/ [35] https://blog.fogus.me/2012/ [36] https://blog.fogus.me/2011/ [37] https://blog.fogus.me/2010/ [38] https://blog.fogus.me/2009/ [39] https://blog.fogus.me/2008/ [40] https://blog.fogus.me/2007/ [41] https://blog.fogus.me/2006/ [42] https://blog.fogus.me/2005/ [43] https://blog.fogus.me/2004/ [44] https://blog.fogus.me/2003/ [45] https://blog.fogus.me/2002/ [46] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/ [47] https://blog.fogus.me/2023/12/18/the-best-things-and-stuff-of-2023/ [48] http://blog.fogus.me/2022/12/13/the-best-things-and-stuff-of-2022/ [49] https://blog.fogus.me/2021/12/27/the-best-things-and-stuff-of-2021/ [50] http://blog.fogus.me/2020/12/31/the-best-things-and-stuff-of-2020/ [51] http://blog.fogus.me/2019/12/30/the-best-things-and-stuff-of-2019/ [52] http://blog.fogus.me/2019/01/02/the-best-things-and-stuff-of-2018/ [53] http://blog.fogus.me/2018/01/02/the-best-things-and-stuff-of-2017/ [54] http://blog.fogus.me/2016/12/29/the-best-things-and-stuff-of-2016/ [55] http://blog.fogus.me/2015/12/29/the-best-things-and-stuff-of-2015/ [56] http://blog.fogus.me/2014/12/29/the-best-things-and-stuff-of-2014/ [57] http://blog.fogus.me/2013/12/27/the-best-things-and-stuff-of-2013/ [58] http://blog.fogus.me/2012/12/26/the-best-things-and-stuff-of-2012/ [59] http://blog.fogus.me/2011/12/31/the-best-things-and-stuff-of-2011/ [60] http://blog.fogus.me/2010/12/30/the-best-things-in-2010/ [61] https://www.youtube.com/watch?v=lC4YLMLar5I [62] https://elite.bbcelite.com/c64/ [63] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fn:elite [64] https://thereader.mitpress.mit.edu/the-rich-history-of-ham-radio-culture/ [65] https://www.atlasobscura.com/articles/japans-bathroom-ghosts [66] https://www.abortretry.fail/p/arrogant-difficult-powerful [67] https://blog.zdsmith.com/series/combinatory-programming.html [68] https://www.openculture.com/2014/05/philip-k-dicks-favorite-classical-music.html [69] https://open.spotify.com/playlist/1RsnkX0bQWd2CVWW8jcxBR [70] https://new.wunderland.com/2024/11/20/goodbye-kory/ [71] https://blog.fogus.me/2014/10/23/games-of-interest-zendo/ [72] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fn:chalker [73] https://blog.fogus.me/2024/08/19/on-method-values-part-1/ [74] https://books.google.com/books/about/And_So_FORTH.html?id=iqUZAQAAIAAJ [75] https://thinking-forth.sourceforge.net/ [76] https://archive.org/details/forth-the-next-step-ron-geere [77] https://www.amazon.com/BASIC-FORTH-Parallel-S-J-Wainwright/dp/0859341135?tag=fogus-20 [78] https://www.amazon.com/Butchers-Crossing-Review-Books-Classics/dp/1590171985/?tag=fogus-20 [79] https://www.amazon.com/Spectral-Link-Thomas-Ligotti-ebook/dp/B00LE52256/?tag=fogus-20 [80] https://www.amazon.com/Corvo-Cult-History-Obsession-2014-10-09/dp/B01FIY47AQ/?tag=fogus-20 [81] https://www.youtube.com/watch?v=o6TI2FfqGJ8&pp=ygUOInRoZSBwYXJhZ29ucyI%3D [82] https://en.wikipedia.org/wiki/That%27s_All! [83] https://en.wikipedia.org/wiki/Withnail_and_I [84] http://sam.aaron.name/ [85] https://en.wikipedia.org/wiki/Jodorowsky%27s_Dune [86] https://en.wikipedia.org/wiki/Requiem_for_a_Dream [87] https://www.youtube.com/@WilliamEByrd [88] https://cinepunx.com/podcast-episodes/eros-massacre/ [89] https://hypercubed.github.io/joy/joy.html [90] https://www.forth.com/forth/ [91] https://mail.openjdk.org/pipermail/amber-spec-experts/2023-December/003959.html [92] http://www.clojure.org/ [93] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fn:15th [94] http://www.clojurescript.org/ [95] http://www.datomic.com/ [96] https://www.datomic.com/ [97] https://hypercubed.github.io/joy/joy.html [98] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fn:joy [99] https://en.wikipedia.org/wiki/Mouse_(programming_language) [100] https://poplogarchive.getpoplog.org/poplog.info.html [101] https://hypercubed.github.io/joy/html/j05cmp.html [102] https://www.cs.tufts.edu/~nr/cs257/archive/dominique-clement/applicative.pdf [103] http://blog.fogus.me/2012/09/21/the-amazing-colossal-science-fiction-ketchup/ [104] https://2024.clojure-conj.org/ [105] https://www.nubank.com/ [106] https://buttondown.com/tensegritics-curiosities/archive/restrained-datalog-in-39loc/ [107] https://zserge.com/posts/post-apocalyptic-programming/ [108] https://github.com/monsonite/MINT [109] https://clojure.org/news/2024/09/05/clojure-1-12-0 [110] https://www.clojure.org/ [111] https://github.com/clojure/core.async [112] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/ [113] https://gist.github.com/fogus/6d716276678b0698c96dd13e040c71eb [114] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fn:juxtbib [115] https://blog.fogus.me/wp-content/uploads/2024/12/juxt.jpg [116] https://www.amazon.com/BOOX-Tablet-Go-10-3-ePaper/dp/B0D4DFT3W3/?tag=fogus-20 [117] https://apps.apple.com/us/app/blank-spaces-launcher/id1570856853 [118] https://www.typescriptlang.org/ [119] https://ziglang.org/ [120] https://www.amazon.com/Joy-Clojure-Michael-Fogus/dp/1617291412/?tag=fogus-20 [121] https://www.youtube.com/watch?v=GpWoF5uVgbA&t=529s [122] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fnref:elite [123] https://critical-hits.com/blog/2024/11/20/remembering-the-master-an-inelegant-eulogy-for-kory-heath/ [124] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fnref:chalker [125] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fnref:15th [126] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fnref:joy [127] https://gist.github.com/fogus/6d716276678b0698c96dd13e040c71eb [128] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#fnref:juxtbib [129] https://blog.fogus.me/2023/12/18/the-best-things-and-stuff-of-2023/ [130] https://blog.fogus.me/2008/03/19/goodbye-sir-arthur-clarke/ [131] https://blog.fogus.me/2012/12/26/the-best-things-and-stuff-of-2012/ [132] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#respond [133] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/trackback/ [136] http://fogus.me/ [137] http://creativecommons.org/licenses/by-sa/2.5/ [138] http://blog.fogus.me/about/mo-money/ [139] http://tomayko.com/ [140] https://blog.fogus.me/wp-login.php [141] https://blog.fogus.me/2024/12/23/the-best-things-and-stuff-of-2024/#top