<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: geokon</title><link>https://news.ycombinator.com/user?id=geokon</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 14:37:54 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=geokon" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by geokon in "Thi.ng – open-source building blocks for computational design and art"]]></title><description><![CDATA[
<p>Hopefully people see this comment b/c mine was a bad/incorrect summary :)<p>I real liked the orgmode workflow b/c the code was self documenting in a sense.
I had a very similar workflow for many years (though I've since stopped)
But I do remember that in the leiningen days when I was first learning Clojure, 
the idea of tangling and attaching my own fork was just too intimidating and confusing.
With the deps.edn workflow it'd have been less of a hassle now<p>Thank you for all your work. I still used geom basically every week (generating graphics for my PhD)<p>Your blog post is great. I think your point about the silo'ing and lack of cross pollination of idea between langs/frameworks is interesting, but also a product of just time-investment. I used to code C++ and the C++ gurus were always very miopic b/c they simply had no time for anything else.<p>To the last idea,
I feel the ease of creating and having performance available is always in tension. I have a friend who works in Touchdesigner and I'm always left a bit embarrassed that no written programming language seems to hit the same level of productivity. Going down the stack can be fruitful, but I think there are still more levels of abstraction that need to be explored. At a high level.. even if you're writing immutable functional code.. it just all still feels too coupled to me. These days, I'm personally think the next step is something like Pathom. Where your declare decoupled relationships between inputs and outputs and have a engine derive your computation.</p>
]]></description><pubDate>Wed, 10 Jun 2026 04:26:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48471413</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48471413</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48471413</guid></item><item><title><![CDATA[New comment by geokon in "Thi.ng – open-source building blocks for computational design and art"]]></title><description><![CDATA[
<p>You can find his talk about it a bit on Twitter and in the Github issues. But as far as I remember it mostly boils down to the fact that thing/geom got very little traction and external contributions. He developed this huge ecosystem on his own to make digital art but it wasn't being really picked up by others. Digital art is typically quite collaborative with people giving workshops and stuff. The switch to TS was so that other's would join up and develop the library together.<p>Note that part of the problem was that the library was written in a highly unusual literate style. So you had to clone the repo, then use Emac's Orgmode to tangle it to get the Clojure source code. This created a lot of friction for people to contribute.<p>Also before deps.edn (Clojure built-in dependency management) was added to the language you had to use leiningen which didn't make using a locally cloned fork as easy as it is now (now you just point to the library file directory and it "just works")</p>
]]></description><pubDate>Tue, 09 Jun 2026 11:46:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=48459836</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48459836</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48459836</guid></item><item><title><![CDATA[New comment by geokon in "Thi.ng – open-source building blocks for computational design and art"]]></title><description><![CDATA[
<p>It's extremely modular and simple and extensible. It's a collecting of small libaries that makes generating arbitrary vector graphics extremely fun. You have a base SVG layer and on top you have a charting library, 3D models and other stuff. It also comes with a ton of cool math mini libraries. If something is missing it's very easy to write your own.<p>All the pieces are very decoupled and in pure Clojure (unlike a lot of the heavier scicloj stuff that's being use nowadays)</p>
]]></description><pubDate>Tue, 09 Jun 2026 11:40:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48459783</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48459783</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48459783</guid></item><item><title><![CDATA[New comment by geokon in "APC–2 – A professional record cutter for producing original playback discs"]]></title><description><![CDATA[
<p>I wonder if it can make a flexidisc<p><a href="https://en.wikipedia.org/wiki/Flexi_disc" rel="nofollow">https://en.wikipedia.org/wiki/Flexi_disc</a><p>I remember to listening to some in my childhood and never understood why the tech was not the standard (relative to the brittle cumbersome vinyls). Maybe the sound quality is worse. Unsure</p>
]]></description><pubDate>Mon, 08 Jun 2026 06:23:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=48441897</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48441897</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48441897</guid></item><item><title><![CDATA[New comment by geokon in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>yeah, your overall point stands. Sometimes you can get a bit mixed up on "wait, does this take a File object or a string with the filename?". I guess my point was that because you program to interfaces this happens a bit less often than one would expect. If it can take a vector it can usually also take a list</p>
]]></description><pubDate>Sat, 06 Jun 2026 09:37:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=48423128</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48423128</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48423128</guid></item><item><title><![CDATA[New comment by geokon in "Elixir v1.20: Now a gradually typed language"]]></title><description><![CDATA[
<p>In Clojure you typically program to interfaces/protocols and not to types<p>The Clojure docs should be more straightforward about the interfaces that are available and targetted<p>You can still have a problem of not knowing which is required of an argument, but its usuallt clear contextually</p>
]]></description><pubDate>Fri, 05 Jun 2026 04:11:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=48407827</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48407827</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48407827</guid></item><item><title><![CDATA[New comment by geokon in "Why Janet? (2023)"]]></title><description><![CDATA[
<p>lobste.rs uses a web-of-trust referral system. I guess it still involves a moderator killing off bad nodes, but it seems to scale well</p>
]]></description><pubDate>Tue, 02 Jun 2026 10:38:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48368409</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48368409</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48368409</guid></item><item><title><![CDATA[New comment by geokon in "KDE at 30"]]></title><description><![CDATA[
<p>I use KDE and really have no complaints, but I'm a bit surprised it's still being actively developed (or is it really?). All the C++ programmers I've known have moved on to other languages. I'm surprised there is a large enough group of people willing to write old OO code in their spare time (and this is a weird mix of QT/KDE, so even more icky boiler plate than usual)</p>
]]></description><pubDate>Mon, 01 Jun 2026 20:21:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48362132</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48362132</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48362132</guid></item><item><title><![CDATA[New comment by geokon in "Incanter: A Clojure-based R-like platform for statistical computing and graphics"]]></title><description><![CDATA[
<p>It hasnt been updated in years<p>Though im not if its production-ready and "done" or just adandoned</p>
]]></description><pubDate>Tue, 26 May 2026 20:22:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=48285475</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48285475</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48285475</guid></item><item><title><![CDATA[New comment by geokon in "Humble Tech Book Bundle: The Ultimate Functional Programming"]]></title><description><![CDATA[
<p>Programming Clojure's Fourth Edition was published earlier this year, so it should be very current. Alex Miller is a great writer. It's in the ~2 USD purchase :))</p>
]]></description><pubDate>Wed, 20 May 2026 14:44:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48208738</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48208738</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48208738</guid></item><item><title><![CDATA[New comment by geokon in "8 Years of Clojure"]]></title><description><![CDATA[
<p>Nice set of reflections from a veteran<p>"Clojure heavily favors a style of coding which creates impedance mismatch when dealing with other systems"
"I'm excited to bring what I've learned from Clojure to new languages and new kinds of problems"<p>It feels like these two things are going to be in tension :) In my little experience using any other languages post-Clojure, it now feels like a huge step back. Every library is stateful and fighting against you.<p>An interesting system to explore in the realm of "soup of keys" is Pathom and the GraphQL associate systems  (though given the writer's experience I'm guessing he/she is familiar with them)<p>The criticisms of kondo I think is interesting and .. on reflection - yeah the design is kinda disappointing</p>
]]></description><pubDate>Wed, 20 May 2026 09:52:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=48205337</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48205337</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48205337</guid></item><item><title><![CDATA[New comment by geokon in "Show HN: I made a Clojure-like language in Go, boots in 7ms"]]></title><description><![CDATA[
<p>It's interesting how many projects seem to be in large part trying to address Clojure's slow startup time. Esp since Project Leyden seems to be around the corner and seems like it will solve the underlying JVM issue once and for all (making all these projects a bit redundant). Though maybe I'm missing something :)</p>
]]></description><pubDate>Fri, 15 May 2026 07:30:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48145604</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48145604</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48145604</guid></item><item><title><![CDATA[New comment by geokon in "let-go: Almost Clojure written in Go"]]></title><description><![CDATA[
<p>Is the primary reason similar to Babashka, startup-speed?<p>Do you have any thoughts of Project Leyden? It sounds like it'll solve the startup speed problem and make these projects redundant, but maybe I'm missing some element</p>
]]></description><pubDate>Mon, 11 May 2026 07:34:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48092083</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=48092083</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48092083</guid></item><item><title><![CDATA[New comment by geokon in "There Will Be a Scientific Theory of Deep Learning"]]></title><description><![CDATA[
<p>normally more parameters leads to overfitting (like fitting a polynomial to points), but neural nets are for some reason not as susceptible to that and can scale well with more parameters.<p>Thats been my understanding of the crux of mystery.<p>Would love to be corrected by someone more knowledgable though</p>
]]></description><pubDate>Sat, 25 Apr 2026 08:15:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=47899667</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47899667</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47899667</guid></item><item><title><![CDATA[New comment by geokon in "Clojure: Transducers"]]></title><description><![CDATA[
<p>I've never quite wrapped my head around the full JVM Threading story (esp with the new VThreads). Does the Thread Pool system work well when you over-parallelize your workload? If it's thread-and-forget? Can you thread stuff in a library you write, even if the caller is threading stuff at a higher level?<p>Do you have any idea/guess why Injest hasn't been folded in to core? It seems a natural extension, so I worry if it has some hidden footgun</p>
]]></description><pubDate>Thu, 23 Apr 2026 17:28:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47878614</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47878614</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47878614</guid></item><item><title><![CDATA[New comment by geokon in "Cljfx: A declarative desktop UI framework in Clojure"]]></title><description><![CDATA[
<p>Awesome modern flexible framework for making GUIs.<p>It's important to highlight that the it doesn't enforce any single model of how to hook up your GUI and state management. The built-in subscription model is fantastic, but you can do whatever suits you.<p>A big change was added in v1.9.0 that's not really documented in the README<p><a href="https://github.com/cljfx/cljfx/blob/master/CHANGELOG.md#190---2024-06-11" rel="nofollow">https://github.com/cljfx/cljfx/blob/master/CHANGELOG.md#190-...</a><p>With the new extension lifecycles you can pretty much design and hook up any GUI system you'd like. You can even have different GUI sub-trees have separate systems entirely.<p>For instance I hooked up CLJFX with declarative Pathom state management using these new lifecycles: Small demo: <a href="https://github.com/kxygk/ednless/blob/master/pathomfx.clj" rel="nofollow">https://github.com/kxygk/ednless/blob/master/pathomfx.clj</a></p>
]]></description><pubDate>Thu, 23 Apr 2026 17:25:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=47878561</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47878561</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47878561</guid></item><item><title><![CDATA[New comment by geokon in "Game devs explain the tricks involved with letting you pause a game"]]></title><description><![CDATA[
<p>The problem is that you have to recalculate the world at each update. In Clojure you have immutable datastructures that help. On the webstack you have React and reconciliation. All solutions come with a performance overhead. There are some interesting hybrid systems where you can try to isolate derived states and cache intermediate states (ex: Pathom for declarative state management and caching, and extension lifecycles in CLJFX for isolating UI subtrees)</p>
]]></description><pubDate>Mon, 20 Apr 2026 07:19:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47831273</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47831273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47831273</guid></item><item><title><![CDATA[New comment by geokon in "Clojure on Fennel Part One: Persistent Data Structures"]]></title><description><![CDATA[
<p>> .. abortive attempts at solving this ...<p>I'm curious what you found inadequate with the existing solutions?<p>I remember when I started writing Clojure I'd use stuff like Records to encode the data-shape. Paired with Protocols they're quite powerful when the interface is more important than the shape. But in most situations the flexible data shapes are what make programs very easy to extend/evolve.</p>
]]></description><pubDate>Sat, 11 Apr 2026 23:06:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=47734766</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47734766</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47734766</guid></item><item><title><![CDATA[New comment by geokon in "GraalVM and Java and Native Images, compile Java to standalone executables"]]></title><description><![CDATA[
<p>Oh wow, that's really impressive<p>Though to my mind the correct solution would be to launch a program + VM, then freeze/store the program state. Then you could just memcopy+execve the program and immediately skip all the initialization<p>(after a bit of Googling it seems this isn't a new idea haha, and it's in the JVM roadmap with Project Leyden. Should come out in maybe JDK 27 and make a lot of this stuff obsolete)</p>
]]></description><pubDate>Fri, 10 Apr 2026 05:41:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47714070</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47714070</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47714070</guid></item><item><title><![CDATA[New comment by geokon in "Lunar Flyby"]]></title><description><![CDATA[
<p>It's interesting that the flights are not timed for when the moon is in the magnetosphere shadow. As far as I could gather it seems they're intentionally exposing astronauts to more radiation to test equipment (maybe with an eye to future Mars missions?). Hard to get hard details from all the press release fluffy<p><a href="https://www.nesdis.noaa.gov/news/noaas-space-weather-mission-protecting-artemis-ii-astronauts-and-society" rel="nofollow">https://www.nesdis.noaa.gov/news/noaas-space-weather-mission...</a></p>
]]></description><pubDate>Wed, 08 Apr 2026 07:59:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47686867</link><dc:creator>geokon</dc:creator><comments>https://news.ycombinator.com/item?id=47686867</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47686867</guid></item></channel></rss>