<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: salamo</title><link>https://news.ycombinator.com/user?id=salamo</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 24 Jul 2026 02:28:07 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=salamo" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by salamo in "Gemini last models: temperature, top_p, and top_k are deprecated and ignored"]]></title><description><![CDATA[
<p>Possible reasons:<p>- They might be dynamically adjusting these at inference time [1]. For example, start with a low temperature and generate samples with increasingly high temperatures until one of them passes some quality gate.<p>- They don't want you to fine-tune on high temperature completions (rejection fine-tuning). You could call this "rejection fine-tuning rejection".<p>[1] <a href="https://rlhfbook.com/c/09-rejection-sampling#related-best-of-n-sampling" rel="nofollow">https://rlhfbook.com/c/09-rejection-sampling#related-best-of...</a></p>
]]></description><pubDate>Wed, 22 Jul 2026 02:34:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=49001146</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=49001146</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49001146</guid></item><item><title><![CDATA[Keynesian Beauty Contest]]></title><description><![CDATA[
<p>Article URL: <a href="https://en.wikipedia.org/wiki/Keynesian_beauty_contest">https://en.wikipedia.org/wiki/Keynesian_beauty_contest</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49000641">https://news.ycombinator.com/item?id=49000641</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 22 Jul 2026 01:23:50 +0000</pubDate><link>https://en.wikipedia.org/wiki/Keynesian_beauty_contest</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=49000641</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49000641</guid></item><item><title><![CDATA[New comment by salamo in "Speech Recognition and TTS in less than 500kb"]]></title><description><![CDATA[
<p>Yeah, the model is small enough that inference is already basically instant for my usecase (only 6 transformer layers for the blog search).</p>
]]></description><pubDate>Sun, 19 Jul 2026 22:16:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48972148</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48972148</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48972148</guid></item><item><title><![CDATA[New comment by salamo in "Speech Recognition and TTS in less than 500kb"]]></title><description><![CDATA[
<p>Yeah, I also found that for ultra low footprint models ORT is a big portion of the total payload, because it contains logic for general ONNX graph operations. In my case I found that ORT alone was 3.4MB over the wire, so I swapped it out for a tiny wasm that was 850x smaller and only contained the operations I needed: <a href="https://blog.lukesalamone.com/posts/creating-tiny-semantic-search/" rel="nofollow">https://blog.lukesalamone.com/posts/creating-tiny-semantic-s...</a></p>
]]></description><pubDate>Sun, 19 Jul 2026 19:59:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48971236</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48971236</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48971236</guid></item><item><title><![CDATA[New comment by salamo in "OpenAI reduces Codex Model Context Size from 372k to 272k"]]></title><description><![CDATA[
<p>On the one hand, compacting at 300k saves OpenAI 40%. That's great.<p>On the other hand, $10 for 1M tokens still seems really high? It's not too hard to blow through that in an hour or two.</p>
]]></description><pubDate>Sun, 19 Jul 2026 19:43:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48971118</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48971118</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48971118</guid></item><item><title><![CDATA[New comment by salamo in "Hardcore IndieWeb: Run your own website 100% independently for only $0.01/day"]]></title><description><![CDATA[
<p>I come at it from a slightly different angle.<p>I write technical blog posts with visualizations and live demos. That usually means embedding a bit of custom javascript in the page for the demo. Or shipping custom wasm to enable extreme semantic model compression.<p>I do this by pushing content from my machine to github pages which is wired up to my subdomain.<p>If github pages stops being a good, free option for this, I will find another. Not sure I would call this "hardcore" really.</p>
]]></description><pubDate>Sun, 19 Jul 2026 06:20:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=48965452</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48965452</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48965452</guid></item><item><title><![CDATA[New comment by salamo in "AWS: Inaccurate Estimated Billing Data – $1.7 billion"]]></title><description><![CDATA[
<p>$1.7 billion is small potatoes. My bill is over $155 billion and growing. I'm worried if the trend continues I'll have depleted my rainy day fund.</p>
]]></description><pubDate>Fri, 17 Jul 2026 17:51:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48950176</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48950176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48950176</guid></item><item><title><![CDATA[International Fixed Calendar]]></title><description><![CDATA[
<p>Article URL: <a href="https://en.wikipedia.org/wiki/International_Fixed_Calendar">https://en.wikipedia.org/wiki/International_Fixed_Calendar</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48727661">https://news.ycombinator.com/item?id=48727661</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 30 Jun 2026 01:49:51 +0000</pubDate><link>https://en.wikipedia.org/wiki/International_Fixed_Calendar</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48727661</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48727661</guid></item><item><title><![CDATA[Semantic Search in Under 3MB]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.lukesalamone.com/posts/creating-tiny-semantic-search/">https://blog.lukesalamone.com/posts/creating-tiny-semantic-search/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48642299">https://news.ycombinator.com/item?id=48642299</a></p>
<p>Points: 5</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 23 Jun 2026 09:12:35 +0000</pubDate><link>https://blog.lukesalamone.com/posts/creating-tiny-semantic-search/</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48642299</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48642299</guid></item><item><title><![CDATA[New comment by salamo in "How many of the 170k English words do you know?"]]></title><description><![CDATA[
<p>An alternative algorithm which would probably converge faster than 100 questions would be something like Elo or Glicko 2.<p>A word's "difficulty" would be some function of how rare it is. Once you have a reasonable estimate of the user's "skill" you can infer that a user won't know more difficult words. The benefit of this is you're not spending time asking the user about words they probably know.<p>Of course it's possible at an individual level, difficulty does not monotonically increase as a function of how rare the word is. A person might be very familiar with a domain-specific subset of English. But the "stratified sampling" approach will also have this problem.<p>There is a similar problem in chess, where players have ratings which really only change on one dimension. So there can theoretically be a mismatch when puzzles are also scored on a single axis, since a "harder" puzzle that contains a motif a player is familiar with will actually be easier for the player.</p>
]]></description><pubDate>Fri, 19 Jun 2026 23:36:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48604621</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48604621</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48604621</guid></item><item><title><![CDATA[New comment by salamo in "Ask HN: What are you working on? (June 2026)"]]></title><description><![CDATA[
<p>I’m working on an iOS app, One Million Checkmates [1]. It scratches an itch I had of chess puzzles for a long plane ride. This app has a functionally unlimited number of puzzles, all offline.<p>There was a decent amount of work involved in getting the download size reasonable since we need to store all valid moves in a position. There are puzzles with over 40 million valid move sequences, so I had to aggressively prune and compress the move trees.<p>[1] <a href="https://apps.apple.com/us/app/one-million-checkmates/id6762503545">https://apps.apple.com/us/app/one-million-checkmates/id67625...</a></p>
]]></description><pubDate>Mon, 15 Jun 2026 07:24:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48537747</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48537747</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48537747</guid></item><item><title><![CDATA[PyTorch Landscape]]></title><description><![CDATA[
<p>Article URL: <a href="https://pytorch.landscape2.io">https://pytorch.landscape2.io</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48189178">https://news.ycombinator.com/item?id=48189178</a></p>
<p>Points: 97</p>
<p># Comments: 25</p>
]]></description><pubDate>Tue, 19 May 2026 04:29:39 +0000</pubDate><link>https://pytorch.landscape2.io</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48189178</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48189178</guid></item><item><title><![CDATA[New comment by salamo in "Ask HN: Is a hands-off, family-friendly, de-Googled "home lab" feasible?"]]></title><description><![CDATA[
<p>> I'd really wouldn't on the machine.<p>I'll second this. Much better to set up a second machine you can ssh/tailscale into. If a training run takes down your training machine, you don't want it to <i>also</i> take down your home entertainment server.</p>
]]></description><pubDate>Tue, 05 May 2026 04:39:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=48018089</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=48018089</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48018089</guid></item><item><title><![CDATA[Opponent Modeling Wins 2× Faster Than Stockfish]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.lukesalamone.com/posts/winning-faster-than-stockfish/">https://blog.lukesalamone.com/posts/winning-faster-than-stockfish/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47212819">https://news.ycombinator.com/item?id=47212819</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 02 Mar 2026 01:35:21 +0000</pubDate><link>https://blog.lukesalamone.com/posts/winning-faster-than-stockfish/</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=47212819</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47212819</guid></item><item><title><![CDATA[New comment by salamo in "Graph Topology and Battle Royale Mechanics"]]></title><description><![CDATA[
<p>See, that's why I have to post these things. Someone will inevitably reply with something more clever.</p>
]]></description><pubDate>Thu, 26 Feb 2026 07:04:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=47162832</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=47162832</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47162832</guid></item><item><title><![CDATA[New comment by salamo in "What Is a Centipawn Advantage?"]]></title><description><![CDATA[
<p>You'll also have some fun pinning down the difference between an "inaccuracy", a "mistake", and a "blunder". These are meaningful delineations for humans but not for a chess algorithm. Objectively, any amount of centipawn loss either changes the best possible outcome for the player or it does not.<p>So in practice, a drop in win probability greater than 14% is considered a blunder on Lichess.<p>For reference, lichess uses the following function to map centipawn advantage to the probability bar, derived from observed outcomes: <a href="https://github.com/lichess-org/lila/pull/11148" rel="nofollow">https://github.com/lichess-org/lila/pull/11148</a><p>From an ML perspective, this is basically logistic regression with a single feature. However, once we leave the realm of theoretical centipawn value and begin to optimize predictive power, we could imagine adding in other things like the players' ELOs or time remaining per player, etc.<p>I think there are some interesting theoretical differences between predicted win probability derived from Stockfish CP and actual outcomes. As in, you could even imagine predicting positions where certain players struggle and steering them towards those positions. [0]<p>[0] <a href="https://www.youtube.com/watch?v=KgOC1D8wkyE" rel="nofollow">https://www.youtube.com/watch?v=KgOC1D8wkyE</a></p>
]]></description><pubDate>Tue, 24 Feb 2026 01:37:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47131749</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=47131749</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47131749</guid></item><item><title><![CDATA[Graph Topology and Battle Royale Mechanics]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.lukesalamone.com/posts/beam-search-graph-pruning/">https://blog.lukesalamone.com/posts/beam-search-graph-pruning/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47105038">https://news.ycombinator.com/item?id=47105038</a></p>
<p>Points: 47</p>
<p># Comments: 4</p>
]]></description><pubDate>Sat, 21 Feb 2026 21:33:28 +0000</pubDate><link>https://blog.lukesalamone.com/posts/beam-search-graph-pruning/</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=47105038</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47105038</guid></item><item><title><![CDATA[New comment by salamo in "Google AI Edge – On-device cross-platform AI deployment"]]></title><description><![CDATA[
<p>Really happy to see additional solutions for on-device ML.<p>That said, I probably wouldn't use this unless mine was one of the specific use cases supported[0]. I have no idea how hard it would be to add a new model supporting arbitrary inputs and outputs.<p>For running inference cross-device I have used Onnx, which is low-level enough to support whatever weights I need. For a good number of tasks you can also use transformers.js which wraps onnx and handles things like decoding (unless you really enjoy implementing beam search on your own). I believe an equivalent link to the above would be [1] which is just much more comprehensive.<p>[0] <a href="https://ai.google.dev/edge/mediapipe/solutions/guide" rel="nofollow">https://ai.google.dev/edge/mediapipe/solutions/guide</a><p>[1] <a href="https://github.com/huggingface/transformers.js-examples">https://github.com/huggingface/transformers.js-examples</a></p>
]]></description><pubDate>Sun, 01 Jun 2025 23:04:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=44154414</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=44154414</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44154414</guid></item><item><title><![CDATA[New comment by salamo in "Why blog if nobody reads it?"]]></title><description><![CDATA[
<p>I mainly blog for myself in the future, but in a slightly different flavor than the author mentions. If there's a complicated ML concept that I'd really like to understand, explaining it to an audience (even if that audience is myself in the future) is a great way to understand it.<p>That goes double for visuals, which is another reason I use a custom static site. Can't run JS on Medium. I even built out a client-side search and learned a good amount from that too.</p>
]]></description><pubDate>Mon, 10 Feb 2025 07:40:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=42997815</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=42997815</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42997815</guid></item><item><title><![CDATA[Notes on DeepSeek R1]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.lukesalamone.com/posts/notes-on-deepseek-r1/">https://blog.lukesalamone.com/posts/notes-on-deepseek-r1/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42908500">https://news.ycombinator.com/item?id=42908500</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 02 Feb 2025 13:28:04 +0000</pubDate><link>https://blog.lukesalamone.com/posts/notes-on-deepseek-r1/</link><dc:creator>salamo</dc:creator><comments>https://news.ycombinator.com/item?id=42908500</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42908500</guid></item></channel></rss>