<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: Leftium</title><link>https://news.ycombinator.com/user?id=Leftium</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 24 Oct 2026 13:42:21 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=Leftium" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by Leftium in "Color Names"]]></title><description><![CDATA[
<p>Probably a different data source/mapping, but you may find this easier to use: <a href="https://www.color-blindness.com/color-name-hue/" rel="nofollow">https://www.color-blindness.com/color-name-hue/</a></p>
]]></description><pubDate>Fri, 23 Oct 2026 12:41:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=50208078</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50208078</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50208078</guid></item><item><title><![CDATA[Show HN: MegaKey (standardization and extension of the Hyper and Meh keys)]]></title><description><![CDATA[
<p>MegaKey is a proposed standardization + extension of Hyper and Meh<p>- Mental tools for your mind: turn a mouthful like "Shift+Control+Option+Command+C" into "Giga+C"<p>- Software tools for your fingers: easily press Shift+Control+Option+Command+C using just two fingers from a single hand! (via Karabiner rules)<p>I renamed Hyper and Meh because the modifier key combinations varied depending on the source. I picked the most logical combination: Giga == Shift + Mega<p>I picked the names/symbols and even modifier combinations so they would be easy remember. Explained in detail: <a href="https://leftium.github.io/megakey/modifiers" rel="nofollow">https://leftium.github.io/megakey/modifiers</a><p>---<p>In addition, I created 3 more pseudo-modifier keys. They are very handy for existing shortcuts. For example:<p>- Wish+Space: TrellisWM "Show everything"[1] (Ctrl+Option+Space)<p>- Chaos+N: Chrome "Add tab to new split view" (Cmd+Option+N)<p>- More useful pre-existing shortcuts: <a href="https://leftium.github.io/megakey/shortcuts" rel="nofollow">https://leftium.github.io/megakey/shortcuts</a><p>[1]: <a href="https://trelliswm.app/docs/#shortcuts" rel="nofollow">https://trelliswm.app/docs/#shortcuts</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=50207489">https://news.ycombinator.com/item?id=50207489</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 23 Oct 2026 11:49:27 +0000</pubDate><link>https://leftium.github.io/megakey/</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50207489</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50207489</guid></item><item><title><![CDATA[New comment by Leftium in "Show HN: Sumi.css – CSS Framework"]]></title><description><![CDATA[
<p>Nimble.css is my spiritual successor to PicoCSS: <a href="https://leftium.github.io/nimble.css/demo/pico.html" rel="nofollow">https://leftium.github.io/nimble.css/demo/pico.html</a><p>It's not a direct replacement; I fixed a lot of annoyances from PicoCSS.</p>
]]></description><pubDate>Wed, 21 Oct 2026 20:55:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=50187489</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50187489</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50187489</guid></item><item><title><![CDATA[New comment by Leftium in "Why do computers/phones have a restart option along with the power off option?"]]></title><description><![CDATA[
<p>On Windows, restart and shut down (power off) are <i>not</i> the same.<p>When shutting down, Windows optimizes the next start by caching some stuff. So it is not a true, clean restart.<p>On a restart, this caching does not happen.<p>Sources:<p>- <a href="https://www.youtube.com/watch?v=lUIhzACQDAc" rel="nofollow">https://www.youtube.com/watch?v=lUIhzACQDAc</a><p>- <a href="https://learn.microsoft.com/en-us/windows/win32/power/system-power-states" rel="nofollow">https://learn.microsoft.com/en-us/windows/win32/power/system...</a></p>
]]></description><pubDate>Mon, 19 Oct 2026 05:36:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=50148743</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50148743</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50148743</guid></item><item><title><![CDATA[New comment by Leftium in "Window Tiling on macOS, Scoped to Your Space"]]></title><description><![CDATA[
<p>This is the first window manager I've found that lets you split windows by dragging onto other windows (like VS code)</p>
]]></description><pubDate>Thu, 15 Oct 2026 21:30:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=50110592</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50110592</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50110592</guid></item><item><title><![CDATA[Window Tiling on macOS, Scoped to Your Space]]></title><description><![CDATA[
<p>Article URL: <a href="https://scopo.app/features/window-tiling">https://scopo.app/features/window-tiling</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=50110565">https://news.ycombinator.com/item?id=50110565</a></p>
<p>Points: 1</p>
<p># Comments: 1</p>
]]></description><pubDate>Thu, 15 Oct 2026 21:28:46 +0000</pubDate><link>https://scopo.app/features/window-tiling</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50110565</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50110565</guid></item><item><title><![CDATA[New comment by Leftium in "Ask HN: Is voice becoming your main input? What happens to open-plan offices?"]]></title><description><![CDATA[
<p>There are microphones that can capture whispers and even subvocalization: <a href="https://youtu.be/NvVbCqDgfCs?t=520" rel="nofollow">https://youtu.be/NvVbCqDgfCs?t=520</a><p>The one demo'ed in the video is BOYA BY-GM18CU (<a href="https://www.amazon.com/dp/B0BF969RVP" rel="nofollow">https://www.amazon.com/dp/B0BF969RVP</a>)<p>That one captures whispers. I've heard other devices can dictate based on vibrations from your neck/chest.</p>
]]></description><pubDate>Mon, 12 Oct 2026 15:44:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=50058094</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50058094</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50058094</guid></item><item><title><![CDATA[New comment by Leftium in "Show HN: Bigwords.page – Turn any screen into a sign. The URL is the app"]]></title><description><![CDATA[
<p>Tip: you can install this as a PWA (progress web app) onto your mobile device home screen. (If you have recent iOS 26+ or Android.)<p>If the site adds a PWA manifest, Android (Chrome/Google app) will show a prompt to install as app on load. Also PWA install will be available for older iOS.<p>I made a simple tool that generates a minimal PWA manifest: <a href="https://logo.leftium.com/logo" rel="nofollow">https://logo.leftium.com/logo</a></p>
]]></description><pubDate>Thu, 08 Oct 2026 02:00:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=50001143</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=50001143</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50001143</guid></item><item><title><![CDATA[Video.js v10 is GA – let the migrations begin]]></title><description><![CDATA[
<p>Article URL: <a href="https://videojs.org/blog/videojs-10">https://videojs.org/blog/videojs-10</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49974057">https://news.ycombinator.com/item?id=49974057</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 06 Oct 2026 04:09:20 +0000</pubDate><link>https://videojs.org/blog/videojs-10</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49974057</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49974057</guid></item><item><title><![CDATA[New comment by Leftium in "Pico CSS is no longer maintained (final release v2.1.1)"]]></title><description><![CDATA[
<p>Apparently the other reply got auto-flagged because it was detected as genai. Let me paraphrase that comment (easier than reading that entire MD document, which was AI-written):<p>The main annoyances:<p>- oversized buttons<p>- 100+ root custom properties in devtools<p>- fighting against too many breakpoints (unpredictable font/container sizing)<p>---<p>I also changed/added some features:<p>- much smaller core: only 4.1 KB Brotli<p>- CSS cascade layers so app CSS can override more easily<p>- a surface color system (a la Open Props)<p>- OKLCH colors with auto derived hover/focus states and light-dark() theming<p>- centered layout with real gutters, plus content bleed outside gutters<p>- .no-nimble opt-out class (instead of .pico opt-in)<p>- ability to configure universal control-density (buttons, inputs, selects)</p>
]]></description><pubDate>Mon, 05 Oct 2026 16:12:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=49966783</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49966783</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49966783</guid></item><item><title><![CDATA[New comment by Leftium in "Pico CSS is no longer maintained (final release v2.1.1)"]]></title><description><![CDATA[
<p>For some reason my detailed reply got flagged...<p>So if you can't see it: feature-comparison matrix plus notes from migrating several real projects from Pico:<p><a href="https://github.com/Leftium/nimble.css/blob/main/specs/pico-migration.md" rel="nofollow">https://github.com/Leftium/nimble.css/blob/main/specs/pico-m...</a></p>
]]></description><pubDate>Mon, 05 Oct 2026 04:29:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=49960685</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49960685</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49960685</guid></item><item><title><![CDATA[New comment by Leftium in "Pico CSS is no longer maintained (final release v2.1.1)"]]></title><description><![CDATA[
<p>The main annoyances:<p>- oversized buttons<p>- 100+ root custom properties cluttering DevTools<p>- fighting against breakpoint-heavy font and container sizing<p>- container "padding" that could disappear at exact breakpoints<p>- having to fight framework styles with specificity<p>Nimble uses more compact controls, ~20 semantic variables, simpler grid-based centering with real gutters, and cascade layers so normal app CSS wins.<p>---<p>I also added some features/changed:<p>- much smaller core: Nimble is only 4.1 KB Brotli<p>- cascade layers, so normal app CSS can override the library without specificity fights<p>- a surface hierarchy for page/card/input/overlay backgrounds (a la Open Props)<p>- OKLCH colors with derived hover/focus states and light-dark() theming<p>- centered layout with real gutters, plus bleed-edge, bleed-wide, and bleed-full<p>- .no-nimble to opt third-party component subtrees out of Nimble styling<p>- shared control-density customization for buttons, inputs, selects, etc.<p>- .nc-join for visually joined controls without coupling that styling to ARIA role="group" (this kept confusing coding agents; technically they should not be coupled)<p>---<p>Feature-comparison matrix plus notes from migrating several real projects from Pico: <a href="https://github.com/Leftium/nimble.css/blob/main/specs/pico-migration.md" rel="nofollow">https://github.com/Leftium/nimble.css/blob/main/specs/pico-m...</a></p>
]]></description><pubDate>Mon, 05 Oct 2026 04:12:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=49960600</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49960600</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49960600</guid></item><item><title><![CDATA[New comment by Leftium in "Pico CSS is no longer maintained (final release v2.1.1)"]]></title><description><![CDATA[
<p>My nimble.css is inspired by PicoCSS: <a href="https://leftium.github.io/nimble.css/demo/pico.html" rel="nofollow">https://leftium.github.io/nimble.css/demo/pico.html</a><p>But it's not a drop-in replacement. (I fixed several annoyances I had while using PicoCSS.)</p>
]]></description><pubDate>Sun, 04 Oct 2026 22:04:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=49958367</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49958367</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49958367</guid></item><item><title><![CDATA[New comment by Leftium in "Ask HN: Declarative vs. Imperative"]]></title><description><![CDATA[
<p>Perhaps you may find like-minded folks in the functional-thinking community:<p>I was trying to figure out what you meant by "declarative" because CSS is declarative. (My understanding is: "declarative means you say (declare) what you want, but not how to get it." Usually SQL is the poster child of declarative languages.)<p>I think you're really talking about a mix of preferring data (vs actions/calculations) and DSLs (which aren't necessarily declarative)<p>Eric Normand has some thoughts you might appreciate:<p>- How a problem might take 1000 SLOC to solve directly, but only 10 SLOC with a DSL (plus up to 500 SLOC for the DSL itself; still fewer lines total) <a href="https://ericnormand.me/podcast/magical-leverage-languages" rel="nofollow">https://ericnormand.me/podcast/magical-leverage-languages</a><p>- Data vs calculations vs actions: <a href="https://ericnormand.me/podcast/what-is-an-action" rel="nofollow">https://ericnormand.me/podcast/what-is-an-action</a><p>---<p>I think data can be very powerful. For example, someone explained to me:<p>> I've been helping my non-tech father with Home Assistant. I've honestly been shocked with how far "community extensions" + "user configuration" can take you. Every time we hit a bug, I go "time to hit github" but without fail chatgpt and him are able to tweak a setting to get it working.<p>If you make your system configurable (config==data), you can skip the whole compile/build step!</p>
]]></description><pubDate>Wed, 23 Sep 2026 15:40:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=49817779</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49817779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49817779</guid></item><item><title><![CDATA[New comment by Leftium in "Deterministic Core, Non-Deterministic Shell"]]></title><description><![CDATA[
<p>I think actions vs calculations is a better framing here. It's not just about avoiding imperative code or nondeterminism. It's about being extra careful with actions because the order and number of times they run matter.<p>Here is an example of a calculation written imperatively. It remains easy to reason about because the actions don't leak out of the function:<p><pre><code>    function add(ns) {
        let total = 0
        for (const n of ns) {
            total += n
        }
        return total
    }
</code></pre>
On the other hand, a deterministic state machine like `a = AddMachine` is harder to reason about because it still matters how many times the action `a.transition(1)` is called. (Note it is possible to implement the state machine as calculations.)<p><a href="https://ericnormand.me/podcast/what-is-an-action" rel="nofollow">https://ericnormand.me/podcast/what-is-an-action</a><p><a href="https://livebook.manning.com/book/grokking-simplicity/chapter-3/page_52" rel="nofollow">https://livebook.manning.com/book/grokking-simplicity/chapte...</a></p>
]]></description><pubDate>Tue, 22 Sep 2026 04:32:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=49796809</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49796809</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49796809</guid></item><item><title><![CDATA[New comment by Leftium in "Ask HN: Where is all of the AI coded software?"]]></title><description><![CDATA[
<p>I think the real question you're asking is: why isn't AI coded software replacing well-known incumbent software (office, adobe, etc...)<p>Because I see AI coded software everywhere: HN has been complaining about the recent influx of Show HNs due to AI. Take a specific product category: there are about two new dictation apps on Show HN every week.<p>Here are my theories:<p>- adobe/office are simply too complex for AI to replicate (as of now). Theo Browne has been testing all the frontier models with a relatively simple fish game. The results have been subpar, at best. I don't think anyone would prefer the AI-generated games over the original. Even if the AI-generated version was free.<p>- Most AI-coded software won't be distributed like classic software. Instead of a bag of hundreds of features (adobe/office), AI will be used to create the specific 5% of the features a single user really needs (home-cooked software). The software may even be per project or even per task. Why spend 20X to 100X the tokens/time when you only need a small subset of the features?<p>- AI may not be able to replace human "taste" or design. There is a lot of design that went into adobe and office. I don't think AI can fully understand all the "why's" of these designs. We can already kind of see this with open source: Gimp and LibreOffice are alternatives to adobe/office. Yet most people prefer the paid options.<p>- Even if AI solved coding, there are other barriers like marketing.<p>Some examples:<p>- I built my perfect window management system with the help of AI. It suits my very specific needs very well, but it's nowhere near ready for distribution. So this is AI-generated software no one else will ever probably see.<p>- Going with the home-cooked meal analogy: there is a dish served at all Chinese restaurants in Korea: jjajangmyeon. However you can't find it in China because that dish is only found at home, not at restaurants in China.</p>
]]></description><pubDate>Wed, 16 Sep 2026 16:06:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=49729128</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49729128</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49729128</guid></item><item><title><![CDATA[New comment by Leftium in "Show HN: HonestSky, a free iOS weather app without ads or subscriptions"]]></title><description><![CDATA[
<p>My first impression is it's very similar to the stock iOS weather app Apple provides by default (feature/layout-wise). I couldn't see any major differences based on the description here or in the app store. That's what kept me from even trying it.<p>So my advice is to highlight the major benefit over the iOS weather app that ships with every iPhone.<p>The only major difference I could see is the data source. Did you intentionally not use Apple WeatherKit? (If so, what was the rationale?)</p>
]]></description><pubDate>Wed, 16 Sep 2026 15:24:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=49728475</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49728475</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49728475</guid></item><item><title><![CDATA[New comment by Leftium in "How do you keep up HN post with more than 2K comments?"]]></title><description><![CDATA[
<p>My HN reader has QoL features for reading such posts: <a href="https://hn.leftium.com/i/49630931?q=%22aspect+ratio%22" rel="nofollow">https://hn.leftium.com/i/49630931?q=%22aspect+ratio%22</a><p>- Comments have 3 LOD (L:full, M:single line, S:collapsed)<p>- Optimal default LODs<p>- Simple to expand groups of comments (direct replies, comment thread ("spine"), full sub-tree)<p>- Highlight specific users like OP, or other interesting users<p>- Search for text within thread (automatically expands LOD)<p>- Highlights new comments (since last visit or set time)<p>It matches the way I want to read HN comments, anyways.</p>
]]></description><pubDate>Sat, 12 Sep 2026 23:19:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=49678249</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49678249</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49678249</guid></item><item><title><![CDATA[New comment by Leftium in "bzip3"]]></title><description><![CDATA[
<p>> Compression is prediction<p>(According to recent article on HN[1]. So LLMs _are_ compression!)<p>[1]: <a href="https://hn.leftium.com/i/49263497" rel="nofollow">https://hn.leftium.com/i/49263497</a></p>
]]></description><pubDate>Tue, 08 Sep 2026 18:20:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=49614461</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49614461</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49614461</guid></item><item><title><![CDATA[New comment by Leftium in "CodexBar: Every AI coding limit, in your menu bar"]]></title><description><![CDATA[
<p>Tip: you can also add widgets to your desktop<p>1. Click menu bar time/clock<p>2. Click Edit Widgets...<p>3. Search for "Codexbar"</p>
]]></description><pubDate>Mon, 07 Sep 2026 10:17:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=49596446</link><dc:creator>Leftium</dc:creator><comments>https://news.ycombinator.com/item?id=49596446</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49596446</guid></item></channel></rss>