<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: jclem</title><link>https://news.ycombinator.com/user?id=jclem</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 15 Apr 2026 02:58:10 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jclem" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jclem in "Octobass"]]></title><description><![CDATA[
<p>For years, a friend of mine (in San Francisco) and I (in New York City) have sent one another an image [1] of one of these being tuned any time we’re doing coast-to-coast software debugging (especially relevant when we were working on a realtime collaborative text editor).<p>[1] <a href="https://www.loc.gov/item/2014714519/" rel="nofollow">https://www.loc.gov/item/2014714519/</a></p>
]]></description><pubDate>Fri, 20 Jun 2025 13:04:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=44327340</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=44327340</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44327340</guid></item><item><title><![CDATA[New comment by jclem in "The Eagle Never Sleeps: one Kentucky newspaper still screams for press freedom"]]></title><description><![CDATA[
<p>I grew up in the Midwest, and my father, who went to the University of Kentucky, was fraternity brothers with Ben Gish, and so growing up it was a name that I heard often when he’d tell stories from that time. I remember always being aware that a friend of my father had been framed for burning their family newspaper.<p>I live in New York City, now, and one evening found myself sitting at a bar in Brooklyn where my roommate, the bartender, was closing around 3am (at the time I worked a very late shift at the 24 hour Apple Store). The normal patrons had all gone, and myself, my roommate, and another man I’d never met were locked in having a last couple of beers while my roommate closed up. I had a long conversation with the man I hadn’t met before that eventually turned to where we grew up. It turned out that this man was Ray Gish (also mentioned in this article), the younger brother of Ben. Ray even recognized my father’s name, because Ben had mentioned him before.<p>Ray invited my roommate (whom he already knew well) and I over to his place for a last drink, and I vividly remember him playing “Street Hassle” by Lou Reed on his record player. It was the first time I’d ever heard that song.<p>Anyway—wildest coincidence that has ever happened to me. I see and say howdy to Ray every now and then when I find myself in that part of Brooklyn—one of the most genuine people I’ve ever met.</p>
]]></description><pubDate>Sat, 10 Feb 2024 13:31:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=39326002</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=39326002</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39326002</guid></item><item><title><![CDATA[New comment by jclem in "Elixir for cynical curmudgeons"]]></title><description><![CDATA[
<p>You can reduce with list comprehensions in Elixir, but it's uncommon to see:<p><pre><code>    sum_list = fn list ->
      for item <- list,
          reduce: 0,
          do: (sum -> sum + item)
    end

    sum_list.([1,2,3])
</code></pre>
Other comments are correct that `Enum.reduce/2` is probably better:<p><pre><code>    Enum.reduce(list, &(&1 + &2))
</code></pre>
Obviously you don't have the flexibility / mutability you refer to in other comments with either of these, but you can always put more in your accumulator:<p><pre><code>    get_sum_and_update_count = fn list, map ->
      for item <- list,
          reduce: {0, map},
          do: ({sum, map} -> {sum + item, Map.update(map, item, 1, &(&1 + 1))})
    end
</code></pre>
(A contrived function that returns a list sum and an updated map with the count of the values found in the list)</p>
]]></description><pubDate>Thu, 03 Aug 2023 16:05:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=36987755</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=36987755</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36987755</guid></item><item><title><![CDATA[New comment by jclem in "Pgvector: Fewer Dimensions Are Better"]]></title><description><![CDATA[
<p>It seems worth noting that the input of gte-small is limited to 512 tokens. The tokenizers for sure aren’t the same, but I imagine this is significantly less than ada-002, whose input is limited to 8191 tokens. That said, I don’t imagine that embedding huge full documents is necessarily the right approach.<p>I would love to see a comparison for some typical use cases using various methods of chunking input documents.</p>
]]></description><pubDate>Thu, 03 Aug 2023 12:30:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=36984949</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=36984949</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36984949</guid></item><item><title><![CDATA[New comment by jclem in "Show HN: Document Q&A with GPT: web, .pdf, .docx, etc."]]></title><description><![CDATA[
<p>How are you stuffing long text into GPT context? Are you doing some form of summarization?</p>
]]></description><pubDate>Tue, 28 Mar 2023 14:29:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=35341707</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=35341707</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35341707</guid></item><item><title><![CDATA[New comment by jclem in "Show HN: AI Files – manage and organize your files with AI"]]></title><description><![CDATA[
<p>This package is using GPT-3 via the “ChatGPT” export from that module, which is—somewhat misleadingly—not ChatGPT, but GPT-3.</p>
]]></description><pubDate>Sun, 26 Feb 2023 12:52:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=34945137</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=34945137</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34945137</guid></item><item><title><![CDATA[New comment by jclem in "Brooklyn Bar Menu Generator (2015)"]]></title><description><![CDATA[
<p>Hello from slightly further south on Vanderbilt Ave :) I haven't tried that Indian place yet, but it's on my list, now. The pizza and bagels threw me off (not because "Indian == bad bagels/pizza", but because "somewhat random assortment of foods" is sometimes a red flag).</p>
]]></description><pubDate>Wed, 28 Dec 2022 00:46:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=34156026</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=34156026</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34156026</guid></item><item><title><![CDATA[New comment by jclem in "Brooklyn Bar Menu Generator (2015)"]]></title><description><![CDATA[
<p>First, let's replace "gushing" with "discussing", because that's what was happening. I'm not sure "got bad during part of the pandemic, now is improving again" counts as gushing.<p>In what way is caring about your local food options in your immediate neighborhood, on the street you live, where your friends and acquaintances eat, drink, and work "very Brooklyn"? I guess if you live somewhere that restaurants just appear and have faceless owners with employees you'll never know, this isn't a thing. This is something discussed by really anyone who is interested food and restaurants in their area all over the world. If you like what a person did at one restaurant, you may like what they do with a new one. Or, maybe it's noteworthy when only the first one is great, and the subsequent ones are mediocre.</p>
]]></description><pubDate>Wed, 28 Dec 2022 00:43:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=34156007</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=34156007</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34156007</guid></item><item><title><![CDATA[New comment by jclem in "Brooklyn Bar Menu Generator (2015)"]]></title><description><![CDATA[
<p>Maybe you mean Vanderbilt Ave? Vanderbilt St has no commercial zoning.<p>What many people don't know is that 3 of the pricier restaurants on Vanderbilt Ave are all actually the same restaurant group. Their background is partially the 3-Michelin star Alinea in Chicago via chef Greg Baxtrom. Olmsted was first, then came Maison Yaki, and then Patti Ann's.<p>Olmsted is mostly very good (started great, then got bad during part of the pandemic, now is improving again), but you can still joke about being sold $8 vinegar from them for sure, haha. However, since "midwestern" cuisine is now becoming somewhat trendy, jokes about expensive port wine cheese balls at Patti Ann's ($12) may be more appropriate.</p>
]]></description><pubDate>Wed, 28 Dec 2022 00:02:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=34155653</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=34155653</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34155653</guid></item><item><title><![CDATA[New comment by jclem in "Show HN: Obsidian Canvas – An infinite space for your ideas"]]></title><description><![CDATA[
<p>It's $50/year.</p>
]]></description><pubDate>Tue, 20 Dec 2022 21:05:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=34072539</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=34072539</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34072539</guid></item><item><title><![CDATA[New comment by jclem in "Show HN: Pg_CRDT – an experimental CRDT extension for Postgres"]]></title><description><![CDATA[
<p>An LWW register is most certainly a CRDT, it just has limited use. I think you’re making a good point about how one must be careful applying CRDTs, but I don’t think it’s accurate to say that a suboptimal merge strategy in terms of user experience means that something does not meet the definition of a CRDT.<p>In other words, the “conflict-free” part of the term refers to the fact that all replicas converge on the same value when all updates have been exchanged. What you’re discussing seems to have more to do with concerns around intention preservation when using CRDTs. In other words, an LWW register on a text field is still a CRDT, but in many applications it is potentially a poor choice in terms of preserving the intent of user-generated operations, but determining this is something done in a case-by-case basis.<p>If the content is a long document which users collaborate on over time, then a register is most certainly a poor choice. If it is a short text field akin to a label, an LWW register isn’t necessarily bad, because user intent is likely to replace the entire value, rather than to perform minute edits on the value.</p>
]]></description><pubDate>Sat, 10 Dec 2022 14:16:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=33932791</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=33932791</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33932791</guid></item><item><title><![CDATA[New comment by jclem in "Show HN: Transform Your City"]]></title><description><![CDATA[
<p>It’s hard to get a sense from the site or from the actual idea pages what the goal is. Removing the BQE (<a href="https://transformyour.city/vision/new-york-city/the-bqe" rel="nofollow">https://transformyour.city/vision/new-york-city/the-bqe</a> ) would affect millions of people and businesses, and simply saying “transform it into a linear park” comes across as incredibly naïve. I would feel foolish signing this petition because…what’s the actual plan?<p>Sure, maybe there is some way to do it with a multi-decade effort, an enormous cost, and a fundamental shift in NYC’s layout and even economy, but something about how MASSIVELY oversimplified the statement “Remove the BQE” is makes it hard to take this seriously.<p>I applaud the sentiment, though! And I hate the BQE.<p>Edit: Also just to be even clearer for anyone not familiar with NYC geography: the BQE is a stretch of interstate highway 278 that connects Brooklyn and Queens.<p>This isn’t the High Line, built from a disused rail line. It’s proposing removing a stretch of interstate and putting a park in its place.<p>Edit 2: Ok, apparently the goal is to gather signatures and then show elected officials. The minimum bar appears to be 100 signatures. I have a hard time understanding what outcome is expected when an elected official in NYC is shown a petition in which 100 people say we should rip out part of the interstate (and one of NYC’s most important stretches of road) and put in a park.</p>
]]></description><pubDate>Thu, 20 Oct 2022 19:14:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=33279303</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=33279303</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33279303</guid></item><item><title><![CDATA[New comment by jclem in "Tom Stoppard Finally Looks into His Shadow"]]></title><description><![CDATA[
<p>While “Arcadia” is likely of greatest interest to HN readers of all of Tom Stoppard’s plays, I also highly recommend “Jumpers” and “The Hard Problem.”<p>Also worth noting the many excellent films he wrote, like “Brazil” and “Empire of the Sun.”</p>
]]></description><pubDate>Fri, 16 Sep 2022 20:38:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=32871726</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=32871726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32871726</guid></item><item><title><![CDATA[New comment by jclem in "Removal of Heroku free product plans"]]></title><description><![CDATA[
<p>Disclaimer: I like Railway.<p>Heroku VMs had the kitchen sink, and I miss that with Railway. A pretty standard Phoenix app with Phoenix’s built-in auth doesn’t build and the user is presented with build errors about nixpacks. Now there’s a good deal I have to learn just to get bcrypt to build.</p>
]]></description><pubDate>Sun, 28 Aug 2022 12:02:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=32627717</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=32627717</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=32627717</guid></item><item><title><![CDATA[New comment by jclem in "I've locked myself out of my digital life"]]></title><description><![CDATA[
<p>1Password “forces” (strongly suggests to) you to physically print a recovery kit with both your master password and secret key on it. I keep mine in a safe deposit box in another part of the city. Of course, losing access to this box is a concern, but ¯\_(ツ)_/¯ I suppose I could also bury it somewhere remote too without the QR code or my identifiable information in it, or mail a copy to a family member.</p>
]]></description><pubDate>Tue, 07 Jun 2022 12:20:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=31653101</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=31653101</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31653101</guid></item><item><title><![CDATA[New comment by jclem in "The absurd complexity of server-side rendering"]]></title><description><![CDATA[
<p>Layout and paint.<p>I don’t think using the term “rendering” for interpolating data into a template is anything new, though, nor is it bad or even confusing that it means one thing in the context of computer graphics and another in the context of programming language templates. ¯\_(ツ)_/¯</p>
]]></description><pubDate>Wed, 20 Apr 2022 08:59:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=31094343</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=31094343</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31094343</guid></item><item><title><![CDATA[New comment by jclem in "Transforming cities with superblocks"]]></title><description><![CDATA[
<p>I am curious what the difference is in property value and general perceived desirability between external-facing and internal-facing apartments in these superblocks in Barcelona.</p>
]]></description><pubDate>Tue, 08 Mar 2022 11:26:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=30598758</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=30598758</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30598758</guid></item><item><title><![CDATA[New comment by jclem in "My pain building a WYSIWYG editor with contenteditable"]]></title><description><![CDATA[
<p>Ah, one of the bugs with Slate was with spell-checking. On mobile Safari, at least, its text nodes aren’t marked by spell check unless they’re interacted with by the user after they’ve been typed.<p>As I’d said, they all have bugs, including ProseMirror. I just found that PM solved most of the ones I cared about relatively well.</p>
]]></description><pubDate>Fri, 24 Sep 2021 03:18:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=28638247</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=28638247</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28638247</guid></item><item><title><![CDATA[New comment by jclem in "My pain building a WYSIWYG editor with contenteditable"]]></title><description><![CDATA[
<p>Last I evaluated them, they had some bugs that wouldn’t work for my use case. For example, Quill has the annoying bug on mobile Safari of blocking the native behavior of capitalizing the first letter of a new line.<p>I don’t remember what I found in Slate, however, and it’s possible it may be much better now.</p>
]]></description><pubDate>Fri, 24 Sep 2021 03:13:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=28638223</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=28638223</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28638223</guid></item><item><title><![CDATA[New comment by jclem in "How we got to LiveView"]]></title><description><![CDATA[
<p>One light-microsecond is about 300 meters, this must be milliseconds.<p>Edit: Just saw that this was already pointed out. Apologies, didn’t mean to pile on.</p>
]]></description><pubDate>Thu, 23 Sep 2021 01:27:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=28624232</link><dc:creator>jclem</dc:creator><comments>https://news.ycombinator.com/item?id=28624232</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28624232</guid></item></channel></rss>