<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: gouggoug</title><link>https://news.ycombinator.com/user?id=gouggoug</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 18 Apr 2026 14:38:14 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=gouggoug" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by gouggoug in "Open source CAD in the browser (Solvespace)"]]></title><description><![CDATA[
<p>I recently got into 3D printing and, of course, after seeing countless ads on YouTube for OnShape, that was my first choice.<p>Anyone having used both can share their thoughts about how solvespace and OnShape compare?<p>On my end I’ve been loving OnShape and find it pretty intuitive. I also tried fusion360 but closed it after 5 minutes, it felt too sluggish.</p>
]]></description><pubDate>Wed, 01 Apr 2026 05:48:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47597260</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=47597260</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47597260</guid></item><item><title><![CDATA[New comment by gouggoug in "Infrastructure decisions I endorse or regret after 4 years at a startup (2024)"]]></title><description><![CDATA[
<p>Let my geriatric self rephrase this for you and make the point more obvious: "[...] who just discovered [insert latest design pattern trend of your choice] and insists on trying it everywhere"</p>
]]></description><pubDate>Fri, 20 Feb 2026 19:17:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47092536</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=47092536</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47092536</guid></item><item><title><![CDATA[New comment by gouggoug in "Infrastructure decisions I endorse or regret after 4 years at a startup (2024)"]]></title><description><![CDATA[
<p>> Is that an easy mistake to make and a hard one to recover from, in your experience?<p>If you're alone in a codebase? Probably not.<p>In a company with many contributors of varying degrees of competence (from your new grad to your incompetent senior staff), yes.<p>In large repositories, without extremely diligent reviewers, it's impossible to prevent developers from creating the most convoluted anti-patterny spaghetti code, that will get copy/pasted ad nauseam across your codebase.<p>Terraform as a tool and HCL as a programming language leave a lot to be desire (in hindsight only, because, let's be honest, it's been a boon for automation), but their constrained nature makes it easier to reign in the zealous junior developer who just discovered OOP and insists on trying it everywhere...</p>
]]></description><pubDate>Fri, 20 Feb 2026 08:34:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=47085295</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=47085295</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47085295</guid></item><item><title><![CDATA[New comment by gouggoug in "Infrastructure decisions I endorse or regret after 4 years at a startup (2024)"]]></title><description><![CDATA[
<p>Not an opinion on Pulumi specifically, but an opinion on using imperative programming languages for infrastructure configuration: don't do it. (This includes using things like CDKTF)<p>Infrastructure needs to be consistent, intuitive and reproducible. Imperative languages are too unconstrained. Particularly, they allow you to write code whose output is unpredictable (for example, it'd be easy to write code that creates a resources based on the current time of day...).<p>With infrastructure, you want predictability and reproducibility. You want to focus more on writing _what_ your infra should look like, less _how_ to get there.</p>
]]></description><pubDate>Fri, 20 Feb 2026 03:09:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47083187</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=47083187</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47083187</guid></item><item><title><![CDATA[New comment by gouggoug in "Building Robust Helm Charts"]]></title><description><![CDATA[
<p>I wish timoni[1] would take off.<p>It’s based on Cue and doesn’t rely on templating.<p>[1] timoni.sh</p>
]]></description><pubDate>Wed, 21 Jan 2026 07:11:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46702114</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=46702114</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46702114</guid></item><item><title><![CDATA[New comment by gouggoug in "STFU"]]></title><description><![CDATA[
<p>There’s a difference between passively listening to a meeting and actively participating, while being in the bathroom.<p>I would never do either. But one is less weird than the other.</p>
]]></description><pubDate>Fri, 16 Jan 2026 19:26:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=46650919</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=46650919</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46650919</guid></item><item><title><![CDATA[New comment by gouggoug in "Logos Language Guide: Compile English to Rust"]]></title><description><![CDATA[
<p>I wonder who the target is for such language.<p>What's difficult with programming isn't the language itself, it's everything else: understanding concepts, algorithms, programming patterns, the science.<p>It feels a bit like trying to reinvent the language of mathematics. It'd be really inefficient writing math in plain English.</p>
]]></description><pubDate>Mon, 05 Jan 2026 07:09:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=46496071</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=46496071</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46496071</guid></item><item><title><![CDATA[New comment by gouggoug in "NixOS 25.11 released"]]></title><description><![CDATA[
<p>This past month, I have spent a decent amount of hours (7+) trying to setup nix on my mac with nix-darwin, and failed.<p>Most tutorial out there encourage you to download someone else's configuration to get going. I don't want to do that. I want to understand at its core how this thing works.<p>I've read the official nix language documentation, watched YouTube tutorials, read 3rd party tutorials, and still couldn't get going with a simple configuration that would install a few packages.<p>The nix language is also really unpalatable to me. But I could deal with that if the examples out there showed a consistent way of doing things – that's not the case. It seems one same thing can be done many different ways – but I want to know and do it the <i>right</i> way. I would generally turn myself to the official best practices documentation, except nix' is very short and doesn't help much.<p>I <i>really</i> want to use nix. There's no question about its advantages. But nix just won't let me (or maybe I'm too old to learn new things).<p>That being said, I'll probably give it another try this month...</p>
]]></description><pubDate>Sun, 30 Nov 2025 20:43:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=46100228</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=46100228</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46100228</guid></item><item><title><![CDATA[New comment by gouggoug in "Visopsys: OS maintained by a single developer since 1997"]]></title><description><![CDATA[
<p>what are you trying to say here?</p>
]]></description><pubDate>Sun, 02 Nov 2025 03:53:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=45787743</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45787743</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45787743</guid></item><item><title><![CDATA[New comment by gouggoug in "FyneDesk: A full desktop environment for Linux written in Go"]]></title><description><![CDATA[
<p>> but would fail hard if you intend to support multiple release versions of an app, which happens often in the embedded world with multiple hardware targets, or self-hosted, large enterprise apps that require qualification sign-offs.<p>I don't have experience in this world, indeed.<p>But isn't "multiple release versions of an app" just "one application, with multiple different configurations"? The application code is the same (same version), the configuration (which is external to the application) is different.<p>Your build system takes your application code and the configuration as input, and outputs artifacts for that specific combination of inputs.</p>
]]></description><pubDate>Fri, 03 Oct 2025 19:12:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=45466641</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45466641</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45466641</guid></item><item><title><![CDATA[New comment by gouggoug in "FyneDesk: A full desktop environment for Linux written in Go"]]></title><description><![CDATA[
<p>Branches are mutable and regularly point to a new commit. Branching is selecting an active line of development, a set of commits that change over time.<p>That's why git also offer tags. Tags are immutable.<p>That's an important distinction.</p>
]]></description><pubDate>Fri, 03 Oct 2025 16:36:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=45464840</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45464840</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45464840</guid></item><item><title><![CDATA[New comment by gouggoug in "FyneDesk: A full desktop environment for Linux written in Go"]]></title><description><![CDATA[
<p>> There's nothing inherently wrong with having per-env branches<p>There is when you stop thinking in terms of dev, staging and prod, and you realize that you might have thousands of different environments, all named differently.<p>Do you create a branch for each one of them?<p>Using the environment name as branch name is coupling your repository with the external infrastructure that's running your code. If that infrastructure changes, you need to change your repository. That in itself is a cue it's a bad idea to use branches this way.<p>Another issue with this pattern is that you can't know what's deployed at any given time in prod. Deploying the "production" branch might yield a different result 10 minutes from now, than it did 25 minutes ago. (add to the mix caching issues, and you have a great recipe for confusing and hard to debug issues)<p>If you use tags, which literally are meant for that, combined with semver (though not necessarily a requirement, but a strong recommendation), you decouple your code and the external environment.<p>You can now point your "dev" environment to "main", point staging to ">= v1.25.0" and "prod" to "v1.25.0", "dev-alice" to "v2.0.0", "dev-john" to "deadb33f".<p>When you deploy "v1.25.0" in prod, you _know_ it will deploy v1.25.0 and not commit deadb33f that so happened to have been merged to the "production" branch 30 seconds ago.</p>
]]></description><pubDate>Fri, 03 Oct 2025 16:25:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=45464720</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45464720</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45464720</guid></item><item><title><![CDATA[New comment by gouggoug in "FyneDesk: A full desktop environment for Linux written in Go"]]></title><description><![CDATA[
<p>> Tools are just there, it's people who misuse them.<p>Absolutely. And it doesn't help when people write guides actively encouraging mis-using tools</p>
]]></description><pubDate>Fri, 03 Oct 2025 16:05:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=45464497</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45464497</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45464497</guid></item><item><title><![CDATA[New comment by gouggoug in "FyneDesk: A full desktop environment for Linux written in Go"]]></title><description><![CDATA[
<p>Somewhat related...<p>At [company x] someone wrote a starter guide that tells developers to create a "production", "staging" and "dev" branch for any new repo. We have tons of repositories that follow this pattern.<p>For many of them, each branch has taken of its own life and could be considered its own completely different codebase. It's a nightmare to manage and it confuses developers on a regular basis.<p>Don't do this.<p>If you want to deploy different versions of your software in different environments, use SEMVER and git tags. Don't create 1 branch per environment...<p>I have since edited that starter guide and crossed out this recommendation.</p>
]]></description><pubDate>Fri, 03 Oct 2025 07:43:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=45460182</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45460182</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45460182</guid></item><item><title><![CDATA[New comment by gouggoug in "Software essays that shaped me"]]></title><description><![CDATA[
<p>As a bilingual, non-native, English speaker, grug brain is particularly hard to read and understand.<p>I don’t understand what « grug » is supposed to mean for example.<p>That being said I still enjoy the blog.</p>
]]></description><pubDate>Wed, 01 Oct 2025 02:32:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=45433725</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45433725</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45433725</guid></item><item><title><![CDATA[New comment by gouggoug in "Find SF parking cops"]]></title><description><![CDATA[
<p>Since when? Where did you get this information from?</p>
]]></description><pubDate>Wed, 24 Sep 2025 05:55:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=45356779</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45356779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45356779</guid></item><item><title><![CDATA[New comment by gouggoug in "Seedbox Lite: A lightweight torrent streaming app with instant playback"]]></title><description><![CDATA[
<p>People can have opinions and instincts on a subject matter without a formal education in said matter.</p>
]]></description><pubDate>Sat, 30 Aug 2025 15:29:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45075472</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45075472</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45075472</guid></item><item><title><![CDATA[New comment by gouggoug in "Seedbox Lite: A lightweight torrent streaming app with instant playback"]]></title><description><![CDATA[
<p>The original statement is not just "we do not facilitate copyright infringement". It has a whole lot of other words.<p>If your original comment is solely about this revised 6 words statement, then, yes, you are correct, the claim is objectively untrue.<p>I'm no mind reader though, I assumed you were talking about the whole thing ¯\_(ツ)_/¯.</p>
]]></description><pubDate>Sat, 30 Aug 2025 01:25:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=45071125</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45071125</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45071125</guid></item><item><title><![CDATA[New comment by gouggoug in "Seedbox Lite: A lightweight torrent streaming app with instant playback"]]></title><description><![CDATA[
<p>TL;DR: I am nitpicking on the use of "objectively untrue" and the implication this disclaimer serves no purpose.<p>> The creators knew that when they wrote that disclaimer and we all know that reading the disclaimer.<p>This is the idea I'm pushing back against.<p>Yes, you are very likely correct in your assessment that the creators know that their software will be used illegally.<p>No, you are incorrect, in saying this is 1- "objectively untrue" and 2- implying the statement might _not_ have some protective qualities.<p>To take a purposefully exaggerated analogy: you can believe all day long someone committed murder, it still doesn't make it true. You can argue all day long the authors aren't being truthful, it still doesn't make it true.<p>> Yet the disclaimer is still placed there like it has some reason for existing beyond allowing everyone to pretend something that is happening isn’t happening<p>I'd agree with this, and, add that, at the same time, (assuming the USA here) it's probably placed there for legal reasons (whether it factually matters legally or not is a question for an actual lawyer, which, objectively, I am not).<p>> I’m just remarking on the silliness of the disclaimer.<p>It feels a bit silly, yes, and at the same time... needed?</p>
]]></description><pubDate>Fri, 29 Aug 2025 23:43:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=45070619</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45070619</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45070619</guid></item><item><title><![CDATA[New comment by gouggoug in "Seedbox Lite: A lightweight torrent streaming app with instant playback"]]></title><description><![CDATA[
<p>I think it's fair to say that the software itself could/does facilitate illegal uses cases. But with that line of argumentation, then all software facilitates illegal use-cases just by existing.<p>The statement "We do not endorse, promote, or facilitate copyright infringement, illegal streaming, or piracy in any form", might be poorly written with regards to the fact that just by existing this torrent streaming program _does_ facilitate piracy, but I don't think this was your original argument.</p>
]]></description><pubDate>Fri, 29 Aug 2025 21:55:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=45069888</link><dc:creator>gouggoug</dc:creator><comments>https://news.ycombinator.com/item?id=45069888</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45069888</guid></item></channel></rss>