<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: Fluorescence</title><link>https://news.ycombinator.com/user?id=Fluorescence</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 22 Oct 2026 18:12:13 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=Fluorescence" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by Fluorescence in "Rusty thoughts on "Parse, don't validate""]]></title><description><![CDATA[
<p>clear() is a method of std::Vec not std::slice.<p>DerefMut to [T] not Vec<T>.</p>
]]></description><pubDate>Sun, 27 Sep 2026 19:37:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=49870078</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49870078</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49870078</guid></item><item><title><![CDATA[New comment by Fluorescence in "Rusty thoughts on "Parse, don't validate""]]></title><description><![CDATA[
<p>Not sure switching between languages makes for a compelling argument:<p>"Look how easy it is to accidentally bypass the invariant of a rust newtype by transliterating the data shape into Haskell and deriving a new type". Uh, ok.<p>If comparing the "risk of accident" between a newtype wrapper whose only role is enforcing the the invariant versus manually reimplementing vector and iterator semantics to use a different layout... I'd say the newtype wins that.<p>It would be good advice to keep a newtype that enforces an invariant as a single purpose primitive type. A building block and not a place to add other features.<p>There might be times I'd prefer structural enforcement e.g. something serialisation related. Converting into a non-rust format is what they are doing in their "accident"!</p>
]]></description><pubDate>Sun, 27 Sep 2026 17:58:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=49869099</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49869099</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49869099</guid></item><item><title><![CDATA[New comment by Fluorescence in "Rusty thoughts on "Parse, don't validate""]]></title><description><![CDATA[
<p>Deref/DerefMut enables implicit type coercion rather than exposing an interface. You can choose the target type and immutable/mutable but not parts of the target type.<p>You can use all the slice reference methods (that do not require ownership) with:<p><pre><code>    impl<T> Deref for NonEmpty<T> {
        type Target = [T];

        fn deref(&self) -> &Self::Target {
            &self.v
        }
    }

    impl<T> DerefMut for NonEmpty<T> {
        fn deref_mut(&mut self) -> &mut [T] {
            &mut self.v
        }
    }
</code></pre>
<a href="https://doc.rust-lang.org/std/primitive.slice.html" rel="nofollow">https://doc.rust-lang.org/std/primitive.slice.html</a><p>If you DerefMut to a Vec then you won't be able to preserve the invariant.<p>If you want control over methods to expose then you need wrapper methods for those you want. If you want to expose some of the traits the inner type implements then there are likely derive macros available e.g. with derive_more you could expose just indexing as:<p><pre><code>    #[derive(Index, IndexMut)]
    struct MyVec(Vec<i32>);</code></pre></p>
]]></description><pubDate>Sun, 27 Sep 2026 17:16:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=49868676</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49868676</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49868676</guid></item><item><title><![CDATA[New comment by Fluorescence in "Rusty thoughts on "Parse, don't validate""]]></title><description><![CDATA[
<p>Not sure that type is good advice:<p><pre><code>    pub struct NonEmpty<T> {
        pub head: T,
        pub tail: Vec<T>,
    }
</code></pre>
You'd have to manually implement the traits to support the ergonomics of slices and iteration and costly reallocation if you need to pass ownership as a Vec:<p>I'd expect:<p><pre><code>    pub struct NonEmpty<T> {
        v: Vec<T>,
    }
</code></pre>
The constructor would enforce the invariant and then you'd impl Deref and DerefMut for [T] to gain normal len/is_empty/indexing/iteration, passing as &[T] to other funcs and mutating values (which can't break the invariant).<p>To mutate length while preserving the invariant it's dealers choice e.g.<p>- add .into_vec() for unwrap/mutate/rewrap<p>- add invariant preserving mutators of your choice</p>
]]></description><pubDate>Sun, 27 Sep 2026 15:49:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=49867754</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49867754</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49867754</guid></item><item><title><![CDATA[New comment by Fluorescence in "EasyEffects can improve laptop speaker sound quality"]]></title><description><![CDATA[
<p>> most people won't have any idea what to do to configure it usefully<p>This was me.<p>Never had a problem with typical eq/effects and even dabbled in dsp/synths but was defeated by EasyEffects. My attempts at basic tweaks had terrible consequences. I'm sure it was pebkac but the experience felt buggy e.g. my attempts to reduce some painful treble caused the bass to vanish, adjusting volume caused static not loundness etc. Most of the modules have more cryptic numbers than I know what to do with giving the feeling of being trapped in an algebraic equation.<p>However, downloading some community presets and the results were excellent. Some tiny nudges from there were within my idiot grasp.</p>
]]></description><pubDate>Sat, 29 Aug 2026 11:47:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=49489091</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49489091</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49489091</guid></item><item><title><![CDATA[New comment by Fluorescence in "Rust Glancer: Rust LSP using 100x less RAM"]]></title><description><![CDATA[
<p>It wasn't long ago RA was consuming over 24GB for my main workspace.<p>They've been working on memory use and it dropped to ~7.5GB for a while but the last couple of releases have been nudging up again - currently 9.4GB without major change in the workspace.<p>It becomes an obstacle on a 64GB machine given I work with multiple workspaces open e.g. for the crates I am using, example projects, other branches etc. so I have to start/stop it when I just want basic type-info/navigation. Trialling a different editor alongside my current one becomes prohibitive when it's going to want another 10GB for it's own RA instance.<p>99% of the code isn't changing so disk caching does seem like a no-brainer like back in the 90s with intellisense .ncb files... just without the regular corruptions though!</p>
]]></description><pubDate>Sat, 22 Aug 2026 13:29:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=49399582</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49399582</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49399582</guid></item><item><title><![CDATA[New comment by Fluorescence in "Melatonin impairs morning cognition in healthy young adults (2023)"]]></title><description><![CDATA[
<p>Not op, but I have been forced to switch to morning workouts for the past year and they as bad as they always were for me.<p>Above low intensity and I am impaired for the rest of the day - struggling with low energy, cognitively dulled and desperate for a nap. This applies even though it's not from sacrificing sleep at 05:00 like some folk do but a leisurely 08:30 or later.<p>My evening workout schedule (for decades) lets me push to total exhaustion and pass out immediately after eating. One of it's prime benefits was totally solving insomnia/sleep-procrastination of a night owl with an involuntarily regular sleep schedule. I am always spent after exercise not energised.</p>
]]></description><pubDate>Sun, 09 Aug 2026 10:11:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=49230039</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49230039</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49230039</guid></item><item><title><![CDATA[New comment by Fluorescence in "The title cards in Blade Runner are amazing"]]></title><description><![CDATA[
<p>I have never been able to follow a score despite music lessons and playing in an orchestra (I faked it).<p>I find such a striking difference between notation that just swims in front of my eyes:<p><a href="https://musescore.com/user/14835636/scores/6186772" rel="nofollow">https://musescore.com/user/14835636/scores/6186772</a><p>And a bar graph which I can hear when muted:<p><a href="https://www.youtube.com/watch?v=ipzR9bhei_o" rel="nofollow">https://www.youtube.com/watch?v=ipzR9bhei_o</a><p>I have a similar issue with algebraic notation, the signifier and signified never connects. So much misery spending hours with a mass of punctuated greek in a cs paper to discover it describes a triangle. The decryption is not even sticky, I look away for a second and it immediately re-encrypts back to soup.<p>I don't understand why since programming languages having always felt natural and something I learned as a pre-teen just by being left alone with a BBC micro and a "type in a game" book.</p>
]]></description><pubDate>Thu, 06 Aug 2026 09:16:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=49194376</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49194376</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49194376</guid></item><item><title><![CDATA[New comment by Fluorescence in "Qwen3.8-Max: A New Bar for Coding and Cowork"]]></title><description><![CDATA[
<p>Not used it but from perusing forums, consensus is OpenRouter has terrible/broken caching for Deepseek wildly inflating token use. The cache metrics are visible so you can verify for yourself (apparently, it's what others have done).</p>
]]></description><pubDate>Tue, 04 Aug 2026 07:29:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=49165398</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49165398</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49165398</guid></item><item><title><![CDATA[New comment by Fluorescence in "Atomarine: Nuclear Data Centers at Sea"]]></title><description><![CDATA[
<p>Would a marine raid by ship be lower risk than a smash and grab by panel-van on land?<p>I imagine land is a lower bar to entry, accessible to a much larger criminal base, but security response times and road surveillance is tough.<p>I'm too much of a land-lubber to know how easy it is vanish from a coastal crime scene by ship. The sea... nowhere to hide but very big. Can satellites track you these days? If wanting to nab a container or two that's a big ship. Not much you could put in a minisub or sub-surface thing. A James Bond villain could cut the supports and drag the whole thing to the hollowed out mountain of their island lair.<p>I need Michael Mann to make "Heat but on a boat" to educate me.</p>
]]></description><pubDate>Thu, 30 Jul 2026 11:46:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=49108686</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49108686</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49108686</guid></item><item><title><![CDATA[New comment by Fluorescence in "The iPhone Upgrade Program is being replaced by Apple Upgrade"]]></title><description><![CDATA[
<p>> because Klarna already specializes in precisely this kind of transaction<p>I think Apple gets sweetheart deals so their partners often lose money. Klarna likely sees this as a marketing coup to have their predatory sussness promoted by the Apple halo brand.<p>If there was profit to be had, I'm sure Apple could buy a small bank and spin it off as a subsidiary with little drama, it's just not the best of their options.</p>
]]></description><pubDate>Wed, 29 Jul 2026 12:03:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49096351</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=49096351</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49096351</guid></item><item><title><![CDATA[New comment by Fluorescence in "Wordgard: In-browser rich-text editor from the creator of ProseMirror"]]></title><description><![CDATA[
<p>First time I have seen this name.<p>Wikipedia is intriguingly inconsistent - claims that Marijn is the Dutch variant of Marinus meaning 'marine' like Marius, Mario etc. but other pages claim Marius is more likely to be from 'mars' or 'male' than 'marine'.</p>
]]></description><pubDate>Fri, 03 Jul 2026 15:45:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=48776397</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=48776397</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48776397</guid></item><item><title><![CDATA[New comment by Fluorescence in "GTA 6 will cost $80"]]></title><description><![CDATA[
<p>It's very weird to consider "time consumed" as a positive not negative metric.<p>A good piece of art changes your consciousness and makes you a different person. The best part of a book for me is not in the reading but how it becomes a part of my own imaginative engine and a new lens with which I can view the world.<p>I play games too... but I'm aware they are cynical time-vampires that pad out their content with repetitive grinding to jump virtual hurdles hijacking my reward centre with one-arm-bandit psychosis to make draining my life away by a rng feel "entertaining".</p>
]]></description><pubDate>Thu, 25 Jun 2026 04:45:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48669020</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=48669020</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48669020</guid></item><item><title><![CDATA[New comment by Fluorescence in "The AirPods Effect"]]></title><description><![CDATA[
<p>As a cyclist, I find sound such a poor signal I'd consider it optional. Too many threats are silent and sound is too late, misleadingly bounces of other surfaces and generally poorly correlated with significance.<p>Safe cycling is all about vision. If you can't see it's safe, it's not. It isn't simply seeing imminent threats but predicting them e.g. identifying drivers that aren't paying attention and where a car could suddenly emerge like blind turnings, car doors, pedestrians and such, and countering with appropriate caution / road position.<p>If you find noise useful, IMHO it means you aren't sufficiently aware of your environment.</p>
]]></description><pubDate>Fri, 19 Jun 2026 12:50:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48597986</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=48597986</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48597986</guid></item><item><title><![CDATA[New comment by Fluorescence in "Claude Fable 5"]]></title><description><![CDATA[
<p>Members will switch gyms if it's too busy at times they want to visit. "Too busy" includes too much contention for a single piece of equipment.<p>US gyms might be vast warehouses but in the UK, most only have a couple of benches, couple of cages, one set of db per denomination above 20kg etc. They require working-in and consideration for others.<p>A couple of unapproachable "heavy users" doing 3 hour sessions across peak hours can ruin the workout for dozens of paying members needing a few min per station for ~5 sets.<p>It might also be a euphemism for "dickhead" who also tend to be "heavy users". Those that damage, hoard and don't share equipment and repel other customers on many levels besides - threatening, lecherous, loud and smelly.<p>Doesn't even need malicious intent - can be weirdo bores, forever talking at victims while doing a routine that makes absolutely no sense besides camping on equipment for half a day... 100 sets of incline press 7 days a week... what are you even doing to yourself fella?</p>
]]></description><pubDate>Wed, 10 Jun 2026 10:39:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48474295</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=48474295</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48474295</guid></item><item><title><![CDATA[New comment by Fluorescence in "Diatec, known for its mechanical keyboard brand FILCO, has ceased operations"]]></title><description><![CDATA[
<p>Shame. I have two Filcos over 15 years old.<p>Some of the switches started dying at the same time last year. I guess I tipped over the lifetime of cherry switches.<p>I looked around but there are so few UK TKLs. I didn't want a layout change of page/home/end cluster or lose "useless" keys ins/pause/etc. (I remap them and now rely on them). I didn't like the look of prebuilts from Keychron or want to pay £500 or mess with shady "group buys" for parts.<p>So I bought a bag of switches and a soldering iron instead and expect to get another 15 years out of them.<p>Happy customer but I guess not a repeat customer.</p>
]]></description><pubDate>Fri, 24 Apr 2026 23:32:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=47897089</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=47897089</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47897089</guid></item><item><title><![CDATA[New comment by Fluorescence in "Cambodia unveils statue to honour famous landmine-sniffing rat"]]></title><description><![CDATA[
<p>> in contrast to dogs who can be taught to take set routes/patterns<p>A rat taught to do a Westminster-style agility course including slalom cones:<p><a href="https://imgur.com/gallery/smart-pet-rat-tofu-doing-fun-agility-course-A8Eq8On" rel="nofollow">https://imgur.com/gallery/smart-pet-rat-tofu-doing-fun-agili...</a><p>A rat driving a car. Not evidence of anything... just fun<p><a href="https://www.youtube.com/watch?v=s0GWux2kz24" rel="nofollow">https://www.youtube.com/watch?v=s0GWux2kz24</a></p>
]]></description><pubDate>Wed, 08 Apr 2026 16:37:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47692600</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=47692600</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47692600</guid></item><item><title><![CDATA[New comment by Fluorescence in "Boomloom: Think with your hands"]]></title><description><![CDATA[
<p>In primary school, we did this with a piece of cardboard by cutting /\/\/\ at the top and bottom and inserting a knitting needle as the cylinder comb for doing a batch of alternate lines at the same time.<p>It was 40 years ago but clear as day because I really enjoyed it. I made a coastal landscape with boats and it was very programmery to build up a real image from scan-lines. Making an abstract repeating pattern like the examples wouldn't be half as engaging.</p>
]]></description><pubDate>Sun, 22 Mar 2026 09:50:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=47475909</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=47475909</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47475909</guid></item><item><title><![CDATA[New comment by Fluorescence in "RAM kits are now sold with one fake RAM stick alongside a real one"]]></title><description><![CDATA[
<p>I would love to have blanks for every unused socket/port to keep dust out.<p>I'm just too cheap to pay for them though...</p>
]]></description><pubDate>Sat, 14 Mar 2026 15:30:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=47377684</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=47377684</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47377684</guid></item><item><title><![CDATA[New comment by Fluorescence in "RAM kits are now sold with one fake RAM stick alongside a real one"]]></title><description><![CDATA[
<p>For the same spec it's likely to be a different chip count rather than density. In theory two sticks could have higher bom... not that consumers would see such savings given the price segmentation where the appetite for higher capacities has deeper pockets.<p>Have recent boards/cpus fixed the instability problems people had with 4 sticks of DDR5 yet?<p>I was shocked when I saw folk saying you can't use 4 slots. It would mean that a one stick build would have an upgrade path but if you started with 2, you'd have to replace them.</p>
]]></description><pubDate>Sat, 14 Mar 2026 15:13:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=47377507</link><dc:creator>Fluorescence</dc:creator><comments>https://news.ycombinator.com/item?id=47377507</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47377507</guid></item></channel></rss>