HNHacker News
TopNewBestAskShowJobs

jzm2k

71 karma · joined June 9, 2021

submissionscomments
jzm2k··on Show HN: Nebula – A network agnostic DHT crawler
Looks like Nebula uses go-libp2p and all of the supported networks listed in the README use libp2p for their p2p networking. Mainline DHT doesn't support the same transport protocols that libp2p supports (such ash TCP+Yamux+Noise) which is probably why Nebula doesn't support Bittorrent
jzm2k··on Why time seems to pass faster as we age
I'd like to recommend giving Daylio [1] a try if you want to start journaling. Someone on HN recommended this two years ago and I decided to try it because all past attempts at journaling had failed miserably after few weeks. I'm now on a 700+ day streak and I'm really happy that I started doing this 2 years ago. So much has happened and it's all documented. It takes so little effort to add an entry for the day and reading past entries is fun because what actually happened past year is not just a blur but a detailed record of activities, words and photos.

[1] https://daylio.net/

jzm2k··on Programming Language Checklist (2011)
Isn't this criticizing the discussion of (new) programming languages, not the new languages themselves?
jzm2k··on Modeless Vim
>I mean how do you even use the numbers? Who looks at code and says "no, this should be exactly 8 lines below this one." I just Alt + Down until it's right. I'd spend more time trying to write the command right than I'd spend just pressing the keys multiple times.

With relative line numbers it's really easy actually. Typing dd7jp takes less effort than pressing alt + down multiple times and I have hard time believing you'd be make this argument if you were comfortable with modal editing.

In fact, none of the alternatives you listed seem attractive if you're accustomed to modal editing. How is Home, Shift + End, Delete a good alternative to dd? So much movement to do a simple operation.

I would highly recommend you giving it an honest try and if it doesn't work, you can always go back to editing the traditional way but once it clicks, "the old" way feels super awkward.

jzm2k··on P2pcf: P2P WebRTC via Cloudflare Workers
I still don't understand what this has to do with WebRTC/WebSocket. You can combine, e.g., mDNS with WebRTC and build a pure peer-to-peer network.
jzm2k··on P2pcf: P2P WebRTC via Cloudflare Workers
Is there any P2P network that fits that criteria? The first time you connect, you need to know at least one publicly reachable node but I fail to see how that relates to WebSocket/WebRTC. I think central server is somewhat ambiguous because the bootnode could be any node on the network you have prior knowledge of.
jzm2k··on P2pcf: P2P WebRTC via Cloudflare Workers
>Sadly both WebRTC and WebSockets seem to have been designed in such a way that excludes pure peer-to-peer operation.

What do you mean by pure peer-to-peer operation?

jzm2k··on Git rebase, what can go wrong
git-rebase is stupid because somebody doesn't know how to use it?

I use it all the time and I really like how I can make garbage commits (wip, test) and then squash them into atomic commits which are easy to review and later on easy to bisect when inevitably mistakes happen. Sure I've fucked up too when I was learning on how to use it and those were some painful mistakes but only through using it and making those mistakes have I learned to use the tool to great advantage (clean history).

jzm2k··on David Tolnay on the "RustConf Keynote Fiasco"
You can still enjoy the language without engaging in this drama. I only know about this because it's on the front page of HN (maybe I'm living under a rock) and yet the language still works nicely and I enjoy writing it immensely.
jzm2k··on Remote work requires communicating more, but less frequently
>You can also tell on company hardware and on company accounts if the junior's browsing history represents getting better or just resting on their haunches because they want someone else to do the thinking.

Are you saying the mentor should actually go and check the browsing history of one their engineers to verify whether they've actually done "correct work" or what are you trying to say exactly? This sounds to me like micromanagement of the highest order.

jzm2k··on Why Kakoune – The quest for a better code editor (2016)
Kakoune has macros: https://github.com/mawww/kakoune/blob/master/doc/pages/keys....
jzm2k··on How ‘open’ should your open source be?
Genuine question, why? It's not like the project (at least by default) owes anybody any explanation why it's run the way it is or why contributions are not accepted.
jzm2k··on Helix 23.03
Maybe you should try committing longer? I had used Vim for nearly 8 years and had learned the crazy tricks you can do with Vim before switching to Kakoune and it took maybe 2 weeks to feel comfortable. I think people may overestimate how long it takes to relearn a style of modal editing which keeps them from committing to Kakoune/Helix which then prevents them from giving Kakoune/Helix a fair chance. After having learned this new style of modal editing, I'm really glad Helix doesn't have Vim style because I feel it be inferior to what Helix has.
jzm2k··on “Clean” code, horrible performance
I don't think it is. There are times in projects where you're exploring the problem space and figuring out how to get implement whatever you're doing and to speed up that process, you can take shortcuts such as assuming that a value always exists, there are X many users, or this function will never fail so you `expect()` on it. Also very little testing and no documentation. Once you have something that works, it's time to make it correct by removing those assumptions and adding tests and documentation. I believe this is what the distinction between "make it work" and "make it right" is.
jzm2k··on Incident: Qatar B788 at Doha on Jan 10th 2023, steep descent after takeoff
Disaster Breakdown video of the accident for anyone interested: https://www.youtube.com/watch?v=Jsch6vFlcE4
jzm2k··on A search engine for searching books in the Z-Library index on the IPFS network
Could you elaborate on why it can't scale if it's stateful?
jzm2k··on Fputc semantics for conforming C implementations
Probably this one: https://drewdevault.com/2020/09/25/A-story-of-two-libcs.html
jzm2k··on Ask HN: Do you look angry while you work?
I have probably looked angry while working because people tell me I look angry in general, probably more so when I'm in focused but it has never stopped anyone from interrupting me while I'm working.

Also mandatory Seinfeld reference: https://www.youtube.com/watch?v=Kafq7yrKAOQ

jzm2k··on Latam Airlines Airbus A320neo hits fire engine on runway during take-off
Disaster Breakdown made a video about this accident: https://www.youtube.com/watch?v=8rXmskgv8nw
jzm2k··on Replace the “very” in your sentence
I tried googling all three + "abbreviation" so for example "SRE abbreviation" and the first result for all three was the actual term for the abbreviation.
jzm2k··on Helix: A Neovim inspired editor, written in Rust
>But many times, I do want immediate action-operator when I know exactly what I need to operate on.

This argument doesn't make sense, it's just as fast to type in Kakoune. The order is just different but it makes it possible for you to adjust it when you've either made a mistake or don't exactly know what kind of selection you want.

I know the visual mode in Vim exists under 'v' but the point I was making was that in Kakoune it's more handy and I use it constantly because it's so available, just hold Shift key as oppose typing another letter to enter it. I know it sounds insignificant but I find myself using the visual mode all the time in Kakoune whereas I barely used it in Vim because of that tiny extra effort to enter the mode.

jzm2k··on Helix: A Neovim inspired editor, written in Rust
It switches from "action selection" to "selection action" which allows you to first select the thing you want to operate on and only then specify what you want do with it. So for example in Vim you may accidentally select too many characters to delete and then you need to redo the command whereas in Kakoune you can adjust the selection before executing the action.

I think one of the best things Kakoune has to offer is that selection mode (visual mode in Vim) is always accessible through <shift><movement> so if I want to select some random number of characters going left, I'll just hold L, or if I want to select all characters until the end of line I'll just press GL whereas gl takes me to the end of line. It makes it so easy to select text.

Finally multicursor, it's so good. I've used Kakoune for over a year now and I haven't had need for macros except for maybe 2 times. I didn't know I needed a multicursor before I had tried Kakoune and I would highly suggest anyone to try Kakoune just for the multicursor experience. It allows you to select a pattern using regex and then operate on the matches simultaneous. Kind of like Vim's "visual block" but on steroids.

jzm2k··on Helix: A Neovim inspired editor, written in Rust
Seconding this. I had used Vim for nearly 8 years and felt very comfortable with all the crazy tricks you could do with modal editing but I genuinely felt Kakoune's way of doing modal editing was an improvement so I committed to learning it and it took maybe a month to get comfortable with the new way of editing. I'm really glad I took the plunge because I'm a really happy Kakoune user and I can't think of anything that I miss from Vim.
jzm2k··on The problem with Bitcoin miners
I think there is a major difference between consensus-breaking bug which unites the community in adopting a new change and a BIP which proposes a change to the network and modifies the consensus rules. But I fully agree with you that it is possible to reach a consensus about some change to the protocol but as the network grows it becomes harder and harder.

Secondly, this is 9 years ago and the Bitcoin network has grown quite a bit since then, meaning back then it was quite a bit smaller undertaking in getting the majority of the network to adapt the bug fix than it would be today. The core developers are also very paranoid about introducing these bugs which you can see for yourself by browsing the open PRs and verifying that anything that even remotely touches the consensus code is very heavily scrutinized.

jzm2k··on The problem with Bitcoin miners
I don't think your original comment was curious but had a snarky tone and demonstrated a lack of knowledge about the history of Bitcoin and what has been tried. As GP pointed out, it's not as simple as miners choosing to follow a different consensus algorithm or block size because you also need to convince the rest of the network (or 51% of it at least) to follow these new rules. Immense amount of effort is put into Bitcoin improvement proposals to make changes to the network while keeping the protocol compatible with older versions of it.
jzm2k··on Web3: A VC-funded gig economy of securities fraud
I'd say there's also a ton of interesting work to be done, especially on L1: cryptography, distributed storage, peer-to-peer networks etc.
jzm2k··on Use Git tactically
I don't think it's that simple when you're collaborating with others on a large project. I think Wine [0] is a great example of how small and atomic commits can create a very nice history that allows to you track down weird regression without having to read 1000+ SLoC commits or bunch of "chaff" that is just noise when you're trying to understand the bug. But it requires effort both from the developer to make actually good commits and from the maintainer to enforce these rules.

[0] https://source.winehq.org/patches/

jzm2k··on Show HN: Warp, a Rust-based terminal
They are very useful! As a long time Vim user who switched to Kakoune[0] a while back, I didn't even realize I needed a good multiline cursor from my editor before it tried Kakoune. Highly recommend it!

[0] https://kakoune.org/

jzm2k··on MIT 6.S081 – Operating System Engineering
Yes it's very readable and easy to understand. I had made a huge design mistake in my OS's scheduling which basically prevented any task from going to sleep but it was hard to understand what other way was there to do it. Reading xv6's source code saved me (and my OS) as the code was so clean that it was easy to understand the idea behind their scheduling and port that to another kernel that had otherwise nothing to do with xv6.
jzm2k··on Highlights from Git 2.35
Doesn't git stash save -p accomplish that?
Page 1 of 2Next →