<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: blopker</title><link>https://news.ycombinator.com/user?id=blopker</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 22 Apr 2026 08:39:08 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=blopker" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by blopker in "What if Python was natively distributable?"]]></title><description><![CDATA[
<p>Every time I see something like this (turn function calls into a network call), I reflect fondly on the list of fallacies in distributed computing [0]. These are issues that largely have to be handled in an application-specific way, and cannot be solved in the general case.<p>This list alone has saved me many late debugging nights, just by not making or using systems that ignore the list.<p>[0]: <a href="https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing" rel="nofollow">https://en.wikipedia.org/wiki/Fallacies_of_distributed_compu...</a></p>
]]></description><pubDate>Thu, 19 Mar 2026 17:42:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47443075</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=47443075</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47443075</guid></item><item><title><![CDATA[New comment by blopker in "Automating Image Compression"]]></title><description><![CDATA[
<p>Google answers this question in the FAQ: <a href="https://developers.google.com/speed/webp/faq#does_webp_support_progressive_or_interlaced_display" rel="nofollow">https://developers.google.com/speed/webp/faq#does_webp_suppo...</a><p>But in my experience, webp is better enough that the whole file loads around the same time the jpg progressive loading kicks in. Given that progressive jpgs are larger than non progressive (so not a 'free' feature), jpg is just a waste of bandwidth at this point.</p>
]]></description><pubDate>Sat, 31 Jan 2026 01:55:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46832551</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=46832551</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46832551</guid></item><item><title><![CDATA[New comment by blopker in "Automating Image Compression"]]></title><description><![CDATA[
<p>As always, it really depends on what the source is. Often images are created with some software like Photoshop, would you commit the psd file to git? If you're a photographer, would you commit 20mb+ raw image files? Might make sense for a few images, but git is just not the right solution for binary data in general. Every modification has to duplicate the entire file. This makes working with the repo unpleasant very quickly.<p>In general, I recommend people back up binary files to cloud storage, like S3, and only commit optimized, deployment ready assets to git. There's also GitLFS, but it's clucky to use.</p>
]]></description><pubDate>Sat, 31 Jan 2026 01:50:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=46832518</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=46832518</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46832518</guid></item><item><title><![CDATA[New comment by blopker in "Automating Image Compression"]]></title><description><![CDATA[
<p>This post greatly over simplifies how many issues come up optimizing images. Also, the Github workflow doesn't commit the optimized images back to git, so this would have to run before packaging and would have to run on every image, not just new images added.<p>Ideally, images are compressed _before_ getting committed to git. The other issue is that compression can leave images looking broken. Any compressed image should be verified before deploying. Using lossless encoders is safer. However, even then, many optimizers will strip ICC profile data which will make colors look off or washed out (especially if the source is HDR).<p>Finally, use webp. It's supported everywhere and doesn't have all the downsides of png and jpg. It's not worth it to deploy these older formats anymore. Jpgxl is ever better, but support will take a while.<p>Anyway, I made an ImageOptim clone that supports webp encoding a while ago[0]. I usually just chuck any images in there first, then commit them.<p>[0]: <a href="https://github.com/blopker/alic" rel="nofollow">https://github.com/blopker/alic</a></p>
]]></description><pubDate>Thu, 29 Jan 2026 22:36:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=46817781</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=46817781</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46817781</guid></item><item><title><![CDATA[New comment by blopker in "Ask HN: How can we solve the loneliness epidemic?"]]></title><description><![CDATA[
<p>After my dad died from cancer in 2018, I saw first hand the resulting loneliness and the lack of resources available. Being an engineer, I figured I might as well try to solve it, at least for some people. In 2020, I started a non-profit for small support groups[0]. We're small, and I've been mostly funding it myself, but it's growing. The main issue is we don't have the resources to cover every topic, so it's not for everyone (yet). Happy to chat if you have feedback, email is in my profile.<p>Everything we do is open source too[1].<p>[0]: <a href="https://www.totem.org/" rel="nofollow">https://www.totem.org/</a>
[1]: <a href="https://github.com/totem-technologies/totem-server" rel="nofollow">https://github.com/totem-technologies/totem-server</a></p>
]]></description><pubDate>Thu, 15 Jan 2026 22:26:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=46640284</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=46640284</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46640284</guid></item><item><title><![CDATA[New comment by blopker in "AI documentation you can talk to, for every repo"]]></title><description><![CDATA[
<p>This.<p>The WIP code was committed with the expectation that very few people would see it because it was not linked anywhere in the main readme. It's a calculated risk, so that the code wouldn't get out of date with main. The risk changed when their LLM (wrongly) decided to elevate it to users before it was ready.<p>It's clear DeepWiki is just a sales funnel for Devin, so all of this is being done in bad faith anyway. I don't expect them to care much.</p>
]]></description><pubDate>Wed, 12 Nov 2025 01:23:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=45895317</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=45895317</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45895317</guid></item><item><title><![CDATA[New comment by blopker in "AI documentation you can talk to, for every repo"]]></title><description><![CDATA[
<p>I brought up this issue because I thought it illustrated my previous points nicely.<p>Yes, there is a VS Code folder in that repo. However, it doesn't exist as an actual extension. It's an experiment that does not remotely work.<p>The LLM generated docs has confidently decided that not only does it exist, but it is the primary installation method.<p>This is wrong.<p>Edit: I've now had to go into the Readme of this extension to add a note to LLMs explicitly to not recommend it to users. I hate this.</p>
]]></description><pubDate>Tue, 11 Nov 2025 16:53:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=45889614</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=45889614</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45889614</guid></item><item><title><![CDATA[New comment by blopker in "AI documentation you can talk to, for every repo"]]></title><description><![CDATA[
<p>I dunno, it seems to be real excited about a VS Code extension that doesn't exist and isn't mentioned in the actual documentation. There's just too many factual errors to list.</p>
]]></description><pubDate>Tue, 11 Nov 2025 08:07:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=45885125</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=45885125</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45885125</guid></item><item><title><![CDATA[New comment by blopker in "AI documentation you can talk to, for every repo"]]></title><description><![CDATA[
<p>I took a look at a project I maintain[0], and wow. It's so wrong in every section I saw. The generated diagrams make no sense. The text sections take implementation details that don't matter and present them to the user like they need to know them. It's also outdated.<p>I hope actual users never see this. I dread thinking about having to go around to various LLM generated sites to correct documentation I never approved of to stop confusing users that are tricked into reading it.<p>[0]: <a href="https://deepwiki.com/blopker/codebook" rel="nofollow">https://deepwiki.com/blopker/codebook</a></p>
]]></description><pubDate>Tue, 11 Nov 2025 07:16:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45884860</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=45884860</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45884860</guid></item><item><title><![CDATA[New comment by blopker in "Show HN: A fast, privacy-first image converter that runs in browser"]]></title><description><![CDATA[
<p>Yeah, I made a local image compressor/converter for myself that's actually private: <a href="https://github.com/blopker/alic" rel="nofollow">https://github.com/blopker/alic</a></p>
]]></description><pubDate>Fri, 24 Oct 2025 16:14:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=45696091</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=45696091</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45696091</guid></item><item><title><![CDATA[New comment by blopker in "Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model"]]></title><description><![CDATA[
<p>Web version: <a href="https://clowerweb.github.io/kitten-tts-web-demo/" rel="nofollow">https://clowerweb.github.io/kitten-tts-web-demo/</a><p>It sounds ok, but impressive for the size.</p>
]]></description><pubDate>Wed, 06 Aug 2025 02:00:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=44806821</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=44806821</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44806821</guid></item><item><title><![CDATA[Microsoft: Sequential Diagnosis with Language Models]]></title><description><![CDATA[
<p>Article URL: <a href="https://arxiv.org/abs/2506.22405">https://arxiv.org/abs/2506.22405</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44456568">https://news.ycombinator.com/item?id=44456568</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 03 Jul 2025 16:15:40 +0000</pubDate><link>https://arxiv.org/abs/2506.22405</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=44456568</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44456568</guid></item><item><title><![CDATA[New comment by blopker in "If an AI agent can't figure out how your API works, neither can your users"]]></title><description><![CDATA[
<p>I get the feeling we're going to end up in a place where we don't make docs any more. A project will have a trusted agent that can see the actual code, maybe just the API surface, and that agent acts like a customer service rep to a user's agent. It will generate docs on the fly, with specific examples for the task needed. Maybe the agents will find bugs together and update the code too.<p>Not exactly where I'd like to see us go, but at least we'll never get outdated information.</p>
]]></description><pubDate>Tue, 20 May 2025 16:08:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=44043176</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=44043176</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44043176</guid></item><item><title><![CDATA[Zed's new $20/mo subscription]]></title><description><![CDATA[
<p>Article URL: <a href="https://i.imgur.com/VlXev7C.png">https://i.imgur.com/VlXev7C.png</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43785278">https://news.ycombinator.com/item?id=43785278</a></p>
<p>Points: 5</p>
<p># Comments: 1</p>
]]></description><pubDate>Thu, 24 Apr 2025 17:31:05 +0000</pubDate><link>https://i.imgur.com/VlXev7C.png</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=43785278</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43785278</guid></item><item><title><![CDATA[Show HN: I made a code-aware spell checker for Zed]]></title><description><![CDATA[
<p>Hey HN, I wanted to share a project I've been working on to help with my terrible spelling.<p>CSpell is the thing everyone uses in VSCode, but they don't offer an LSP for other editors to use. Someone has made an LSP for it, but CSpell is also pretty slow since it's all in JavaScript. After spending way too much time[0] trying to find an alternative, I just wrote my own.<p>Codebook[1] is written in Rust, so it's very fast, and (IMO) is much less annoying than CSpell because it uses Tree Sitter to only find spelling issues that the developer has control over.<p>Codebook also comes with an LSP, so it could be used in other editors, but I haven't tried that yet.<p>I want to also shout out to Spellbook[2], which is the actual spell checking engine I used to make Codebook. The makers of Helix wrote it, and it's fantastic.<p>[0]: <a href="https://blopker.com/writing/09-survey-of-the-current-state-of-code-spell-checking/" rel="nofollow">https://blopker.com/writing/09-survey-of-the-current-state-o...</a>
[1]: <a href="https://github.com/blopker/codebook">https://github.com/blopker/codebook</a>
[2]: <a href="https://github.com/helix-editor/spellbook">https://github.com/helix-editor/spellbook</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43198928">https://news.ycombinator.com/item?id=43198928</a></p>
<p>Points: 4</p>
<p># Comments: 1</p>
]]></description><pubDate>Thu, 27 Feb 2025 21:53:43 +0000</pubDate><link>https://github.com/blopker/codebook</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=43198928</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43198928</guid></item><item><title><![CDATA[New comment by blopker in "Show HN: Cot: a Rust web framework for lazy developers"]]></title><description><![CDATA[
<p>The Rust ecosystem needs more high-level frameworks like this. However, I've been shipping Django since 0.96, and I don't think Cot really addresses the main issues Django currently has. Performance isn't in the top 5.<p>Django's biggest issue is their aging templating system. The `block`, `extend` and `include` style of composition is so limited when compared to the expressiveness of JSX. There are many libraries that try to solve Django's lack of composition/components, but it's all a band-aid. Today, making a relatively complex page with reusable components is fragile and verbose.<p>The second-biggest issue is lack of front end integration. Even just a blessed way of generating an OpenAPI file from models would go a long way. Django Ninja is a great peek at what that could look like. However, new JS frameworks go so much further.<p>The other big issue Django has _is_ solved by Cot (or Rust), which is cool (but not highlighted): complicated deployments. Shipping a bunch of Python files is painful. Also, Python's threading model means you really have to have Gunicorn (and usually Nginx) in front. Cot could have all that compiled into one binary.</p>
]]></description><pubDate>Tue, 18 Feb 2025 19:38:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=43094052</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=43094052</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43094052</guid></item><item><title><![CDATA[New comment by blopker in "Building an "Easy" Web Application"]]></title><description><![CDATA[
<p>There is another solution, in this specific case. If all they wanted is to start returning the test results before all the tests are done, a streaming http response can be used.<p>In Bottle, returning a generator or iterator will send the response in chucks, instead of all at once. The effect would be that the test results load in one by one, providing the user with feedback. No JavaScript needed.</p>
]]></description><pubDate>Mon, 10 Feb 2025 00:48:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=42995747</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=42995747</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42995747</guid></item><item><title><![CDATA[New comment by blopker in "The Deck: An open-source cross-platform multiplayer card game engine in Flutter"]]></title><description><![CDATA[
<p>I actually can't think of another language that has all of that built in. Rust doesn't, it needs a run time for async. JavaScript doesn't, it needs typescript and it doesn't compile to native.</p>
]]></description><pubDate>Sat, 08 Feb 2025 23:03:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=42986954</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=42986954</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42986954</guid></item><item><title><![CDATA[New comment by blopker in "The Deck: An open-source cross-platform multiplayer card game engine in Flutter"]]></title><description><![CDATA[
<p>Dart is crazy because it runs on every platform, compiles to native, has real parallelism via isolates, native async, and native type safety.<p>There's not really a backend that takes advantage of all that. In theory, one server binary could handle REST, web sockets, background workers, and have generated type safe client packages for every platform. Dart also has a great Rust ffi story. It would be great to see that leveraged.<p>ServerPod is a great start, but it's really Flutter focused. The web apis feel like second class.<p>Additionally, database management isn't a solved problem yet. ServerPod uses yaml to define models, and the other main option is just a Prisma wrapper. Dart needs something like Drizzle.</p>
]]></description><pubDate>Sat, 08 Feb 2025 22:31:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=42986748</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=42986748</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42986748</guid></item><item><title><![CDATA[New comment by blopker in "The Deck: An open-source cross-platform multiplayer card game engine in Flutter"]]></title><description><![CDATA[
<p>Nice work! I'm happy to see the server is in Dart, no Firebase!<p>I wish the Dart server ecosystem was more mature though. Being able to compile Dart into a static binary is so nice for deployment.</p>
]]></description><pubDate>Sat, 08 Feb 2025 16:28:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=42984070</link><dc:creator>blopker</dc:creator><comments>https://news.ycombinator.com/item?id=42984070</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42984070</guid></item></channel></rss>