<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: densh</title><link>https://news.ycombinator.com/user?id=densh</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 10 Jun 2026 07:06:01 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=densh" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by densh in "We made our filesystem 47× faster by deleting it"]]></title><description><![CDATA[
<p>Sqlite is essentially a user space queryable file system and it can be faster than writing to file system directly while working with small files.</p>
]]></description><pubDate>Sat, 23 May 2026 20:59:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=48251463</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=48251463</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48251463</guid></item><item><title><![CDATA[New comment by densh in "Spinel: Ruby AOT Native Compiler"]]></title><description><![CDATA[
<p>As someone who spent a few years working on a compiler in this space — it’s tough, but are the results of instant startup and immediately decent performance without warm-up satisfying to use in practice. I really hope this takes off and yet another language can break free from dominant interpreter + jit compiler monoculture that we currently have for higher-level programming languages.</p>
]]></description><pubDate>Fri, 24 Apr 2026 10:25:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47888210</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47888210</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47888210</guid></item><item><title><![CDATA[New comment by densh in "Improving my focus by giving up my big monitor"]]></title><description><![CDATA[
<p>I usually use center 2/3 of 27'' screen with just a single top-level window for a similar reason. That puts it up to around 20.5'' and around 6:5 aspect ratio. I don't find having many windows shown at the same competing for my attention more productive. I don't benefit from having multiple code columns shown at once that much either and would rather switch among tabs or windows via shortcuts.</p>
]]></description><pubDate>Sat, 04 Apr 2026 08:12:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47636993</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47636993</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47636993</guid></item><item><title><![CDATA[New comment by densh in "Why Mathematica does not simplify sinh(arccosh(x))"]]></title><description><![CDATA[
<p>For me Mathematica is much more akin to numpy+sympy+matplotlib+... with absolutely crazy amount of batteries included in a single coherent package with IDE and fantastic documentation. In a way numpy ecosystem already "won" industry users over, yet Wolfram stack is still appealing to me personally for small experiments.<p>Coq/Lean target very different use cases.</p>
]]></description><pubDate>Sun, 15 Mar 2026 15:31:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=47388373</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47388373</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47388373</guid></item><item><title><![CDATA[New comment by densh in "Apple Studio Display and Studio Display XDR"]]></title><description><![CDATA[
<p>Dimming reduces total brightness over time and shifts color balance away from neutral. Latest "Pro" displays from Apple now have built-in support for calibration but only with high end calibration equipment: <a href="https://support.apple.com/en-gb/guide/mac-help/mchl628f5edf/mac" rel="nofollow">https://support.apple.com/en-gb/guide/mac-help/mchl628f5edf/...</a><p>The implementation is great, since it doesn't add fix up profile on top factory calibration, but actually fully replaces factory calibration internal LUT. It worked wonders to completely fix my M1 MBP screen that got noticeably tinted over time. I don't mind brightness reduction since I almost never use it at more than 200 nits, usually around 100. Nominal 1600 leaves lots of buffer for decay over time.<p>I've had similar issue my OLED TV with the same fix. Got my LG C1 calibrated as well and it looks fantastic again.<p>It's a shame there are no iOS or Android phones that support calibration out of the box. Some iPads support subset of pro display calibration software (called fine tune calibration), but still lack full recalibration support.</p>
]]></description><pubDate>Thu, 05 Mar 2026 20:27:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47266832</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47266832</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47266832</guid></item><item><title><![CDATA[New comment by densh in "MacBook Neo"]]></title><description><![CDATA[
<p>Don't get me wrong it's a fantastic product and great price point, but the only thing it makes me think of is the complete failure of iPadOS. Ultra portable MacBook with is A18 with 8G of ram is infinitely more useful to me (for non-pen input) than full M4/M5 chip with more ram that's completely wasted due to needless OS restrictions.</p>
]]></description><pubDate>Wed, 04 Mar 2026 14:45:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47248174</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47248174</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47248174</guid></item><item><title><![CDATA[New comment by densh in "Apple Studio Display and Studio Display XDR"]]></title><description><![CDATA[
<p>I might be the only one, but it's still to this date (and dating all the way back to 2014 with the first iMac 5k display) Apple is the only company that truly gets HIDPI desktop displays with high quality gloss and 200+ ppi at screen this large. In the meantime popular and widely sold gaming screens with matte blur filters and mediocre ppi give me headache and eye fatigue after a few hours of use. Prior generation Studio Display is the only external display that truly worked for text heavy work with my eyes (including software engineering), and I'm sure the latest generation is fantastic as well.</p>
]]></description><pubDate>Tue, 03 Mar 2026 14:37:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47233014</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47233014</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47233014</guid></item><item><title><![CDATA[New comment by densh in "Closing this as we are no longer pursuing Swift adoption"]]></title><description><![CDATA[
<p>It seems like today. <a href="https://news.ycombinator.com/item?id=47120899">https://news.ycombinator.com/item?id=47120899</a></p>
]]></description><pubDate>Tue, 24 Feb 2026 14:55:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=47137925</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47137925</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47137925</guid></item><item><title><![CDATA[New comment by densh in "Lean 4: How the theorem prover works and why it's the new competitive edge in AI"]]></title><description><![CDATA[
<p>Apart from prioritizing FFI (like Java/Scala, Erlang/Elixir), the other two easy ways to bootstrap an integration of a new obscure or relatively new programming language is to focus on RPC (ffi through network) or file input-output (parse and produce well known file formats to integrate with other tools at Bash level).<p>I find it very surprising that nobody tried to make something like gRPC as an interop story for a new language, with an easy way to write impure "extensions" in other languages and let your pure/formal/dependently typed language implement the rest purely through immutable message passing over gRPC boundary. Want file i/o? Implement gRPC endpoint in Go, and let your language send read/write messages to it without having to deal with antiquated and memory unsafe Posix layer.</p>
]]></description><pubDate>Sat, 21 Feb 2026 11:16:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47099705</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=47099705</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47099705</guid></item><item><title><![CDATA[New comment by densh in "Super-Flat ASTs"]]></title><description><![CDATA[
<p>Great summary and I think your argument is sound.</p>
]]></description><pubDate>Wed, 10 Dec 2025 19:13:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=46222151</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=46222151</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46222151</guid></item><item><title><![CDATA[New comment by densh in "Apple Releases Open Weights Video Model"]]></title><description><![CDATA[
<p>No pun intended but it's indeed an unfortunate choice of words on my part.</p>
]]></description><pubDate>Tue, 02 Dec 2025 14:06:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=46121286</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=46121286</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46121286</guid></item><item><title><![CDATA[New comment by densh in "Apple Releases Open Weights Video Model"]]></title><description><![CDATA[
<p>> As a blind person, AI has changed my life.<p>Something one doesn't see in news headlines. Happy to see this comment.</p>
]]></description><pubDate>Tue, 02 Dec 2025 08:44:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=46119040</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=46119040</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46119040</guid></item><item><title><![CDATA[New comment by densh in "Detect Electron apps on Mac that hasn't been updated to fix the system wide lag"]]></title><description><![CDATA[
<p>For example let's say I want to go to display settings from search. I enter 'monitor' in search since I forgot how it's called. First results: accessibility, privacy and security, control center, and only 4-th category Displays. It's 8-th line if you count sub-categories.<p>I usually google where a particular setting is now since I don't use the exact same words and the settings search is very literal.</p>
]]></description><pubDate>Mon, 13 Oct 2025 07:23:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=45565687</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=45565687</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45565687</guid></item><item><title><![CDATA[New comment by densh in "Testing a compiler-driven full-stack web framework"]]></title><description><![CDATA[
<p>Have any studies been done on the use of newer or less popular programming languages in the era of LLMs? I'd guess that the relatively low number of examples and the overall amount of code available publicly in a particular language means that LLM output is less likely to be good.<p>If the hypothesis is correct, it sets an incredibly high bar for starting a new programming language today. Not only does one need to develop compiler, runtime, libraries, and IDE support (which is a tall order by itself), but one must also provide enough data for LLMs to be trained on, or even provide a custom fine-tuned snapshot of one of the open models for the new language.</p>
]]></description><pubDate>Wed, 08 Oct 2025 16:42:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45518077</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=45518077</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45518077</guid></item><item><title><![CDATA[New comment by densh in "Detect Electron apps on Mac that hasn't been updated to fix the system wide lag"]]></title><description><![CDATA[
<p>I just can't believe how dysfunctional something as basic as search over settings is now.</p>
]]></description><pubDate>Wed, 01 Oct 2025 13:51:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=45437733</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=45437733</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45437733</guid></item><item><title><![CDATA[New comment by densh in "Trump to impose $100k fee for H-1B worker visas, White House says"]]></title><description><![CDATA[
<p>Some details on the Swiss side:<p>There are two variations of the B permit one can get. An unrestricted B permit isn't tied to a specific employer and provides a path toward permanent residence (C permit) within five years for EU citizens or ten years for non-EU citizens. Based on my experience, EU citizens almost always get an unrestricted permit and are treated relatively well by the immigration process: at their first application, they receive a five-year B permit, and at the first renewal five years later, they automatically get a C permit. As a EU citizen you just need to find a job, and your right to work is essentially unrestricted.<p>The non-EU path is quite different. A non-EU citizen only gets an unrestricted B permit if they prove they have special skills that are not currently available on the local job market. There is a yearly quota for such permits. One can also be unlucky and get an L permit, which is for temporary work only. Moreover, restricted B requires yearly renewal with a demonstration of ongoing employment at each renewal.<p>If you get a restricted B permit (or L), you don't have any direct path to a C permit, no matter how many years you've lived in Switzerland. You can complete your bachelor's, master's, and PhD degrees and continue working for a university as a contractor afterward, and still not be eligible for the path toward a C permit after over a decade of living in the country. To get a C permit, the last two years prior to the application must have been on an unrestricted B permit, working a full-time, unlimited-term job contract. The change to an unrestricted B permit requires you to have become a "special talent" during those prior years; otherwise, it won't be granted.</p>
]]></description><pubDate>Sat, 20 Sep 2025 12:07:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=45312624</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=45312624</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45312624</guid></item><item><title><![CDATA[New comment by densh in "I regret building this $3000 Pi AI cluster"]]></title><description><![CDATA[
<p>For anyone interested in playing with distributed systems, I'd really recommend getting a single machine with latest 16-core CPU from AMD and just running 8 virtual machines on it. 8 virtual machines, with 4 hyper threads pinned per machine, and 1/8 of total RAM per machine. Create a network between them virtually within your virtualization software of choice (such as Proxmox).<p>And suddenly you can start playing with distributed software, even though it's running on a single machine. For resiliency tests you can unplug one machine at a time with a single click. It will annihilate a Pi cluster in Perf/W as well, and you don't have to assemble a complex web of components to make it work. Just a single CPU, motherboard, m.2 SSD, and two sticks of RAM.<p>Naturally, using a high core count machine without virtualization will get you best overall Perf/W in most benchmarks. What's also important but often not highlighted in benchmarks in Idle W if you'd like to keep your cluster running, and only use it occasionally.</p>
]]></description><pubDate>Fri, 19 Sep 2025 18:08:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=45304632</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=45304632</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45304632</guid></item><item><title><![CDATA[New comment by densh in "The jank programming language"]]></title><description><![CDATA[
<p>Very cool project and I think you are doing it right. Best of luck with getting it off the ground!</p>
]]></description><pubDate>Thu, 10 Jul 2025 20:49:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=44525438</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=44525438</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44525438</guid></item><item><title><![CDATA[New comment by densh in "The jank programming language"]]></title><description><![CDATA[
<p>Hey, as someone who spent a few years reimplementing another language trying to decouple it from JVM (Scala JVM -> Scala Native), some pitfalls to avoid:<p>- Don't try to provide backwards compatible subset of JVM APIs. While this might seem tempting to support very important library X with just a bit of work, I'd rather see new APIs that are only possible with your language / runtime. Otherwise you might end up stuck in never-ending stream of requests to add one more JVM feature to get yet another library from the original JVM language running. Focus on providing your own unique APIs or bindings to native projects that might not be easy to do elsewhere.<p>- Don't implement your own GC, just use mmtk [1]. It takes a really long time to implement something competitive, and mmtk already has an extensible and pluggable GC design that gets some of the best performance available today [2] without much effort on your end.<p>- Don't underestimate complexity and importance of multi-threading and concurrency. Try to think of supporting some form of it early or you might get stuck single threaded world forever (see CPython). Maybe you don't do shared memory multi threading and then it could be quite easy to implement (as in erlang). No shared memory also means no shared heap, which makes GCs's life much easier.<p>- Don't spend too much time benchmarking and optimizing single threaded performance against JVM as performance baseline. If you don't have a compelling use case (usually due to unique libraries), the performance might not matter enough for users to migrate to your language. When you do optimize, I'd rather see fast startup, interactive environment (think V8), over slow startup but eventually efficient after super long warmup (like jvm).<p>I see that jank is already doing at least some of the things right based on the docs, so this message might be more of a dump of mistakes I've done previously in this space.<p>[1]: <a href="https://github.com/mmtk/mmtk-core">https://github.com/mmtk/mmtk-core</a><p>[2]: <a href="https://dl.acm.org/doi/pdf/10.1145/3519939.3523440" rel="nofollow">https://dl.acm.org/doi/pdf/10.1145/3519939.3523440</a></p>
]]></description><pubDate>Thu, 10 Jul 2025 11:39:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=44519857</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=44519857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44519857</guid></item><item><title><![CDATA[New comment by densh in "Malimite – iOS and macOS Decompiler"]]></title><description><![CDATA[
<p>But is it illegal to provide tools for decompilation? As in shooting people is illegal, but selling guns is not.</p>
]]></description><pubDate>Wed, 29 Jan 2025 08:55:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=42862951</link><dc:creator>densh</dc:creator><comments>https://news.ycombinator.com/item?id=42862951</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42862951</guid></item></channel></rss>