<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: marcus_cemes</title><link>https://news.ycombinator.com/user?id=marcus_cemes</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Fri, 11 Sep 2026 21:04:39 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=marcus_cemes" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by marcus_cemes in "GPT-6 Astra, looped transformers, and hidden reasoning"]]></title><description><![CDATA[
<p>You would need a significant sample size to make any sort of conclusion from such a probabilistic process. Then there's the issue of how you would actually grade/compare.</p>
]]></description><pubDate>Wed, 09 Sep 2026 19:41:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=49632974</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49632974</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49632974</guid></item><item><title><![CDATA[New comment by marcus_cemes in "The Raspberry Pi Interactive Timeline · 2006–2026"]]></title><description><![CDATA[
<p>Small anecdote on the mobile/robotics part, two years ago I was tasked with a small research sensor/timelapse platform. I reached out for the Pi Zero 2 W, the new Pi camera, and the largest USB battery I could buy. Perhaps I had unrealistic expectations, but I was surprised how much power it draws, even at idle. The napkin math said about 6 days (0.5 W idle, 2 W loaded), in reality it was only 1-2 days.<p>In comparison, my older laptop idles at around 5 W, even with multiple applications open. Similar experience more recently when looking at setting up a small home lab, the new Pi 5 seems to idle at around 5 W. A friend told me he has an Intel-based mini PC that draws less power. I'm tempted to try re-purposing an old phone, that should in theory do better.</p>
]]></description><pubDate>Fri, 04 Sep 2026 10:24:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=49562706</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49562706</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49562706</guid></item><item><title><![CDATA[New comment by marcus_cemes in "GCC steering committee announces AI policy"]]></title><description><![CDATA[
<p>I think I get your point. I can't say that I've observed it writing boilerplate just for the sake of it, but it is disproportionately/abundantly present in the training set. One of the first rules they teach in ML is to balance datasets, even if it's with fake/interpolated samples.<p>The linear L->R generation is definitely a thing, it's much more costly for an LLM to iterate edits, where a skilled vim coder will be jumping all over the place, trying to make all the LEGO pieces fit.<p>The skill therefore relies on just being able to one-shot entire chunks of code correctly, and it's amazingly good at this... But even the SOTA models still have a lot of unused imports and unused variable declarations. They just have to "guess" what they'll need and hope for the best. If they include a mass of numpy/scipi/react/icon imports that they might need, it opens the landscape for them later on when predicting relevant tokens, reaching a more ideal solution.<p>It doesn't hurt to add imports that might be helpful, rather than penalize the solution because you haven't got them. Although the last few SOTA models are more "harness/tool aware", they're starting to have the instinct to write the code anyway, and to be allowed to go and fix the imports later via tool calls.<p>For anyone who's seen the film Arrival (2016), their entire language is formed of complete concepts, not sequences of words and time. I keep thinking back to this.</p>
]]></description><pubDate>Sun, 02 Aug 2026 09:04:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=49142558</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49142558</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49142558</guid></item><item><title><![CDATA[New comment by marcus_cemes in "I don't recommend Tailwind CSS"]]></title><description><![CDATA[
<p>I can see this argument both ways. On the one hand, logically you'd expect the last assignment to take precedence, like the style attribute. On the other, conflicting styles don't make sense.<p>The random outcome, entirely dependent on the Tailwind generation internals, is the worst of all worlds though, it's just an unfortunate side-effect of relying on cascading sheets to drive atomic styles.</p>
]]></description><pubDate>Sun, 02 Aug 2026 08:46:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=49142440</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49142440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49142440</guid></item><item><title><![CDATA[New comment by marcus_cemes in "DeepSeek-V4-Flash Update"]]></title><description><![CDATA[
<p>That's fair, each provider maintains their own cache. OpenRouter does make an effort to keep providers "sticky", but it may hop/stick to another if latency is too high.<p>If you don't care about latency, you can create a preset with a single provider, then use that as the model key (i.e. `@preset/deekseek-v4-excl`). The only real downside is OpenRouter's service fee. If you don't want the convenience of switching models, or their excellent dashboard, it's definitely better to pay the provider directly.</p>
]]></description><pubDate>Sat, 01 Aug 2026 08:17:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=49132276</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49132276</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49132276</guid></item><item><title><![CDATA[New comment by marcus_cemes in "DeepSeek-V4-Flash Update"]]></title><description><![CDATA[
<p>Works out of the box with OpenRouter for most models. Some providers are a bit flaky, but DeekSeek (provider) has been one of the most reliable for me, no problems hitting >99% CH.</p>
]]></description><pubDate>Fri, 31 Jul 2026 19:17:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49127429</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49127429</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49127429</guid></item><item><title><![CDATA[New comment by marcus_cemes in "GCC steering committee announces AI policy"]]></title><description><![CDATA[
<p>I find myself often trying to <i>understand</i> the madness of some of the code an LLM produces. Does that count? <i>You're absolutely right! I made a mistake, and I'm sorry.</i>. Then I end up questioning myself if it wouldn't have been easier to just do it myself. To be fair though, it's not limited to LLMs, I've felt that way other people's code too.<p>Jokes aside, there's a difference to understanding the code and understanding the reasoning that is behind the code, I feel that LLMs still struggle enormously with the later. They start writing, and sometimes realise halfway through that they can't backtrack and just keep writing rubbish. You can argue about spinning loops and iterative processes, as long as they are actually able to converge.</p>
]]></description><pubDate>Thu, 30 Jul 2026 12:37:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=49109174</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=49109174</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49109174</guid></item><item><title><![CDATA[New comment by marcus_cemes in "GLM-5.2 is the new leading open weights model on Artificial Analysis"]]></title><description><![CDATA[
<p>I'm inclined to agree with you, but you could make the same argument for exploiting natural resources and the environment. I don't think it's being done right at the moment, and it does not seem to be benefiting people as much as certain companies.</p>
]]></description><pubDate>Wed, 17 Jun 2026 14:40:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48571198</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=48571198</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48571198</guid></item><item><title><![CDATA[New comment by marcus_cemes in "GLM-5.2 is the new leading open weights model on Artificial Analysis"]]></title><description><![CDATA[
<p>To be honest, living in Switzerland and speaking with peers, we're just exhausted by the constant AI hype. For a lot of us, the fact that Europe isn't frantically trying to scrape the entire internet and every book in existence for the next massive model isn't a bad thing. The big players are doing their thing, like with the nuclear arms race. We regulate a lot, too much a lot of the time, but sometimes that trickles down to other places too. A lot was done right, imo.<p>ETH Zurich and EPFL universities recently put out an open model called Apertus (was on the HN front page a few months back), it's not a frontier model, but they built it properly regarding copyright and data transparency.<p>It might look a bit slow or old-fashioned, but focusing on doing things ethically and legally feels like a much better path than just joining the race to scrape everything.</p>
]]></description><pubDate>Wed, 17 Jun 2026 13:41:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48570455</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=48570455</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48570455</guid></item><item><title><![CDATA[New comment by marcus_cemes in "Anthropic downgraded cache TTL on March 6th"]]></title><description><![CDATA[
<p>> We need open weights companies now more than ever.<p>If you're objective it to democratize AI, sure. But for those fed up with it and the devastating effects it's having on students, for example, can opt to actively avoid paying for products with AI (I say this as someone who uses it every day, guilty). At some point large companies will see that they're bleeding money for something that most people don't seem to want, and cancel those $100k/mo deals. I've already experienced one AI-developer-turned company crash and burn.<p>Personally, I don't think this LLM-based AI generation will have any significant positive impacts. Time, energy (CO2) and money would have been <i>far</i> better spent elsewhere.</p>
]]></description><pubDate>Sun, 12 Apr 2026 09:29:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=47737647</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=47737647</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47737647</guid></item><item><title><![CDATA[New comment by marcus_cemes in "Claude Sonnet 4.6"]]></title><description><![CDATA[
<p>Being a moderately frequent user of Opus and having spoken to people who use it actively at work for automation, it's a <i>really</i> expensive model to run, I've heard it burn through a company's weekend's credit allocation before Saturday morning, I think using almost an order of magnitude more tokens is a valid consumer concern!<p>I have yet to hear anyone say "Opus is really good value for money, a real good economic choice for us". It seems that we're trying to retrofit every possible task with SOTA AI that is still severely lacking in solid reasoning, reliability/dependability, so we throw more money at the problem (<i>cough</i> Opus) in the hopes that it will surpass that barrier of trust.</p>
]]></description><pubDate>Tue, 17 Feb 2026 21:52:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47053937</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=47053937</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47053937</guid></item><item><title><![CDATA[New comment by marcus_cemes in "I don't care how well your "AI" works"]]></title><description><![CDATA[
<p>You could make the same argument for any language. It still requires you to think and implement the solution yourself, just at a certain level of abstraction.</p>
]]></description><pubDate>Wed, 26 Nov 2025 16:57:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=46059533</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=46059533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46059533</guid></item><item><title><![CDATA[New comment by marcus_cemes in "How I fell in love with Erlang"]]></title><description><![CDATA[
<p>Perhaps I was a little harsh, this was a few years back when I was evaluating Elixir for a client, but ended up going back to a TS/Node.js stack instead. While the Phoenix documentation is stellar, I found it difficult to find good resources on best practices. I was probably doing something stupid and ran into internal and difficult to understand exceptions being raised on the Erlang side, from Cowboy if I recall. In another case, I was trying to validate API JSON input, the advice I got was to use Ecto (which I never really groked) or pattern match and fail. In JS, libraries like Zod and Valibot are a dream to work with.<p>The result was a lot of frustration, having been thoroughly impressed by Elixir and Phoenix in the past, knowing that I already knew how to achieve the same goal with Node.js with less code and would be able to justify the choice to a client. It didn't quite feel "there" to pick up and deploy, whereas SvelteKit with tRPC felt very enabling at the time and was easily picked up by others. Perhaps I need another project to try it out again and convince me otherwise. Funnily enough, a year later I replaced a problematic Node.js sever with Phoenix + Nerves running on a RPi Zero (ARM), flawless cross-compilation and deployment.<p>> Ports are not network transparent<p>I stand corrected, thank you for the explanation!</p>
]]></description><pubDate>Tue, 11 Nov 2025 23:19:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=45894266</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=45894266</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45894266</guid></item><item><title><![CDATA[New comment by marcus_cemes in "How I fell in love with Erlang"]]></title><description><![CDATA[
<p>No, they aren't. You have to use BigInt, which will throw an error if you try to serialise it to JSON or combine it with ordinary numbers. If you happen to need to deserialise a 64-bit integer from JSON, which I sadly had to do, you need a custom parser to construct the BigInt from a raw string directly.</p>
]]></description><pubDate>Tue, 11 Nov 2025 19:22:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=45891614</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=45891614</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45891614</guid></item><item><title><![CDATA[New comment by marcus_cemes in "How I fell in love with Erlang"]]></title><description><![CDATA[
<p>This stands to reason. If you need to bridge different languages together like in your case, they need to speak a common tongue. REST/GrahQL/gRPC solve this problem in different ways. There is no technical limitation keeping you from serving HTTP traffic from Erlang/Elixir, but from my own experience it isn't a pleasant experience. JavaScript or Python are dead simple, until you realise that 64-bit integers are not a thing in JS, and need to be handled as strings. Similarly, tuples will give you hell in Python.<p>On the other hand, if you don't need to cross that boundary, the BEAM will very happily talk to itself and let you send messages between processes without having to even think about serialisation or whether you're even on the same machine. After all, everything is just data with no pointers or cyclic references. That's more that can be said for most other languages, and while Python's pickle is pretty close, you can probably even share Erlang's equivalent of file descriptors across servers (haven't tried, correct me if I'm wrong), which is pretty insane when you think about it.<p>> I have found the real value of Erlang to be internally between trusted nodes of my own physical infrastructure as a high-level distributed "brain" or control plane<p>I think this is pretty high praise, considering it's about as old as C and was originally designed for real-time telephone switches.</p>
]]></description><pubDate>Tue, 11 Nov 2025 18:46:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=45891172</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=45891172</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45891172</guid></item><item><title><![CDATA[New comment by marcus_cemes in "The Core of Rust"]]></title><description><![CDATA[
<p>To extend upon this, memory generally has a single owner. When it goes out of scope, it gets freed [1]. The drop() function, which appears analogous to free() in C/C++, is actually just an empty function who's sole purpose is to take ownership and make it go out of scope, which immediately frees the memory [2].<p>> This function is not magic; it is literally defined as: pub fn drop<T>(_x: T) {}<p>This is usually more deterministic than GC languages (no random pauses), but can be less efficient for highly nested data structures. It also makes linked lists impossible without using "unsafe rust", as it doesn't abide by the normal ownership rules.<p>[1]: <a href="https://doc.rust-lang.org/rust-by-example/scope/raii.html" rel="nofollow">https://doc.rust-lang.org/rust-by-example/scope/raii.html</a>
[2]: <a href="https://doc.rust-lang.org/std/mem/fn.drop.html" rel="nofollow">https://doc.rust-lang.org/std/mem/fn.drop.html</a></p>
]]></description><pubDate>Thu, 21 Aug 2025 20:24:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=44977620</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=44977620</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44977620</guid></item><item><title><![CDATA[New comment by marcus_cemes in "Show HN: Bloom – A shadcn like UI library for Elixir and Phoenix"]]></title><description><![CDATA[
<p>Never heard of shadcn or franken-ui, but they look identical, one links to X (Twitter), the other to Mastodon. What's the story there?</p>
]]></description><pubDate>Sat, 04 May 2024 11:09:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=40256694</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=40256694</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40256694</guid></item><item><title><![CDATA[New comment by marcus_cemes in "Show HN: A JavaScript function that looks and behaves like a pipe operator"]]></title><description><![CDATA[
<p>This is clean JavaScript syntax in my opinion and should be what people strive for. It's perfectly readable, it's faster, it does async correctly without any unnecessary computation, can be typed and will have a normal stack trace. Piping is cool when done right, but can introduce complexity fast. Elixir is a good example where it works wonderfully.</p>
]]></description><pubDate>Wed, 27 Sep 2023 14:36:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=37675279</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=37675279</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37675279</guid></item><item><title><![CDATA[New comment by marcus_cemes in "Phoenix Dev Blog – Streams"]]></title><description><![CDATA[
<p>The two are not mutually exclusive, it's probably not an issue with horizontal scaling.</p>
]]></description><pubDate>Sat, 04 Mar 2023 18:12:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=35022999</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=35022999</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35022999</guid></item><item><title><![CDATA[New comment by marcus_cemes in "Phoenix Dev Blog – Streams"]]></title><description><![CDATA[
<p>I think this is a great use case. From my experience, having everything in one language is a huge plus. You can pull data from the database and just inject it into the view. The closest I've gotten to this in the JS/TS world is a Prisma + tRPC + SvelteKit for E2E type safety, but there's a huge cost in complexity and language server performance and some extra boilerplate.<p>The main limitation is likely offline apps, LiveView requires a persistent connect to the server. I doubt this is something you'll encounter for your use case.</p>
]]></description><pubDate>Sat, 04 Mar 2023 18:07:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=35022961</link><dc:creator>marcus_cemes</dc:creator><comments>https://news.ycombinator.com/item?id=35022961</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35022961</guid></item></channel></rss>