<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: JoshuaRLi</title><link>https://news.ycombinator.com/user?id=JoshuaRLi</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 30 Apr 2026 04:02:23 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=JoshuaRLi" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by JoshuaRLi in "You don't really need a virtualenv"]]></title><description><![CDATA[
<p>Happy to see PEP 582 gaining traction, the last attempt I saw in this space was <a href="https://github.com/cs01/pythonloc" rel="nofollow">https://github.com/cs01/pythonloc</a>.</p>
]]></description><pubDate>Thu, 04 Feb 2021 12:16:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=26024716</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=26024716</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26024716</guid></item><item><title><![CDATA[Walks in San Francisco]]></title><description><![CDATA[
<p>Article URL: <a href="https://joshuarli.substack.com/p/walks-in-san-francisco/">https://joshuarli.substack.com/p/walks-in-san-francisco/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=24984857">https://news.ycombinator.com/item?id=24984857</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 03 Nov 2020 22:39:26 +0000</pubDate><link>https://joshuarli.substack.com/p/walks-in-san-francisco/</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=24984857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24984857</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "How to speed up the Rust compiler one last time"]]></title><description><![CDATA[
<p>> The only thing that matters is wall clock time so if cache layout is making a 300% difference to wall clock, focusing on instructions counts will mislead you on the most impactful optimization to make<p>Ahh, very well said!</p>
]]></description><pubDate>Thu, 10 Sep 2020 22:21:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=24437156</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=24437156</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24437156</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "How to speed up the Rust compiler one last time"]]></title><description><![CDATA[
<p>It isn't surprising to me that instruction counts as a performance metric would have less variance than wall time. Did you know that the environment size can actually affect wall time?<p>> We see that something external and orthogonal to the program, i.e., changing the size (in bytes) of an unused environment variable, can dramatically (frequently by about 33% and once by almost 300%) change the performance of our program. This phenomenon occurs because the UNIX environment is loaded into memory before the call stack. Thus, changing the UNIX environment size changes the location of the call stack which in turn affects the alignment of local variables in various hardware structures.<p>From <a href="https://www.inf.usi.ch/faculty/hauswirth/publications/asplos09.pdf" rel="nofollow">https://www.inf.usi.ch/faculty/hauswirth/publications/asplos...</a>.</p>
]]></description><pubDate>Tue, 08 Sep 2020 03:55:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=24405063</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=24405063</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24405063</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "Show HN: Hndex.org – a full-text search engine of articles submitted to HN"]]></title><description><![CDATA[
<p>I suspect it might be something mentioned in <a href="https://github.com/masukomi/arc90-readability" rel="nofollow">https://github.com/masukomi/arc90-readability</a>. I believe it's what powers "readability" view in modern browsers (firefox <a href="https://github.com/mozilla/readability" rel="nofollow">https://github.com/mozilla/readability</a>, safari).</p>
]]></description><pubDate>Sat, 08 Aug 2020 22:43:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=24095830</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=24095830</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24095830</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "Nano 5.0"]]></title><description><![CDATA[
<p>Have a look at <a href="https://github.com/zyedidia/micro" rel="nofollow">https://github.com/zyedidia/micro</a>, which has those keybindings by default. Mouse support too. Completely eliminated the text editing learning curve for me, and years later, I still use it happily.<p>Edit: Oh, I see it's been recommended in this thread already.</p>
]]></description><pubDate>Fri, 31 Jul 2020 03:50:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=24005470</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=24005470</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24005470</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "Lua 5.4.0"]]></title><description><![CDATA[
<p>Yeah, I was happy to see the switch away from C random/srandom or rand/srand.<p>Not my area either, but a little surprised why a PCG-family non-CSPRNG algorithm wasn’t used: <a href="https://www.pcg-random.org/posts/a-quick-look-at-xoshiro256.html" rel="nofollow">https://www.pcg-random.org/posts/a-quick-look-at-xoshiro256....</a><p>PCG XSL RR 128/64 (MCG) could be used for 64-bit values (albeit with period 2^126 compared to xoroshiro256<i></i>’s 2^256 − 1) with 128 bits. Half the state size than xoshiro256<i></i>, and the performance might be comparable (would need benchmarking). LCG version if you want to trade PRNG quality for even more speed.</p>
]]></description><pubDate>Wed, 01 Jul 2020 08:30:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=23699220</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=23699220</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23699220</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "iPhone 6S getting iOS 14 is like the Galaxy S6 getting Android 11"]]></title><description><![CDATA[
<p>Love how my old Galaxy S6 is stuck on ancient Android 7. And it's the verizon version too, so I can't unlock the bootloader. Perfectly capable device, what a shame.<p>Switched to iPhone SE a while ago because of this.</p>
]]></description><pubDate>Thu, 25 Jun 2020 00:35:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=23635502</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=23635502</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23635502</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "BTFS – mount any .torrent file or magnet link as directory"]]></title><description><![CDATA[
<p>Maybe <a href="https://github.com/anacrolix/torrent/tree/master/cmd/torrentfs" rel="nofollow">https://github.com/anacrolix/torrent/tree/master/cmd/torrent...</a>?</p>
]]></description><pubDate>Fri, 19 Jun 2020 22:48:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=23579651</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=23579651</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23579651</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "NextDNS Is Out of Beta"]]></title><description><![CDATA[
<p>On my work laptop (macOS Catalina), I get a bunch of `in-addr.arpa` - seems to be reverse lookups. Is that the case for you, too?</p>
]]></description><pubDate>Thu, 28 May 2020 00:15:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=23331838</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=23331838</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23331838</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "Learn Go: Hand-crafted Go exercises and examples"]]></title><description><![CDATA[
<p>go mod init github.com/your/project<p>Then, go get -v will download your dependencies to GOPATH, and (re)generate go.mod, go.sum. For info on how to update dependencies, read `go help get`.<p>When using modules (presence of a valid go.mod file), GOPATH won't be used for resolving imports. So you don't have to actually work in GOPATH anymore, dependencies are just stored there.</p>
]]></description><pubDate>Mon, 18 May 2020 18:14:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=23226221</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=23226221</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23226221</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "NextDNS is my new favourite DNS service"]]></title><description><![CDATA[
<p>I switched from pointing various things to cloudflare to simply using NextDNS a while ago, and it's just excellent. The onboarding flow was way faster and easier than I thought it would be (fantastic setup documentation). Configurations are really great for customization at per-device granularity. Extremely slick and fast web UI. Great DNS latency + performance overall.<p>I was planning on setting up my own recursive resolver one day (tm) but NextDNS really just makes everything so seamless + easy.</p>
]]></description><pubDate>Thu, 16 Apr 2020 04:21:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=22886014</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=22886014</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22886014</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "NextDNS is my new favourite DNS service"]]></title><description><![CDATA[
<p>> Even worse, iOS forces you to use a fake VPN to change DNS servers at all on cellular!<p>This is a major pain point for me - I'm trying to use both NextDNS and Tailscale on my iPhone SE 2016, and confirmed that they clash with each other. :(</p>
]]></description><pubDate>Thu, 16 Apr 2020 04:17:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=22885988</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=22885988</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22885988</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "New iPhone SE"]]></title><description><![CDATA[
<p>Agree with all these points (also an iPhone SE 2016 user). One more point to consider is whether or not the iPhone SE 2016 will continue to get OS updates.</p>
]]></description><pubDate>Thu, 16 Apr 2020 04:06:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=22885944</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=22885944</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22885944</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "New iPhone SE"]]></title><description><![CDATA[
<p>Yes. I've long been impressed with the single core performance and power efficiency of apple's mobile SoCs. Same-generation SoCs used on a variety of androids can't even compare. Google Maps for example was running like total shit on my old Galaxy S6, switched to iPhone SE (2016) and never looked back.<p>Really exciting times where an A9-based quality handset can be had for ~$60 on eBay. I expect prices will fall a bit further with this new SE model. And yes, the A9 is completely viable in 2020. Planning on holding onto it for as long as reasonably possible.</p>
]]></description><pubDate>Thu, 16 Apr 2020 04:01:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=22885921</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=22885921</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22885921</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "Ask HN: What projects are you working on now?"]]></title><description><![CDATA[
<p>This looks pretty clean! The enhanced readability reminds me of Wikiwand.<p>If you're looking for a bit of feedback, the search doesn't seem to handle fast typing well. I tried searching for "Frank Chu" and it seems that if I type it really fast, I get either no results or Franks that aren't Frank Chu. If I type slower, Frank Chu shows up.</p>
]]></description><pubDate>Tue, 31 Mar 2020 00:29:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=22733764</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=22733764</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22733764</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "Ask HN: Configuration Management for Personal Computer?"]]></title><description><![CDATA[
<p>Shameless plug: I rewrote the "dotfile-relevant" featureset of GNU stow in plain python as a PoC of a simpler batch symlinker: <a href="https://github.com/joshuarli/sym-prototype" rel="nofollow">https://github.com/joshuarli/sym-prototype</a><p>It's worked really well for me. Used to use stow.</p>
]]></description><pubDate>Mon, 12 Aug 2019 21:50:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=20680418</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=20680418</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20680418</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "FaceApp Now Owns Access to More Than 150M People's Faces and Names"]]></title><description><![CDATA[
<p>> the general public actually doesn’t care about privacy at all<p>It's not that people don't care; privacy is probably undervalued in the context of making privacy vs. convenience/utility decisions. (Digital) privacy's value isn't really tangible until it's actively used against you.</p>
]]></description><pubDate>Thu, 18 Jul 2019 14:27:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=20470104</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=20470104</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20470104</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "How to Enable DNS-over-HTTPS in Firefox"]]></title><description><![CDATA[
<p>At least on linux, go's native resolver follows a sane subset of glibc conventions like parsing /etc/nsswitch.conf, /etc/resolv.conf, /etc/hosts [1]. As long as your dns configuration is defined there, you won't notice much of a difference between go programs using go's resolver and programs making glibc library calls for dns stuff.<p>1: <a href="https://jrl.ninja/etc/2/strace-go-1.12.3.txt" rel="nofollow">https://jrl.ninja/etc/2/strace-go-1.12.3.txt</a><p>src for above: <a href="https://jrl.ninja/etc/2/getaddrinfo.go.txt" rel="nofollow">https://jrl.ninja/etc/2/getaddrinfo.go.txt</a></p>
]]></description><pubDate>Mon, 08 Jul 2019 21:08:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=20386774</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=20386774</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20386774</guid></item><item><title><![CDATA[New comment by JoshuaRLi in "How to Enable DNS-over-HTTPS in Firefox"]]></title><description><![CDATA[
<p>Hi Dima - I'm assuming you're aware of dnscrypt-proxy and wrote nss-tls because you wanted a lighter weight implementation of a subset of dnscrypt-proxy's features on a specific platform (linux/glibc, for example this won't work on linux/musl afaik)? I use dnscrypt-proxy happily but was interested in nss-tls, yet couldn't find a rationale/comparison in the readme.</p>
]]></description><pubDate>Mon, 08 Jul 2019 20:53:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=20386651</link><dc:creator>JoshuaRLi</dc:creator><comments>https://news.ycombinator.com/item?id=20386651</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20386651</guid></item></channel></rss>